ronghuaiyang · 2021年07月13日

Dynamic Head: 物体检测器Head的统一注意力框架

导读

来自微软,在一个框架中集成了尺度注意力,空间注意力和通道注意力。

image.png

摘要:这篇文章提出了Dynamic Head的框架,将物体检测头和注意力机制整合到了一起。使用这种框架,可以在不同尺度的特征层之间做注意力,可以在空间范围内做空间注意力,可以在输出通道之间做任务的注意力。在不增加计算的情况下,该方法显著提升了目标检测头的表达能力。

1. 介绍

好的物体检测head的特点:1、要和尺度相关,2、要和空间相关,3、要任务相关。这篇文章中提出了一个统一的框架,把这三点统一到了一起。我们把backbone的输出看成是3位的张量,level x shape x channel,我们发现可以统一到注意力的问题上。方案就是构建一个全方位的注意力机制,但是代价太大。

但是,我们可以在每个单独的维度上分别去做注意力,level-wise,spatial-wise和channel-wise。尺度的注意力只在level维度上做,空间注意力只在shape维度上做,任务注意力只在channel维度上做。

这样,我们可以为检测head构建一个统一的注意力机制,可以为head提供更好的表达能力。在各种物体检测的模型上都可以有1.2%\~3.2%的提升。

2. 方法

2.1 动机

从特征金字塔中,我们可以得到L个不同level的特征图,我们通过上采样和下采样,可以将这些不同level的特征图缩放到中间的尺度上,然后拼接在一起。然后可以得到一个4维的张量,维度为LxHxWxC,其中,L表示L个不同的level,H,W表示特征图的宽和高,C表示通道数量。我们进一步定义S=HxW,然后将这个张量reshape成LxSxC的3维张量。在这种表达方式下,可以进一步研究各个维度的作用。

2.2 Dynamic Head

image.png

尺度注意力
image.png

空间注意力

image.png

由于在S维度上,维数很高,我们将这个模块分解为两个步骤,先用可变卷积学习稀疏的空间注意力,然后在同样的位置上,对不同level的特征进行集成。

任务注意力

动态的对通道进行开关,来适应不同的任务。

image.png
image.png

总体结构体如下:

image.png

2.3 用到已有的检测器中

一阶段检测器

用这个统一的模块来代替原来的多分支。

image.png

二阶段检测器:

在ROI Pooling之前使用尺度和空间的注意力,在ROI Pooling之后使用通道注意力。
image.png

3. 实验

3.1 实现细节

主干网络为ResNet50,检测框架为ATSS,初始学习率0.02,使用了多尺度的infer。

3.2 消融实验

动态head的有效性的实验
image.png

动态head的不同深度的实验

image.png
用在不同物体检测器上的实验
image.png

和最先进的物体检测器的对比:

1.png

首发:AI公园公众号
作者:Xiyang Dai, Yinpeng Chen
编译:ronghuaiyang

推荐阅读

关注图像处理,自然语言处理,机器学习等人工智能领域,请点击关注AI公园专栏
欢迎关注微信公众号
AI公园 公众号二维码.jfif
推荐阅读
关注数
8244
内容数
210
关注图像处理,NLP,机器学习等人工智能领域
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息