一、概念与基础
2、模型评估与选择
错误率error rate,精度accuracy,误差error,训练误差training error/经验误差empirical error(在训练集上的误差),泛化误差generalization error(在新样本上的误差)
过拟合overfitting(当学习器把训练样本学的太好了的时候,可能已经把训练样本本身的一些特点当做了所有潜在样本都会具有的一般性质,导致泛化性能下降→无法彻底避免,只能减小其风险)
欠拟合underfitting(对训练样本的一般性质尚未学好→容易克服)
模型选择问题model selection(选用哪个学习算法、使用哪种参数配置)
→无法直接获得泛化误差,而训练误差又由于过拟合现象的存在而不适合作为标准,那么,在现实中如何进行模型评估与选择呢?
2.1评估
分“测试集(验证集)”和“训练集”,以测试集上的“测试误差testing error”作为泛化误差的近似
留出法:直接将数据集D划分为两个互斥的集合,一个作为训练集S,另一个作为测试集T,划分尽可能保持数据分布的一致性,并且常见做法将大约2/3~4/5的样本用于训练,剩余样本用于测试
交叉验证法:将数据集D划分为k个大小相似的互斥子集,每次用k-1个子集作为训练集,余下的一个作为测试集,这样获得的k个测试结果取均值,k常取10
自助法:以自助采样法bootstrap sampling为基础,给定包含m个样本的数据集D,我们对它进行采样产生数据集D’:每次随机从D中挑选一个样本,将其拷贝放入D’,然后再将该样本放回初始数据集中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就得到了包含m个样本的数据集 D’,通过自助采样,初始数据集D中约有36.8%的样本未出现在D’中,于是可用D’做训练集,D\D’做测试集
2.2调参parameter tuning与最终模型
在模型选择完成后,学习算法和参数配置已选定,此时应用数据集D重新训练模型,这个模型在训练过程中使用了所有m个样本,才是最终提交给用户的模型。另外,通常把学得模型在实际使用中遇到的数据称为测试数据,为了加以区分,模型评估与选择中用于评估测试的数据集通常称为“验证集validation set”
2.3性能度量performance measure
衡量模型泛化能力的评价标准
回归任务常用“均方误差mean squared error”
分类任务常用:错误率、精度、查准率precision:、查全率recall:、平衡点Break-Event Point(BEP,查准率=查全率时的取值,例如图中A优于B)、F1(基于查准率与查全率的调和平均:)、Fβ(F1度量的一般形式,加权调和平均,其中β>0度量了查全率对查准率的相对重要性,β=1时退化为标准的F1,β>1时查全率有更大影响,β<1时查准率有更大影响:)、受试者工作特征曲线ROC(Receiver Operating Characteristic,纵轴为真正例率,横轴为假正例率)
混淆矩阵confusion matrix:
非均等代价unequal cost(为权衡不同类型错误所造成的不同损失,可为错误赋予“非均等代价”)、代价矩阵cost matrix:
损失程度相差越大,cost01与cost10值的差别越大。一般情况下,重要的是代价比值而非绝对值,例如cost01:cost10=5:1与50:10所起效果相当。
→希望最小化总体代价total cost
代价敏感cost-sensitive错误率(以表2.2中第0类作为正类、第1类作为反类,D+与D-分别代表样例集D的正例子集和反例子集):
代价曲线cost curve:
2.4比较检验
比较泛化性能,而通过试验评估方法获得的是测试性能,两者的对比结果可能未必相同(以错误率为性能度量为例):
→ 统计假设检验hypothesis test:
→ 交叉验证t检验(成对t检验paired t-tests):基本思想是若两个学习器的性能相同,则它们使用相同的训练/测试集得到的测试错误率应相同,即
为缓解“由于样本有限,在使用交叉验证等实验估计方法时,不同轮次的训练集会有一定程度的重叠,使得测试错误率实际上并不独立,会导致过高估计假设成立的概率”的问题,采用5×2交叉验证法
→ McNemar检验:
→ Friedma检验与Nemenyi后续检验:
在一组数据集上对多个算法进行比较
偏差-方差分解bias-variance decomposition:解释学习算法泛化性能的一种重要工具
泛化误差可分解为偏差(期望预测与真实结果的偏离程度,刻画学习算法本身的拟合能力)、方差(同样大小的训练集的变动导致的学习性能的变化,刻画数据扰动所造成的影响)与噪声(当前任务上任何学习算法所能达到的期望泛化误差的下界,刻画学习问题本身的难度)之和:
偏差-方差窘境bias-variance dilemma(一般偏差和方差是有冲突的)
机器学习基础系列文章回顾:
机器学习基础(一):简介