专栏名称: 经管之家
经管之家官微,每个经济、管理、金融、统计的学习和从业者,都应该有的帐号。经管之家(论坛),是国内成立十年的大型经济、金融、管理、计量统计社区,十年磨一剑,我们共同的家园!我们提供“经管爱问”答疑微服务,以及相关数据分析及金融培训课程。
目录
相关文章推荐
吴晓波频道  ·  吴晓波:创业者的囧境 ·  4 天前  
51好读  ›  专栏  ›  经管之家

Spark技术为什么会成为主流分析工具?

经管之家  · 公众号  · 财经  · 2017-06-30 11:34

正文

一、机器学习的分类


监督学习:监督学习是最常见的分类问题,通常是让计算机去学习我们已经创建好的分类系统。


无监督学习:与监督学习相比,无监督学习没有预先标注好的分类系统。在无监督学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。


半监督学习:是介于监督学习和无监督学习之间的一种极其学习方式,是模式识别和机器学习领域研究的重点问题。


强化学习:强化学习通过观察来学习动作的完成,每个动作都会对环境有所影响,学习对象根据观察到的周围环境的反馈来做出判断。

 

二、Spark MLib定义


MLlib(Machine Learning lib) 是Spark对常用的机器学习算法的实现库,同时包括相关的测试和数据生成器。具有速度快、易用性、集成度高等特点。

 

三、Spark MLlib架构

 

底层基础:包括Spark的运行库、矩阵库和向量库;

算法库:包含广义线性模型、推荐系统、聚类、决策树和评估的算法;

实用程序:包括测试数据的生成、外部数据的读入等功能。

 

四、MLlib底层基础解析

 

4.1 MLlib支持本地的密集向量和稀疏向量,并且支持标量向量

Vectors

MLlib支持本地矩阵和分布式矩阵

LabelPoint  (Double目标, Vectors特征)

RowMatrix

IndexedRowMatrix

CoordinateMatrix

 

4.2本地矩阵Matrix

importorg.apache.spark.mllib.linalg.{Matrix, Matrices}

//创建密集矩阵((1.0, 2.0),(3.0, 4.0), (5.0, 6.0))

val dm: Matrix = Matrices.dense(3, 2,Array(1.0, 3.0, 5.0, 2.0, 4.0, 6.0))

 //创建稀疏矩阵 matrix((0.0, 1.0, 3.0), (0.0, 2.0, 1.0), (9.0, 6.0, 8.0))

val sm: Matrix = Matrices.sparse(3, 2,Array(0, 1, 3), Array(0, 2, 1), Array(9, 6, 8))

 

 

4.3分布矩阵RowMatrix

import org.apache.spark.mllib.linalg.Vector

importorg.apache.spark.mllib.linalg.distributed.RowMatrix

val rows: RDD[Vector] = ... // an RDD oflocal vectors

val mat: RowMatrix = new RowMatrix(rows) //基于RDD[Vector]创建RowMatrix

val m = mat.numRows()//获取行数

val n = mat.numCols()//获取列数

 

五、MLlib的算法库分析


5.1
分类算法属于监督式学习,使用类标签已知的样本建立一个分类函数或分类模型,应用分类模型,能把数据库中的类标签未知的数据进行归类。MLlib目前支持分类算法有:逻辑回归、支持向量机、朴素贝叶斯和决策树。

 

5.2回归算法属于监督式学习,每个个体都有一个与之相关联的实数标签,并且我们希望在给出用于表示这些实体的数值特征后,所预测出的标签值可以尽可能接近实际值。MLlib 目前支持回归算法有:线性回归、岭回归、决策树。

 

5.3聚类算法是观察式学习,在聚类前可以不明确类别甚至不给定类别数量,聚类是无监督学习的一种,MLlib目前支持广泛使用的K-Means聚类算法。

 

5.4协同过滤算法常被应用于推荐系统,这些技术旨在补充用户-商品关联矩阵中所缺失的部分。MLlib当前支持基于模型的协同过滤,其中用户和商品通过一小组隐语义因子进行表达,并且这些因子也用于预测缺失的元素。

 

协同过滤算法分类:基于用户过滤的推荐模型、基于产品过滤的推荐模型、基于协同过滤的推荐模型、基于关联规则的推荐模型。

 

CDA数据分析研究院为解决当下企业招人难、学员就业难的问题所研发的大数据课程,以数据分析理论与实践案例结合的方式讲授,内容覆盖了国内企业招聘大数据分析师岗位所需的技能,学员经过系统全面的脱产学习(数理统计和数据挖掘算法、Java、Hadoop、Spark、Scala等),达到企业用人标准,快速在大数据时代找准工作定位。


想转行大数据,还在犹豫什么?听听业内人士分享大数据在企业中的应用

 



快点加入我们,

一起玩转大数据!

联系方式


座机:010-68456523(张老师)

QQ:2931495854

邮箱:[email protected]