train_test_split 与 StratifiedShuffleSplit 中的分层参数
stratify argument in train_test_split vs StratifiedShuffleSplit
在sklearn的train_test_split
函数中使用stratify
参数和StratifiedShuffleSplit
函数有什么区别?他们不做同样的事情吗?
这两个模块执行不同的操作。
train_test_split
,顾名思义,用于将数据拆分为单个训练和单个测试子集,stratify
参数允许以分层方式进行此操作。
另一方面,StratifiedShuffleSplit
为交叉验证提供拆分;来自 docs:
Stratified ShuffleSplit cross-validator
Provides train/test indices to split data in train/test sets.
注意复数 sets(强调我的)。
因此,当我们想要确保 CV 拆分是分层的而不是替换 train_test_split
.
时,是否可以使用 StratifiedShuffleSplit
而不是 KFold
在sklearn的train_test_split
函数中使用stratify
参数和StratifiedShuffleSplit
函数有什么区别?他们不做同样的事情吗?
这两个模块执行不同的操作。
train_test_split
,顾名思义,用于将数据拆分为单个训练和单个测试子集,stratify
参数允许以分层方式进行此操作。
StratifiedShuffleSplit
为交叉验证提供拆分;来自 docs:
Stratified ShuffleSplit cross-validator
Provides train/test indices to split data in train/test sets.
注意复数 sets(强调我的)。
因此,当我们想要确保 CV 拆分是分层的而不是替换 train_test_split
.
StratifiedShuffleSplit
而不是 KFold