作者DennismithJR (DSJ)
看板DataScience
标题[问题] 类别不平衡
时间Mon Mar 19 22:25:51 2018
想请问大家在处理分类问题时遇到标签分布很不平衡时会怎麽处理呢
翻过Kaggle上一些相关问题,几乎没看到有人因此做特别的抽样或其他处理
好像只要评估指标是logloss或ROC的AUC就当没事了...
不知道是不是因为样本少的类别仍有一定数量就能如此?
若好比说我有一组样本
标签有五个类别,数量分别如下面所示,其比例与母体相符
A: 10000
B: 5000
C: 200
D: 15
E: 8
显然这样本在D、E甚至C的分类上可能会出现些问题
想请问遇到这样的分布,有什麽建议的抽样方式呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.168.54.248
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DataScience/M.1521469553.A.8FB.html
1F:推 goldflower: 一种是不要抽样 把少样本的error提高 03/19 22:38
2F:推 aa155495: hard example mining 或 focal loss吧 03/20 00:30
3F:推 EGsux: google SMOTE 03/20 02:12
推
NBAPredictor: Boosting的话没什麽差 不过D跟E基本上没救了 03/20 07:53
4F:→ NBAPredictor: D跟E或许可以拉KNN来Stacking 03/20 07:54
不好意思 这边补充一下原文可能没说清楚的部分
其实原始资料量要比上面举例大上许多,或许有上百倍大,
因此稀少类别数或许也有数百个
考量计算成本,目前都是先抽样一小部分来尝试
下面的回文有提到可以将样本多的类别切割,再一一和较稀少的类别拼凑训练
除此之外,不知道有没有更省资源的抽样方法能做到差不多的效果呢@@?
5F:→ f496328mm: 乾脆把 CDE 当作一类 如果选到这类 03/20 09:05
6F:→ f496328mm: 再用另一个 model 去 fit 03/20 09:05
我也曾想试试类似的方法,不过还没看过有人实际上这样做
不知道有没有关键字、相关文献或是实作案例可以让我参考看看?
7F:→ f496328mm: 另外多类不平衡的话 可能要做多个 1 vs all 03/20 09:07
8F:→ f496328mm: 针对不同的case 给不同的 01 边界 03/20 09:07
9F:→ f496328mm: 举例来说 A的 case, pred>0.5 =1, <0.5=0 03/20 09:08
10F:→ f496328mm: but E case, pred>0.1=1 pred<0.1=0 03/20 09:08
11F:推 yogi: 在考虑balanced sampling的问题以前,应该先想想看在不同类 03/20 09:19
12F:→ yogi: 别你能容忍的false pos/neg是多高 03/20 09:20
※ 编辑: DennismithJR (118.168.165.55), 03/21/2018 00:51:21
13F:推 goldflower: 我的调error不就超省资源= = 03/21 02:03
14F:推 lucien0410: oversampling to the rescue! 03/21 15:08
15F:推 littleyuan: data augmentation 04/13 11:42