假设一个模型对训练数据的准确性为100%,但对测试数据的准确性为70%。关于该模型,以下论点正确吗?
显然,这是一个过拟合模型。通过减少过度拟合可以提高测试精度。但是,此模型仍然可以是有用的模型,因为它对于测试数据具有可接受的准确性。
假设一个模型对训练数据的准确性为100%,但对测试数据的准确性为70%。关于该模型,以下论点正确吗?
显然,这是一个过拟合模型。通过减少过度拟合可以提高测试精度。但是,此模型仍然可以是有用的模型,因为它对于测试数据具有可接受的准确性。
Answers:
我认为论点是正确的。如果在特定应用中可以接受70%的比例,则即使模型过度拟合(无论是否过度拟合),模型仍然有用。
在平衡过度拟合与欠拟合之间要考虑最优性(寻找最佳解决方案),而具有令人满意的性能则要足够(模型是否足以完成任务?)。模型可以是足够好的而不是最优的。
编辑:在OP下Firebug和Matthew Drury发表评论后,我将补充一点,即在不知道验证性能可能会出现问题的情况下,判断模型是否过拟合。Firebug建议将验证与测试性能进行比较,以衡量过度拟合的数量。但是,当模型在训练集上提供100%的准确性而在测试集上没有提供100%的准确性时,它指示可能过度拟合(尤其是在回归的情况下,但不一定在分类中)。
set.seed(100)
set.seed(15)
在我过去的“信用卡欺诈”检测项目中,我们有意让数据/硬编码过大以记住欺诈案件。(请注意,过度拟合一类并不是OP所讨论的一般过度拟合问题。)这种系统的误报率相对较低,可以满足我们的需求。
因此,我想说,过度拟合模型在某些情况下会很有用。
也许:当心。当您说70%的准确度(无论如何衡量)对您来说足够好时,感觉就像您在假设错误是随机分布还是均匀分布。
但是,过拟合的一种方法是,当模型技术允许(并且鼓励其训练过程)过多地关注训练集中的怪癖时,就会发生这种情况。拥有这些怪癖的普通人群中的受试者可能会有高度不平衡的结果。
因此,也许您最终会得出一个模型,该模型说所有的红狗都患有癌症-由于训练数据中的特殊问题。或24至26岁的已婚人士几乎可以保证提出欺诈性的保险索赔。您的70%的准确性为模型的过拟合造成了很大的余地,使很多受检者会100%错误。
(不过度拟合并不能保证您不会有很多错误的预测。事实上,拟合不足的模型会有很多不良的预测,但是通过过度拟合,您会知道自己在训练数据中放大了怪癖的影响)
不,它们可能有用,但这取决于您的目的。我想到了几件事:
这样的分类器在合奏中真的很有用。我们可以有一个权重正常的分类器,一个比TPR重的分类器,一个比FNR重的分类器。然后,即使是简单的三选一投票或平均,也将比任何单个最佳分类器提供更好的AUC。如果每个模型使用不同的超参数(或二次抽样训练集或模型体系结构),那么该集合就可以避免过度拟合。
同样,对于实时的反垃圾邮件,反欺诈或信用评分,使用分类器层次结构也是可以的。1级分类器的评估应该非常快(ms),并且FPR高也可以;他们所犯的任何错误都会被更准确,功能齐全,速度较慢的高级分类器或最终由人工审核者发现。明显的例子:防止Twitter帐户收购中的假新闻头条(例如2013年“白宫炸弹袭击杀死三人”)影响发布后毫秒内的数十亿美元交易。级别1分类器可以将其标记为垃圾邮件是可以的。让我们花一点时间(自动)确定耸人听闻但未经验证的新闻报道的真假。
我并不否认过度拟合的模型仍然有用。但是请记住,这70%可能是一种误导性信息。为了判断模型是否有用,您需要的是样本外误差,而不是测试误差(样本外误差是未知的,因此我们必须使用盲测集来估计它),而70%几乎不是很好的近似值。
为了确保我们在@RichardHardy的注释后在术语的同一页上,让我们将测试误差定义为在盲测集上应用模型时获得的误差。样本外误差是将模型应用于整个总体时的误差。
样本外误差的近似值取决于两件事:模型本身和数据。
“最佳”模型的准确性(测试)几乎不依赖于数据,在这种情况下,这将是一个很好的近似值。“不管”数据如何,预测误差将是稳定的。
但是,过拟合模型的准确性高度依赖于数据(如您在训练集上提到的100%,在另一组上提到的70%)。因此,当应用到另一个数据集时,准确性可能会低于70%(或更高),并且我们可能会感到意外。换句话说,有70%的人告诉您您相信的是什么,但事实并非如此。