选项1是正确的。您可以添加验证数据集以更新模型的参数。
那就是答案。现在让我们讨论一下。如果您对引导程序进行了k倍交叉验证,那么您所做的就是上面的选择1的事实就更清楚了(您应该这样做-从您的问题中还不清楚)。
在5倍交叉验证中,您将拥有的数据分为5个大小相等的随机集合。让我们称它们为A,B,C,D和E。然后您在4个集合(例如A,B,C和D)中学习(模型本身的)模型参数,并对其进行测试或验证第五个模型E。(您做到了)但是,然后您选择另一组作为测试/验证(例如D)并学习使用其他4组(A,B,C和E)。在D上测试,重复一次。
您的预测模型的误差是5个测试的平均误差-您对预测误差如何取决于学习和测试集有一定的了解。在最佳情况下,所有5种错误度量都是相似的,您可以合理地确定模型将来会在该级别执行。
但是什么型号?对于每组学习集,您将拥有一个不同的模型参数。用A,B,C,D学习会生成参数集P1,使用A,B,C,E学习会生成参数集P2,直到P5。他们都不是您的模型。
您测试的是构建模型的过程的预期错误,即学习集为A,B,C,D以及为A,B,C,E时遵循的过程,依此类推。该过程是否生成具有该预期误差的模型?
那么最终的模型是什么?它是该过程在所有可用数据(A,B,C,D和E)中的应用。以前从未生成过带有参数集P0的新模型,您没有任何数据可以对其进行测试(因为您已经“使用”了所有数据来确定参数P0),但是您有合理的期望它会在将来执行数据与使用相同步骤构造的其他模型(P1,P2 ...)相同。
如果您没有执行交叉验证或引导程序(引导程序的解释有些复杂-在本次讨论中我将其省略),该怎么办?如果您仅执行了一次学习/验证拆分和一项错误度量,该怎么办。然后,参数2可能在某种程度上是正确的,但是您有一个更大的问题-您只有一种度量模型误差的方法,并且您不知道该误差与用来验证模型的数据之间的依赖程度。幸运的是,也许20%的验证集非常容易预测。如果没有进行多种错误度量,那么假设您的预测模型的预期错误率对于将来的数据保持相同将非常冒险。
哪个是“更大的风险”?假设错误对于将来的数据将基本保持不变,还是假设添加更多数据以学习模型将在某种程度上“扭曲”模型并在将来增加其错误率?我真的不知道如何回答这个问题,但是我会怀疑随着数据的增加而恶化的模型。