如何解决与指定数量的训练数据交叉验证? 客观我的尝试注意
客观
我想执行k倍交叉验证,但是我不想确定k-1数据集用于训练,k数据集用于测试,而是要确定训练数据的数量,就像train_test_split
的{ {1}}。然后其余作为测试数据。
准确地说,我有二进制分类数据集,并且在进行交叉验证时每个类需要10个实例。
预期功能
假设我要进行5折简历:
train_size
当然,在这种情况下,我的X,y应该具有> = 100个实例。
我的尝试
好吧,我只是手动构建它们。我能得到的最接近的是迭代:
cross_val_score(estimator=my_model,X,y,cv=5,train_size=20)
但这会随机选择数据,并且可能会导致两个火车数据集相同,而且无法容纳简历。
注意
是的,这将导致某些数据集未用于训练集,但这是我当前工作中要实现的目标。
有没有提供此功能的python函数?
解决方法
您仍然可以使用KFold,但需要附加逻辑。
确定测试数据量:const element = await page.$('.some-class');
。
确定拆分数量:test_amount = total_amount * test_size
。
使用Kfolds:
n_splits = total_amount // test_amount
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。