KFold交叉验证的用法

69 篇文章 8 订阅
该博客探讨了在机器学习中如何使用`sklearn.model_selection.KFold`进行数据划分,以实现五折交叉验证。博客内容展示了`shuffle=False`和`shuffle=True`两种情况下的数据切分方式,强调了打乱数据顺序对训练和测试集的影响。通过实例解释了交叉验证在防止过拟合和提高模型泛化能力上的作用。
摘要由CSDN通过智能技术生成
from sklearn.model_selection import KFold

kfold = KFold(n_splits=5, shuffle=False) # n_splits:将原始数据分成多少折(份) shuffle:是否打乱每折的顺序

test = torch.arange(10)
for train_data, test_data in kfold.split(test): # 可以看出分为5折,先前两个作为测试数据,后8个作为训练数据,然后依次类推
    print(train_data, test_data) 

输出结果:

[2 3 4 5 6 7 8 9] [0 1]
[0 1 4 5 6 7 8 9] [2 3]
[0 1 2 3 6 7 8 9] [4 5]
[0 1 2 3 4 5 8 9] [6 7]
[0 1 2 3 4 5 6 7] [8 9]
kfold = KFold(n_splits=5, shuffle=True)

for train_data, test_data in kfold.split(test): # 从结果可以看出,这个打乱了每折的顺序,第一折先选5,6,第二折选3,9...
    print(train_data, test_data)

输出结果:

[0 1 2 3 4 7 8 9] [5 6]
[0 1 2 4 5 6 7 8] [3 9]
[1 2 3 4 5 6 7 9] [0 8]
[0 1 3 5 6 7 8 9] [2 4]
[0 2 3 4 5 6 8 9] [1 7]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值