交叉验证是进行模型比较的一种有效方法。
它的基本原理如下(Kohavi,1995):
(1)把原始数据集分解成 r个大小近似相等的子数据集。
(2)把第一个子数据集作为验证数据集,把其余r-1个子数据集合并后用于估计模型参数。基于该模型的参数对验证数据集的因变量进行预测,并计算预测误差的平方和。
(3)把第二个、第三个......直至第r个子数据集分别作为验证数据集,并把其余的r-1个子数据集合并后用于估计模型参数。基于验证数据集计算因变量预测误差的平方和。
(4)计算前述r个预测误差平方和的平均值,平均值最小的模型为最优模型。