LGD:涨点神器!旷视孙剑、张祥雨团队提出标签引导的自蒸馏技术,助力目标检测!...

关注公众号,发现CV技术之美

本文介绍论文『LGD: Label-guided Self-distillation for Object Detection』,由旷视孙剑、张祥雨团队等提出标签引导的自蒸馏技术:《LGD》,被称为涨点神器!助力目标检测!(AAAI 2022 接收论文)


详细信息如下:

a16ace35281e3908be1c12415629e631.png

  • 论文链接:https://arxiv.org/abs/2109.11496

  • 项目链接:未开源

导言:

150fbedfec6474de9d5803f01ff9fd7d.png

在本文中,作者提出了第一个用于目标检测的自蒸馏框架,称为LGD(标签引导的自蒸馏)。以前的研究依赖于教师模型来为蒸馏提供指导性的知识。但是,这在真实场景中可能是不可行的。因此,作者通过对象内和对象间的关系建模来生成指导性知识,只需要学生表示和标签。

具体而言,本文的框架通过稀疏标签编码对象间关系自适应对象内知识映射来获取指导性知识。LGD中的模块通过学生检测器进行端到端的训练,并在推理中被丢弃。

实验证明,LGD在各种检测器、数据集和大量任务(如实例分割)上都取得了不错的性能。例如,在MS-COCO数据集中,LGD在2×单尺度训练下使用ResNet-50将RetinaNet从36.2%提高到39.0%MAP(+2.8% )。对于像FCOS这样更强的检测器,在2×多尺度训练下使用ResNeXt-101DCN v2(46.1%),LGD达到47.9%(+1.8% )。对于CrowdHuman数据集中的行人检测,使用基于ResNet-50的Faster R-CNN,LGD将MMR提高了2.3% 。与经典的基于教师的方法FGFI相比,LGD不仅不需要经过预训练的教师就能获得更好的性能,而且训练成本比固有的学生学习低51%。

      01      

Motivation

知识蒸馏(KD,Knowledge distillation)最初被用于图像分类,并取得了不错的结果。通常,它是关于将指导性知识从预训练的模型(教师)转移到较小的模型(学生)。

近年来,KD算法应用于目标检测任务,引起了研究者的广泛兴趣。目前的这些目标检测上的KD算法,大多都需要一个性能较好的教师模型,更强大的教师可以提高这种蒸馏效率。然而,理想教师模型的在现实世界的应用中很难满足,因为它可能需要大量的试验和试错。相反,“无预训教师的通用检测KD”这一问题几乎没有被研究过。

5483e98a1938b74503e95a0e4fe52777.png

为了减轻对预训教师的依赖,无教师方案被提出,如自蒸馏(self-distillation)联合学习(collaborative learning)标签正则化(label regularization) 。然而,这些方法是为分类而设计的,不适用于检测,因为后者必须处理具有不同位置和类别的多个对象。

最近,LabelEnc通过引入位置-类别建模扩展了传统的标签规则化。虽然它获得了不错的结果,但作者发现,随着检测器变得更强,例如,随着更大的主干和多尺度训练,性能改进已经饱和(如上图所示)。作者猜测这是因为标签本身只描述对象的类别和位置,而没有考虑同样重要的对象间关系。

对于容量有限的检测器,尽管没有关联信息,LabelEnc能够提供强大的补充监督信号。对于能够提取大量面向对象提示的更强大的检测器,使用LabelEnc好处较少,甚至是有害的。这可能是由于异构输入(图像与标签)和孤立建模的语义差异造成的。

受此启发,作者提出了标签引导的自蒸馏(LGD) ,这是一种新的无需教师的目标检测方法。在LGD中,作者设计了一个对象间关系适配器和一个对象内知识映射器 来协同建模形成结构化知识的关系。


关系适配器通过交叉注意交互来计算交互嵌入。具体地,通过测量每个对象的外观嵌入与每个标签嵌入之间的跨模态相似度来计算每个对象的交互嵌入,然后对其进行加权聚合。

知识映射器考虑对象内部表示的一致性,将交互后的嵌入映射到特征映射空间作为最终的指导性知识。

通过上述关系建模,最终的指导性知识自然地适应于学生的表征,有利于强学生检测器的有效精炼和语义差异的缓解。此外,本文的方法不依赖于强卷积网络作为教师。上述高效的设计使得LGD可以与学生网络联合训练,简化了流程,降低了训练成本。在推理期间,只保留学生检测器,因此不会带来额外的cost。


      02      

方法

ee7b8098229b72c42659c62b9c9d3b2e.png

如上图所示,LGD中主要有三个模块:

  1. 计算标签和外观嵌入的编码器

  2. 对象间关系适配器,其在给定对象的标签和外观嵌入的情况下生成交互嵌入。

  3. 对象内知识映射器,将嵌入的内容反投影到特征映射空间,以获取可供提炼的指导性知识。

2.1 Label-appearance Encoder

Label Encoding

对于图片中的每个对象,作者concat了归一化的ground-truth框和one-hot形式的类别标签来得到每个对象的描述符。将对象描述符传递到标签编码模块以获得精细化的标签嵌入,其中I表示对象索引,C=256是中间特征维度,N是对象编号。

为了引入标签描述符间的基本关系建模,作者采用经典的PointNet作为标签编码模块。根据实验结果,作者发现PointNet作为编码器的实验结果要略好于MLP和Transformer。此外,作者将BatchNorm替换成了LayerNorm,以适应小Batch Size的检测设置。

Appearance Encoding

除了标签编码,作者从包含感知对象外观特征的学生检测器的特征金字塔中提取紧凑的外观嵌入。作者采用了mask pooling从特征映射中提取对象的嵌入。具体地说,对于总共N个对象和一个位置为,,,的虚拟上下文对象。对于每个对象,是二进制矩阵,其值在ground truth区域内被设置为1,否则被设置为0。

对所有金字塔级别执行掩码合并,在每个金字塔级别,输入的对象掩码被缩减到对应的分辨率,以成为尺度特定的掩码。在第p个尺度下,通过计算投影特征图与下尺度对象掩码之间的通道广播的哈达玛乘积,然后进行global sum pooling可得到外观嵌入。其中,为一个的3×3卷积层。因此,对于第p个尺度的每个对象,可以外观嵌入:。

2.2 Inter-object Relation Adapter

在给定标签和外观嵌入的情况下,作者通过交叉注意过程来表示对象间关系的自适应。如上图所示,该过程在每个学生外观金字塔尺度上执行,以检索交互嵌入。

在交叉注意中,利用一系列key和query计算KQ-注意力关系来聚合value以获得注意力输出。

为了实现标签引导的信息自适应,作者采用当前尺度下的外观嵌入A作为query,尺度不变的标签嵌入L作为key和value。该方案测量了对象间较低层次的结构外观信息与较高层次的标签语义之间的相关性,然后重组信息标签嵌入以实现动态自适应。

在进行注意之前,query、key和value分别由线性层、和进行转换。然后,作者通过用标签外观相关因子加权每个变换后的标签嵌入,来计算第i个对象的交互嵌入:

2bcede5df745e2ed53cb8f75bf5b72eb.png

其中,是第i个外观和第j个标签嵌入之间的按比例点积,并进行Softmax来计算得到的:

678f15c791aaeb5bc32dc97816c526cf.png

此外,作者也借鉴了Self-Attention中的multi-head的形式,并将所有head的结果concat之后用进行投影,得到所有对象的的交互嵌入:

2c235d602d36663068bc1d463840e37c.png

其中;表示沿通道维度的concat操作。与外观嵌入一样,结果嵌入也是尺度敏感的。如上所述,作者通过在所有特征尺度上迭代来获得跨尺度的交互嵌入。

2.3 Intra-object Knowledge Mapper

为了使一维交互嵌入适用于检测任务中广泛使用的中间特征提取,作者将交互的嵌入映射到二维特征映射空间,以获取指导性知识。当然,对于每个金字塔比例尺,,结果特征的分辨率被限制为与相应的学生特征相同。

直观地,由于在紧凑表示的标签编码中没有对显式空间拓扑进行建模,因此需要恢复每个物体的定位信息,以实现几何透视上的校准。作者将每个对象绑定的交互嵌入和相应的ground-truth区域填充到零初始化特征map上。

对于每一个对象i,作者通过计算矢量化对象掩码与投影的、交互的嵌入之间的矩阵乘法,得到尺度p的特征图。所有这些对象映射加在一起形成一个统一的映射,并接上一个精炼模块,以形成结构化知识:

f8b10d0070bda6edc78083997e52bfc8.png

其中,和都是FC层。为3×3卷积层。以RELU开始,后跟三个3×3卷积层。通过上面的计算,我们就得到了所有尺度的指导性知识 。

在蒸馏之前,使用来调整学生的表征。然后,在每个特征尺度上在指导性知识和学生特征之间进行知识转移。作者采用InstanceNorm来消除两个特征图的外观和标签样式信息,然后使用均方误差(MSE)计算蒸馏损失:

0c28349e40bd4bb244ecb91956c2cded.png

除了优化学生检测器的蒸馏损失和检测损失外,作者还通过共享的检测头进行监督,进一步保证了指导表征和与学生表征的结果一致性。总检测损失如下所示:

8206a3824b1a5712a7146bfcf76c4cbd.png

其中表示学生/指导性表征。代表检测头。总的训练损失如下所示:

eee3436cf35068dba13cbd9427dec0c4.png

为了稳定的训练,蒸馏在30k次迭代中开始,因为当指导性知识优化得不够充分时,蒸馏可能是有害的。


      03      

实验

3.1 Comparison to Teacher-free Methods

Detailed Comparison with State-of-the-Art

f014b6960ea9db29483f39dd9aa6d449.png

8d3b21c4f33f8735a662d35e47f821fb.png

上表和上图显示了本文方法和Teacher-Free的SOTA蒸馏方法的比较结果。

Comparison with Typical Methods

6315099448c02cea863f7e281f008b30.png

上表和上图显示了本文方法和Teacher-Free的经典方法的比较结果。

3.2 Comparison with Classical Teacher-based KD

b37bce076a91ca48bf3d626e5d4ae1eb.png

04a24da7d403c41a3b26e61d07a6683a.png

上图和上表比较了本文方法和经典的基于学生模型的蒸馏方法的对比,可以看出本文的方法在性能上依旧具备优越性。

3.3 Ablation Studies

Label Encoding

cd66346719431822afd4b242ed4dfe9c.png

上表展示了不同LabelEncoding的方法的对比,可以看出PointNet相比于其他想法性能更佳。

Inter-object Relation Adapter

e813fdbe8463489861d11a4616551244.png

上表展示了利用RetiNANet、Faster R-CNN、FCOS进行对象间关系自适应的消融实验结果

Intra-object Knowledge Mapper

699c456a6bb8829f62886ba000b30465.png

在本文中,指导性知识依赖于对象和虚拟上下文两者的交互嵌入。作者对它们进行了消融,实验结果如上表所示。

Head Sharing

45dea896b12c113328385cafa36cbb45.png

上表说明了在学生和指导性代表之间共享head的性能更好。

3.4 Training Efficiency

1410bd8af997e31c6ef4eeafb69c2393.png

上表展示了不同方法的overhead,可以看出本文方法的训练成本更小。


      04      

总结

在这篇文章中,作者提出了一种新的自蒸馏框架,称为LGD,用于在没有预训教师模型的情况下进行目标检测中的知识蒸馏。它吸收了对象间和对象内的关系,形成了具有规则标签和学生表示的启发性知识。LGD以在线方式运行,表现良好,训练成本相对较低。它优于以往的无教师方法和经典的基于教师的KD方法,特别是对于强学生模型的检测,显示出更高的潜力。

▊ 作者简介

研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。

知乎/公众号:FightingCV

0c82ac6f3d7775196d4cd9891bc32874.png

END

欢迎加入「目标检测交流群👇备注:OD

3104fea438e5c36f9651bb804869b740.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值