交叉验证的基本想法是重复地使用数据,把给定的数据进行切分,将切分的数据集组合为训练集与测试集,在此基础上反复地进行训练、测试以及模型选择。
简单交叉验证方法是:首先随机地将已给数据分为两部分,一部分作为训练集,一部分作为测试集,然后用训练集在各种条件下训练模型,从而得到不同的模型,在测试集上评估各个模型的测试误差,选出测试误差最小的模型。
K折交叉验证:首先随机地将已给数据切分为K个互不相关的的大小相同的子集,然后利用K-1个子集的数据训练模型,利用余下的子集测试模型,将这一过程对可能的K中选择重复进行,最后选出K次评测中平均测试误差最小的模型。
留一交叉验证:K折交叉验证的特殊情形是K=N,N为给定数据集的容量。