spark —机器学习

五、掌握spark 在机器学习的应用,包括MLlib(简单了解)和ML(重点掌握),对机器学习的整个流程要理解,对ML的转换器、预测器和管道要理解并知道如何在实际例子中使用,掌握管道和模型保存和加载的方法,对模型的评估指标有大概的认识理解;

1、机器学习

目前机器学习主流分为:监督学习,无监督学习,半监督学习,强化学习四种

人工智能可以看成一门学科,机器学习是实现人工智能的方法,而深度学习是实现机器学习的一门技术。

2、数据的准备

数据准备包括数据的采集,数据的探索和数据的清洗。

数据的采集一般来源于网络爬虫,企业的各种业务数据库,以及公开的数据源(如国家,公益组织等发布)。

数据的探索是对数据进行研究和判断,确定数据的质量与数据的特征,进而为下一步的数据预处理提供基本信息,数据探索环节与可视化展示连接紧密。

数据的清洗是对数据进行进一步的处理,包括数据的清洗、数据的转换、数据标准化、缺失值的处理、特征的提取、数据的降维等方面。

3、机器学习的流程

机器学习的一般步骤是数据的采集,数据的加载,数据的探索,数据的预处理,训练模型,模型评估,模型的保存与调用。

Spark 机器学习库目前分为两个包,分别为mllib(pyspark.mllib)和ml(pyspark.ml)

spark.mllib:基于RDD的机器学习API

spark.ml:基于DataFrames 高层次的API

3、MLlib库的使用

MLlib库主要操作的数据对象是RDD。

4、ML库的使用

ML库也是一个Spark机器学习库,ml主要操作的数据对象是DataFrame。

ML包含三个主要的抽象类:Transformer(转换器),Estimator(预测器)和Pipline(管道)。

Transformer:转换器,是一种可以将一个DataFrame转换为另一个DataFrame的算法。

比如一个模型就是一个Transformer。它可以把一个不包含预测标签的测试数据集 DataFrame 打上标签,转化成另一个包含预测标签的 DataFrame。技术上,Transformer实现了一个transform()方法,它通过附加一个或多个列将一个DataFrame转换为另一个DataFrame。

Estimator:预测器,它是学习算法或在训练数据上的训练方法的概念抽象。

在 Pipeline 里通常是被用来操作 DataFrame 数据并生产一个 Transformer。从技术上讲,Estimator实现了一个方法fit(),它接受一个DataFrame并产生一个转换器。如一个随机森林算法就是一个 Estimator,它可以调用fit(),通过训练特征数据而得到一个随机森林模型(模型是转换器)。

PipeLine:翻译为工作流或者管道。

工作流将多个工作流阶段(转换器和预测器)连接在一起,形成机器学习的工作流,并获得结果输出。

Tokenizer,是转换器(Transformer),将原始DataFrame拆分为单词,并将带有单词的新列添加到DataFrame的words列。

HashingTF ,是转换器(Transformer),将words列转换为特征向量,并将带有特征向量的新列添加到DataFrame中.

5、基本数据类型——本地向量

一个本地向量拥有从0开始的integer类型的索引以及float类型的值。

MLlib和ML支持两种类型的本地向量:稠密(dense)向量和稀疏(sparse)向量。

posted @   星月故里yw  阅读(220)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示