论文名称:DN-DETR: Accelerate DETR Training by Introducing Query DeNoising
发表时间:CVPR2022
作者及组织:Shilong Liu, Feng Li等,来自IDEA、港中文、清华。
前言
该篇论文发现Detr收敛慢原因来自匈牙利一对一匹配,于是在训练阶段额外引入object query来学习加噪的gt,提高了收敛速度和精度。
1、引入
Detr在训练早期阶段,对于同一张图像的同一个物体,在不同epoch之间每个object_query会匹配到不同gt(包括背景)。原因是匈牙利匹配中代价矩阵鲁棒性差,即稍微扰动就会影响匹配结果。故作者考虑额外引入加微弱噪声的gt,让额外的object query学习这部分gt,进而来克服不稳定的匹配过程。
2、方法
如图所示,模型核心部分在Denoising part,Matching part就是原始的匈牙利匹配。故这里只介绍下前者。
2.1.Denoising part
以图为例,有两组加噪的gt和object query+label。object_query+label比较简单,就设置成可学习并初始化即可;这里看下如何给gt加噪。
加噪分为两部分:1)gt_box加噪:小幅度移动box中心和box_scale;2)label加噪:随机将gt变成另一个类别。
2.2.Attention mask
在搞定上述两部分后,就能训练了,但发现效果极差,作者分析是Matching Part在训练过程中看见了Denoising Part的gt信息,导致作弊了。故作者引入attn mask矩阵防止信息泄露。
说下attn mask的构成:
如图所示,灰色区域表示不可见,有颜色区域表示可见。而里面每个格子表示“第i个query和第j个query的相似性程度值(i是纵轴,j是横轴)。则上述mask代表含义是:
1) group1中query相互看不到group 2中信息(左上角的四个小块);
2) matching part看不到group1和group2的信息(左下角灰色大块);
3) 但右上角有颜色部分表示group1和group2能看到matching part信息,但无所谓,因为matching part不包含gt信息。(作者也做了实验,看见or看不见并不影响实验性能)。
2.3. 训练和推理
训练就是一对一匹配,推理时把Denoising part扔掉,无损推理。
3、实验
用了去噪后,检测分割模型均无痛涨点。