浅谈KMlib(机器学习)

PipeLine

         Pipeline:管道,

         在spark mllib中,作用主要是来定义计算的流程。模型的保存等。

         相当于提供了一个工具类,可以让我们更方便的使用spark mllib

         推荐:在使用sparkmllib过程中,建议通过pipeline将数据处理流程,连接起来,同时将模型的结果通过pipeline保存和加载。

完整的机器学习流程:

1数据的获取//加载数据  5%

2.数据的预处理//(字符串转数字,缺失值的处理,异常值的处理,hash)  70%

3.模型的训练 10%

4.在测试数据上进行模型的评估(错误率,正确率,MSE 最小平方误差)10%

5.如果模型达标,进行模型的保存,如果不达标,可以更换模型,或者对数据再次预处理。

机器学习模型总结:

1.分类:事先已经知道类别,只是对数据划分到已知的类别中,监督算法。

Ie:垃圾邮件 垃圾短信 信用评级 。。。

  1. 逻辑斯蒂回归
  2. 决策树
  3. 贝叶斯
  4. 随机森林

2.聚类:事先不知道类别,只是将数据集划分成指定的个数。非监督算法

         Ie:人群划分,收入划分,成绩划分。。

         算法名称:Kmeans

3.回归:预测一个连续型的值。

         Ie:预测收入,预测价格,预测温度。。。。

         算法名称:线性回归算法

4.关联分析/关联规则 以及 协同过滤

         关联分析:分析两两元素,或者多个元素相互之间的关系,求其一同出现的次数。次数越高,则说明关系越密切。

         可以分析两两商品或多个商品同时出现的次数,基于此推荐。

算法名称:FP-growth.

         协同过滤:分析用户与用户(物品与物品)之间的相似度。根据相似用户,进行商品推荐。

         算法名称:ALS

(ML)机器学习:数学模型、建模

流程:提出模型-à序列-à预算

(DL)深度学习ß--à(AI)人工智能

能看:识别图像、人脸识别、识别万物

能说:语音功能

能听:语音识别、翻译

汽车自动驾驶

神经网络:分为三层

深度神经网络模型:吴恩达

 

1.线性回归:在空间里有n个点,在空间中画出一条直线到n个点距离之和最小。

线性:y=ax+b   (一元一次函数)   a:相关系数    b:截距(到x轴的距离)

Y=a0+a1x1+a2x2+….+anxn

回归:逼近,n点线的距离最近

作用:可以做预测(明天天气)

属于:监督性学习

特征(x):x1—天气  x2----时间   x3----地点    x4------风速

求某个方向上的变化率

《最终变成n元线性方程组》

训练:7/8 训练数据,建立模型

测试:3/2 检验模型 是否成效

配置项:

SetFeaturecol(“features”)  特征 因变量(x)

setLabelcol(“label”)  自变量 (y)

利用训练数据对模型拟合成型。Lir.fit()

Eg:由年龄、身高--à体重

模型:y=a+a1x1+a2x2     x1~2:表示身高、体重   y表示体重

数据:21 175 120 输出的是一个double类型的值

spark加载数据:spark.sparkcontext.textFile(“PathName”)

 对象返回两个参数:record(arr(0),arr(1))

抽样:randomsplit(Array(0.8,0.2)) 对数据进行抽样训练

 

2.聚类(KmeanSexample):先选取聚类中心(或者自动随机产生),将与这个聚类中心的距离(两点之间的距离-欧式距离)最小的点先归为一类,再区这一类的聚类中心(这些点的中心点作为新的聚类中心),迭代,直到与下次的情况一样。就讲这归类的作为稳定类。

属于:无监督学习

从开始不知道类别,最后归类

作用于:人力资源(分等级)、人物画像

Setk(2)   2类  自动可以设置随机数种子

 

3.分类:监督学习  开始类别已知

 

4.逻辑斯蒂(Logistic Regression):输入数字,输出类别(0/1)

与线性回归的区别:线性回归输出的是double类型(正无穷到负无穷),LR输出的是0/1(0~1)

将线性回归的接轨映射成0~1之间

再将值小于0.5-à0   大于等于0.5-----à1

人脸识别、to be or ont to be、只要是做与不做的情况

 

 

 

posted @ 2018-11-23 20:34  IT晓白  阅读(356)  评论(0编辑  收藏  举报