交叉验证法

交叉验证法

一般在我们训练模型的时候如果数据量够大,我们可以随机地将数据集分为训练集、验证集和测试集。训练集用于训练模型,验证集用于选择模型(看模型在验证集上的效果来选择较好的模型,所谓较好一般是指模型的损失较小),测试集用于最终对模型的评估。所以一般在神经网络训练的时候一般会有“validation”这个参数,其就是将输入的训练集再进行分割,从而得到验证集以选择模型。

但实际情况下,我们的数据往往不够充足。这个时候我们就可以使用交叉验证法了,其基本思想是重复地使用数据:把给定的数据进行切分,将切分后的数据组合为训练集与测试集,然后进行训练和测试来选择模型。

常见交叉验证法有

  1. 简单交叉验证
    随机地将已知数据分为两部分,一部分用作训练,一部分用于测试(通常将80% (或70%)用作训练,20%(或30%)用作测试)。然后在各种条件下训练模型然后测试误差,通常选择误差最小的模型
  2. S折交叉验证(S-fold cross validation)
    比较常用的一种方法,做法为将数据分为互不相交的 S S S等份;然后将 S − 1 S-1 S1份数据用于训练, 1 1 1份用作测试;将这一过程重复 S S S次;最后选择出 S S S次测评中平均测试误差最小的模型。
  3. 留一交叉验证
    还是S折交叉验证的方法,不过留下的不是 1 1 1份做测试,而是 1 1 1个数据做测试;这样的话如果我们有 n n n个样本,我们需要训练 n n n次,测试 n n n次。

Reference:

李航.《统计学习方法》[M].2012.3.北京:清华大学出版社,2019.5(重印):14-15.

boat_lee.交叉验证(交叉验证(简单交叉验证、k折交叉验证、留一法)).https://blog.csdn.net/u010451580/article/details/51373081.20160.5.11

创作不易,觉得写得不错就微信扫码奖励一下吧!

Reward

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值