• 不平衡之钥: 重加权法知几何


    专栏系列文章 - 知乎一、算法面经篇枫桦:深度学习算法工程师面经(微软、阿里、商汤、滴滴、华为、海康、平安、陌陌等offer)之上篇 枫桦:深度学习算法工程师面经(微软、阿里、商汤、滴滴、华为、海康、平安、陌陌等offer)之下篇二、…https://zhuanlan.zhihu.com/p/505017083

    1. 概述

    《不平衡问题: 深度神经网络训练之殇》一文中,笔者已对缓解不平衡问题的方法进行梳理。限于篇幅原因,介绍比较笼统。在《不平衡之钥: 重采样法何其多》一文中,梳理了缓解不平衡问题的各种重采样方法。

    重加权,也称为代价敏感学习,通过调整训练期间不同类别的损失值来对类别进行重新平衡,近期的研究提出了各种代价敏感学习方法来处理类别不平衡问题,包括类别级重加权和类别级re-margining,大家熟知的Focal loss、动态权重等都属于重加权方法。

    2. 类别级重加权

    2.1 Weighted Softmax Loss

    最直觉的方法是直接使用训练样本的标签频率对损失进行重新加权,即加权softmax损失。基于样本影响[3]或模型预测和平衡参考分布之间的分布对齐[4],通过调整标签频率对损失权重的影响,可以进一步改善这种损失。除了损失值重新加权外,平衡softmax[5]提出在训练期间使用标签频率来调整模型预测,以便通过先验知识来缓解类别不平衡的偏差。随后,LADE[6]引入了标签分布分离损失,将学习的模型从不平衡训练分布中分离出来,然后在测试标签频率可用的情况下,模型可以适应任意的测试类别分布。

    2.2 Class Balance Loss

    类别平衡损失 (CB)[7]没有使用标签频率,而是引入了有效数的概念来近似不同类的预期样本数,有效数是训练样本数的指数函数。 遵循这一概念,类别平衡损失强制使用类别平衡重加权项来解决类别不平衡问题,该加权项与类别的有效数成反比。

    2.3 Focal Loss

    Focal loss [8] 探索了重加权的类别预测难度。 具体来说,focal loss的灵感来自于观察到类别不平衡通常会增加尾部类的预测难度,其预测概率会低于头部类的预测概率。 因此,Focal loss 使用预测概率来反向对类别重加权,以便它可以为较难的尾部类分配更高的权重,而为更容易的头部类分配较低的权重。

    2.4 Meta-Weight-Net

    除了使用预定义的加权损失函数,也可以从数据中学习类别权重。 Meta-Weight-Net [9] 在平衡的验证集指导下,更新了由一层 MLP 近似的权重函数以拟合不平衡分布,在均匀分布的测试集中获得良好的性能。

    2.5 DisAlign

    分布对齐 (DisAlign)[10]提出了一种自适应的校准函数来校准模型分类器,校准函数通过最小化调整的预测分布和给定的平衡参考分布之间的KL散度自适应地学习。

    2.6 Distribution-balanced loss

    不平衡学习中的另一个问题是负梯度过度抑制,也就是说,在 softmax 或 sigmoid 交叉熵中,一个类的每个正样本都可以被视为其他类的负样本,从而导致尾部类接收到更多的梯度抑制。 为了解决这个问题,分布平衡损失[11]通过一种新的negative-tolerant regularization来缓解梯度过度抑制。 同时,它还评估每个类的预期采样频率和实际采样频率之间的差距,然后使用这两个频率的商来重新计算不同类别的加权损失值。

    2.7 Equalization loss

    当尾部类样本作为大量头部类样本的负样本对时,Equalization loss[12]直接降低尾类样本的损失值权重。 Equalization loss v2 [13] 通过将多类别检测问题建模为一组独立的子任务,其中每个子任务专注于一个类,进一步扩展了Equalization loss。 更具体地说,Equalization loss v2 引入了一种新颖的梯度引导重加权机制,以动态地提高正梯度的权重并降低负梯度的权重,以便在每个子任务上进行模型训练。

    2.8 Seesaw loss

    Seesaw loss [14] 使用两个重加权因子 (即减缓因子和补偿因子)重新平衡每个类别的正负梯度。 为了解决梯度过度抑制问题,减缓因子根据不同类之间累积样本数的动态比率来减轻训练期间对尾类的惩罚。 同时,如果观察到假阳性样本,则补偿因子会提高对相应类别的惩罚权重,以提高模型区分度。

    2.9 ACSL

    自适应类抑制损失 (Adaptive class suppression loss,ACSL) [15] 使用输出置信度来决定是否抑制负标签的梯度。 具体来说,如果负标签的预测概率大于预定义的阈值,则应该混淆模型,因此将此类的权重设置为 1,以提高模型识别能力;否则,权重设置为 0 以避免负过度抑制。

    3. 类别级re-margining

    类别级re-margining通过调整不同类别学习到的特征和模型分类器之间的最小距离来处理类别不平衡。

    3.1 LDAM

    label-distribution-aware margin (LDAM)[16]使用基于标签频率的类别依赖的边距,并鼓励尾部类别具有更大的边距,扩展了现有的soft margin loss。然而,仅仅使用LDAM损失在经验上不足以处理类别不平衡。因此,LDAM进一步引入了deferred re-balancing optimization schedule,在学习LDAM损失一段时间后,通过类别平衡的方式重加权LDAM损失来重新平衡类别。

    3.2 Bayesian estimate

    贝叶斯估计[17]发现类别预测不确定性与训练标签频率成反比,即尾部类更不确定。 受此启发,贝叶斯估计提出使用估计的类级不确定性来重新调整损失的边距,使得具有较高类别不确定性的尾类将遭受更高的损失值,从而在特征和分类器之间具有更大的边距。

    3.3 Domain balancing

    领域平衡[18]研究了一个不平衡域问题,其中频繁出现少量域(包含多个类),而其他域较少。 为了解决这个问题,这项工作引入了一种基于类间特征紧凑性的新域频率指标,并使用该指标重新划分尾域的特征空间。

    3.4 LOCE

    LOCE [19] 使用平均分类预测分数来监控不同类的学习状态,并将其应用于指导类级边距调整以提高尾部类的性能。

    3.5 PML

    渐进式边距损失 (Progressive margin loss, PML)[20] 使用两个边距项调整不平衡学习的分类边距:顺序边距 (ordinal margin)和变分边距 (variational margin)。 顺序边距旨在提取判别特征并保持年龄顺序关系,变分边距试图逐步抑制头部类以处理不平衡训练样本中的类别不平衡问题。

    3.6 RoBal

    RoBal [21] 认为,鼓励尾部类更大边距的现有re-margining方法可能会降低头部类的特征学习。 因此,RoBal 强制执行一个额外的边距项来扩大头部类的特征边距。

    4.参考文献

    [1] 不平衡问题: 深度神经网络训练之殇

    [2] 不平衡之钥: 重采样法何其多

    [3] S. Park, J. Lim, Y. Jeon, and J. Y. Choi, “Influence-balanced loss for imbalanced visual classification,” in International Conference on Computer Vision, 2021.

    [4] S. Zhang, Z. Li, S. Yan, X. He, and J. Sun, “Distribution alignment: A unified framework for long-tail visual recognition,” in Computer Vision and Pattern Recognition, 2021, pp. 2361–2370.

    [5] R. Jiawei, C. Yu, X. Ma, H. Zhao, S. Yi et al., “Balanced meta-softmax for long-tailed visual recognition,” in Advances in Neural Information Processing Systems, 2020.

    [6] Y. Hong, S. Han, K. Choi, S. Seo, B. Kim, and B. Chang, “Disentangling label distribution for long-tailed visual recognition,” in Computer Vision and Pattern Recognition, 2021.

    [7] Y. Cui, M. Jia, T.-Y. Lin, Y. Song, and S. Belongie, “Class-balanced loss based on effective number of samples,” in Computer Vision and Pattern Recognition, 2019, pp. 9268–9277.

    [8] T.-Y. Lin, P. Goyal, R. Girshick, K. He, and P. Doll ́ar, “Focal loss for dense object detection,” in International Conference on Computer Vision, 2017, pp. 2980–2988.

    [9] J. Shu, Q. Xie, L. Yi, Q. Zhao, S. Zhou, Z. Xu, and D. Meng, “Meta-weight-net: Learning an explicit mapping for sample weighting,” Advances in Neural Information Processing Systems, 2019.

    [10] S. Zhang, Z. Li, S. Yan, X. He, and J. Sun, “Distribution alignment: A unified framework for long-tail visual recognition,” in Computer Vision and Pattern Recognition, 2021, pp. 2361–2370.

    [11] T. Wu, Q. Huang, Z. Liu, Y. Wang, and D. Lin, “Distribution-balanced loss for multi-label classification in long-tailed datasets,” in European Conference on Computer Vision, 2020, pp. 162–178.

    [12] J. Tan, C. Wang, B. Li, Q. Li, W. Ouyang, C. Yin, and J. Yan, “Equalization loss for long-tailed object recognition,” in Computer Vision and Pattern Recognition, 2020, pp. 11 662–11 671.

    [13] J. Tan, X. Lu, G. Zhang, C. Yin, and Q. Li, “Equalization loss v2: A new gradient balance approach for long-tailed object detection,” in Computer Vision and Pattern Recognition, 2021, pp. 1685–1694.

    [14] J. Wang, W. Zhang, Y. Zang, Y. Cao, J. Pang, T. Gong, K. Chen, Z. Liu, C. C. Loy, and D. Lin, “Seesaw loss for long-tailed instance segmentation,” in Computer Vision and Pattern Recognition, 2021.

    [15] T. Wang, Y. Zhu, C. Zhao, W. Zeng, J. Wang, and M. Tang, “Adaptive class suppression loss for long-tail object detection,” in Computer Vision and Pattern Recognition, 2021, pp. 3103–3112.

    [16] K. Cao, C. Wei, A. Gaidon, N. Arechiga, and T. Ma, “Learning imbalanced datasets with label-distribution-aware margin loss,” in Advances in Neural Information Processing Systems, 2019.

    [17] S. Khan, M. Hayat, S. W. Zamir, J. Shen, and L. Shao, “Striking the right balance with uncertainty,” in Computer Vision and Pattern Recognition, 2019, pp. 103–112.

    [18] D. Cao, X. Zhu, X. Huang, J. Guo, and Z. Lei, “Domain balancing: Face recognition on long-tailed domains,” in Computer Vision and Pattern Recognition, 2020, pp. 5671–5679.

    [19] C. Feng, Y. Zhong, and W. Huang, “Exploring classification equilibrium in long-tailed object detection,” in International Conference on Computer Vision, 2021.

    [20] Z. Deng, H. Liu, Y. Wang, C. Wang, Z. Yu, and X. Sun, “Pml: Progressive margin loss for long-tailed age classification,” in Computer Vision and Pattern Recognition, 2021, pp. 10 503–10 512.

    [21] T. Wu, Z. Liu, Q. Huang, Y. Wang, and D. Lin, “Adversarial robustness under long-tailed distribution,” in Computer Vision and Pattern Recognition, 2021, pp. 8659–8668.

     

  • 相关阅读:
    ​python联欢会评分 青少年编程电子学会python编程等级考试三级真题解析2020年9月
    K8S-安全(认证、授权、准入控制)
    Linux的指令和用途(持续更新)
    怎么恢复已删除的全部数据,不小心删除的数据怎么恢复,删除的文件还能找回吗
    java(通过反射操作对象)
    Kaldi语音识别技术(四) ----- 完成G.fst的生成
    @EventListener 监听事件 ,在同一个虚拟机中如何保证顺序执行
    LeetCode - 数组的旋转总结
    vue面试题(持续更新)
    保姆级使用PyTorch训练与评估自己的Swin Transformer V2网络教程
  • 原文地址:https://blog.csdn.net/weixin_41278720/article/details/125474759