是
class sklearn.cross_validation.ShuffleSplit(
n,
n_iterations=10,
test_fraction=0.10000000000000001,
indices=True,
random_state=None
)
在scikit-learn中10 * 10倍CV的正确方法? (通过将random_state更改为10个不同的数字)
因为我在 Stratified K-Fold
或 K-Fold
中没有找到任何 random_state
参数,并且与 K-Fold
分开的参数对于相同的数据始终是相同的 .
如果 ShuffleSplit
是正确的,那么一个问题是提到它
注意:与其他交叉验证策略相反,随机拆分并不能保证所有折叠都不同,尽管这对于相当大的数据集来说仍然很可能
这总是10 * 10倍CV的情况?
1 回答
我不确定10 * 10交叉验证是什么意思 . 您提供的ShuffleSplit配置将使您调用估算器的拟合方法10次 . 如果你通过显式使用外部循环调用10次,或者直接调用它100次,其中10%的数据保留用于在单个循环中进行测试,如果你使用的话:
如果你想在k = 10的情况下进行10次StratifiedKFold运行,你可以在运行之间对数据集进行混洗(这将导致100次调用fit方法,每次调用90%火车/ 10%测试分组) :