模型评估与选择(下)

比较检验

在机器学习中,比较检验是用于比较不同模型、算法或参数设置之间性能差异的一种统计分析方法。比较检验可以帮助我们确定哪种方法更适合解决特定的问题,从而指导模型选择和参数调优。

进行比较检验的主要原因包括:

  1. 验证模型的稳定性和一致性:通过比较不同设置下的模型性能,可以验证模型的稳定性和一致性,即模型在不同数据集或参数下的表现是否一致。

  2. 选择最佳模型或算法:比较检验可以帮助我们确定哪种模型或算法在给定数据集和任务下表现最好,从而选择最佳的模型或算法。

  3. 验证假设或理论:比较检验也可以用于验证某些假设或理论,例如某种算法是否在某种情况下比另一种算法更有效。

假设检验

在机器学习中,假设检验是一种统计学方法,用于检验某个假设在给定数据下的合理性。在实际应用中,假设检验通常用于比较两个或多个模型、算法或参数设置之间的差异,以确定这些差异是否具有统计学意义。

假设检验的基本思想是假设一个关于总体参数的假设(称为原假设),然后根据样本数据来判断这个假设是否应该被拒绝。通常情况下,我们会先假设原假设成立,然后计算样本数据出现的概率(称为p值),如果p值小于一定的显著性水平(通常设为0.05或0.01),则拒绝原假设,否则接受原假设。

在机器学习中,假设检验通常用于比较单个学习器的泛化性能,即检验某个学习器在未知数据上的表现是否显著优于随机猜测。对于单个学习器的假设检验,可以使用不同的方法,如交叉验证t检验等。

交叉验证t检验

交叉验证通过多次划分数据集,并使用不同的子集进行训练和测试,来评估模型的性能。其中,交叉验证t检验是用来比较不同模型的性能是否有显著差异的统计检验方法之一。

具体来说,交叉验证t检验包括以下步骤:

  1. 数据集划分:将数据集随机分成 k 个子集,其中一个子集作为验证集,其余 k-1 个子集作为训练集。

  2. 模型训练:使用训练集训练模型。

  3. 模型评估:使用验证集评估模型性能,得到一个性能指标(比如准确率、均方误差等)。

  4. 重复步骤 1-3:重复 k 次,每次选取不同的验证集。

  5. 统计检验:将 k 次验证集上得到的性能指标进行比较,使用 t 检验来检验模型性能是否有显著差异。

t检验和t分布是统计学中常用的两个概念,通常用于比较两个样本均值是否有显著差异。下面我会分别介绍一下这两个概念:

  1. t检验(t-test):t检验是一种用于比较两个样本均值是否有显著差异的统计检验方法。它适用于样本量较小(一般小于30)的情况下,且样本服从正态分布或接近正态分布的情况。

    假设我们有两组样本,要比较它们的均值是否有显著差异。t检验会计算两组样本的均值差异,并考虑样本的大小和方差,最终得出一个t值。通过比较这个t值和t分布的临界值,就可以判断两组样本均值是否有显著差异。

  2. t分布(t-distribution):t分布是一种概率分布,它是由样本量(n)和自由度(degrees of freedom)决定的。t分布的形状类似于正态分布,但是随着自由度的增加,其形状会越来越接近正态分布。

    在t检验中,我们会使用t分布的性质来计算临界值,从而进行假设检验。当样本量较小时,样本的方差往往会被高估,因此t分布会比正态分布更适合用来处理小样本的情况。

McNemar检验

McNemar检验是一种用于比较两个分类器在同一数据集上的性能的统计方法。它适用于二分类问题,例如正类和负类。McNemar检验基于一个2x2的列联表,表格如下:

             预测正类   预测负类
实际正类     a              b
实际负类     c              d

在这个表格中,a表示两个分类器都正确分类的样本数,b表示第一个分类器正确但第二个分类器错误的样本数,c表示第一个分类器错误但第二个分类器正确的样本数,d表示两个分类器都错误的样本数。

McNemar检验的原假设是两个分类器的错误率相等,即b=c。根据这一假设,可以计算McNemar检验统计量:

\chi^2 = \frac{(|b-c|-1)^2}{b+c}

如果该统计量的值大于某个临界值(通常是基于卡方分布的临界值),就可以拒绝原假设,从而得出结论:两个分类器在同一数据集上的性能存在显著差异。

McNemar检验通常用于比较两个分类器在相同数据集上的性能,特别是在样本量较小的情况下。

Friedman 检 验 与 Nemenyi 后续检验

Friedman检验是一种非参数统计检验方法,用于比较同一组观测对象在不同处理条件下的表现。它适用于多个配对样本的情况,例如在比较不同算法在多个数据集上的性能时。

Friedman检验的基本思想是将每个观测对象在不同处理条件下的表现排名,然后比较这些排名是否在不同处理条件下有显著差异。具体步骤如下:

1. 将每个观测对象在不同处理条件下的表现按照大小排名,相同表现的对象可以共享一个排名。
2. 对每个处理条件计算排名的平均值,得到每个处理条件的平均排名。
3. 计算Friedman统计量:

\chi^2 = \frac{12}{N k (k+1)} \left( \sum_{j=1}^{k} R_j^2 - \frac{k (k+1)^2}{4} \right)

其中,N 是观测对象的数量,k 是处理条件的数量,R_j是第 j个处理条件的平均排名。

4. 根据Friedman统计量的值和自由度df = k-1,查找临界值,以确定是否拒绝原假设。

为什么要使用Friedman检验呢?因为在某些情况下,我们无法假设数据服从正态分布或者数据的方差不符合方差齐性的要求,这时候传统的方差分析等参数统计方法就不适用了。而Friedman检验是一种非参数方法,不需要对数据的分布做出假设,因此更加灵活,适用性更广。

Nemenyi后续检验

Nemenyi后续检验是一种非参数多重比较方法,用于在Friedman检验中拒绝原假设后,进一步比较各处理条件之间的差异。这个方法的主要目的是确定哪些处理条件之间存在显著差异。

Nemenyi后续检验的步骤如下:

  1. 计算每对处理条件之间的平均秩差(也称为临界差值)。

  2. 根据所选的显著性水平(通常为0.05)和处理条件的数量,确定Nemenyi检验的临界值。

  3. 比较每对处理条件之间的平均秩差与临界值的大小关系,如果某对处理条件之间的平均秩差大于临界值,则可以得出这两个处理条件之间存在显著差异的结论。

在Friedman检验中,如果拒绝了原假设(即不同处理条件之间的表现有显著差异),我们希望进一步了解哪些处理条件之间的差异是显著的,以便做出更具体的结论。Nemenyi后续检验提供了一种有效的方法来比较多个处理条件之间的差异,而不需要假设数据符合特定的分布。因此,它是一种有用的工具,特别适用于实验设计中涉及多个处理条件的情况。

来源: Analysis and Comparison of Vector Space and Metric Space Representations in QSAR Modeling

 偏差与方差

  1. 偏差(Bias):度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力。偏差越小,说明模型对训练数据的拟合程度越高。

  2. 方差(Variance):度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响。方差越小,模型在不同数据集上的表现越稳定。

  3. 噪声(Noise):表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度。噪声越小,说明任务本身越容易学习。

  4. 泛化误差可分解为偏差、方差和噪声之和,模型在未见过的数据上的预测误差可以由这三个部分的影响累加而成。要改善模型的泛化性能,需要同时降低偏差(使模型更复杂,能够更好地拟合数据)和方差(使模型更简单,减少对训练数据的过度拟合),并且不能忽视数据中的噪声。

偏差-方差分解说明,模型的泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度共同决定的。为了取得好的泛化性能,需要使偏差较小(即能够充分拟合数据)同时使方差较小(即使得数据扰动产生的影响小)。

偏差与方差之间存在着一种冲突关系,称为偏差-方差窘境(bias-variance dilemma)。在训练不足时,偏差主导了泛化错误率;随着训练程度的加深,方差逐渐主导了泛化错误率;在训练程度充足后,可能会出现过拟合的情况。找到偏差和方差的平衡点是提高模型泛化性能的关键。

 

  • 21
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值