原理:它的基本思想就是将原始数据(dataset)进行分组,一部分做为训练集来训练模型,另一部分做为测试集来评价模型
方法:
1.留出法 (holdout cross validation):三部分:训练集、验证集和测试集。
训练集用于训练模型,验证集用于模型的参数选择配置,测试集对于模型来说是未知数据,用于评估模型的泛化能力
2.K折交叉验证(k-fold cross validation):k 折交叉验证通过对 k 个不同分组训练的结果进行平均来减少方差,因此模型的性能对数据的划分就不那么敏感
3.当 上述k=m 即样本总数时 ,则叫留一法(Leave one out cross validation),每次的测试集都只有一个样本,要进行 m 次训练和预测。
使用交叉验证原因:
- 交叉验证用于评估模型的预测性能,尤其是训练好的模型在新数据上的表现,可以在一定程度上减小过拟合。
- 还可以从有限的数据中获取尽可能多的有效信息