sklearn里有哪些方法是可以处理不均衡的分类问题的?

  统计/机器学习 监督式学习 开放问题 Python    浏览次数:6755        分享
0

sklearn里有哪些方法是可以处理不均衡的分类问题的?比如采样和权重?

 

钱塘哥   2019-03-23 11:01



   3个回答 
3

通过欠采样、过采样等方法来调整样本分布,可以参考imbalance包

调整样本权重,可以调整类似Logistic Regression中的class_weight参数来调整不同类别样本对损失函数影响的大小。

如有错误,欢迎指出。


SofaSofa数据科学社区DS面试题库 DS面经

咸魚   2019-03-23 17:30

谢谢,感觉坑很深啊,我得加油学习 - 钱塘哥   2019-03-25 08:50
1

sklearn只是工具,很多时候需要自己去完成一些步骤来处理非均衡问题。

比如欠采样、过采样,训练时候的权重,交叉验证的时候进行分层验证。

选用适合的损失函数和评价标准也是很重要的,比如用roc auc以及召回-精度曲线。

SofaSofa数据科学社区DS面试题库 DS面经

Willyd   2019-04-17 13:33

1

在选择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面经

测度空间   2019-04-23 08:26



  相关讨论

sklearn分类模型中预测结果怎么调整概率的阈值

python里怎么安装CatBoostClassifier?

sklearn SGDClassifier的partial_fit是什么意思?

GradientBoostingClassifier的每次输出结果不同

sklearn中的Randomizedlogisticregression是什么算法?和SGDClassifier一样吗?

sklearn里的LabelEncoder什么用?

sklearn中的predict_proba方法的返回值的意义

sklearn里learning_rate什么意思?

请问在sklearn怎么在已有的模型的基础上训练新的数据?

sklearn predict的默认阈值

  随便看看

T检验的effect size是什么?有什么含义吗?

opencv里waitkey和destroyAllWindows有什么用?

机器学习算法的鲁棒性是什么意思?

为什么样本方差是除以n-1

matplotlib画图怎么确保横坐标和纵坐标的单位长度一致?