交叉验证

在机器学习中,我们需要对模型进行训练跟测试评价,那么这时候就需要用到训练集跟测试集数据,但是有时候我们的数据集比较少,资源珍贵,如何才能更加有效地利用这些数据来训练模型呢,这就是交叉验证需要解决的问题。交叉验证的思想就是数据的重复利用,具体说就是将给定的数据集进行切分,将切分的数据集组合为训练集和测试集,利用数据集的不同组合对模型进行反复训练,测试以及模型的选择。

几种交叉验证的方法:简单的交叉验证、S折交叉验证,留一交叉验证


1、简单的交叉验证:Cross-validation

具体方法是:将所有数据组成的数据集随机地分成两部分,其中的一部分作为训练集,另一部分作为测试集。一般取样本数目多的作为训练集(如70%数据作为训练集,30%作为测试集);然后利用训练集在各种条件下(如不同的参数),进行模型的训练,从而得到不同的模型,然后利用测试机进行测试评价,计算测试误差,选出测试误差最小的模型。

2、S折交叉验证:S-fold Cross-validation

这种交叉验证的方法是使用相对较多的。

具体的方法是:



3、留一交叉验证:leave-one-out cross validation

如果数据非常缺乏,可以利用该交叉验证方法。

留一交叉验证其实是S折交叉验证的特殊情形。在S折交叉验证中,令S=N,其中N是给定的数据集中的样本容量,也就是说每次只取数据集中的一个样本进行测试,剩下所有的样本都用来训练模型,这样经过N次循环之后,生成N个模型,然后取N个模型中平均误差最小的模型。

参考:李航-《统计学习方法》

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值