一种全新的注意力机制DAS,该方法使用了可变形卷积来表示相关图像区域的位置,并使用了可分卷积来实现效率。经实验验证,该注意力机制在多种公开数据集上都有不错的提升。全新注意力机制,即插即用,助力检测、分类等多任务算法!

卷积神经网络(CNNs)在局部空间模式识别方面表现出色。对于许多视觉任务,如物体识别和分割,显著信息也存在于CNN核边界之外。然而,由于CNN的受限制的感受野,它们在捕获这种相关信息时感到力不从心。

自注意力机制可以提高模型获取全局信息的能力,但同时也增加了计算开销。作者提出了一种快速简单的全卷积方法DAS,它有助于将注意力集中在相关信息上。该方法使用了可变形卷积来表示相关图像区域的位置,并使用了可分卷积来实现效率。

DAS可以插入到现有的CNN中,并使用通道注意力机制传播相关信息。与Transformer风格注意力所需的O(n^2)计算复杂度相比,DAS的计算复杂度为O(n)。

作者的主张是,DAS将注意力集中在相关特征的能力,在添加到流行的CNN(卷积神经网络)用于图像分类和目标检测时,可以带来性能提升。例如,DAS在Stanford Dogs(4.47%的改进)、ImageNet(1.91%的改进)和COCO AP(3.3%的改进)上,与基于ResNet50 Backbone网络的原始模型相比。

这种方法在使用了相似或更少的FLOPs的同时,超越了其他CNN注意力机制。作者的代码将公开发布。

#Introduction

卷积神经网络(CNNs)在结构上设计用于通过应用卷积核实现的卷积滤波器来利用局部空间层次。尽管这使得它们在涉及局部空间模式的任务上既高效又有效,但其固有的设计限制了它们的感受野,可能会阻碍不在内核边界内的相关信息的全面集成。

视觉Transformer(ViT)支持在图像中捕获全局依赖关系和上下文理解,并在许多计算机视觉任务中显示出改进性能。ViT将图像分解为一系列扁平化的Patch,并随后将它们映射到Transformer编码器的嵌入向量序列中。

DAS~~_权重

尽管继续努力将Transformer的二次复杂度控制在使用卷积对长序列进行密集注意力,但已有很多研究直接将自注意力机制集成到CNN中,以实现密集显著特征注意力。这项工作的主要动机是后者。

CNN中的注意力机制可以广泛地分为通道注意力、空间注意力和混合域注意力\。这些方法提出了一些策略来包含特定计算的注意力,例如使用聚合、子采样、池化等技术,这反过来又使得提供密集注意力变得困难。

例如,大多数遵循堆叠注意力模块的工作的论文在计算注意力权重之前使用平均池化操作在注意力感知的特征图上。一种流行的策略是计算每个通道的一个权重[15, 33]。这可能导致忽视了重要的空间上下文信息。

一些方法已经提出,通过混合通道和空间注意力来扩展上述方法,从而获得更鲁棒的注意力模块。另一种扩展方法使用输入的两个旋转的全局池化以及原始张量与全局池化相结合,将来自特征的三维信息进行组合。

然而,它们仍然面临着有效地为显著特征提供注意力的问题。它们将通道和空间注意力视为独立的过程,因此它们没有全面地考虑特征中的信息,这可能导致潜在信息损失。

增加对图像相关区域的关注的一个有前途的方法是使用变形网格而不是标准卷积滤波器中使用的常规网格。DCN v2已经显示了在关注相关图像区域方面的改进能力。

这些方法[35, 39]已经被用于为ViTs中的细粒度语义分割和图像分类任务提供变形注意力,通过在ViTs中找到更好的键和查询。然而,作者的主要兴趣在于在最小化对原始网络或其训练的更改的情况下,直接在CNNs中提供一个注意力机制。因此,本文其余部分的重点将是卷积注意力方法。

作者的方法部分受到DCN的成功的启发,部分受到在各种视觉任务(如光学流和立体视觉)中,使用Raft架构设计的主导地位,如传播图像/特征图使用门控循环单元(GRU)进行递归。

作者的主要贡献是一种高效的门控注意力机制DAS,它可以聚焦并增加对显著图像区域的注意力。它可以非常容易地集成到任何现有的CNN中,以提高CNN的性能,同时增加的FLOPs最小,并且最重要的是,不会改变Backbone结构。

DAS~~_卷积_02

作者的注意力门结合了层特征提供的上下文和变形卷积的能力,以优雅地增加对显著特征的关注(见图1)。DAS只添加了一个单个的超参数,也很容易进行调整。

作者展示了将作者的门控添加到标准CNN(如ResNet和MobileNetV2)中的方法,并通过大量的实验结果,展示了在各种任务中性能的提高。为了支持作者的主张,即带有作者注意力门控的CNN确实会聚焦并增加对任务相关特征的关注,作者展示了梯度卷积Heatmap,突出显示重要像素。作者还定义并计算了一个简单的指标,称为显著特征检测(sfd)分数,用于定量化比较作者注意力门控的有效性。

#Related Work

CNN注意力机制已经发展起来,旨在消除通过神经网络流动的冗余信息,同时解决计算负载问题。目标是增加对显著特征的关注,并减少/不关注无关特征。

通道注意力。 压缩与激励网络(SENet)引入了一种使用全局池化和全连接层的高效的通道注意力机制。SENet为每个通道计算一个注意力权重,导致与基础架构相比显著的性能改进。与此同时,全局二阶池化网络(GSoP-Net)方法采用二阶池化来计算注意力权重向量。有效的通道注意力(ECA-Net)[33]通过全局平均池化和一维卷积为每个通道计算注意力权重。上述通道注意力方法忽略了大量的空间上下文信息。

空间注意力。 GE-Net 通过深度卷积对信息进行空间编码,然后将输入和编码的信息整合到后续层。

双注意力网络。 双重注意力网络(A2-Nets)方法引入了新的关系函数用于非局部(NL)块,依次使用两个连续的注意力块。全局上下文网络(GC-Net)方法使用复杂的基于置换的操作将NL-块和SE块集成,以捕捉长期依赖关系。

交叉路径结合上下文信息。 CC-Net 结合了交点轨迹上的像素的上下文信息。并行处理子特征。SA-Net 利用通道拆分并行处理子特征。

在上述所有空间注意力方法中,尽管目标更多是捕捉长程依赖关系,但计算开销可能较高,正如作者在实验结果中所看到的。

通道-空间注意力。 卷积块注意力模块(CBAM)和瓶颈注意力模块(BAM)将通道和空间注意力分开,并在最后一步将它们结合,以获得比SENet更好的性能。CBAM的注意力模块包括多层感知机(MLP)和卷积层,采用全局平均和最大池化的融合。SPNet [13]中引入了一种称为条带池化的池化技术,利用一个长而窄的核有效地捕获涉及像素级预测的任务的广泛上下文细节。

GALA 也分别找到局部和全局信息,使用两个2D张量并将其集成以获得通道-空间注意力。Triplet注意力[26]通过交换输入张量和池化来捕获跨维度的交互,从而提高性能。

DRA-Net 也采用两个独立的FC层来捕获通道和空间关系。OFDet 使用所有三种注意力(通道、空间和通道-空间注意力)同时。

在上述所有方法中,这些单独处理的关注度需要谨慎地结合以提供更全面地表示特征依赖性。由于使用了平均和/或池化,提供密集关注也很难。再者,计算开销很高。

针对CNN中的注意力机制,一项调查将其分为6个类别:

  1. 通道注意力
  2. 空间注意力
  3. 时间注意力
  4. 分支注意力
  5. 通道与空间注意力
  6. 空间与时间注意力

作者提出的注意力模块没有像上述方法那样分离注意力,而是同时考虑整个特征并采用非常简单的方法返回像素级注意力权重。总之,现有方法尚未完全解决以全面方式捕获通道、空间和相关信息,这对于理解上下文信息至关重要。在大多数情况下,密集注意力和/或计算开销也可能是一个问题。

相比之下,作者提出的注意力门控结合了深度可分卷积和变形卷积的优势,以全面方式为像素级提供注意力。它使得作者的模型能够有效地将注意力集中在相关信息上,同时保持CNNs的架构简单性。

#Methodology

在本节中,作者提出了一种名为DAS的注意力机制,以一种计算高效的方式增强CNN的能力,提供对相关信息的有焦点关注。作者通过在ResNet和MobileNetV2模型的每个主要块的跳过连接后使用作者的DAS注意力门控来说明其使用。作者的方法的关键步骤和组成部分如下所述。

Bottleneck Layer

DAS~~_人工智能_03

DAS~~_池化_04

Deformable Attention Gate

DAS~~_人工智能_05

方程4的乘法结果是CNN模型下一层的输入,无缝地将注意力机制集成到模型中,无需更改Backbone结构。与先前的变形注意力机制相比,DAS注意力机制主要应用于CNN。它采用了一个3x3内核,更适合CNN。

尽管[39]将变形注意力专门应用于查询特征,但DAS注意力机制则从整体上考虑图像特征。作者的注意力机制作为一个独立的模块运行,不需要对主要架构进行更改,从而增强了在基于变形的Transformer注意力方法上的可插拔能力。

#Experiments

训练设置

对于图像分类,作者使用了CIFAR100,Stanford Dogs,和ImageNet1k数据集,对于目标检测,作者使用了MS COCO数据集。作者采用了与 [26]中提到的一致的ResNet和MobileNetV2架构。

DAS~~_卷积_06

Image Classification

DAS~~_人工智能_07

表3表明,添加Triplet注意力略微提高了ResNet-18在CIFAR100上的准确率(0.3%),但在Stanford Dogs数据集上降低了1.36%。然而,DAS在CIFAR100和Stanford Dogs上的ResNet-18准确率分别提高了0.79%和4.91%。

与ResNet-18类似,将Triplet注意力添加到ResNet-50对Stanford Dogs的Backbone模型产生了负面影响,而DAS在CIFAR100和Stanford Dogs上分别增强了Backbone模型的2.8%和4.47%,显示出DAS在小型和大型模型上的性能一致性。有趣的是,作者在CIFAR100和Stanford Dogs数据集上观察到,作者的提出的DAS-18方法不仅超过了基础的ResNet-18模型,而且超过了包括ResNet-50在内的更深架构,同时使用了2.26G更少的FLOPs。这使得DAS-18成为移动应用的有力选项。

DAS~~_池化_08

图像Net分类的结果在表1中给出。当将DAS注意力门控应用于ResNet-18时,分类精度得到了显著的改进。DAS在Top-1精度上达到了72.03%,在Top-5精度上达到了90.70%。这超过了其他现有方法,如SENet ,BAM,CBAM,Triplet Attention,和EMCA,展示了DAS在提高模型性能方面的有效性。

DAS深度为50时,在Top-1精度上达到78.04%,在Top-5精度上达到94.00%。它以使用32%更少的FLOPs和1.39M更少的参数的最佳性能实现了最佳性能,超过了GSoP-Net等排名第二的性能。ResNet-50 + DAS注意力在Top-1精度上超过了ResNet-101,在约60%的FLOPs和参数数量上提高了0.69%的准确性。ResNet-101 + DAS注意力在与其他具有较少参数的注意力模块(与SENet和CBAM相比)中获得了最佳的Top-1精度(78.62%)。

在轻量级的MobileNetV2上,DAS仍然有效。它在Top-1精度上达到了72.79%,在Top-5精度上达到了90.87%,超过了SENet,CBAM,和Triplet Attention,同时具有计算效率,FLOP计数低至0.35G。

Object Detection

DAS~~_权重_09

Design Evolution and Ablation Studies

在确定DAS设计之前,作者探索了两种像素级注意力的概念。这些概念在图2(a)和(b)中展示,并在Stanford Dogs数据集的表4中对应的结果。

DAS~~_池化_10

(a) :作者将输入与自身的一个GridSample进行拼接,然后使用一个卷积层将输入和来自遥远像素的信息融合在一起。尽管这种方法显示出潜力,但在Stanford Dogs数据集上的准确率仅为65.00%。GridSample是PyTorch的一个可微分特征,它根据给定的网格张量在空间上插值相邻像素。

(b) :作者通过使用压缩输入和GridSample输出来计算特征中的冗余信息权重,对初始概念进行了扩展。这种改进使得准确率从65.00%提高到65.21%,同时降低了计算开销。为了评估作者的设计决策

(c):作者进行了各种 ablation 研究。

(d) :去掉初始部分并仅依赖变形卷积导致准确性降低(65.338%),这强调了第一卷积层的重要性。

(e) :去掉变形卷积但保留初始部分增加了计算量和降低了准确性(65.291%),这表明需要多个层进行精确的注意力建模。

(f) :用深度可分卷积替换变形卷积提高了准确率(66.107%),但仍然被作者的方法超过,这突显了变形卷积在关注相关信息方面的优势。

(g) :去掉注意力模块并只使用变形卷积大幅度降低了准确率,这强调了注意力行为的重要性。

(h) :类似地,去掉注意力模块并使用额外的层也显示了低准确率,这强调了使用这些层作为注意力模块的偏好。

DAS~~_卷积_11

作者提出的注意力方法 (c) 在所有配置上超过了其他方法,实现了最佳准确率(66.410%)。这强调了作者的上下文感知注意力机制在关注相关信息(即使不在内核边界外)方面的有效性,并增强了模型性能。

DAS~~_人工智能_12

表5展示了不同归一化层对注意力模块的影响。总之,作者的实验结果表明,与其它想法和配置相比,作者的方法在准确率和计算效率方面具有优势,为像素级注意模型提供了有价值的补充。

DAS~~_卷积_13

作者研究了注意力层数的影响。在所有跳过连接之后添加注意力层可以稍微提高性能,但会显著增加计算量和参数,尤其是在较大的模型中。经验上,作者观察到四个注意力门层在计算成本和准确性之间达到了良好的平衡。作者还研究了注意力门的位置,最终选择了对于小和大数据集都简单、高效且准确的注意力模型。

Salient Feature Detection Effectiveness

任何任务中应用注意力机制的目标是增加对相关特征的关注度,同时减少或避免对无关特征的关注度。作者认为早期部分性能改进的主要原因是作者的门控在图像中突出并增加对显著特征的关注度。在本节中,作者将可视化作者的注意力机制在多大程度上达到了上述目标。

为此,作者使用gradCAM,这是一个函数,可以生成显示输入图像中哪些部分对于由训练好的网络做出的分类决策具有重要性的Heatmap。在Heatmap中使用的颜色方案是红到蓝,其中蓝色表示较低的重要性。 

DAS~~_卷积_14

图4显示了使用ResNet-50和注意力门前后,对多个样本的block 3和block 4的Heatmap。这些案例清楚地表明,作者的注意力门在图像中更好地关注相关特征。作者在ResNet的每个block的末尾应用了作者的注意力门,这样网络可以在早期阶段也开始关注图像中的相关特征。观察图4中block 3到block 4的Heatmap变化,作者可以看到使用DAS注意力时,注意力确实转向了相关的特征。

最后,作者定义了一个简单的指标,用于衡量训练好的网络在关注相关特征方面的有效性。作者基于gradCAM输出的权重。由于作者观察到gradCAM权重被压缩在0到1的范围内,作者在以下中使用gradCAM权重的反对数缩放。显著特征检测分数是。

DAS~~_卷积_15

#Conclusion, Limitations and Extensions

在本文中,作者提出了DAS注意力门,一种新的自注意力机制,适用于CNN。DAS没有使用Transformer。与CNN内较早的方法相比,DAS提供密集注意力,并全面地考虑特征上下文。

DAS非常简单 - 它结合了深度可分卷积(用于高效表示全局上下文)和变形卷积(用于增加对相关图像区域的关注度)。实现结果确实表明,尽管DAS很简单,但它可以在图像中实现对任务相关特征的聚焦注意力。

DAS~~_卷积_16

虽然作者已经在图像分类和目标检测中展示了DAS的性能,但在未来,作者希望将其应用于更密集的视觉任务,如语义分割和立体匹配,在这些任务中,DAS的密集注意力能力可以提供显著的优势。