我指的是在处理过度拟合的同时选择模型的训练/验证/测试集。
以下是论点的方式:-
我们在训练集上训练各种模型。(这个很简单)很明显,如果这个数据集中有任何噪音,当我们向不同的模型添加特征时,我们将过度拟合训练集中的噪音。这对我来说很清楚。
然后我们在验证集上选择最好的模型。这将过拟合验证集。这对我来说不是很清楚。
因为我们在验证集上过拟合了最佳模型,为了了解最佳模型造成的真实错误,我们应该评估测试集上的最佳模型。
我的查询是:当我们做(2)时,只有当验证集与训练集具有相同的噪声时,我们才可能过度拟合验证集。但是,我们随机打乱了这些点并将它们放入训练/验证/测试集中。训练集和验证集不太可能具有相同的噪声(我认为这种现象称为孪生)。这就是为什么我认为我们不会过度拟合验证集。
另一个验证集可能过拟合的例子是,如果我们有大量的高方差模型,那么当我们在验证集上选择最好的模型时,它将过度拟合验证集中的噪声。假设我只说 10 个模型,那么这也不太可能。
这就是为什么我认为我们不需要测试集。我想我误解了这个话题。有人可以澄清我错在哪里吗?
对于延迟回复,我深表歉意。我想澄清我的疑问。在使用验证集时,我们的目标可能是找到全局最优值,但是已经适合训练集的函数的轮廓不能自由地学习验证集中的噪声。那这是我不相信的。你能给我一个例子,我们过拟合训练集然后过拟合验证集吗?我给你举一个例子。假设我们正在做 k-最近邻,并且训练/验证集中的每个项目恰好出现 2 次。然后我们将过拟合训练和验证集并得到 k=1。最近的邻居将完美地预测任何选定的点。然而,在这个例子中,我们有“孪生”。SAME 噪声存在于训练和验证集中。你能告诉我一个例子,我们过度拟合训练和验证集但没有孪生。