Group DETR:分组一对多匹配是加速DETR收敛的关键

2022 年 8 月 8 日 PaperWeekly


©作者 | 陈小康

单位 | 百度、北京大学

研究方向 | 计算机视觉



论文标题:
Group DETR: Fast DETR Training with Group-Wise One-to-Many Assignment

论文链接:

https://arxiv.org/pdf/2207.13085.pdf

端到端的物体检测算法 DETR 不需要手工设计的后处理过程(例如:NMS),但是它需要较长的训练才能收敛。在这篇文章中,我们重新考虑了 DETR 收敛慢的问题,我们发现 DETR 中使用的一对一标签分配在一定程度上造成了这样的结果。

简单来说,一对一标签匹配使得 DETR 在训练过程中缺少监督信号(因为 positive object query 的数目较少),从而需要延长训练时间来达到较好的效果。实际上,一对多标签分配可以解决缺少监督信号的问题,使得网络收敛更快。但一对多标签分配需要借助 NMS 来去除重复的预测,这有悖于 DETR 系列的端到端这一优雅的设计。

为了解决这一问题,我们提出了 Group DETR 。为 DETR 系列算法提供了一种新的标签分配策略: 分组一对多标签分配(Group-wise One-to-Many Assigment) 。我们提出的算法巧妙地将“一对多分配”问题解耦成“多组的一对一分配”问题。在训练时,我们使用 K 组 query,每一组独立地进行一对一标签分配,这样总体上每个 ground truth 会和 K 个 query 匹配。

Group DETR 可以加快 DETR 系列算法的收敛,在保证支持 multiple positive query 的同时,去除冗余预测,实现端到端检测。我们在 DETR 的若干变体上进行实验,包括 Conditional DETR,DAB-DETR,DN-DETR,DINO,以及 Mask2Former, inference 时没有增加任何开销 ,但获得了显著的训练收敛加速和性能提升。




背景



DETR 成功地将 transformer 引入到物体检测任务中,它的重要意义在于去除了物体检测算法里需要人工设计的部分,比如 anchor 的生成和 NMS 操作,大大简化了物体检测的设计流程。

DETR 由 CNN backbone,transformer encoder,transformer decoder 和 prediction heads 组成:

1. CNN backbone 提取图像的 feature;

2. Encoder 通过 self-attention 建模全局关系对 feature 进行增强;

3. Decoder 主要包含 self-attention 和 cross-attention。 Decoder 的输入是若干 query,每个 query 会负责一个物体的预测(或者预测为“空”)。 Decoder self-attention 会在不同 query 之间进行交互,从而实现 NMS 的效果。 Query 通过 cross-attention 去 encoder 出来的特征中进行查询和物体有关的区域,提取对应的特征;

4. 最后的 prediction heads 基于每个 query 在 decoder 中提取到的特征,预测出物体的 bounding box 的位置和类别。



DETR 中的标签分配算法


DETR 在训练时依赖一对一标签分配算法(例如,匈牙利算法)建立 ground truth 和预测之间的对应关系, 每个 ground truth 只会被分配给一个 positive query 。然而,在很多经典的检测器中,使用的是一对多标签分配算法,例如 Faster R-CNN。一对多标签分配保证了快速的训练收敛速度,但容易产生重复的预测结果,需要 NMS 去重。如何将一对多标签分配引入 DETR 系列,而又不改变其端到端的特性,成为一个值得研究的问题。



我们尝试分析不同的标签分配策略对 DETR 收敛速度的影响。我们使用 Conditional DETR 进行分析。虽然 Conditional DETR 已经将 DETR 的收敛速度加快了 6~10 倍,但在 12 epoch 这样的情况下效果仍然不太理想。baseline 使用的 query 数量是 300,和 Conditional DETR 论文中保持一致。

  • 首先是一对一标签分配,如上图(a)所示。当我们逐渐提高 query 的数量,从 300 到 3300,性能获得了小于 2 个点的提升。这里的提升主要是因为 query 分布地更加密集,更容易捕获物体。
  • 我们再看一对多标签分配,如上图(b)所示。在这里需要做一下说明,这个实验中,如果使用 600 query,那么每个 ground truth 会被分配给 2 个不同的 positive query,依次类推。我们发现,当提升 query 的数量到 3300,性能获得了接近 6 个点的提升,非常显著。这其实也反映了一个现象:多个 positive query 能显著加快 DETR 的收敛

  • 但上述一对多标签分配算法也存在一些问题。(1)该算法容易产生 duplicate prediction,需要 NMS 来去重。如果我们在测试时去掉 NMS,那么性能会以非常恐怖的幅度下降,且 query 数量越多,duplicate 程度就越高,性能下降地越厉害:使用 3300 query 时,性能下降大概 30 个点。(2)该算法带来较大的计算开销。训练时使用 3300 query,那么测试的时候也需要使用 3300 query,相比于 baseline(300 query),decoder 的计算量提高到了 11 倍。




Group DETR


根据上一小节的分析,我们发现:一对一分配比较优雅,但性能有限;一对多分配能暴力提升性能,但需要 NMS 后处理。那么, 有没有一种优雅的一对多标签分配算法,在充分利用 positive queries 的同时,不需要 NMS 后处理,也不增加 inference 开销呢?

这正是本文所提出的 Group DETR。我们可以先从上图(c)中的结果感受一下:不需要 NMS,Group DETR 即可实现性能的大幅提升,在 50 epoch 的训练 setting 下,还可以取得与使用 3300 query 的笨重的一对多分配算法几乎一样的性能。



Group DETR 的核心思想是将一个 ground truth 分配给多个 positive queries。为了解决 duplicate prediction 的问题,我们巧妙地将“一对多标签分配”问题解耦成“多组一对一标签分配”问题。

如上图(b)所示,在训练时,我们使用 K 组 query 作为 decoder 的输入。我们在每组 query 内部执行 self-attention 操作(参数是共享的),然后每一组 query 输入到 decoder 的剩余部分。在标签分配时,我们对每一组应用一对一标签分配算法,这样每个 ground truth 会被分配给 K 个 positive queries。在测试的时候,只有第一组 query 被保留(或任选一组保留,每一组的结果都差不多),因此不改变原有算法的任何流程,也不带来任何计算开销。



Group DETR 特性分析


我们用一些简单的实验分析下 Group DETR 的特性。


4.1 每组 query 都学到了数据集中物体的位置分布


我们对每组 query 对应的位置做了统计,可视化在下图中,不同的颜色代表不同的组。我们发现,不同组的 query 学到的位置分布很像,且不同组的 query 倾向于聚在一起。我们猜测这是因为每一组都学到了数据集中物体的位置分布。



4.2 每个 ground truth 被分配给来自不同区域的 query


首先,我们需要给区域做一个定义。如第 1 点所说,不同组的 query 倾向于聚在一起,看起来像是对一个 query 做微小的扰动得到了若干不同的 query,我们认为这些 query 是来自于同一区域的。于是我们定义 扰动距离 :每个 query 到其他组的最近的 query 的距离统计出的平均值。以只有 2 组 query 的情况为例,扰动距离的定义如下(具体符号的定义请参见论文):



我们再定义一个 匹配距离 :每个 ground truth 匹配到的不同组中的 query 之间的相互距离的平均值。以只有 2 组 query 的情况为例,匹配距离的定义如下:



我们统计了在训练过程中,这两个距离 metric 的数值,如下图所示;我们可以明显地观察到,匹配距离显著地大于扰动距离,说明每个 ground truth 匹配到的 positive queries 是来自不同的区域的。具体来说,可能一个 query 在狗的脸上,一个 query 在狗的身上,等等。这样也鼓励同一个物体内部不同部位产生一致的预测。





实验

5.1 数据集


我们在 COCO 2017 Detection dataset 上进行实验,该数据集包括 118K 图像的训练集和 5K 图像的验证集。

5.2. 基于DETR系列算法的实验


我们将 Group DETR 引用到一系列基于 DETR 的算法:Conditional DETR,DAB-DETR,DN-DETR,DINO,Mask2Former。

首先我们在 Conditional DETR 上测试了 query 的组的数量对性能的影响。我们发现随着组数的增加,性能获得稳定的提升,12 epoch 下使用 11 组 query 的时候,性能从 32.6 AP 提高到了 37.6 AP,提升 5 个点。即使在 50 epoch 这样充分训练的 setting 下,仍然获得了 2.5 个点的提升。



我们又将 Group DETR 应用到其他检测算法,均获得了稳定的性能提升。在超强 baseline DINO-Deformable-DETR 上,我们将性能从 48.8 提高到了 49.8,充分验证了 Group DETR 的有效性。



在实例分割算法 Mask2Former 上,我们也做了实验,轻松地提高了结果:





总结


在这篇论文中,我们提出一种支持 multiple positive queries 的算法,Group DETR。Group DETR 使用分组的一对多标签分配算法,巧妙地在 DETR 中引入一对多标签分配算法,而不需要 NMS,也不增加任何 inference 开销。只需简单的修改,Group DETR 就可以应用到当前基于 DETR 的一系列检测分割算法,稳定地提高性能。


更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编




🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·

登录查看更多
0

相关内容

【AAAI2022】锚框排序知识蒸馏的目标检测
专知会员服务
25+阅读 · 2022年2月10日
【AAAI2022】锚点DETR:基于transformer检测器的查询设计
专知会员服务
12+阅读 · 2021年12月31日
【AAAI2022】基于双流更新的视觉Transformer动态加速方法
专知会员服务
23+阅读 · 2021年12月11日
【NeurIPS2021】用于物体检测的实例条件知识蒸馏
专知会员服务
19+阅读 · 2021年11月10日
专知会员服务
31+阅读 · 2020年4月24日
霸榜COCO!DINO: 让目标检测拥抱Transformer
PaperWeekly
1+阅读 · 2022年7月24日
大白话用Transformer做Object Detection
PaperWeekly
2+阅读 · 2022年5月3日
国家自然科学基金
2+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2022年11月25日
Arxiv
21+阅读 · 2020年10月11日
Arxiv
11+阅读 · 2018年4月8日
VIP会员
相关VIP内容
相关基金
国家自然科学基金
2+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员