该研究主要关注对比学习在长尾视觉识别任务中的应用,提出了一种新的长尾对比学习方法 ProCo,通过对 contrastive loss 的改进实现了无限数量 contrastive pairs 的对比学习,有效解决了监督对比学习 (supervised contrastive learning)[1] 对 batch (memory bank) size 大小的固有依赖问题。除了长尾视觉分类任务,该方法还在长尾半监督学习、长尾目标检测和平衡数据集上进行了实验,取得了显著的性能提升。
该研究主要关注对比学习在长尾视觉识别任务中的应用,提出了一种新的长尾对比学习方法 ProCo,通过对 contrastive loss 的改进实现了无限数量 contrastive pairs 的对比学习,有效解决了监督对比学习 (supervised contrastive learning)[1] 对 batch (memory bank) size 大小的固有依赖问题。除了长尾视觉分类任务,该方法还在长尾半监督学习、长尾目标检测和平衡数据集上进行了实验,取得了显著的性能提升。
论文标题:
Probabilistic Contrastive Learning for Long-Tailed Visual Recognition
论文链接:
https://arxiv.org/pdf/2403.06726
项目链接:
https://github.com/LeapLabTHU/ProCo
一、研究动机
对比学习在自监督学习中的成功表明了其在学习视觉特征表示方面的有效性。影响对比学习性能的核心因素是 contrastive pairs 的数量,这使得模型能够从更多的负样本中学习,体现在两个最具代表性的方法 SimCLR [2] 和 MoCo [3] 中分别为 batch size 和 memory bank 的大小。然而在长尾视觉识别任务中,由于类别不均衡,增加 contrastive pairs 的数量所带来的增益会产生严重的边际递减效应,这是由于大部分的 contrastive pairs 都是由头部类别的样本构成的,难以覆盖到尾部类别。
例如,在长尾 Imagenet 数据集中,若 batch size (memory bank) 大小设为常见的 4096 和 8192,那么每个 batch (memory bank) 中平均分别有 212 个和 89 个类别的样本数量不足一个。
因此,ProCo 方法的核心 idea 是:在长尾数据集上,通过对每类数据的分布进行建模、参数估计并从中采样以构建 contrastive pairs,保证能够覆盖到所有的类别。进一步,当采样数量趋于无穷时,可以从理论上严格推导出 contrastive loss 期望的解析解,从而直接以此作为优化目标,避免了对 contrastive pairs 的低效采样,实现无限数量 contrastive pairs 的对比学习。
然而,实现以上想法主要有以下几个难点:
如何对每类数据的分布进行建模。
如何高效地估计分布的参数,尤其是对于样本数量较少的尾部类别。
如何保证 contrastive loss 的期望的解析解存在且可计算。
事实上,以上问题可以通过一个统一的概率模型来解决,即选择一个简单有效的概率分布对特征分布进行建模,从而可以利用最大似然估计高效地估计分布的参数,并计算期望 contrastive loss 的解析解。
图 1 ProCo 算法根据不同 batch 的特征来估计样本的分布,通过采样无限数量的样本,可以得到期望 contrastive loss 的解析解,有效地消除了监督对比学习对 batch size (memory bank) 大小的固有依赖。
二、方法详述
2.1 分布假设
2.2 参数估计
假设从类别 y 的 vMF 分布中采样 N 个独立的单位向量,则均值方向和集中参数的最大似然估计 (近似)[4] 满足以下方程:
2.3 优化目标
2.4 理论分析
分析表明,泛化误差界主要由训练样本数量和数据分布的方差控制,这一发现与相关工作的理论分析 [6][7] 一致,保证了 ProCo loss 没有引入额外因素,也没有增大泛化误差界,从理论上保证了该方法的有效性。
三、实验结果
作为核心 motivation 的验证,研究者们首先与不同对比学习方法在不同 batch size 下的性能进行了比较。Baseline 包括同样基于 SCL 在长尾识别任务上的改进方法 Balanced Contrastive Learning [5]。具体的实验 setting 遵循 Supervised Contrastive Learning (SCL) 的两阶段训练策略,即首先只用 contrastive loss 进行 representation learning 的训练,然后在 freeze backbone 的情况下训练一个 linear classifier 进行测试。
此外,研究者们还在长尾识别任务,长尾半监督学习,长尾目标检测和平衡数据集上进行了实验。这里主要展示了在大规模长尾数据集 Imagenet-LT 和 iNaturalist2018 上的实验结果。首先在 90 epochs 的训练 schedule 下,相比于同类改进对比学习的方法,ProCo 在两个数据集和两个 backbone 上都有至少 1% 的性能提升。
下面的结果进一步表明了 ProCo 也能够从更长的训练 schedule 中受益,在 400 epochs schedule 下,ProCo 在 iNaturalist2018 数据集上取得了 SOTA 的性能,并且还验证了其能够与其它非对比学习方法相结合,包括 distillation (NCL) 等方法。
参考文献
作者:杜超群 来源:公众号【机器之心】
llustration From IconScout By imamfathoni0
扫码观看!
“AI技术流”原创投稿计划
TechBeat是由将门创投建立的AI学习社区(www.techbeat.net)。社区上线500+期talk视频,3000+篇技术干货文章,方向覆盖CV/NLP/ML/Robotis等;每月定期举办顶会及其他线上交流活动,不定期举办技术人线下聚会交流活动。我们正在努力成为AI人才喜爱的高质量、知识型交流平台,希望为AI人才打造更专业的服务和体验,加速并陪伴其成长。
投稿内容
// 最新技术解读/系统性知识分享 //
// 前沿资讯解说/心得经历讲述 //
投稿须知
稿件需要为原创文章,并标明作者信息。
我们会选择部分在深度技术解析及科研心得方向,对用户启发更大的文章,做原创性内容奖励
投稿方式
发送邮件到
chenhongyuan@thejiangmen.com
或添加工作人员微信(chemn493)投稿,沟通投稿详情;还可以关注“将门创投”公众号,后台回复“投稿”二字,获得投稿说明。