专栏名称: AI前线
我们专注大数据和机器学习,关注前沿技术和业界实践。每天发布高质量文章,技术案例等原创干货源源不断。同时有四千人的社群微课堂,每周一次业界大牛技术分享,也希望你能从这里分享前沿技术,交流深度思考。
目录
相关文章推荐
玉树芝兰  ·  实测 Perplexity ... ·  10 小时前  
大数据文摘  ·  Andrej Karpathy ... ·  6 天前  
大数据文摘  ·  1步碾压250步!何恺明新作祭出MeanFl ... ·  4 天前  
51好读  ›  专栏  ›  AI前线

利用已有的大数据技术,如何构建机器学习平台

AI前线  · 公众号  · 大数据  · 2017-10-23 17:52

正文

请到「今天看啥」查看全文


  • 支持大数据量的建模实验,通过并行计算缩短耗时

  • 抽象出最小执行单元,配置简单。通过拖拽以及连线的形式构建建模流程

  • 支持常用的机器学习学习算法处理回归、分类、聚类等问题支持常用的特征工程组件,如标准化、归一化、缺失值处理等

  • 支持算法评估结果可视化

算法库

在算法库方面,我们选择了 Spark,相比于 R 或者 Python,Spark 具备分布式计算的能力,更高效。

ml 和 mllib 都是 Spark 中的机器学习库,目前常用的机器学习功能两个个库都能满足需求。ml 主要操作的是 DataFrame,相比于 mllib 在 RDD 提供的基础操作,ml 在 DataFrame 上的抽象级别更高,数据和操作耦合度更低。

ml 提供 pipeline,和 Python 的 sklearn 一样,可以把很多操作 (算法 / 特征提取 / 特征转换) 以管道的形式串起来,对于任务组合非常便利,如 StringToIndexer、IndexerToString、VectorAssembler 等。

组件化设计

从架构设计上来说,不管是算法单元、特征工程单元、评估单元或者其他工具单元,我们认为都可以以组件的形式来设计。借助通用的接口行为以及不同的实现可以达到松耦合、易扩展的目的。

上图是整个设计类图的一部分,实际上我们做了较多层次的抽象以及公用代码。下面看看核心类 BaseTask:

run 方法的实现是一套模板,步骤如下:

每个组件只要实现自己的核心逻辑 execute 方法就可以了。

平台迭代
v1.0(平台核心架构)

基于上述的设计目标,机器学习平台第一个版本的架构如下:







请到「今天看啥」查看全文