model_selection.
from sklearn.model_selection import
用于数据集划分
评估评估
RepeatedKFold
重复K折交叉验证,一般10次10折交叉验证
ref
参数:
n_splits: 折叠次数,至少为2。int, default=5
n_repeats: 重复交叉验证次数。int,default=10
random_state: 控制随机性,类似随机种子。int, RandomState 或者 None,default=None
方法:
get_n_splits(X = None, y = None, group = None)
返回交叉验证器中的拆分迭代的数量
split(X,y = None, group = None)
生成索引(将数据拆分为训练集和测试集)
具体使用方式见demo
demo
>>> import numpy as np
>>> from sklearn.model_selection import RepeatedKFold
>>> X = np.array([[1, 2], [3, 4], [1, 2], [3, 4]])
>>> y = np.array([0, 0, 1, 1])
>>> rkf = RepeatedKFold(n_splits=2, n_repeats=2, random_state=2652124)
>>> for train_index, test_index in rkf.split(X):
... print("TRAIN:", train_index, "TEST:", test_index)
... X_train, X_test = X[train_index], X[test_index]
... y_train, y_test = y[train_index], y[test_index]
...
TRAIN: [0 1] TEST: [2 3]
TRAIN: [2 3] TEST: [0 1]
TRAIN: [1 2] TEST: [0 3]
TRAIN: [0 3] TEST: [1 2]