使用权重处理不平衡数据

时间:2015-11-07 17:48:57

标签: numpy import machine-learning scikit-learn random-forest

我的数据非常不平衡,目标是分类。首先,我想检查大多数类的欠采样。 Class 1 with 600,class2 90,class3 60 and class4 96 sample data !!!

使用重量:2折交叉验证和Randomforest模型: enter image description here

为什么使用体重,结果不是更好?  这是我的代码:cfr = RandomForestClassifier(n_estimators=100,n_jobs=5,class_weight={1:1,2:30,3:30,4:30}) 我的代码有什么问题吗?你可以指导我吗?

1 个答案:

答案 0 :(得分:0)

实际问题是你的任务是什么。您的任务是最大化模型的准确性,即使您有很多不同的类?如果是这样,您应该不要对测试集进行欠采样。事实上你从未对测试集进行过度抽样或过度抽样,但在某些情况下,您可能会在特定类别中添加权重,以便对真正的先验(可能与经验先验者进行更正)或到期成本敏感的学习。