我正在研究一个二进制分类问题,我使用的是一个大数据集(样本数量很大,特征不太多)。数据是不平衡的,但我使用的权重数组修复了这个问题(有点)。你知道吗
我在这个集合的一个小版本中尝试了一些带有sklearn的分类器,显然SVM对我想要的东西很有用。然而,一旦我尝试在整个数据集中拟合一个支持向量机,它就需要永远(而且我的内存也用完了)。你知道吗
我想知道的是,在Sklearn中是否有任何快速的方法来划分这个集合,比如说划分成10个子集,保持类的比例,那么我是否可以将每个子集划分为训练/测试,并为每个子集独立地拟合SVM(这样我也可以使用不同的处理器)?你知道吗
StratifiedKFold
函数可以满足您的需求。它将数据分割成k个分层褶皱。调用_iter_test_masks()
或_make_test_folds()
基于documentation:
您可以添加一个
new column
,它将是一个random number
,从0到1,带有np.random.random_sample
,然后您可以group by
这个class
,并对生成的随机数应用pd.cut
,就像创建一个新列dataset
:相关问题 更多 >
编程相关推荐