《机器学习》Chapter 2 模型评估与选择

《机器学习》Chapter 2 模型评估与选择

2.1 经验误差与过拟合

错误率和精度:通常我们把分类错误的样本数占样本总数的比例称为”错误率“,即如果在m个样本中有a个样本分类错误,则错误率为E=a/m;相应的,1-a/m称为”精度“。
误差:把学习器的实际预测输出和样本的真实输出之间的差异称为”误差“,学习器在训练集上的误差称为”训练误差“,在新样本上的误差称为”泛化误差“。
过拟合与欠拟合:把训练样本自身的一些特点当作了潜在样本都会具有的一般性质,这洋就会导致泛化性能的下降,此现象称为”过拟合“,相对的是”欠拟合“,这是指对训练样本的一般性质尚未学好。

2.2 评估方法

对测试集和训练集的分类和处理方法:
留出法:直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T,即D=SUT,S交T=空集
缺点是D和S数据量划分不容易控制,一般将大约2/3~4/5的样本作为训练,其余用作测试
交叉验证法

在这里插入图片描述 **自助法**:随机挑一个样本放入D’中,再放回D,重复m次,不被采集到数据的概率是36.8%;这样的测试结果称为外包估计 (out-of-bag estimate) 在这里插入图片描述
2.3 性能度量

对于回归任务:最常用的性能度量是”均方误差“

image-20210429183945711

更一般的,对于数据分布D和概率密度函数p(.),均方误差可描述为

image-20210429184008865 $$

$$
分类任务中常用的性能度量:

错误率

image-20210429184142206

精度

image-20210429184211759
真实情况预测结果预测结果
正例反例
正例TP(真正例)FN(假反例)
反例FP(假正例)TN(真反例)

查准率

image-20210429184718807

查全率

image-20210429184736897

3

若一个学习器的P-R曲线被另一个学习器的曲线完全”包住“,则可断言后者的性能优于前者;如果两个学习器的P-R曲线发生了交叉,则难以一般性断言二者孰优孰劣。

1. 平衡点(Break-Even Point,简称 BEP)是综合考虑查准率和查全率的性能度量,他是”查准率=查全率“时的取值
2. F1度量(更常用):基于查准率和查全率的调和平均 (harmonic mean)
image-20210429185451986
  1. F1度量的一般形式:beta>0时度量了查全率对查准率的相对重要性

    image-20210429185557588

ROC与AUC

ROC曲线的描绘过程:

  1. 对所有测试样本按照学习器给出的预测结果排序
  2. 选择一个不可能取到的最大值作为分类阈值
  3. 把分类阈值从大到小依次设为每个样本的预测值
  4. 描点连线

与P-R图相似,若一个学习器的ROC曲线被另一个学习器的曲线完全”包住“,则可断言后者的性能优于前者;如果两个学习器的P-R曲线发生了交叉,则难以一般性断言二者孰优孰劣。若一定要比较,则需要计算ROC曲线下的面积,即AUC

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

​ 为权衡不同类型错误所造成的不同损失,可为错误赋予”非均等代价“(unequal cost),在非均等代价下,我们所希望的不再是简单地最小化错误次数,而是希望最小化总体代价,

image-20210429194636827

其中,灰色的阴影部分为模型的期望总体代价,期望总体代价越小,则模型的泛化性能越好;反之,模型泛化性能越差。

期望总体代价的意义:正例先验概率下学习模型的最小损失代价,并对所有正例先验概率下的最小损失代价求和。

期望总体代价计算步骤:

​ 取ROC曲线上的每一点,计算相应的FNR,FPR。FNR和FPR在已知的情况下,归一化代价是一条随正例概率变化的直线。因此,代价曲线是一条直线,ROC曲线每个点都对应一条代价曲线。

​ 对于给定的正例概率p,取所有代价曲线在该频率下的最小值,然后求该最小值与正例概率所围成的面积,得到如上图所示的阴影曲线。

机器学习模型性能评估(三):代价曲线

2.4 比较检验

​ 统计假设检验为我们进行学习器性能比较提供了重要依据,基于假设检验结果我们可以推断出,若在测试集观察到学习器A比B好,则A的泛化性能是否在统计意义上优于B,以及这个结论的把握有多大?下面我们介绍两种最基本的假设检验,然后介绍几种常用的机器学习性能比较方法。

2.4.1 假设检验

二项检验:仅作依次留出法估计

t检验:针对多次重复留出法或是交叉验证法

交叉验证t检验交叉验证t检验

img

McNemar 检验

对于只能执行一次的算法,McNemar检验是唯一具有可接受的第一类错误的检验,在比较两个二元分类算法时,检验是这两个模型是否存在相同的分歧的说明。它不会说明一个模型是否比另一个模型更准确或更容易出错。

二、列联表

img

三、检验实例的计数

检验统计量的这种计算假定计算中使用的列联表中的每个单元具有至少25个计数。检验统计量具有1自由度的卡方分布
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-37ShsEJz-1619744339056)(https://www.zhihu.com/equation?tex=%5Cchi%5E%7B2%7D%3D%5Cfrac%7B%28e01-e10%29%5E%7B2%7D%7D%7Be01%2Be10%7D)]
如果通过卡方分布进行评估,则通过将上表的e01与e10两个频率中较小的一个加上0.5、较大的一个减去0.5来进行连续性校正。这种纠正在统一降低差异的绝对值e01-e10中具有明显的效果。那么通过连续性校正,我们可以重写公式:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5KqicANm-1619744339059)(https://www.zhihu.com/equation?tex=%5Cchi%5E%7B2%7D%3D%5Cfrac%7B%28%7Ce01-e10%7C-1%29%5E%7B2%7D%7D%7Be01%2Be10%7D)]
给定显着性水平的选择,通过检验计算的p值可以解释如下:

    1. p>alpha:未能拒绝H0,在分歧上没有差异。
    1. p<=alpha:拒绝H0,分歧的显着差异。

四、使用McNemar检验解释分类器

H0:两学习器性能相同(分类器在测试集上具有相似的错误比例)
那么,我们可以总结如下:
- 不拒绝零假设:分类器在测试集上具有相似的错误比例。
- 拒绝零假设:分类器在测试集上具有不同的错误比例。

给定显著度 α,当以上变量恒小于临界值功时,不能拒绝假设,即认为两学习器的性能没有显著差别;否则拒绝假设,即认为两者性能有显著差别,且平均错误率较小的那个学习 器性能较优.自由度为1的χ2检验的临界值当α=0.05时为3.8415,α=0.1时为2.7055.

Friedman检验与Nemenyi后续检验

交叉验证t检验和McNemar检验都是在一个数据集上比较两个算法的性能,而在很多时候我们会在一组数据集上对多个算法进行比较,当有多个算法参与比较时,一种做法是在每一个数据集上分别列出两两比较的结果,而在两两比较时可使用前述方法;另一种方法更为直接,即使用基于算法排序的Friedman 检验。

算法排序的Friedman检验流程图:

img

假定我们用 D1、D2、D3和D4四个数据集对算法A、B、C进行比较.首先,使用留出法或交叉验证法得到每个算法在每个数据集上的测试结果,然后在每个数据集上根据测试性能由好到坏排序,并赋予序值1,2,…,若算法的测试性能相同,则平分序值.例如,在D1和D3上,A最好、 B其次、C最差,而在D2上,A最好、B与C性能相间,…,则可列出下表 ,其中最后一行通过对每一列的序值求平均,得到平均序值.

img表1

然后,使用Friedman 检验来判断这些算法是否性能都相同.若相同,则它们的平均序值应当相同.假定我们在N个数据集上比较k个算法,令 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w1pY3Div-1619744339061)(https://www.zhihu.com/equation?tex=r_%7Bi%7D)] 表示第4个算法的平均序值,为简化讨论,暂不考虑平分序值的情况,则 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RYhVfAQU-1619744339062)(https://www.zhihu.com/equation?tex=r_%7Bi%7D)] 服从正态分布,其均值和方差分别为 (k+1)/2和 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rubT4iUX-1619744339063)(https://www.zhihu.com/equation?tex=%5Cleft%28k%5E%7B2%7D-1%5Cright%29+%2F+12)] . 变量
式1 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-izmS9pmf-1619744339064)(https://www.zhihu.com/equation?tex=%5Cbegin%7Baligned%7D+%5Ctau_%7Bx%5E%7B2%7D%7D+%26%3D%5Cfrac%7Bk-1%7D%7Bk%7D+%5Ccdot+%5Cfrac%7B12+N%7D%7Bk%5E%7B2%7D-1%7D+%5Csum_%7Bi%3D1%7D%5E%7Bk%7D%5Cleft%28r_%7Bi%7D-%5Cfrac%7Bk%2B1%7D%7B2%7D%5Cright%29%5E%7B2%7D%26%3D%5Cfrac%7B12+N%7D%7Bk%28k%2B1%29%7D%5Cleft%28%5Csum_%7Bi%3D1%7D%5E%7Bk%7D+r_%7Bi%7D%5E%7B2%7D-%5Cfrac%7Bk%28k%2B1%29%5E%7B2%7D%7D%7B4%7D%5Cright%29+%5Cend%7Baligned%7D)]
在k和N都较大时,服从自由度为k-1的χ2 分布.
然而,上述这样的"原始Friedman 检验"过于保守,现在通常使用变量
式2 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9CCitq8r-1619744339064)(https://www.zhihu.com/equation?tex=%5Ctau_%7BF%7D%3D%5Cfrac%7B%28N-1%29+%5Ctau_%7B%5Cchi%5E%7B2%7D%7D%7D%7BN%28k-1%29-%5Ctau_%7B%5Cchi%5E%7B2%7D%7D%7D)]
其中 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AZ5uaKU4-1619744339065)(https://www.zhihu.com/equation?tex=%5Ctau_%7Bx%5E%7B2%7D%7D)] 由上式得到. [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ooz8Tb8X-1619744339066)(https://www.zhihu.com/equation?tex=%5Ctau_%7BF%7D)] 服从自由度为k-1和(k-l)(N-1)的F分布,下表给出了一些常用临界值.

img表2

若"所有算法的性能相同"这个假设被拒绝,则说明算法的性能显著不同.这时需进行"后续检验" (post-hoc test)来进一步区分各算法.常用的有 Nemenyi 后续检验.
Nemenyi 检验计算出平均序值差别的临界值域
式3 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qJvjaeyj-1619744339066)(https://www.zhihu.com/equation?tex=CD%3Dq_%7B%5Calpha%7D+%5Csqrt%7B%5Cfrac%7Bk%28k%2B1%29%7D%7B6+N%7D%7D)] 小表给出了 α= 0.05和 0.1 时常用的如值.若两个算法的平均序值之差超出了临界值域 CD, 则以相应的置信度拒绝"两个算法性能相同"这一假设。

img表3

以表1中的数据为例,先根据式1和2计算出 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J5UnuQ65-1619744339067)(https://www.zhihu.com/equation?tex=%5Ctau_%7BF%7D)] =24.429,由表2可知,它大于α= 0.05时的F检验临界值5.143,因此拒绝"所有算法性能相同"这个假设.然后使用 Nemenyi 后续检验,在表3中找到k=3时 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7b4u21wY-1619744339067)(https://www.zhihu.com/equation?tex=q_%7B0.05%7D)] =2.344,根据式3计算出临界值域CD=1.657,由表1中的平均序值可知,算法A与B的差距,以及算法B与C的差距均未超过临界值域,而算法A与C的差距超过临界值域,因此检验结果认为算法 A 与 C 的性能显著不 同,而算法 A 与 B、以及算法 B 与 C 的性能没有显著差别.

上述检验比较可以直观地用Friedman 检验图显示.例如根据表1的序值结果可绘制出下图,图中纵轴显示各个算法,横轴是平均序值.对每个算法,用一个圆点显示其平均序值,以圆点为中心的横线段表示临界值域的大小.然后就可从图中观察,若两个算法的横线段有交叠,则说明这两个算法没有显著差别,否则即说明有显著差别.从下图中可容易地看出,算法A与B没有显著差别,因为它们的横线段有交叠区域,而算法A显著优于算法C因为它们的 横线段没有交叠区域.

img
2.5 偏差与方差

偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力;

方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响;

噪声则表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度。

针对基于均方误差的回归任务,

在这里插入图片描述

也就是说,泛化误差可分解为偏差、方差与噪声之和

一般来说,在训练能力不足时,学习器的拟合能力不够强,训练数据的扰动不足以使学习器产生显著比那好,此时偏差主导了泛化错误率;随着训练程度的加深,学习器的拟合能力逐渐增强,训练数据发送的扰动渐渐能被学习器学到,方差逐渐主导了泛化错误率;在训练程度充足后,学习器的拟合能力非常强,训练数据发生的轻微扰动都会导致学习器发生显著变化,若训练数据自身的、非全局的特性被学习器学到了,则将发生过拟合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yozu_Roo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值