论文原作者Yuzhe Yang的讲解: https://zhuanlan.zhihu.com/p/369627086.
以前数据不平衡问题主要的解决方案大致两种:
基于数据的解决方案和基于模型的解决方案。
基于数据的解决方案要么对少数群体类别进行过度采样,要么对多数群体进行不足采样,例如SMOTE算法[1],该算法通过线性插值同一类别中的样本来生成少数群体类别的合成样本。 而基于模型的解决方案包括对损失函数的重加权(re-weighting)[2],或是直接修改损失函数[3],以及利用相关的特定学习技巧,例如 transfer learning[4],meta-learning[5],以及 two-stage training[6]。该作者的相关调研https://www.zhihu.com/question/372186043/answer/1501948720.
针对类别不平衡的分类问题(也即长尾分布学习,long-tailed recognition),该作者的调研总结方法(目前主流的方法大致有以下几种(reference只列举出了比较有代表性的)):
1.重采样(re-sampling): 这是解决数据类别不平衡的非常简单而暴力的方法,更具体可以分为两种,对少样本的过采样[1],或是对多样本的欠采样[2]。当然,这类比较经典的方法一般效果都会欠佳,因为过采样容易overfit到minor classes,无法学到更鲁棒易泛化的特征,往往在非常不平衡的数据上泛化性能会更差;而欠采样则会直接造成major class严重的信息损失,甚至会导致欠拟合的现象发生。
2. 数据合成(synthetic samples): 若不想直接重复采样相同样本,一种解决方法是生成和少样本相似的“新”数据。一个最粗暴的方法是直接对少类样本加随机高斯噪声,做data smoothing[3]。此外,此类方法中比较经典的还有SMOTE[4],其思路简单来讲是对任意选取的一个少类的样本,用K近邻选取其相似的样本,通过对样本的线性插值得到新样本。说道这里不禁想到和mixup[5]很相似,都是在input space做数据插值;当然,对于deep model,也可以在representation上做mixup(manifold-mixup)。基于这个思路,最近也有imbalance的mixup版本出现[6]。
3. 重加权(re-weighting): 顾名思义,重加权是对不同类别(甚至不同样本)分配不同权重,主要体现在重加权不同类别的loss来解决长尾分布问题。注意这里的权重可以是自适应的。此类方法的变种有很多,有最简单的按照类别数目的倒数来做加权[7],按照“有效”样本数加权[8],根据样本数优化分类间距的loss加权[9],等等。对于max margin的这类方法,还可以用bayesian对每个样本做uncertainty估计,来refine决策边界[10]。这类方法目前应该是使用的最广泛的,就不贴更多的reference了,可以看一下这个survey paper[3]。
4. 迁移学习(transfer learning): 这类方法的基本思路是对多类样本和少类样本分别建模,将学到的多类样本的信息/表示/知识迁移给少类别使用。代表性文章有[11][12]。
5. 度量学习(metric learning): 本质上是希望能够学到更好的embedding,对少类附近的boundary/margin更好的建模。有兴趣的同学可以看看[13][14]。这里多说一句,除了采用经典的contrastive/triplet loss的思路,最近火起来的contrastive learning,即做instance-level的discrimination,是否也可以整合到不均衡学习的框架中?
6. 元学习/域自适应(meta learning/domain adaptation): 这部分因为文章较少且更新一点,就合并到一起写,最终的目的还是分别对头部和尾部的数据进行不同处理,可以去自适应的学习如何重加权[15],或是formulate成域自适应问题[16]。
7. 解耦特征和分类器(decoupling representation & classifier): 最近的研究发现将特征学习和分类器学习解耦,把不平衡学习分为两个阶段,在特征学习阶段正常采样,在分类器学习阶段平衡采样,可以带来更好的长尾学习结果[17][18]。
参考
1.^Samira Pouyanfar, et al. Dynamic sampling in convolutional neural networks for imbalanced data classification.
2.^He, H. and Garcia, E. A. Learning from imbalanced data. TKDE, 2008.
3.^abP. Branco, L. Torgo, and R. P. Ribeiro. A survey of predictive modeling on imbalanced domains.
4.^Chawla, N. V., et al. SMOTE: synthetic minority oversampling technique. JAIR, 2002.
5.^mixup: Beyond Empirical Risk Minimization. ICLR 2018.
6.^H. Chou et al. Remix: Rebalanced Mixup. 2020.
7.^Deep Imbalanced Learning for Face Recognition and Attribute Prediction. TPAMI, 2019.
8.^Yin Cui, Menglin Jia, Tsung-Yi Lin, Yang Song, and Serge Belongie. Class-balanced loss based on effective number of samples. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 9268–9277, 2019.
9.^Learning Imbalanced Datasets with Label-Distribution-Aware Margin Loss. NeurIPS, 2019.
10.^Striking the Right Balance with Uncertainty. CVPR, 2019.
11^Large-scale long-tailed recognition in an open world. CVPR, 2019.
12.^Feature transfer learning for face recognition with under-represented data. CVPR, 2019.
13.^

最低0.47元/天 解锁文章
2479

被折叠的 条评论
为什么被折叠?



