当前位置:   article > 正文

sklearn.model_selection.StratifiedKFold

sklearn.model_selection.StratifiedKFold

sklearn.model_selection.StratifiedKFold

class sklearn.model_selection.StratifiedKFold(n_splits=5, *, shuffle=False, random_state=None)

StratifiedKFold是k-fold的变种,会返回Stratified(分层)的折叠;每个小集合中,各个类别的样例比例大致和完整数据集中相同。

参数:
n_splits:int, default=5 表示把数据划分成几等分
shuffle:bool, default=False 在每次划分时,是否进行洗牌

  • 当shuffle为True,random_state会影响索引的顺序,每次划分的结果会不一样
    random_stateint or RandomState instance, default=None :随机种子数`
>>> from sklearn.model_selection import StratifiedKFold

>>> X = np.ones(10)
>>> y = [0, 0, 0, 0, 1, 1, 1, 1, 1, 1]
>>> skf = StratifiedKFold(n_splits=3)
>>> for train, test in skf.split(X, y):
...     print("%s  %s" % (train, test))
[2 3 6 7 8 9] [0 1 4 5]
[0 1 3 4 5 8 9] [2 6 7]
[0 1 2 4 5 6 7] [3 8 9]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

参考:
sklearn中文文档:http://scikitlearn.com.cn/0.21.3/30/#31221-k
StratifiedKFold和KFold生成交叉验证数据集的区别:https://blog.csdn.net/MsSpark/article/details/84455402

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/629095
推荐阅读
相关标签
  

闽ICP备14008679号