k折交叉验证优缺点_为什么要用交叉验证

本文结构:

什么是交叉验证法?

为什么用交叉验证法?

主要有哪些方法?优缺点?

各方法应用举例?

什么是交叉验证法?

它的基本思想就是将原始数据(dataset)进行分组,一部分做为训练集来训练模型,另一部分做为测试集来评价模型。

为什么用交叉验证法?

交叉验证用于评估模型的预测性能,尤其是训练好的模型在新数据上的表现,可以在一定程度上减小过拟合。

还可以从有限的数据中获取尽可能多的有效信息。

主要有哪些方法?

1. 留出法 (holdout cross validation)

在机器学习任务中,拿到数据后,我们首先会将原始数据集分为三部分:训练集、验证集和测试集。

训练集用于训练模型,验证集用于模型的参数选择配置,测试集对于模型来说是未知数据,用于评估模型的泛化能力。

这个方法操作简单,只需随机把原始数据分为三组即可。

不过如果只做一次分割,它对训练集、验证集和测试集的样本数比例,还有分割后数据的分布是否和原始数据集的分布相同等因素比较敏感,不同的划分会得到不同的最优模型,而且分成三个集合后,用于训练的数据更少了。

于是有了 2. k 折交叉验证(k-fold cross validation)加以改进:

k 折交叉验证通过对 k 个不同分组训练的结果进行平均来减少方差,因此模型的性


版权声明:本文为weixin_35873811原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。