Paper name
LGD: Label-guided Self-distillation for Object Detection
Paper Reading Note
URL: https://arxiv.org/pdf/2109.11496.pdf
TL;DR
- AAAI 2022 文章,提出了一种基于学生网络特征和常规标签生成教育性信息的自蒸馏方法,这种 teacher free 方法能降低在实际场景应用的难度,命名为 LGD (Label-Guided self-Distillation)
Introduction
背景
- 使用强大的 teacher 模型用于蒸馏在实际场景中较为困难,所以提出了一种基于学生网络特征和常规标签生成教育性信息的自蒸馏方法,这种 teacher free 方法能降低在实际场景应用的难度,命名为 LGD (Label-Guided self-Distillation)
- teacher free 的蒸馏方法主要分为:
- self-distillation
- collaborative learning
- label regularization
- LabelEnc 作为之前提出的 label regularization 方法,虽然有涨点,但是在检测器容量变大后(larger backbones and multi-scale train)提升效果趋近饱和。作者认为原因是 LabelEnc 只考虑了目标类别和位置,没有考虑目标间的关系,在检测器容量低的时候,labelenc 能够提供补充的监督效果,但是当检测器容量足够大时,检测器能提取足够的目标方面监督,使用 labelenc 反而可能会对精度有害(如下左图)
本文方案
- 设计了以下两个模块来生成蒸馏监督信息
- inter-object relation adapter(目标间)
- cross-attention interaction
- intra-object knowledge mapper(目标内)
Label-appearance Encoder
Label Encoding
- 使用 PointNet (mlp + stn)作为 Encoder,输入为 normalize 后的坐标加上 one-hot 的类别标签
- Pointnet 精度高于 mlp 和 transformer
- batchnorm 替换为 layernorm,适配小 batch 训练
Appearance Encoding
- 使用 detector 的 feature pyramid 作为输入,利用 handy mask pooling 提出目标的embedding
- 使用 gt 目标生成的 mask 在所有 scale 的图像特征上提取目标特征,并利用 global sum pooling 得到appearance embedding
- 输入 HWC(多个尺度),基于 gt 目标的 mask(HW) 进行 pooliing,输出 C 维特征
Inter-object Relation Adapter
- 在每个 pyramid scale 进行,appearance embedding 作为 query,label embedding 作为 key 和 value,基于 cross attention 提取特征;该操作融合低层次的结构 appearance 信息和高层次的目标间语义信息
Intra-object Knowledge Mapper
- 将 1D interacted embeddings 映射到 2d feature map 空间,输出的特征图限制到与 student 特征图尺寸一致
- 生成 teacher 特征方式
loss 设计
- 蒸馏 loss:使用 IN 消除 teacher 特征和 student 特征中的 appearance 和 label style 信息,该 loss 不在 teacher 分支进行求导,避免 model collapse
其中 P 是 pyramid 层数,Ntotal 是特征图上的像素点数目 - 检测 loss:检测 loss 同时应用与 teacher 分支和 student 分支,其中 detection head 共享参数
- 整体损失
实验结果
- 精度达到 sota 效果
- 与 teacher free 方法对比
- ablaion study
Thoughts
- 优化的 teacher free 蒸馏方案,训练消耗低,主要提升还是来源于对类间信息基于 cross attention 进行了建模