模型选择问题(Model Selection Problem)
我们在之前得知,通过最小化Ein来选择最好的模型不是一个正确的办法,因为这样可能会付出模型复杂度的代价、造成泛化效果差、造成过拟合的发生。
为了解决这个问题,我们的想法是找一些测试数据来看看哪种模型对应测试数据的效果更好,但是用新的测试数据来作这个事情,实际上是做不到的自欺欺人的办法。
我们对比这两种方式,用训练数据来作选择的话,由于这些数据决定了最终的假设,所以再用这些训练数据来作验证的时候已经被“污染”了;而如果用新的数据对于测试验证的来说,是“清洁”的。
折中的办法是,将可用的数据留一小部分作为验证数据,当做模型选择的时候,再拿来用于验证。
验证
现在,我们从手中的数据拿出一小部分出来作验证数据,我们拿它来模拟测试数据。为了将针对验证数据的错误Eval和Eout联系起来,我们希望数据独立同分布于原始数据的分布;剩下的数据用作训练数据,可以用来做模型选择。
使用最佳的Eval做模型选择
在做模型选择时,我们遵循以下流程,首先将数据集D分成两