【发布时间】:2019-11-05 22:49:20
【问题描述】:
我想估计分类器在我的不平衡数据集上的工作情况。当我尝试从 sklearn 拟合 KNN 分类器时,它对少数类一无所知。所以我所做的是我用 k = R 拟合分类器(其中 r 是不平衡比 1:R),我预测每个测试点的概率,如果少数类的分类器的概率输出,我将一个点分配给少数类大于 R(其中 r 是不平衡比 1: R)。我这样做是为了估计分类器的性能(F1-score)。我不需要生产中的分类器。我做的对吗?
【问题讨论】:
-
欢迎来到 SO。解决这个问题的方法是基于频率的重采样。 this question 的可能重复项。
-
我也处理过一次不平衡数据,那次我使用
SMOTE并综合生成少数类示例,使得多数和少数类数据的比率变为1:1。你可以在这里查看 SMOTE imbalanced-learn.readthedocs.io/en/stable/generated/… -
有没有不重采样的方法??
-
老实说,我不知道,但作为替代方案,您可以从数据集中随机选择多数类数据,使得比率始终为
1:1与少数类。 -
如果您不受使用分类器的限制,您可以尝试使用带有决策树或随机森林等参数的分类器,您可以在其中自己指定类权重。这样做你的模型也将开始选择少数类。实现细节请参考stackoverflow.com/questions/37522191/…。
标签: machine-learning