【问题标题】:Please, explain what n_splits actually mean in sklearn.model_selection.GroupShuffleSplit?请解释 n_splits 在 sklearn.model_selection.GroupShuffleSplit 中的实际含义?
【发布时间】:2021-08-30 19:59:06
【问题描述】:

我需要拆分数据以训练和测试控制组,所以我正在使用

sklearn.model_selection.GroupShuffleSplit

但是我不太了解参数n_splits

我的代码如下所示:

gs = GroupShuffleSplit(n_splits=10, train_size=.7, random_state=42)
train_ix, val_ix = next(gs.split(X_new, y, groups=X_new.subjectid))

无论我为拆分选择什么数字,我都会拥有相同大小的数据集(正如我在 train_size 中指定的那样)。您能否解释一下 n_splits 的影响?

谢谢!

【问题讨论】:

    标签: python scikit-learn


    【解决方案1】:

    n_split 是重新洗牌和拆分迭代的次数,而train_size 指定训练集的大小。

    这意味着在您的情况下,GroupShuffleSplit 将生成 10 个不同的训练/测试集拆分,比例为 70/30。

    【讨论】:

    • 谢谢!所以更多的迭代意味着更好的随机化,对吗?
    • 不,使用多重分割的好处是可以训练多个模型并确保您的算法能够很好地泛化(如果它独立于分割执行良好)。
    猜你喜欢
    • 2011-11-08
    • 2022-09-30
    • 2017-08-09
    • 2015-04-03
    • 1970-01-01
    • 1970-01-01
    • 2013-08-03
    • 2017-04-30
    • 2014-02-15
    相关资源
    最近更新 更多