目录
1.2 课程定位
科学:是什么、为什么
技术:怎么做
工程:怎么做得多快好省
应用
机器学习中这四个方面都有。
本课以科学和技术为主。
1.3 机器学习定义
经典定义:利用经验改善系统自身的性能。
随着该领域的发展,目前主要研究智能数据分析的理论和恶方法。
大数据 不等于 大价值
1.4典型机器学习过程
model
1.5 机器学习有坚实的理论基础
PAC 概率近似正确理论
1.6 基本术语
训练集,测试集,验证集
示例instance(x) 样例(有结果)
样本sample(由上下文理解)
属性,特征,属性值
特征向量,样本空间,输入空间
输出空间
假设(模型学到的f(x),不一定是真的),真相,学习器
监督学习,无监督学习
i.i.d 基本假设
泛化,有时候会推导一个泛化误差
1.7 归纳偏好
任何一个有效的机器学习算法必有其偏好。
奥卡姆剃刀原则:若非必要,勿增实体。
同样的效果取最简单的。
没有最好的算法,只有适宜的算法。
1.8NLF定理
没有免费午餐定理:一个算法若在某些问题上比另一个算法好,则必然存在另一些问题上另一个算法更好。
前提:所有问题出现的机会相同,或所有问题同等重要。
具体问题,具体分析。
现实任务千变万化,不可只掌握“十大算法”、“二十大算法”。
最优方案:按需设计、量身定制
2.1泛化能力、过拟合与欠拟合、模型选择
泛化误差
经验误差(训练误差)
并不是训练误差越小越好 过拟合
图形曲线
处理过拟合是一个核心问题。
可以认为所有的算法都是在缓解overfitting,注意不是解决。
2.2 评估方法
留出法、交叉验证法、自助法
留出法:
注意:保持数据分布一致性(例如:分层采样)
多次重复划分(随机切100次,减小数据切分造成的影响)
测试集数据不能太大,也不能太小(例如1/5-1/3)
最后训练出来的模型要在全体数据集上跑一次再给用户。
k-择交叉验证:
针对留出法中某些数据未被选过问题。
留一法(极端),并不一定好,测试有偏差,比如五五分的男女分类。
自助法bootstrap sample:
有放回采样,训练集与原样本集同规模,其中没有出现的数据就可以留出来做测试。
最重要的缺陷:改变了训练数据分布
2.3 调参与验证集
超参数
模型的参数
调参过程相似:先产生若干模型,然后基于某种评估方法进行选择。
参数调得不好对性能往往对最终性能有关键影响。
调参的过程可以视为把机器学习中变量确定的过程,算法本身也可以视为一个变量,模型参数也是变量。
验证集是训练集中专门用来调参数。
算法参数选定后,要用“训练集+验证集”重新训练最终模型,再放到测试集上测试,测试集用于评估性能,验证集实际上是训练集的一部分。
调参数的数据集一定要从验证集中来,而不是从测试集中来。
2.4 性能度量
衡量模型泛化能力。
什么样的模型是“好”的,不仅取决于算法和数据,还取决于任务需求。
回归任务常用均方误差。
错误率、精度
混淆矩阵
查准率、查全率
Truth\Prediction | positive | negtive |
---|---|---|
positive | TP | FN |
negtive | FP | TN |
查准率(Precision):P=TP/(TP+FP) 预测出来的好瓜中真正的好瓜有多少
查全率(Recall):R=TP/(TP+FN) 所有正样本中到底有多少个被找出来了
F1指标:F1=2PR/(P+R) P和R的调和平均,使得较小的值不会被忽视掉。
P-R反向关系
n个二分类实现的多分类问题:先分别计算P,R再平均或先平均TP,FN,FP再计算P,R.多分类可转为n个二分类.
P-R曲线比较不同模型,可以比较面积。
ROC曲线 正反两种查全率,ROC曲线围成面积为AUC
TPR=TP/(TP+FN)
FPR=FP/(TN+FP)
2.5 比较检验
测试性能不等于泛化性能
测试性能随测试集的变化而变化
很多机器学习算法本身有一定的随机性
机器学习寻找“概率近似正确”
3.1 线性模型
离散属性的处理:若有序,则连续化,否则转为k维向量。
最小二乘法
一元线性回归,多元线性回归
引入正则化
3.2 广义线性模型
对数几率回归 Logistic源自Logit,不是Logic.
odds 几率
log odds 也是logit
优点:
无需事先假设数据分布
可得到类别的近似概率预测
可直接应用现有数值优化算法求取最优解
极大似然方法求解(之所以不用最小二乘,是因为其函数为非凸)
Max :I(真+)P(预测为+)I(真-)P(预测为-)
3.3 线性判别分析
3.4 类别不平衡
处理情况:当小类的价值远大于大类。
基本思路: 若y/(1-y)>m+/m- 则预测为正例
常见类别不平衡学习方法:
过采样(如插值)、欠采样(切割投票)、阈值移动(少数算法,如SVM)
4 决策树
递归过程
停止条件:属性集为空、样本为同一类别、样本为空
信息增益划分
信息增益:对可取值数目较多的属性有所偏好
考虑增益率(规范化),其分子IV(a)划分分支数越多就越大,而最理想的情况是又分干净了,同时分支数越少越好。
ID3 启发式:先从候选划分属性中找出信息增益高于平均水平的,再从中选取增益率最高的。
归一化:转为0-1之间
规范化:将不可比的转化为可比的
C4.5
基尼指数 Gini(D) 从D中随机抽取两个样例,其类别标记不一致的概率。
Cart
研究表明:划分选择的各种准则虽然对决策树的尺寸有较大影响,但对泛化性能的影响很有限。
决策树剪枝
剪枝方法和程度对决策树泛化性能的影响更为显著,在数据带噪时甚至可能将泛化性能提升25%.
对付过拟合,单个决策树一定要剪枝。
预剪枝
后剪枝
缺失值
基本思路:样本赋权,权重划分。
5 神经网络
简单单元神经元模型
多层前馈网络 :无环状结构
万有逼近性 一个隐层就可(并非神经网络独有)
BP神经网络 误差逆传播算法
广义感知机,即把感知机推广到多层感知机。
链式法则
6 SVM
Lagrange乘子法,对偶问题
求解方法 SMO
特征空间映射
如果原始空间是有限维,那么一定存在一个高维空间(可以无限维)将其线性可分。
核函数
Mercer定理:若一个对称函数所对应的核矩阵半正定,则它就能作为核函数来使用。
核矩阵作为距离矩阵。
任何一个核函数,都隐式地定义了一个空间RKHS.
核函数选择成为决定支持向量机性能地关键。
软间隔
7 贝叶斯决策论
后验概率:已知结果推来自某原因的概率。
贝叶斯判定准则
贝叶斯最优分类器:达到贝叶斯风险最小。
生成式模型和判别式模型
前者对P(x,c)(也为P(x,y))建模 后者直接估计P(c|x)
生成式神经网络和这里的生成式不一样。
贝叶斯分类器和贝叶斯学习不一样。
频率主义 认为参数是点存在 点估计 统计学习 SVM
贝叶斯主义 认为参数也是一个分布 分布估计 贝叶斯学习
贝叶斯学习必须进行分布估计。
频率主义和贝叶斯主义都可以用到贝叶斯公式。
极大似然估计
朴素贝叶斯分类器
为了简化,假定属性独立。
8 集成学习
希望每个learner要好而不同。
序列化方法:AdaBoost,XGBoost
并行化方法:Bagging,随机森林
Boosting
两个不同算法,输出是不能直接比较的,要做Alignment(配准,非常麻烦,所以重点关注同质learner)。
Boosting改变权重,关注预测错误的数据,前面的learner比后面的性能更好,结果加权结合。
Bagging
对数据集可重复采样。
投票做分类,平均做回归。
多样性
无监督学习中的聚类(对应分类),密度估计(对应回归)
聚类的好坏不存在绝对标准。