专栏名称: 极市平台
极市平台是由深圳极视角推出的专业的视觉算法开发与分发平台,为视觉开发者提供多领域实景训练数据库等开发工具和规模化销售渠道。本公众号将会分享视觉相关的技术资讯,行业动态,在线分享信息,线下活动等。 网站: http://cvmart.net/
目录
相关文章推荐
点拾投资  ·  企业家精神,是对中国股市长期乐观的根源 ·  11 小时前  
经纬创投  ·  DeepSeek的文采如何炼成? ... ·  18 小时前  
独角兽智库  ·  华为何以重回巅峰? ·  4 天前  
红杉汇  ·  读很多书,但是记不住,怎么办? | ... ·  2 天前  
51好读  ›  专栏  ›  极市平台

AAAI 2024|DSCL:已开源,北京大学提出解耦对比损失

极市平台  · 公众号  ·  · 2024-08-08 22:00

正文

↑ 点击 蓝字 关注极市平台
作者丨VincentLee
来源丨晓飞的算法工程笔记
编辑丨极市平台

极市导读

本文通过解耦训练目标来解决SCL的这两个问题,将SCL中的原正样本和增强正样本解耦并针对不同目标来优化他们的关系,从而减轻数据集不平衡的影响。 >> 加入极市CV技术交流群,走在计算机视觉的最前沿

监督对比损失( SCL )在视觉表征学习中很流行。但在长尾识别场景中,由于每类样本数量不平衡,对两类正样本进行同等对待会导致类内距离的优化出现偏差。此外, SCL 忽略了负样本之间的相似关系的语义线索。为了提高长尾识别的性能,论文通过解耦训练目标来解决 SCL 的这两个问题,将 SCL 中的原正样本和增强正样本解耦并针对不同目标来优化他们的关系,从而减轻数据集不平衡的影响。论文进一步提出了一种基于块的自蒸馏方法,将知识从头类转移到尾类,以缓解尾类表征不足的问题。该方法挖掘不同实例之间共享的视觉模式,并利用自蒸馏过程来传输此类知识

论文地址: https://arxiv.org/abs/2403.06151

论文代码: https://github.com/SY-Xuan/DSCL

Introduction

在实际应用中,训练样本通常呈现长尾分布,其中少数头类贡献了大部分观察结果,而许多尾类仅与少数样本相关。长尾分布给视觉识别带来了两个挑战:

  • 为平衡数据集设计的损失函数很容易偏向头部类别。
  • 每个尾部类别包含的样本太少,无法表示视觉差异,导致尾部类别的代表性不足。

通过优化类内和类间距离,监督对比损失( SCL )在平衡数据集上取得了很不错的性能。给定锚定图像, SCL 将两种正样本聚在一起,即(a)由数据增强生成的锚定图像的不同视图,以及(b)来自同一类的其他图像。这两种类型的正样本监督模型学习不同的表征:(a)来自相同类别的图像强制学习语义线索,而(b)通过外观差异增强的样本主要导致低级外观线索的学习。

如图 1(a)所示, SCL 有效地学习了头类的语义特征,例如,学习到的语义“蜜蜂”对于杂乱的背景具有鲁棒性。而如图 1 (b) 所示, SCL 学习的尾部类别表征对于形状、纹理和颜色等低级外观线索更具辨别力。

通过对 SCL 的梯度进行分析后,论文提出了解耦监督对比损失( DSCL )来处理这个问题。具体来说, DSCL 解耦了两种正样本,重新制定了类内距离的优化策略,缓解了两种正样本的梯度不平衡。如在图 1(b)所示, DSCL 学习到的特征对语义线索具有区分性,并且大大提高了尾部类别的检索性能。

为了进一步缓解长尾分布的挑战,论文提出了基于图像块的自蒸馏( PBSD ),利用头类来促进尾类中的表征学习。 PBSD 采用自蒸馏策略,通过挖掘不同类之间的共享视觉模式并将知识从头类迁移到尾类,更好地优化类间距离。论文引入块特征来表示目标的视觉模式,计算块特征和实例级特征之间的相似度以挖掘共享视觉模式。如果实例与基于块特征共享视觉模式,则它们将具有很高的相似性,然后利用自蒸馏损失来维持样本之间的相似关系,并将知识融入到训练中。

Analysis of SCL

后面的分析有点长,总结起来,论文发现了 SCL 的三个问题:

  • 过于关注头类的训练。
  • 原样本和增强样本之间的梯度存在差异。
  • 负样本可以更好地处理。

给定训练数据集 . , 其中 表示图像, 是其类标签。假设 表示 类的数量, 并且类的索引按数量降序排序, 即如果 $a

对于图像分类任务, 算法旨在学习特征提取主干 和线性分类器, 先将图像 映射为全局特征图 并使用全局池化来获取 维特征向量, 随后将特征向量分为 维分类分数。通常来说, 测试数据集是平衡的。

特征提取主干一般采用监督对比学习(SCL)来训练。给定锚定图像 , 定义 为用主干和额外投影头 提取的归一化特征, 为正样本 通过数据增强生成的图片的归一化特征。定义 为可通过内存队列获取的一组样本特征, 为从 中抽取的 的正样本特征集。

SCL 通过拉近锚定图像与其它正样本来减小类间距离,同时通过将具有不同类别标签的图像推开来扩大类间距离,即

其中 的数量。使用 来表示预定义的温度参数, 条件概率 的计算如下:

公式 1 可以表示为分布对齐任务,

其中 是目标分布的概率。对于增强 和原 将它们同等地视为正样本,并将其目标概率设置为 。对于 中其它具有不同类标签的图像,SCL 将它们视为负样本,并将其目标概率设置为 0 。

对于锚定图像 的特征 的梯度为:

其中 的负集, 包含从 中提取的特征。

SCL 包含两种类型的正样本 , 锚定图像对于两种正样本的梯度计算分别为:

训练开始时,两种正样本的梯度 L2 范数之比为,

SCL 收敛时, 的最优条件概率为:

在 SCL 中, 内存队列 是从训练集中均匀采样的, 这导致 。在平衡数据集中, , 不同类别的 数量是平衡的。对于具有不平衡 的长尾数据集, SCL 则会更加关注将头部类的针点 与从 得到的特征拉在一起, 因为梯度由公式 4 中的第三项主导。

另外, SCL 还存在两种正样本的梯度的 L2 范数的比例不平衡的问题, 如图 2 所示。当 SC L 的训练收玫时, 的最优值也受到 的影响, 如公式 7 所示。此外, 如图 1(a) 和 (b) 所示, 跨类别学习到的特征也不一致。

等式 4 还表明, SCL 均匀地推开所有负样本,从而扩大了类间距离。这种策略忽略了不同类别之间有价值的相似性线索。为了寻求更好的方法来优化类内和类间距离,论文提出了解耦监督对比损失( DSCL )来解耦两种正样本以防止有偏差的优化,以及基于补丁的自蒸馏( PBSD )来利用类之间的相似性线索。

Decoupled Supervised Contrastive Loss

DSCL 的提出是为了确保不同类别的类内距离进行更平衡的优化,将两种正样本解耦并添加不同的权重,使梯度 L2 范数比和 的最优值不受类别的样本数量影响。

DSCL 可表示为:

其中 是预定义的超参数。DSCL 是 SCL 在平衡环境和不平衡环境的统一范式。如果数据集是平衡的, 通过设置 可以使得 DSCL 与 SCL 相同。

训练开始时,两种正样本的梯度L2范数比为:

当 DSCL 收玫时, z 的最优条件概率为

如公式 10 可以看出,两种正样本的梯度比不受 的影响。DSCL 也保证了 的最优值不受 的影响, 从而缓解了头部类和尾部类之间特征学习不一致的问题。

Patch-based Self Distillation

视觉模式可以在不同的类之间共享,例如视觉模式“车轮”在“卡车”、“汽车”和“公共汽车”共享。因此,尾类中的许多视觉特征也可以从共享这些视觉模式的头类中学习,从而降低了尾类表征学习的难度。 SCL 将来自不同类的两个实例在特征空间中推开,不管它们是否共享有意义的视觉模式。如图 4 所示,从黄色边界框中提取查询块特征,并从数据集中检索前 3 个相似样本。由 w/o PBSD 标记的 SCL 检索结果在语义上与查询块无关,表明 SCL 在学习和利用图像块级语义线索方面无效。

受细粒度图像识别中基于图像块的方法的启发, 论文引入了基于图像块的特征来编码视觉模式。给定主干提取的图像 的全局特征图 , 首先随机生成块







请到「今天看啥」查看全文