交叉验证及其目的

首先,为什么要交叉验证:目的有两个:

1.选择合适的模型

2.选择合适的参数

1.对于一个问题,可以用模型m1,m2,不知道哪个的准确率高,可以交叉验证一下,从而选择用哪个

2.对于一个模型,参数的选择会影响结果,所以用交叉验证选择最合适的参数

然后,常用的交叉验证的方式是k折交叉验证(k-fold cross validation)

把数据集分为训练集和测试集:

先把所有数据分成k组,其中k-1组作为训练集,剩下的一组作为测试集,这样有k种选法

把k种选法得到的训练集和测试集进行模型训练和测试,得到的结果平均,就是交叉验证的结果。

还有一种方法,就是留n法,每次把n个数据作为测试集,留1法就是k折的一个特例。

原文地址:https://www.cnblogs.com/stAr-1/p/8118511.html