最近,Transformer在各种视觉任务上都表现出了卓越的表现。有时Transformer模型比CNN模型具有更高的表现能力。然而,单纯扩大感受野也会引起一些问题。一方面,在ViT中使用密集的注意力会导致内存和计算成本过高,特征会受到超出兴趣区域的不相关部分的影响。另一方面,在PVT或Swin Transformer 中采用的稀疏注意里力是数据不可知的,可能会限制建模长期关系的能力。
为了缓解这些问题,本文提出了一种新的可变形的自注意力模块,该模块以数据依赖的方式选择了自注意力中的key和value对的位置。这种灵活的方案使自注意力模块能够聚焦于相关区域并捕获更多信息。在此基础上,提出了一种可变形注意力Transformer(Deformable Attention Transformer)模型,该模型具有可变形注意力,适用于图像分类和密集预测任务。大量的实验表明,本文的模型在综合基准上取得了持续改进的结果。
1 简介
Transformer最初是用来解决自然语言处理任务的。它最近在计算机视觉领域显示出巨大的潜力。先锋工作Vision Transformer(ViT)将多个Transformer块堆叠在一起,以处理非重叠的图像patch(即视觉Token)序列,从而产生了一种无卷积的图像分类模型。与CNN模型相比,基于Transformer的模型具有更大的感受野,擅长于建模长期依赖关系,在大量训练数据和模型参数的情况下取得了优异的性能。然而,视觉识别中的过度关注是一把双刃剑,存在多重弊端。具体来说,每个query patch中参与的key数过多会导致较高的计算成本和较慢的收敛速度,并增加过拟合的风险。
为了避免过度的注意力计算,已有的研究利用精心设计的有效注意力模式来降低计算复杂度。其中有两种具有代表性的方法:
- Swin Transformer采用基于Window的局部注意力来限制Local Window中的注意力;
- Pyramid Vision Transformer(PVT)则通过对key和value特征映射进行采样来节省计算量。
手工设计的注意力模式虽然有效,但不受数据影响,可能不是最佳的。相关的key/value很可能被删除,而不太重要的key/value仍然保留。
理想情况下,给定query的候选key/value集应该是灵活的,并且能够适应每个单独的输入,这样就可以缓解手工制作的稀疏注意力模式中的问题。事实上,在cnn的文献中,学习卷积滤波器的可变形感受野已被证明在依赖于数据的基础上有选择性地关注更多信息区域时是有效的。
最值得注意的工作,Deformable Convolution Networks(DCN),已经在许多具有挑战性的视觉任务上产生了令人印象深刻的结果。这促使想在Vision Transformer中探索一种可变形的注意力模式。然而,这种想法的简单实现会导致不合理的高内存/计算复杂度:
由Deformable offsets引入的开销是patch数量的平方。因此,尽管最近的一些工作研究了变形机制的思想,但由于计算成本高,没有人将其作为构建强大的Backbone(如DCN)的基本构件。相反,它们的可变形机制要么在检测头中采用,要么作为预处理层对后续Backbone的patch进行采样。
本文提出了一种简单有效的可变形的自注意力模块,并在此模块上构造了一个强大的Pyramid Backbone,即可变形的注意力Transformer(Deformable Attention Transformer, DAT),用于图像分类和各种密集的预测任务。
不同于DCN,在整个特征图上针对不同像素学习不同的offset,作者建议学习几组query无关的offset,将key和value移到重要区域(如图1(d)所示),这是针对不同query的全局注意力通常会导致几乎相同的注意力模式的观察结果。这种设计既保留了线性空间的复杂性,又为Transformer的主干引入了可变形的注意力模式。
具体来说:
- 对于每个注意力模块,首先将参考点生成为统一的网格,这些网格在输入数据中是相同的;
- 然后,offset网络将query特征作为输入,并为所有参考点生成相应的offset。这样一来,候选的key /value被转移到重要的区域,从而增强了原有的自注意力模块的灵活性和效率,从而捕获更多的信息特征。
2 相关工作
2.1 ViT Backbone
自引入ViT以来,改进的重点是密集预测任务的多尺度特征学习和高效的注意力机制。这些注意力机制包括Window Attention、Global Token、Focal Attention和动态Token Size。
最近,基于卷积的方法被引入到Vision Transformer模型中。其中,已有的研究集中在用卷积运算来补充变压器模型,以引入额外的电感偏差。CvT在标记化过程中采用卷积,利用步幅卷积来降低自注意的计算复杂度。带卷积茎的ViT建议在早期添加卷积,以实现更稳定的训练。CSwin Transformer采用了基于卷积的位置编码技术,并显示了对下游任务的改进。这些基于卷积的技术中有许多可以应用于DAT之上,以进一步提高性能。
2.2 DCN和Attention
可变形卷积是一种强大的机制,可以处理基于输入数据的灵活空间位置。最近,它已被应用于Vision Transformer。Deformable DETR通过在CNN Backbone的顶部为每个query选择少量的key来提高DETR的收敛性。由于缺少key限制了其表示能力,其Deformable Attention不适合用于特征提取的视觉Backbone。
此外,Deformable DETR中的注意力来自简单的线性投影,query token之间不共享key。DPT和PS-ViT构建Deformable Block来细化视觉token。具体来说,DPT提出了一种Deformable Patch Embedding方法来细化跨阶段的Patch,PS-ViT在ViT Backbone前引入了空间采样模块来改善视觉Token。它们都没有把Deformable Attention纳入视觉中枢。相比之下,本文的Deformable Attention采用了一种强大而简单的设计,来学习一组在视觉token之间共享的全局key,并可以作为各种视觉任务的一般Backbone。本文方法也可以看作是一种空间适应机制,它在各种工作中被证明是有效的。
3 Deformable Attention Transformer
3.1 Preliminaries
3.2 Deformable Attention
现有的分层Vision Transformer,特别是PVT和Swin Transformer试图解决过度关注的问题。前者的降采样技术会导致严重的信息丢失,而后者的注意力转移会导致感受野的增长要慢得多,这限制了建模大物体的潜力。因此,需要依赖数据的稀疏注意力来灵活地建模相关特征,这也孕育了在DCN中提出的可变形的机制。
同时,在先前的工作中的观察显示,不同的query在视觉注意力模型中具有相似的注意力图。因此,选择了一个更简单的解决方案,为每个query共享移动的key和value以实现有效的权衡。
具体来说,本文提出了Deformable Attention,在特征映射中重要区域的引导下,有效地建模Token之间的关系。这些集中的regions由offset网络从query中学习到的多组Deformable sampling点确定。采用双线性插值对特征映射中的特征进行采样,然后将采样后的特征输入key投影得到Deformable Key。
1、Deformable注意力模块
2、Offset生成
如前面所述,采用一个子网络进行Offset的生成,它分别消耗query特征和输出参考点的offset值。考虑到每个参考点覆盖一个局部的s×s区域(×是偏移的最大值),生成网络也应该有对局部特征的感知,以学习合理的offset。
因此,将子网络实现为2个具有非线性激活的卷积模块,如图2(b)。所示输入特征首先通过一个5×5的深度卷积来捕获局部特征。然后,采用GELU激活和1×1卷积得到二维偏移量。同样值得注意的是,1×1卷积中的偏差被降低,以缓解所有位置的强迫性偏移。
3、Offset groups
为了促进变形点的多样性,在MHSA中遵循类似的范式,并将特征通道划分为G组。每个组的特征分别使用共享的子网络来生成相应的偏移量。在实际应用中,注意力模块的Head数M被设置为偏移组G大小的倍数,确保多个注意力头被分配给一组deformed keys 和 values 。
4、Deformable相对位置偏差
5、 计算的复杂度
可变形多头注意力(DMHA)的计算成本与PVT或Swin Transformer中对应的计算成本相似。唯一的额外开销来自于用于生成偏移量的子网络。整个模块的复杂性可以概括为:
3.3 模型架构
在网络架构方面,模型“可变形注意变换器”与PVT等具有相似的金字塔结构,广泛适用于需要多尺度特征图的各种视觉任务。如图3所示,首先对形状为H×W×3的输入图像进行4×4不重叠的卷积嵌入,然后进行归一化层,得到H4×W4×C 的patch嵌入。为了构建一个层次特征金字塔,Backbone包括4个阶段,stride逐渐增加。在2个连续的阶段之间,有一个不重叠的2×2卷积与stride=2来向下采样特征图,使空间尺寸减半,并使特征尺寸翻倍。
- 在分类任务中,首先对最后一阶段输出的特征图进行归一化处理,然后采用具有合并特征的线性分类器来预测logits。
- 在目标检测、实例分割和语义分割任务中,DAT扮演着Backbone的作用,以提取多尺度特征。
这里为每个阶段的特征添加一个归一化层,然后将它们输入以下模块,如目标检测中的FPN或语义分割中的解码器。
在DAT的第三和第四阶段引入了连续的Local Attention和Deformable Attention Block。特征图首先通过基于Window的Local Attention进行处理,以局部聚合信息,然后通过Deformable Attention Block对局部增强token之间的全局关系进行建模。这种带有局部和全局感受野的注意力块的替代设计有助于模型学习强表征,在GLiT、TNT和Point-Former。
由于前两个阶段主要是学习局部特征,因此在这些早期阶段的Deformable Attention不太适合。
此外,前两个阶段的key和value具有较大的空间大小,大大增加了Deformable Attention的点积和双线性插值的计算开销。因此,为了实现模型容量和计算负担之间的权衡,这里只在第三和第四阶段放置Deformable Attention,并在Swin Transformer中采用Shift Window Attention,以便在早期阶段有更好的表示。建立了不同参数和FLOPs的3个变体,以便与其他Vision Transformer模型进行公平的比较。通过在第三阶段叠加更多的块和增加隐藏的维度来改变模型的大小。详细的体系结构见表1。
请注意,对于DAT的前两个阶段,还有其他的设计选择,例如,PVT中的SRA模块。比较结果见表7。
4 实验
4.1 ImageNet-1K 图像分类
在表2中报告了的结果,有300个训练周期。与其他最先进的ViT相比,DAT在类似的计算复杂性上实现了Top-1精度的显著改进。我们的DAT方法在所有三个尺度上都优于Swin Transformer、PVT、DPT和DeiT。在没有在Transformer Block中插入卷积,或在Patch嵌入中使用重叠卷积的情况下,比Swin Transformer对应的数据获得了+0.7、+0.7和+0.5的提升。当在384×384分辨率下进行微调时,比Swin Transformer表现好0.3%。
4.2 COCO目标检测
如表3所示,DAT在小型模型中的性能分别超过Swin变压器1.1和1.2mAP。
当在两阶段检测器中实现时,如Mask R-CNN和Cascade Mask R-CNN,模型比不同尺寸的Swin Transformer模型实现了一致的改进,如表4所示。可以看到,由于建模随机依赖关系的灵活性,DAT在大型目标上实现了对其(高达+2.1)的改进。小目标检测和实例分割的差距也很明显(高达+2.1),这表明DATs也具有在局部区域建模关系的能力。
4.3 ADE20K语义分割
在表5中,所有方法中mIoU得分最高的验证集上的结果。与PVT相比,小模型在参数更少的情况下也超过PVT-S 0.5 mIoU,并且在+3.1和+2.5中实现了显著的提升。DAT在3个模型尺度上都比Swin Transformer有显著的改进,在mIoU中的分别提升了+1.0、+0.7和+1.2,显示了方法的有效性。
4.4 消融实验
1、几何信息开发
首先评估了提出的可变形偏移量和可变形相对位置嵌入的有效性,如表6所示。无论是在特征采样中采用偏移量,还是使用可变形的相对位置嵌入,都提供了+0.3的提升。作者还尝试了其他类型的位置嵌入,包括固定的可学习位置偏差中的深度卷积。但在没有位置嵌入的情况下,只提升了0.1,这表明变形相对位置偏差更符合Deformable attention。从表6中的第6行和第7行也可以看出,模型可以在前两个阶段适应不同的注意力模块,并取得有竞争的结果。SRA在前两个阶段的模型在65%的FLOPs上比PVT-M高出0.5倍。
2、不同Stage使用Deformable attention
用不同阶段的Deformable attention取代了Swin Transformer shift window attention。如表7所示,只有替换最后一个阶段的注意力才能提高0.1,替换最后两个阶段的性能才能提高0.7(总体精度达到82.0)。然而,在早期阶段用更多Deformable attention代替,会略微降低精度。
4.5 可视化结果
如图所示,采样点被描述在目标检测框和实例分割Mask的顶部,从中可以看到这些点被移到了目标上。
在左边一列中,变形的点被收缩成两个目标长颈鹿,而其他的点则是保持一个几乎均匀的网格和较小的偏移量。
在中间的一列中,变形点密集地分布在人的身体和冲浪板中。
右边的一列显示了变形点对六个甜甜圈的每个焦点,这表明本文的模型有能力更好地建模几何形状,即使有多个目标。
上述可视化表明,DAT可以学习到有意义的偏移量,以采样更好的注意力key,以提高各种视觉任务的表现。
5 参考
[1].Vision Transformer with Deformable Attention.
原文:集智书童
作者:ChaucerG
推荐阅读
更多嵌入式AI技术相关内容请关注嵌入式AI专栏。