机器学习验证集为什么不再有新意?
作者头像
  • 闲聊科技
  • 2020-03-06 20:00:37 9

在机器学习中,通常会将样本数据分为三个独立的部分:训练集、验证集和测试集。验证集的主要作用在于调整模型的参数,通过在验证集上运行训练好的模型,获取反馈信号以修正网络模型及其参数。然而,在划分样本数据的过程中,往往受到一些过时规则和思维定式的限制,使得验证集的划分和使用面临不少挑战。

数据科学家雷·海伯尔撰写了一篇文章,探讨了验证集当前面临的问题,并提出了改进方案。他指出,验证集现在变得不再有新意。针对这个问题,他提出了一些创新的心智模型,旨在解决验证集当前的困境。

初学者在进入数据科学领域时,通常了解到需要独立的数据集来训练和验证机器学习模型。但实现这一点并不容易。尽管我们对于数据集划分背后的直觉很简单,但深入了解这一行业难题仍然存在诸多障碍。

其中一个障碍是过度依赖过时的“经验法则”,比如将数据集划分为70%的训练集和30%的测试集,或者是大数据出现前的方法。另一个障碍是,许多人会遇到一个问题:如果我们仅通过调整超参数就能导致测试集过拟合,那么是否也会导致验证集过拟合?然而,研究人员尚未找到满意的答案。

事实上,验证集确实可能过拟合。这并非新鲜事,本文尝试探讨这种现象背后的原因,并希望通过这种方式,更好地理解过拟合和数据划分问题,而不仅仅是讨论一些面试中需要了解的概念。

接下来,我们将讨论“损失曲面”的概念,以及如何利用样本曲面与总体曲面之间的关系来理解验证集过拟合的现象。在此过程中,我们将基于一些简化的假设开发实用的心智模型,并通过一个快速实验来验证我们的理解。

一、损失曲面

损失曲面是指机器学习模型的损失或误差作为其参数的函数。虽然这个概念看似简单,但了解它可以帮助我们更好地探索相关领域的有趣内容和研究。

损失曲面是一个可以通过梯度下降或其他方法遍历的函数。尽管我们通常将损失曲面视为模型参数的函数,也可以将其视为超参数的函数。需要注意的是,虽然损失可以根据数据和模型参数显式计算,但损失与模型超参数之间的联系更为间接。

关键在于,每个数据集分区都有独立的损失曲面,而训练集、验证集和测试集的损失曲面各不相同。如果数据划分得当,每组数据都应该是代表性的但不相同的样本。所有现有数据的损失曲面与真实环境中的潜在“总体”数据的损失曲面不同。因此,我们需要验证集和测试集,以便即使验证集随着时间推移泄露信息,我们仍然可以无偏估计模型在真实环境中的性能。

二、面向心智模型:假设独立的超参数

对于理想的损失曲面,超参数是“独立的”,这意味着超参数与损失之间没有相互作用项。这样的函数等高线不会对角突出。这样的损失曲面之所以理想,是因为在处理它们时,可以将调整多个超参数的任务分解为依次调整一个超参数。由于每个超参数的最佳值都与其他超参数相关,因此我们可以按顺序而不是并行地调整超参数。

换言之,每个超参数都可以被视为一个旋钮。我们所做的就是不断调整每个特定旋钮,直到找到最佳位置。然后,我们可以将每个旋钮的调整结果与损失曲面的投影关联起来。这部分函数只有一个自变量:正在调整的超参数。

当调整每个旋钮后,叠加这些函数的投影。然后选择用于确定最佳超参数值的验证数据的损失曲面,以及总体数据的假设损失曲面,这是我们期望的模型最优结果,也是测试集的估计(如果采样正确)。

当我们根据验证集数据每次都将旋钮调至最佳值时,可能会发现验证集和“总体”损失曲面不太一致。每次调整一个超参数值以使验证集的损失曲面达到峰值时,我们可能已经越过“总体”损失曲面的峰值。调整得越多,越过的峰值就越多。这将导致验证集和实际性能(由测试集估计)之间的差距越来越大。

三、“弄脏”我们的手:模拟验证集过拟合

作为数据科学家,我们不能仅仅通过理论阐述一个观点。虽然假设超参数之间没有交互作用有助于开发心智模型,但在实际场景中,这种情况很少发生。为了验证这一假设,我们进行了一项关于梯度提升回归模型的实验。选择梯度提升算法的原因是它具有大量的超参数。

根据我们对验证集过拟合的理解,预期的结果是:随着调整次数的增加,验证集和测试集之间的性能差距将不断扩大。在实验中,“更多”调整定义为通过五个不同的超参数进行多次随机搜索迭代。迭代次数越多,就越有可能在验证集上找到更好的结果。如果心智模型的部分最优值确实来自非泛化的验证数据异常,那么我们希望在测试数据上不要出现这种性能提升。

在展示最终结果之前,需要提前说明一点:这个实验可能倾向于支持我的论点。当然,通过使用较大的验证集可以减少验证集过拟合的风险,但我使用了较小的数据集进行训练和验证,即“波士顿房价”数据集,为的是可以轻松地演示过度调整小的验证集的情况。

四、结论

实际上,这是我第二次尝试解释超参数调整与验证集过拟合之间的关系。令人惊讶的是,我们很难清楚地解释相对简单的潜在直觉。尽管本文旨在更深入、更高级地解释超参数调整和过拟合验证集之间的关系,但我们仍有更多角度和思考方式。Cassie Kozyrkov 最近发布的一篇文章,将教学和《憨豆先生》进行类比,对数据集分割进行了有趣的阐述。

很高兴看到数据社区提出一些其他的想法。

    本文来源:图灵汇
责任编辑: : 闲聊科技
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
集为新意再有验证机器学习什么
    下一篇