复习的主要内容:
第一章:监督学习与非监督学习
第二章:贝叶斯、最小风险杯贝叶斯公式、先验概率 后验概率 得出风险数值 概率密度估计 极大似然估计
第三章:线性模型(基本且经典)单变量线性回归、多变量线性、逻辑回归
第四章:神经网络
第五章:推荐系统
第六章:异常检测
第七章:决策树
第八章:集成学习
第九章:特征选择、特征提取
基础部分:
建议先看一下吴恩达的机器学习入门视频!!!
第一章:概述
1.简述监督学习与非监督学习,他们的区别,请各自举一个例子
答:
- 监督学习(Supervised learning) :提供带有正确结果的训练集,基于训练集,算法将归纳(generalization)出“如何正确的响应所有可能的输入”,也就是对测试集有一个明确的输出。也称之为”示例学习(learning from examples)” 回归算法
- 非监督学习(Unsupervised learning): 训练集没有提供正确结果,而是让算法尝试识别不同数据之间的相似性,从而让有共同特征的数据能够被归类在一起。以统计学的方式实现监督学习也称作”密度估计(density estimation)聚类算法
第二章:贝叶斯
贝叶斯公式部分请前往这部分笔记进行查看
统计决策方法
第三章:线性回归与逻辑回归
3.1 单变量线性回归
梯度下降算法实现步骤
1.初始化参数数值
2.对参数进行求导,由学习率控制下降幅度
3.重复2-3当偏导数小于阈值则收敛
当学习率过小的时候,收敛需要迭代的次数会非常高。
当学习率过大,每次迭代可能会越过局部最小值倒数,无法收敛
3.2 多变量线性回归
3.3 正规方程和梯度下降的区别
梯度下降 | 正规方程 |
需要选择学习率α | 不需要 |
需要多次迭代 | 一次运算得出 |
当特征数量n大时也能较好适用 | 需要计算XTX-1 如果特征数量n较大则运算代价大,因为矩阵逆的计算时间复杂度为On3,通常来说当n小于10000 时还是可以接受的 |
适用于各种类型的模型 | 只适用于线性模型,不适合逻辑回归模型等其他模型 |
3.4 逻辑回归
3.4 正则化
注意:
- 虽然正则化的逻辑回归中的梯度下降和正则化的线性回归中的表达式看起来一样,但由于两者的hθx不同所以还是有很大差别。
- θ0不参与其中的任何一个正则化。
第四章:神经网络
4.1 计算图-反向传播
为正向传播时输入是t、输出是z,所以这个节点的局部导数是
乘法: 变化率
梯度数值估计:
第五章:诊断方法
对于P,R, F,AUC需要有一个完整的认识
https://www.zhihu.com/question/30643044/answer/562062736
关于ROC,AUC
5.1 诊断方法
对于分类问题而言最常用的指标是P\R\F 对于回归问题并不适用
训练集误差和交叉验证集误差近似时:偏差/欠拟合
交叉验证集误差远大于训练集误差时:方差/过拟合
1. 获得更多的训练实例——解决高方差
2. 尝试减少特征的数量——解决高方差
3. 尝试获得更多的特征——解决高偏差
4. 尝试增加多项式特征——解决高偏差
5. 尝试减少正则化程度λ——解决高偏差
6. 尝试增加正则化程度λ——解决高方差
5.2 类偏斜的误差分析
合适的误差度量-类偏斜(skewed classes)问题
查准率(Precision)和查全率(Recall) 我们将算法预测的结果分成四种情况:
1. 正确肯定(True Positive,TP):预测为真,实际为真
2. 正确否定(True Negative,TN):预测为假,实际为假
3. 错误肯定(False Positive,FP):预测为真,实际为假
4. 错误否定(False Negative,FN):预测为假,实际为真
混淆矩阵 | 预测值 | |||
Positive | Negtive | 总计 | ||
实际值 | Positive | TP | FN | P(实际为Positive) |
Negtive | FP | TN | N(实际为Negtive) | |
总计 | P’(被分为Positive) | N’(被分为Negtive) | P+N |
假设我们手上有60个正样本,40个负样本,我们要找出所有的正样本,系统查找出50个,其中只有40个是真正的正样本,计算上述各指标。
- TP: 将正类预测为正类数 40
- FN: 将正类预测为负类数 20
- FP: 将负类预测为正类数 10
- TN: 将负类预测为负类数 30
精确率(precision) = TP/(TP+FP) = 80%
召回率(recall) = TP/(TP+FN) = 2/3
查准率和查全率之间的权衡
查准率(Precision)=TP/(TP+FP) 例:在所有我们预测的有恶性肿瘤的病人中,实际上有恶性肿瘤的病人的百分比,越高越好。
查全率(Recall)=TP/(TP+FN) 例:在所有实际上有恶性肿瘤的病人中,成功预测有恶性肿瘤的病人的百分比,越高越好。
非常确信的情况下预测为真,可以设置更高的查准率的阈值。如果我们希望尽可能让所有有可能有可能是恶性肿瘤的病人都得到进一步检查,我们可以使用比0.5还小的阈值
5.3PR图
查准率和查全率关系图
绘制方法:根据每个学习器的预测结果对样例进行排序,排在前面的是学习器认为“最可能”是正例的样本,作为正例进行预测,排在最后的则是学习器认为“最不可能”是正例的样本,按此顺序逐个把样本作为正例进行预测,则每次可以计复由当前的查全率,查准率。以查准率为纵轴。查全率为横轴作图,就得到查准率查全率曲线,简称“P-R曲线”。通过”平衡点”查全率=查准率,y=x交点的数值越大说明模型越能包住其他学习器
我们通过f1可以得到这个阈值,我们选择使得F1值最高的阈值
上述三条线分别是我们对于同一个分类器而言所采用的阈值不同而不同的。
5.4 关于如何选定阈值
关于ROC,AUC
举一个简单的例子方便大家的理解,还是刚才雷达的例子。假设现在有10个雷达信号警报,其中8个是真的轰炸机(P)来了,2个是大鸟(N)飞过,经过某分析员解析雷达的信号,判断出9个信号是轰炸机,剩下1个是大鸟,其中被判定为轰炸机的信号中,有1个其实是大鸟的信号(FP=1),而剩下8个确实是轰炸机信号(TP=8)。因此可以计算出FPR为,TPR为,而就对应ROC曲线上一点。
说到这里,想必大家已经明白这俩个指标的计算方法,再往深挖一点,可以思考一下这俩个指标背后的原理。还是雷达的例子,敏锐的雷达系统我们肯定希望它能把所有的敌方轰炸机来袭都感知到并预测出来,即TPR越高越好,但我们又不希望它把大鸟的飞过也当成轰炸机来预警,即FRP越低越好。因此,大家可以发现,这俩个坐标值其实是有相互制约的一个概念在里面。
作者:蘑菇轰炸机
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
第六章: 支持向量机
可以看做是大间距分类器,在感应机的基础上,我们不仅仅要能正确分开输入的样本,我们需要的是一个最大间距,使得之间的点到假设函数的间隔最大
逻辑回归
支持向量机:
C=1/λ
C 较大时,相当于λ较小,可能会导致过拟合,高方差;
C 较小时,相当于λ较大,可能会导致低拟合,高偏差;
σ较大时,可能会导致低方差,高偏差;
σ较小时,可能会导致低偏差,高方差。
n为特征数,m为训练样本数。
(1)如果相较于m而言,n要大许多,即训练集数据量不够支持我们训练一个复杂的非线性模型,我们选用逻辑回归模型或者不带核函数的支持向量机。
(2)如果n较小,而且m大小中等,例如n在 1-1000 之间,而m在10-10000之间,使用高斯核函数的支持向量机。
(3)如果n较小,而m较大,例如n在1-1000之间,而m大于50000,则使用支持向量机会非常慢,解决方案是创造、增加更多的特征,然后使用逻辑回归或不带核函数的支持向量机。
值得一提的是,神经网络在以上三种情况下都可能会有较好的表现,但是训练神经网络可能非常慢,选择支持向量机的原因主要在于它的代价函数是凸函数,不存在局部最小值。
个人觉得吴恩达这部分并没有讲明白这个间隔如何取得
如果想具体了解的可以去B站看白板书的教程
其中
非常重要,需要理解好这个正则项
其中1/代表着间隔
这部分理解起来难度还是比较大的 建议看一下习题
第七章: 推荐系统
从公式的角度去理解:
7.1基于内容推荐系统:
通过用户参数求电影特征,通过电影特征求用户参数
注意:此处我们丢弃了m是因为并不影响我们的计算
7.2 协同过滤算法:
如果我们没有用户参数,也没有电影特征,我们可以采用协同过滤算法,求出用户参数和电影特征,反复套娃
均值归一化的问题:
遇到冷启动的问题要采取的措施
1、 从其它网站导入的用户站外行为数据。如链接豆瓣、新浪等。
2、制造选项,让用户选择自己感兴趣的点后,即时生成粗粒度的推荐。
3、通过让用户对物品进行评分来收集用户兴趣。新用户第一次访问时,并不立即给用户展示推荐结果,而是给用户提供一些物品,让用户对其反馈,根据用户反馈提供个性化推荐。