机器学习总结
2021-09-30 09:07:12 3 举报
AI智能生成
机器学习相关算法的总结
作者其他创作
大纲/内容
机器学习概述
大数据
对历史数据的总结、BI商业智能
对历史数据的总结、BI商业智能
分布式存储
分布式计算
分布式批计算
分布式流计算
准实时流式计算
Spark Streaming
Spark Streaming
纯实时流式计算
flink
flink
机器学习
对未来的预测
对未来的预测
数据+算法=规律
算法
逼近高度
逼近高度
数据量
提高高度
提高高度
线性回归分类算法
简单线性回归算法
公式:y=a+bx
损失函数、目标函数、误差函数
找到最小的误差值
1.导数=0
这种方式根本实现不了
这种方式根本实现不了
2.梯度下降法
指导w参数调整方向
参与w参数大小的调整
公式: Alpha 是步长
训练模型的套路
1.随机产生w参数
2.训练集数据和随机出来的w参数带入到误差函数中求解误差
3. 如果误差小于用户设置的误差阈值,那么此时的w参数就是最佳w参数
4.否则继续调整w参数,循环2,3步骤。
在训练模型之前:
1.设置收敛条件;
a.迭代次数;
b.误差阈值
2.设置w参数调整步长 0.3左右
1.设置收敛条件;
a.迭代次数;
b.误差阈值
2.设置w参数调整步长 0.3左右
常问问题
损失函数为什么加平方
测试数据的误差会不会小于训练数据的误差?
有可能会小
有可能会小
新增一列一模一样的数据列对模型有影响吗?
冗余数据对模型没有影响
冗余数据对模型没有影响
什么是过拟合?
1.验证集辅助训练集
2.正则化
多元线性回归算法
公式:y=w0+w1x1+w2x2+...+wnxn
贝叶斯分类算法
公式: 等号右边是先验概率,等号左边是后验概率
案例:垃圾邮件分类
拉普拉斯平滑定理
KNN分类算法
分类思想
空间中k个相似的样本中,
如果大部分的样本属于某一个类别,
那么这个样本就属于那个类别
如果大部分的样本属于某一个类别,
那么这个样本就属于那个类别
KNN分类的流程
1.新样本计算与空间中所有样本的距离
欧式距离
平方欧式距离
余弦距离
曼哈顿距离
闵科夫斯基
2.计算出距离最近的K个样本
3.K个样本中,大部分属于哪个类别,少数服从多数
KNN算法的缺点
A类数据超多,B类数据极少
加权重
加权重
约会案例
归一化
最大最小值归一化
公式,防止数差太大对计算距离影响过大
识别手写数字案例
KMeans聚类算法
无监督:开始不知道归哪类,
结合情况、自动归类
结合情况、自动归类
1.随机找K个样本(中心点)
1.肘部法
2.Kmeans++算法
首先选择第一个中心点c1
找与c1距离最远的中心点c2
可以防止随机出来的k个中心点集中在一起
2.计算空间中所有样本与这K个样本的距离
1.欧式距离
2.平方欧式距离
3.余弦距离
4.曼哈顿距离
5.闵可夫斯基
3.统计每个样本与K个样本的距离大小,
距离哪个样本最近,那就归属于哪个样本
距离哪个样本最近,那就归属于哪个样本
4.分完类后,每组重新计算一个新的中心点,
中心点可能是一个虚拟的点
中心点可能是一个虚拟的点
5.再次计算空间中所有样本与新的K个中心点距离
6.再次重新分类
7.依次迭代,一直到中心点坐标不再变化
案例:微博精准营销
需求:
将九阳豆浆机推送给需要的人
将九阳豆浆机推送给需要的人
1.分词
向量化每篇微博
向量化每篇微博
问题
如果分词后直接每个次在向量中都代表1
这种方式不行,为什么?
这种方式不行,为什么?
1.Kmeans聚类(欧式距离)
向量中不同位置的数字多,代表的单词内不同,
无法进行距离计算
向量中不同位置的数字多,代表的单词内不同,
无法进行距离计算
2.不同微博的向量长度及大小不一致
解决方式
词袋模式、one-hot编码
2.特征值
问题
词性问题
词频的大小不能代表词的重要性
解决方式
TF-IDF算法
3.KMeans聚类算法 N类
4.统计每类中 TF-IDF最大的N个单词
这N个单词可以代表主旨思想
这N个单词可以代表主旨思想
仍存在的问题
KMeans在推荐系统的应用
构建用户画像
一堆数据刻画一个人
千人前面
信息有缺失
KMeans+one-hot算法解决数据丢失问题
基于用户的协同过滤
问题1 冷启动问题 ,解决办法 增加热门商品
问题2 用户量大的基础上 增加新用户,产生大量聚类计算
基于物品协同过滤
优点:
物品的数量稳定,用户的数量会激增导致大量计算
物品的数量稳定,用户的数量会激增导致大量计算
问题1:
为什么不能根据物品画像去计算
为什么不能根据物品画像去计算
买了一个手机,在推荐一个手机你会买吗?
解决:
根据物品捆绑买卖次数计算
根据物品捆绑买卖次数计算
买洗衣液 ,推荐柔顺剂
问题2:
新上的产品,有可能永远没有推荐
新上的产品,有可能永远没有推荐
刷单 捆绑刷
店小二交钱 加权重
DBScan
基于密度的聚类算法
基于密度的聚类算法
优缺点
逻辑回归分类算法
一种广义的线性回归分析模型
公式
分类阈值0.5
子主题
实际场景中遇到的问题
适当调整分类阈值的大小
升维
关于截距,w0非0的时候可能性会提高
归一化
最大最小值归一化
缺点:容易受到离群值影响
比如,1、2、3、1000(离群值)
比如,1、2、3、1000(离群值)
均值方差归一化
归一化后的结果
误差函数、正则化
防止过拟合、提高抗干扰能力
防止过拟合、提高抗干扰能力
lamda为惩罚系数
L1正则化是w参数趋向于0, 多用于降维
L2正则化是w参数趋向于整体变小
代码
多分类都可以归结为二分类
实例:路况预测
训练集什么样,那训练出来的模型就具备什么样的功能
训练集准备的特征值越多,Y值(分类值)越准确
显示4个分类,可以做出11个分类,为了提高抗干扰能力
决策树分类算法
非线性的
非线性的
有监督的非线性分类算法
分类条件原则:
尽可能将同一类数据分到树的一遍;
构建的决策树越矮越好
尽可能将同一类数据分到树的一遍;
构建的决策树越矮越好
公式
购买电脑
1.计算是否购买电脑的信息熵
3.计算年龄的信息增益
4.最终的决策树
过拟合
信息增益率公式
决策树剪枝
后剪枝
子主题
缺点,解决办法。不能降低数据量,只能分布式训练来解决
随机森林
2.计算年龄的条件熵(比如:青少年 3/5不卖电脑,2/5卖年脑,再乘以不卖电脑的概率就是青少年的信息熵
因此-(3/5*log(3/5)+ 2/5*log(2/5))*5/14,在加上中年和老年的信息熵 ,最终得到年龄的条件熵)
因此-(3/5*log(3/5)+ 2/5*log(2/5))*5/14,在加上中年和老年的信息熵 ,最终得到年龄的条件熵)
0 条评论
下一页