栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Spark MLlib(2)

Spark MLlib(2)

spark.ml 提供了基于Dataframes高层次的API,可以用来构建机器学习工作流(pipeline)

一.Pipelines的主要概念 Dataframe(数据模型)

Dataframe作为ML的数据集

ML可以应用于各种各样的数据类型,比如向量,文本,图形和结构化数据。API采用Spark SQL的Dataframe就是为了支持各种各样的数据类型

Transformer(转换器)

转换器是特征变换和机器学习模型的抽象。转换器必须实现transform方法,这个方法将一个Dataframe转换成另一个Dataframe,通常是附加一个或多个列

Estimators(模型学习器)

Estimators模型学习器是拟合和训练数据的机器学习算法或者其它算法的抽象

Estimators(模型学习器)实现fit()方法,这个方法输入一个Dataframe并产生一个model即一个transformer(转换器)

例如:一个机器学习算法是一个estimator模型学习器,比如这个算法是LogisticRegression,调用fit()方法训练出一个LogisticRegressionModel,这是一个Model,因此也是一个Transformer(转换器)

Pipeline(管道)

Pipeline将多个Transformers和Estimators绑在一起形成一个工作流,在机器学习中,通常会执行一系列算法来处理和学习模型,比如,一个简单的文本文档处理流程可能包含这几个步骤:把每个文档的文本分割成单词 → 将这些单词转化成一个数值型特征向量 → 使用特征向量和标签学习一个预测模型

MLlib代表一个流水线,就是一个pipeline,pipeline包含了一系列有特定顺序的管道步骤(transformers和estimators)

Parameter(参数)

MLlib的Estimators(模型学习器)和Transformer(转换器)使用统一的API来指定参数。Param是具有自包含定义的参数,ParamMap是一组(参数,值)对

将参数传递给算法主要有两种方式

二.Pipelines的实例

一个pipeline由多个步骤组成,每个步骤都是一个Transformer(转换器)或Estimator(模型学习器)

这些步骤按顺序执行,首先输入的Dataframe,然后通过每个阶段进行转换

在Transformer(转换器)步骤中,Dataframe会调用transform()方法

在Estimator(模型学习器)步骤中,fit()方法被调用并产生一个Transformer(转换器)会成为pipelinemodel的一部分,或者适配pipeline,并且dataframe会调用这个transformer的transform()方法

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/702090.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号