机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       机器学习种性能比较是个很复杂的问题,需要考虑的因素很多。那么如何对单个或多个学习器在不同或相同测试集上的性能度量结果做比较呢?这就是比较检验。偏差与方差是解释学习器泛化性能的一种重要工具。                                   

                                                  4. 比较检验

       统计假设检验(hypothesis test)为我们进行学习器性能比较提供了重要依据。基于假设检验结果我们可推断出,若A在某测试集上的性能优于B,那A的泛化性能是否在统计意义上优于B,以及这个结论的把握有多大。下面介绍两种最基本的假设检验。以“错误率”作为性能度量的标准。

4.1 假设检验

       “假设”是对学习器泛化错误率分布的某种判断或猜想。我们可以通过测试获得测试错误率,但直观上测试错误率和泛化错误率相差不会太远,因此可以通过测试错误率来推测泛化错误率的分布,这就是一种假设检验。

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       泛化错误率为机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)的学习器,测试错误率为机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)‘,那么在m个样本中,有机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’×m个样本误分类。

  • 上式表示,在m个样本中,恰有机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’×m个样本被误分类,其余样本正确的概率。
  • 它也可以表示,在包含m个样本的测试集上,泛化错误率为机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)的学习器被测得测试错误率为机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)‘的概率。

     给定测试错误率机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)',上式P(机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’;机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下))对∈求导可知,P(机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’;机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下))在机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)=机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’时最大,|机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)-机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)‘|增大时P(机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’;机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下))减小。符合二项(binomial)分布。

  • 二项检验

       我们使用“二项检验”来对“机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)<=0.3”(即泛化错误率是否不大于0.3)这样的假设进行检验。更一般的,考虑假设“机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)<=机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)”,则在1-α的概率内所能观测到的最大错误率如下式计算:

ps:

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

      此时,若测试错误率机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)’小于临界值 (上式求得的),则根据二项检验可得出结论:在α的显著度下,假设“机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)<=机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)”不能被拒绝,即能以1-α的置信度认为,学习器的泛化错误率不大于机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下);否则该假设可被拒绝,即在α的显著度下可认为学习器的泛化错误率大于机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

  • t检验:

       在很多时候,我们并非仅做一次留出法估计,而是通过多次重复留出法或是交叉验证法等进行多次训练/测试,这样会得到多个测试错误率,此时可使用“t检验(t-test)”。假定我们得到了k个测试错误率,机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下),...,机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下),则平均测试错误率机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)和方差机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)为:

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

 

 

 

 

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       前面介绍的两种检验方法,都是对单个学习器泛化性能的假设进行检验,现实中,我们常常需要对不同学习器的性能进行比较,下面就针对此类情况进行假设检验方法介绍。 

4.2 交叉验证t检验

       “成对t检验”:对两个学习器A和B使用K折交叉验证法,机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)是在相同的第i折训练/测试集上得到的结果,若A和B性能相同,则机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)=机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)。我们对每对结果求差,机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下);若两个学习器性能相同,则差值均值应为0。因此,可根据差值机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下),...,机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)来对“学习器A与B性能相同”这个假设进行t检验,计算出差值的均值μ和方差机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下),在显著度α下,若变量:

                                                                       机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

小于临界值 机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下),则假设不能被拒绝,即认为两个学习器的性能没有显著差别;否则认为二者的性能有显著差别,且平均错误率较小那个学习器性能较优。这个临界值是*度为k-1的t分布上尾部累计分布为α/2的临界值。

        想要进行有效的假设验证,前提是测试错误率均为泛化错误率的独立采样。但在k折交叉验证中,不同轮次的训练集会有一定程度的重叠,我们采用“5×2交叉验证”来解决。

       “5×2交叉验证”法就是做5次2折交叉验证。每次2折交叉验证都产生两对测试错误率,我们对他们分别求差,得到第1折上的差值机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)和第2折上的差值机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       为了缓解测试错误率的非独立性,平均值μ的求法:仅计算第1次2折交叉验证的两个结果的平均值。但对每次二者实验都计算出其方差。之后的操作和前面的相同,这里不再赘述。

4.3 McNemar检验

       MaNemar主要用于二分类问题,与成对t检验一样也是用于比较两个学习器的性能大小。主要思想是:若两学习器的性能相同,则A预测正确B预测错误数应等于B预测错误A预测正确数,即e01=e10,且|e01-e10|服从N(1,e01+e10)分布。

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       因此,如下所示的变量服从*度为1的机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)分布,即服从标准正态分布N(0,1)的随机变量的平方和,下式只有一个变量,故*度为1,检验的方法同上:做出假设–>求出满足显著度的临界点–>给出拒绝域–>验证假设。 

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

 4.4 Friedman检验与Nemenyi后续检验

       前面说到的检验都只是在一个数据集上比较两个算法的性能,Friedman检验则可以在多组数据集进行多个学习器性能的比较,它是基于算法排序的一种检验方法。基本思想是在同一组数据集上,根据测试结果(例:测试错误率)对学习器的性能进行排序,赋予序值1,2,3…,相同则平分序值,如下图所示

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

        若学习器的性能相同,则它们的平均序值应该相同,且第i个算法的平均序值ri服从正态分布N((k+1)/2,(k+1)(k-1)/12),则有:

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

        当k和N都较大时,服从*度为k-1的机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)分布。

        上述是原始的Friedman检验,现在通常使用变量:

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

        服从*度为k-1和(k-1)(N-1)的F分布。

        若“所有算法的性能相同”这个假设被拒绝,则需要进行后续检验,来得到具体的算法之间的差异。常用的就是Nemenyi后续检验。Nemenyi检验计算出平均序值差别的临界值域:

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       下表是常用的机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)值,若两个算法的平均序值差超出了临界值域CD,则相应的置信度1-α拒绝“两个算法性能相同”的假设。

 

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

2.5 偏差与方差 

       ”偏差-方差分解“(bias-variance decomposition)是解释学习算法泛化性能的一种重要工具。  

       在学习算法中,偏差度量了期望预测与真实结果的偏离程度;方差度量了同样大小的训练集的变动所导致的学习性能的变化;噪声则表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界。

  • 期望泛化误差=方差+偏差;
  • 偏差刻画学习器的拟合能力;
  • 方差体现学习器的稳定性;
  • 偏差-方差分解说明,泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。

       方差和偏差具有矛盾性,这就是常说的偏差-方差窘境(bias-variance dilamma),随着训练程度的提升,期望预测值与真实值之间的差异越来越小,即偏差越来越小,但是另一方面,随着训练程度加大,学习算法对数据集的波动越来越敏感,方差值越来越大。

机器学习西瓜书(周志华)学习笔记(3)-模型评估与选择(下)

       换句话说:在欠拟合时,偏差主导泛化误差,而训练到一定程度后,偏差越来越小,方差主导了泛化误差。因此需要注意,不要出现过拟合的情况啦。