1.基本术语
1.1 模型分类
1.1.1 监督学习
- 分类:离散值
- 回归:连续值
1.1.2 无监督学习
- 聚类:无标注数据,机器自己分类
1.2 泛化能力
模型能够预测没见过数据的能力
1.3 假设空间(hypothesis space)
科学推理的手段:
归纳:从特殊到一般的"泛化" (generalization) 过程
演绎:从一般到特殊的"特化" (specialization)过程
把学习过程可以看作一个在所有假设(hypothesis) 组成的空间中进行搜索的过程
假设(向量)张成空间,空间=集合,表示假设空间,找出该集合的所有子集即可。
1.4 版本空间
由于训练集有限,可能有多个假设与训练集一致,即存在着一个与训练集一致的"假设集合",我们称之为"版本空间"
1.5归纳偏好
同一数据集训练出了不同模型,如何选择模型?在学习过程中对某种类型假设的偏好,称为"归纳偏好"。如回归曲线偏好光滑的。
- 算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能否取得好的性能。
- 引导算法确立 "正确的"偏好:"奥卡姆剃刀" (Occam's razor)选择最简单的那个
- 没有免费的午餐"定理 (NFL 定理):总误差竟然与学习算法无关。但有一个重要前提:所有"问题"出现的机会相同、或所有问题同等重要。
- 结论:脱离具体问题,空泛地谈论"什么学习算法更好"毫无意义
1.6 深度学习
所谓深度学习?狭义地说就是"很多层"的神经网络.
其他
1.大数据时代的三大关键技术:
机器学习、云计算、众包(crowdsourcing)。
众包不是外包,包含着与用户共创价值的理念。
2.机器学习在环境监测上的应用:利用机器学习技术对卫星和传感器发回的数据进行分析
3.WEKA 是著名的免费机器学习算法程序库
2.模型评估与选择
2.1 过拟合问题
在训练集上表现很好,但是在验证集上表现不好。巳经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降。
2.2 测试集vs验证集vs训练集
测试集应该尽可能与训练互斥, 即测试样本尽量不在训练集中出现、未在训练过程中使用过。
训练集:上课
验证集:平时写的作业,主要用于调参
测试集:考试,题目从来没有见过
2.3 如何划分训练集、检验集、测试集
2.3.1 "留出法" (hold-out)
直接将数据集划分为两个互斥的集合,其中一个集合作为训练集 ,另一个作为测试集。
- a.要尽可能保持数据分布的一致性。保留类别比例的采样方式通常称为"分层采样" (stratified sampling).否则误差估计将由于训练/测试数据分布的差异而产生偏差.?
- b.一般要采用若干次随机划分、重复进行实验评估后取平均值作为留出法的评估结果.
- c.测试集小 ,评估结果的方差较大, 训练集小 时,评估结果的偏差较大
2.3.2 k折交叉验证法
把数据集划分为k份,循环选择一份数据集作为测试集,剩下的作为训练集,进行k次交叉验证,取得平均值。
2.4 性能度量
模型评估:
- (1)错误率error rate:E=a/m
- (2)精度:1-E
- (3)误差
2.4.1均方误差
2.4.2 错误率与精度
II是统计的意思。统计括号内条件成立的元素的个数。
2.4.3 查准率和查全率
查准率:P 预测(precision)结果有多少比例预测正确的,谨慎的话,会升高
查全率:R 真实/召回(Recall)结果中有多少比例被预测出来的,宽松的话,会升高
- 需要从PR选择一个阈值,代表此模型的最优效果。怎么选阈值?
- a.使用平衡点BEP
- b.F1 度量:是基于查准率与查全率的调和平均来定义的,想得到TP占TP+FP+FN的一个比例