机器学习中数据的划分,N折交叉验证

Posted xhslovecx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习中数据的划分,N折交叉验证相关的知识,希望对你有一定的参考价值。

1:对于分类数据来说,它们的target可能分配是不均匀的,比如在医疗数据当中得癌症的人比不得癌症的人少很多,这个时候,使用的数据划分方法有  StratifiedKFold  ,StratifiedShuffleSplit

2:对于分组数据来说,它的划分方法是不一样的,主要的方法有 GroupKFold,LeaveOneGroupOut,LeavePGroupOut,GroupShuffleSplit

3:对于时间关联的数据,方法有TimeSeriesSplit

eg:

采用StratifiedKFold做划分:

clf = XGBClassifier()
scores = cross_val_score(clf, iris.data, iris.target, cv=10)

采用StratifiedShuffleSplit做自定义划分:
from sklearn.model_selection import ShuffleSplit
my_cv = ShuffleSplit(n_splits=3, test_size=0.3, random_state=0)
scores = cross_val_score(clf, iris.data, iris.target, cv=my_cv)
 

参考:https://www.cnblogs.com/jiaxin359/p/8552800.html





以上是关于机器学习中数据的划分,N折交叉验证的主要内容,如果未能解决你的问题,请参考以下文章

机器学习100天(二十九):029 K折交叉验证

机器学习100天(二十九):029 K折交叉验证

了解机器学习过程和 K 折交叉验证

机器学习实验方法与原理

机器学习--K折交叉验证和非负矩阵分解

机器学习笔记:交叉验证