分类模型的评价及比较

       当我们得到数据模型后,该如何评价模型的优劣呢?之前看到过这样一句话 :“尽管这些模型都是错误的,但是有的模型是有用的”,想想这句话也是挺有道理的!评价和比较分类模型时,关注的是其泛化能力,因此不能仅关注模型在某个验证集上的表现。事实上,如果有足够多的样本作为验证集来测试模型的表现是再好不过的,但即使是这样也存在一个难点,比如难界定多大的样本才能足够表现出模型的泛化能力。因此,一般的做法是借助统计学的方法,评估模型在某个验证集分类表现的显著性。

      评价及比较分类模型的过程,涉及到三个问题,一个是如何获取验证集,另一个是用什么度量指标表示分类表现,最后一个则是如何评估分类表现的显著性。

1.  验证集获取

        数据样本的数量总是有限的,这就导致在选择训练集和验证集时出现了诸多方法,常用的方法有留出法、交叉验证法、bootstrap方法,下面分别介绍。

1.1 留出法

        留出法一般用在样本数据量较大的情况。在使用留出法时,将样本数据D分为两部分,一部分为训练集S,另一部分为验证集T,训练集S用来生成模型,验证集T用来评估其测试误差,将其作为对泛化误差的估计,这个思路比较简单,但是数据集D的划分过程需要注意两点:ST的划分比例ST中样本的抽样方式

        ST的划分比例偏大时,由于T中数据样本量及包含的样本信息较少(糟糕的情况是其中还包含了较多噪声,这或许直接导致非常离谱的评估结果),因此其评估结果可能不够准确。即使T中包含了比较准确的样本信息,在换一个同等数量新的验证集时,可能包含的信息就不那么准确,评估结果也可能会有较大差别,故其评估结果不稳定;ST的划分比例偏小时,由于训练数据包含较少的样本信息,这样得到的模型本身就不可取,这种情况比“ST的划分比例偏大”更糟糕,之后用T得到的评估结果,已经是失真的了。那该如何选取训练集S与验证集T的划分比例呢?一般选用样本数据集D的2/3~4/5用来训练模型,剩余数据用来测试,验证集T应至少包含30个样本。

       选择合适的划分比例后,还有C^{k}_{n}(在n个样本中选取k个)的问题,因为此时样本选择仍有多种情况,单次使用留出法得到的评估结果往往不够可靠,一般采用多次随机划分、取评估结果的平均值的方式得到最终的评估结果。

1.2 交叉验证法

       交叉验证法中,将样本数据集D均分为k等份(注意,这个均分过程仍然要考虑1.1节中提到的信息均匀问题),前 k-1份作为训练集,剩余一份作为测试集,得到测试结果。由于测试集的选择方式有k种,因此在数据集D的一次划分过程中可以得到k个测试结果,将这k个测试结果的平均值返回作为最终结果,这个过程通常称为“k折交叉验证”。当k=10时,交叉验证的过程示意图如下

                                     

       在交叉验证过程中,在确定样本数据集D划分份数k时需要考虑1.1节中提到的训练集与测试集比例问题,除此之外,从数据集

  • 5
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值