sklearn里有哪些方法是可以处理不均衡的分类问题的?比如采样和权重?
3个回答
通过欠采样、过采样等方法来调整样本分布,可以参考imbalance包
调整样本权重,可以调整类似Logistic Regression中的class_weight参数来调整不同类别样本对损失函数影响的大小。
如有错误,欢迎指出。
谢谢,感觉坑很深啊,我得加油学习
-
钱塘哥
2019-03-25 08:50
sklearn只是工具,很多时候需要自己去完成一些步骤来处理非均衡问题。
比如欠采样、过采样,训练时候的权重,交叉验证的时候进行分层验证。
选用适合的损失函数和评价标准也是很重要的,比如用roc auc以及召回-精度曲线。
SofaSofa数据科学社区DS面试题库 DS面经在选择train和test集合时,sklearn就已经考虑到了不均衡性,参见函数说明
https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html
stratify : array-like or None (default=None)
If not None, data is split in a stratified fashion, using this as the class labels.
SofaSofa数据科学社区DS面试题库 DS面经