class_weights 如何在 RandomForestClassifier 中工作

数据挖掘 Python 分类 随机森林 熊猫 阶级失衡
2021-09-22 06:42:31

我遇到了不平衡类的问题,并且尝试了几种方法,例如过采样和欠采样。然而,我的交叉验证平均值仅为 0.4,而我的混淆矩阵显示预测和召回完全不正确。

我读到下一步是为我的班级增加权重;我有两个“赢”和“输”。在 Pandas 中,我应该如何为它们分配权重?我知道有一个“class_weights”属性,但我不知道如何使用它。

谢谢

在此处输入图像描述

PS。我的“赢”班不平衡,与“输”班相比非常小。我通过重复两次“获胜”来训练,并随机抽取几乎等量的“失败”。我已经尝试了各种类的组合。

1个回答

也许尝试将您的目标值编码为二进制。然后,这class_weight={0:1,1:2}应该可以完成工作。现在,0 类的权重为 1,而 1 类的权重为 2。