《机器学习》阅读心得--二、模型评估与选择

来源:互联网 发布:mysql 删除重复的数据 编辑:程序博客网 时间:2024/05/29 11:59

二、模型评估与选择

2.1 经验误差与过拟合

  学习器(学习到的模型)在训练集上输出结果与真实结果之间的误差称为“经验误差”,而在新样本上的输出结果与真实结果之间的误差称为“泛化误差”。
  经验误差与泛化误差之间并不存在着简单的单调关系。如果过分追求经验误差的减小,会使得学习器过于特化,丢失其一般性,不能很好的应用在新的样本上。这种情况称为“过拟合”。与之相对的是“欠拟合”,学习器尚未充分学习到训练样本的规律。过拟合是不可避免的。

2.2 评估方法

  评估方法主要是将一个初始数据集合理的划分为训练集和测试集,在训练后进行测试。目前有以下几种评估方法:
  1. 留出法:
  直接将数据集划分为两个互斥的集合,分别作为训练集和测试集。单次留出法得到的结果往往不够稳定,需要进行多次随机划分、重复试验后取平均值作为评估结果。问题在于:当测试集过小时,评估结果不够稳定;当训练集过小时,训练出的学习器和利用原始数据集训练出的学习器相差过大。
  2. 交叉验证法:
  将数据集划分为K个大小相似的互斥子集。每次用k-1个子集作为训练集,剩下的一个作为测试集。如此可重复进行K次,最后取平均值。这里称为“K折交叉验证”。如果采用不同的划分方式,比如重复划分p次,则称为“p次k折交叉验证”。这样有利于减小因样本划分不同而引入的误差。
  如果测试集中只包含一个样本,那么交叉验证法将退化为留一法。由于训练集比原始集只少了一个样本,训练出来的模型和期望模型比较相似。但是当数据量过大时,计算量是非常大的。
  3. 自助法:
  将原始数据集D中的样本进行拷贝,有放回的放到训练集中。数学证明,最终有36.8%的样本始终没有进入训练集中。这部分样本可以作为测试集。这种方式比较适合数据量较小的情况。但是问题是,它会改变数据的原始分布,这会引入数据的估计偏差。
  4.调参:
  机器学习的参数一般分为两种。一种是算法的参数,数量不多,可以人工设定。一种是模型的参数,数量很多,可能达到上百亿个。这种一般是通过学习产生多个候选的模型,并且参数调的好不好对后期结果影响很大。

2.3 性能度量

2.3.1 错误率和精度:

  错误率E(f;D)是分类错误的样本数占样本总数的比例,精度acc(f;D)是分类正确的样本数占样本总数的比例,显然有

E(f;D)+acc(f;D)=1

2.3.2 查准率、查全率与F1:

真实情况 预测正例 预测反例 正例 TP(真正例) FN(假反例) 反例 FP(假正例) TN(真反例)

  查准率P的定义为

P=TPTP+FP

  查全率R的定义为
R=TPTP+FN

  P-R图能够显示学习器在样本总体上的查准率和查全率。BEP值(P=R时的取值)越大,说明学习器越好。如果要继续深化的话,F1度量(PR调和平均值)可以作为比较学习器好坏的工具
1F1=12(1P+1R)

2.3.3 ROC与AUC:

  ROC曲线用来研究学习器在不同任务下的“期望泛化性能”的好坏。纵轴是“真正例率”(TPR),横轴是“假正例率”(FPR),定义如下

TPR=TPTP+FN
FPR=FPTN+FP

  通过比较两个学习器ROC曲线的面积,可以判断面积大的学习器性能较好。AUC(Area Under ROC Curve)即为ROC曲线面积。

2.3.4 代价敏感错误率与代价曲线

  不同类型的错误所造成的后果是不同的。为权衡不同类型错误所造成的损失,可为错误赋予“非均等代价”(unequal cost),如下表

真实类别 预测第0类 预测第1类 第0类 0 cost01 第1类 cost10 0

  ROC曲线可以转换为代价曲线。

2.4 比较检验

  统计假设检验为学习器性能比较提供了依据。基于假设检验的结果可得出,若在测试集上学习器A比B好,那么A的泛化性能是否在统计意义上优于B,以及这个结论的置信度。
  检验的方式有假设检验、交叉验证t检验、McNemar检验、FriedMan检验与Nemenyi后续检验。大体思路都是计算某个数值是否落在某个区间内,则以置信度α接受这个假设,否则则拒绝。具体不展开。

2.5 偏差与方差

  根据数学证明可知

E(f;D)=bias2(x)+var(x)+ϵ2

  其中,bias2(x)为偏差,代表算法预测与真实结果的偏离,var(x)为方差,刻画了数据扰动对算法的影响,ϵ2为噪声,刻画了任何算法能达到的泛化误差下界。即泛化误差可分解为偏差、方差、噪声之和。
  当算法训练不足时,偏差是泛化误差的主要因素,当算法充分训练甚至过拟合时,数据的扰动将会变得很明显,方差成为了泛化误差的主要因素。

原创粉丝点击