首页 > 解决方案 > 何时使用训练验证测试集

问题描述

我知道这个问题很常见,但我已经查看了之前提出的所有问题,但我仍然不明白为什么我们还需要验证集。我知道有时人们只使用一个训练集和一个测试集,那么为什么我们还需要一个验证集呢?我们如何使用它?例如,为了估算缺失数据,我是否分别估算这 3 个不同的集合?

谢谢!

标签: rvalidationtestingsplit

解决方案


我将尝试用一个例子来回答。

如果我正在训练神经网络或进行线性回归,并且我只使用训练和测试数据,我可以检查每次迭代的测试数据丢失,并在测试数据丢失开始增长或获取模型快照时停止具有最低的测试损失。

从某种意义上说,这对我的测试数据“过度拟合”,因为我决定何时停止基于此。

如果我正在使用测试、训练和验证数据,我可以使用验证而不是测试数据执行与上述相同的过程,然后在我决定我的模型何时完成训练后,我可以在从未见过的测试数据上对其进行测试给我一个更公正的模型预测分数。

对于问题的第二部分,我建议至少将测试数据视为独立的,并对缺失的数据进行不同的估算,但这取决于情况和数据。


推荐阅读