KFold交叉采样:将训练/测试数据集划分n_splits个互斥子集,每次只用其中一个子集当做测试集,剩下的(n_splits-1)作为训练集,进行n_splits次实验并得到n_splits个结果。
sklearn.model_selection.KFold(n_splits=3,shuffle=False,random_state=None)
n_splits:表示将数据划分几等份
shuffle:在每次划分时,是否进行洗牌
若为False,其效果相当于random_state为整数(含零),每次划分的结果相同
若为True,每次划分的结果不一样,表示经过洗牌,随机取样的
random_state:随机种子数,当设定值(一般为0)后可方便调参,因为每次生成的数据集相同
StratifiedKFold分层采样,用于交叉验证:与KFold最大的差异在于,他是分层采样,确保训练集,测试集中各类别样本的比例与原始数据集中相同。
sklearn.model_selection.StratifiedKFold(n_splits=3,shuffle=False,random_state=None)
参数含义同KFold。