https://arxiv.org/abs/2202.09741
arXiv:2202.09741 [pdf, other] cs.CV Visual Attention Network Authors: Meng-Hao Guo, Cheng-Ze Lu, Zheng-Ning Liu, Ming-Ming Cheng, Shi-Min Hu Abstract: While originally designed for natural language processing (NLP) tasks, the self-attention mechanism has recently taken various computer vision areas by storm. However, the 2D nature of images brings three challenges for applying self-attention in computer vision. (1) Treating images as 1D sequences neglects their 2D structures. (2) The quadratic complexity is too expensive for high-resolution images. (3) It only captures spatial adaptability but ignores channel adaptability. In this paper, we propose a novel large kernel attention (LKA) module to enable self-adaptive and long-range correlations in self-attention while avoiding the above issues. We further introduce a novel neural network based on LKA, namely Visual Attention Network (VAN). While extremely simple and efficient, VAN outperforms the state-of-the-art vision transformers and convolutional neural networks with a large margin in extensive experiments, including image classification, object detection, semantic segmentation, instance segmentation, etc. Code is available at https://github.com/Visual-Attention-Network. △ Less Submitted 20 February, 2022; originally announced February 2022. Comments:
Code is available at https://github.com/Visual-Attention-Network
虽然最初是为自然语言处理(NLP)任务而设计的,但自注意机制最近已经风靡了计算机视觉的各个领域。然而,图像的2D特性给在计算机视觉中应用自注意带来了三个挑战。(1) 将图像视为一维序列忽略了其二维结构。(2) 二次复杂度对于高分辨率图像来说太昂贵了。(3) 它只捕捉空间适应性,而忽略了通道适应性。在本文中,我们提出了一种新的大核注意(LKA)模块,在避免上述问题的同时,实现了自注意中的自适应和长程相关性。我们进一步介绍了一种基于LKA的新型神经网络,即视觉注意网络(VAN)。虽然非常简单高效,但在大量实验中,VAN的表现优于最先进的视觉Transformer和卷积神经网络,包括图像分类、对象检测、语义分割、实例分割等。
1导言
视觉主干作为基本的特征提取工具,是计算机视觉领域的一个基础研究课题。卷积神经网络(CNN)[41,40,39]由于其显著的特征提取性能,在过去十年中是不可或缺的主题。AlexNet[39]重新开启深度学习十年后,通过使用更深的网络[68,29]、更高效的架构[31,90102]、更强的多尺度能力[35,71,19]和注意力机制[34,17],在获得更强大的视觉主干方面取得了一些突破。由于平移不变性和共享滑动窗口策略[67],CNN对于具有任意大小输入的各种视觉任务具有固有的效率。更先进的视觉主干网络通常会在各种任务中带来显著的性能提升,包括图像分类[29,17,52]、目标检测[14]、语义分割[89]和姿势估计[80]。
根据观察到的反应时间和沿生物途径[21]、认知心理学[76]和神经科学[85]估计的信号传输时间,研究人员认为人类视觉系统只处理部分可能的刺激细节,而其余几乎未经处理。选择性注意是处理视觉中复杂搜索组合方面的重要机制[77]。注意机制可以看作是一个基于输入特征的自适应选择过程。自从完全注意网络[78]被提出以来,自注意模型(又称Transformer)迅速成为自然语言处理(NLP)中占主导地位的结构[16,5]。最近,Dosovitskiy等人[17]提出了视觉Transformer(ViT),它将Transformer主干引入计算机视觉,在图像分类任务上优于著名的CNN。得益于其强大的建模能力,基于transformer的视觉主干迅速占据了各种任务的排行榜,包括目标检测[52]、语义分割[89]等。
尽管取得了显著的成功,卷积运算和自注意仍然有其不足之处。卷积运算采用静态权重,缺乏适应性,这一点已被证明至关重要[34,14]。正如最初为1D NLP任务设计的,自注意[17,17]将2D图像视为1D序列,这会破坏图像的关键2D结构。由于其二次计算和内存开销,处理高分辨率图像也很困难。此外,自注意是一种特殊的注意,它只考虑空间维度的适应性,而忽略了通道维度的适应性,这对视觉任务也很重要[34,86,81,1]。
在本文中,我们提出了一种新的注意机制,称为大核注意(LKA),它是为视觉任务量身定制的。LKA吸收了卷积和自注意的优点,包括局部结构信息、长期依赖性和适应性。同时,避免了它们在通道维度上忽视适应性等缺点。在LKA的基础上,我们提出了一种新的视觉主干,称为视觉注意网络(VAN),它显著超过了著名的基于CNN和基于transformer的主干。本文的贡献总结如下:
–我们为计算机视觉设计了一种名为LKA的新型注意机制,它既考虑了卷积和自注意的优点,又避免了它们的缺点。在LKA的基础上,我们进一步介绍了一种简单的视觉主干,称为VAN。
–我们在广泛的实验中,包括图像分类、对象检测、语义分割、实例分割等,显示VANs在很大程度上优于最先进的ViTs和CNN。
2.相关工作
2.1卷积神经网络
如何有效地计算强大的特征表示是计算机视觉中最基本的问题。卷积神经网络(CNN)[41,40]利用局部上下文信息和平移不变性,极大地提高了神经网络的效率。自AlexNet[39]以来,CNN迅速成为计算机视觉领域的主流框架。为了进一步提高效率,研究人员投入大量精力使CNN更深[68,29,35,71],更轻[31,65102]。我们的工作与MobileNet[31]相似,后者将标准卷积分解为两部分,深度卷积和点态卷积(也称为1×1 Conv[43])。我们的方法将卷积分解为三部分:深度卷积、深度和扩展卷积[9,93],以及点态卷积。得益于这种分解,我们的方法更适合于高效分解大型核卷积。我们还将注意机制引入到我们的方法中,以获得自适应特性。
2.2视觉注意方法
注意机制可以被视为根据输入特征的自适应选择过程,该特征在RAM中被引入计算机视觉[56]。它在许多视觉任务中提供了优势,例如图像分类[34,86]、目标检测[14,32]和语义分割[96,20]。计算机视觉中的注意可分为四个基本类别[25],包括通道注意、空间注意、时间注意和分支注意,以及它们的组合,如通道和空间注意。每种注意力在视觉任务中都有不同的效果。
自注意源于NLP[78,16],是一种特殊的注意机制。由于它能有效地捕捉远距离依赖性和适应性,因此在计算机视觉中扮演着越来越重要的角色[84,18,62,97,99,91]。各种深度自注意网络(又称视觉Transformers)[17,7,52,22,69,83,95,47,48,4,50,87,51,27]在不同的视觉任务上取得了比主流CNN更好的性能,显示了基于注意的模型的巨大潜力。然而,自注意最初是为NLP设计的。在处理计算机视觉任务时,它有三个缺点。(1) 它将图像视为一维序列,忽略了图像的二维结构。(2) 二次复杂度对于高分辨率图像来说太昂贵了。(3) 它只实现了空间适应性,而忽略了通道维度的适应性。对于视觉任务,不同的通道通常代表不同的对象[11,25]。通道适应性对于视觉任务也很重要[34,86,60,81,11]。为了解决这些问题,我们提出了一种新的视觉注意方法,即LKA。它涉及自注意的优点,如适应性和长期依赖性。此外,它还受益于卷积的优点,例如利用局部上下文信息。
2.3视觉MLP
在CNN出现之前,多层感知器(MLP)[63,64]是一种流行的计算机视觉工具。然而,由于计算量大、效率低,MLPs的性能长期受到限制。最近的一些研究成功地将标准MLP解耦为空间MLP和信道MLP[72,23,73,46]。这种分解可以显著降低计算成本和参数,从而释放出MLP惊人的性能。读者可以参考最近的调查[24,49],以获得对MLP更全面的审查。与我们最相关的MLP是gMLP[46],它不仅分解了标准MLP,还涉及注意机制。然而,gMLP有两个缺点。一方面,gMLP对输入大小敏感,只能处理固定大小的图像。另一方面,gMLP只考虑图像的全局信息,而忽略了图像的局部结构。我们的方法可以充分利用其优点,避免其缺点。
3.方法
3.1大核注意度
注意机制可以看作是一个自适应选择过程,它可以根据输入特征选择有区别的特征,并自动忽略噪声响应。注意机制的关键步骤是生成注意图,以显示不同点的重要性。要做到这一点,我们应该了解不同点之间的关系。
有两种众所周知的方法来建立不同点之间的关系。第一种是采用自注意机制[84,97,99,17]来捕捉长程依赖。在计算机视觉中应用自注意有三个明显的缺点,这些缺点已在第二节中列出。2.2. 第二种方法是使用大核卷积[86,79,33,58]建立相关性并生成注意图。这种方式仍然存在明显的缺点。大的核卷积会带来大量的计算开销和参数。
为了克服上面列出的缺点,并利用自注意和大核卷积的优点,我们建议分解一个大核卷积运算来捕获长程关系。如图2所示,大型核卷积可分为三个部分:空间局部卷积(深度卷积)、空间远程卷积(深度扩展卷积)和通道卷积(1×1卷积)。明确地我们可以将一个K×K卷积分解为一个kd×kd深度方向的膨胀卷积− 1) ×(2d)− 1) 深度卷积和1×1卷积。通过上述分解,我们可以用少量的计算成本和参数捕捉长期关系。在获得长期关系后,我们可以估计一个点的重要性并生成注意图。
给,F∈ RC×H×W是输入特征。注意∈ RC×H×W表示注意图。注意图中的值表示每个特征的重要性。⊗ 意味着元素相乘。如选项卡所示。1.我们提出的LKA结合了卷积和自注意的优点。它考虑了局部语境信息、大的感受野和动态过程。此外,LKA不仅实现了空间维度的适应性,还实现了信道维度的适应性。值得注意的是,在深层神经网络中,不同的通道通常代表不同的对象[25,11],通道维度的适应性对于视觉任务也很重要。
3.2视觉注意力网络(VAN)
我们的VAN有一个简单的层次结构,即一个四级序列,输出空间分辨率降低,分别是h4×w4、h8×w8、h16×w16和h32×w32。这里,H和W表示输入图像的高度和宽度。随着分辨率的降低,输出通道的数量也在增加。输出通道Ci的变化显示在选项卡中。2.
对于图3(d)所示的每个阶段,我们首先对输入进行下采样,并使用步幅数来控制下采样率。下采样后,一级中的所有其他层保持相同的输出大小,即空间分辨率和通道数。然后,将批量归一化[36]、GELU激活[30]、大核注意和卷积前馈网络[82]的L组按顺序叠加以提取特征。最后,我们在每个阶段结束时应用层归一化[2]。根据参数和计算成本,我们设计了四种结构:VAN-Tiny、VAN-Small、VAN-Base和VAN-Large。整个网络的详细信息显示在选项卡中。2.
复杂性分析。我们给出了分解的参数和浮点运算(FLOPs)。为了简化格式,在计算过程中省略了偏差。我们假设输入和输出特征具有相同的大小H×W×C。参数和FLOPs可捐赠为:
这里,d表示膨胀率,K表示核大小。当K=21时,(3)可以写成:
我们发现当d=3时,公式(5)取最小值。因此,我们默认设置K=21和d=3。对于不同数量的通道,我们在选项卡中显示具体参数。3.根据FLOPs和参数的公式,X/Our与FLOPs和参数相同。类似地,Y/Our对于FLOPs和参数是相同的。这表明我们的分解在分解大的核卷积参数和FLOPs方面具有显著的优势。
实施细节。
默认情况下,我们的LKA采用5×5深度方向的卷积、7×7深度方向的卷积和1×1卷积来近似21×21卷积。在此设置下,VAN可以有效地实现局部信息和远程连接。我们分别使用7×7和3×3步距卷积进行4×和2×下采样。
4个实验
在本节中,将展示定量和定性实验,以证明所提出的VAN的有效性。我们在ImageNet-1K[15]图像分类数据集、COCO[45]目标检测数据集和ADE20K[105]语义分割数据集上进行了定量实验。此外,我们在ImageNet验证集上使用Grad CAM[66]来可视化类激活映射(CAM)[104]。所有型号均使用8个RTX 3090或A100 GPU进行训练。
4.1图像分类
设置。
我们在ImageNet-1K[15]数据集上进行图像分类。它包含来自1000个不同类别的128万张训练图像和50K张验证图像。整个训练计划主要遵循[74]。我们采用随机剪切、随机水平翻转、标签平滑[57]、混搭[100]、剪切混合[98]和随机擦除[103]来增加训练数据。在训练过程中,我们使用AdamW[37,55]优化器,动量=0.9,重量衰减=5×10,对我们的面包车进行310次的训练−2,批量大小=1024。采用余弦时间表[54]和热身策略来调整学习率(LR)。初始LR设置为5×10−4.我们采用了LayerScale[75]的一个变体,它用初始值为0.01的xout=x+diag(λ1,λ2,…,λd)f(x)替换xout=x+diag(λ1,λ2,…,λd)(f(x)+x),实现了比原始LayerScale更好的性能。指数移动平均法(EMA)[59]也被用于改进训练过程。在评估阶段,我们报告了单裁剪设置下ImageNet验证集的最高精度。
消融研究。
我们进行了一项消融研究,以证明LKA的每个成分都是至关重要的。为了快速获得实验结果,我们选择VAN Tiny作为基线模型。实验结果显示在选项卡中。4表明LKA中的所有组件对于提高性能是必不可少的。
–DW-Conv。
DW Conv可以利用图像的局部上下文信息。如果没有它,分类性能将下降0.5%(74.9%对75.4%),表明局部结构信息在图像处理中的重要性。
–DW-D-Conv。
DW-D-Conv提供了深度方向的扩张卷积,这在捕获LKA中的长程依赖性方面发挥了作用。如果没有它,分类性能将下降1.3%(74.1%对75.4%),这证实了我们的观点,即长期依赖对视觉任务至关重要。
–注意力机制。
注意机制的引入可以看作是使网络实现了适应性。得益于此,VAN Tiny实现了约1.1%的改进(74.3%对75.4%)。
–1×1转换。
这里,1×1 Conv捕获通道维度中的关系。结合注意机制,引入了通道维度的适应性。它带来了0.8%(74.1%对75.4%)的改善,这证明了通道维度适应性的必要性。
通过以上分析,我们可以发现我们提出的LKA可以利用局部信息,捕获长距离依赖,并且在信道和空间维度上都具有适应性。此外,实验结果证明所有属性对识别任务都是积极的。虽然标准卷积可以充分利用局部上下文信息,但它忽略了长期依赖性和适应性。在自注意方面,虽然它能够捕捉长期依赖,并在空间维度上具有适应性,但它忽略了局部信息和通道维度上的适应性。同时,我们也在Tab中总结了上述讨论。1.
与现有方法的比较。
标签。5介绍了VAN与其他MLP、CNN和VIT的比较。VAN的性能优于普通CNN(ResNet[29]、ResNeXt[90]、ConvNeXt[53]等)、ViTs(DeiT[74]、PVT[83]和Swin Transformer[52]等)和MLP(MLP Mixer[72]、ResMLP[73]、gMLP[46]等),具有相似的参数和计算成本。在下面的讨论中,我们将在每个类别中选择一个具有代表性的网络。
ConvNeXt[53]是一种特殊的CNN,它吸收了ViTs的一些优点,如大的感受野(7×7卷积)和先进的训练策略(300个周期,数据增强等)。与VAN和CONVEXT[53]相比,VAN Base超过CONVEXT-T 0.7%(82.8%对82.1%),因为VAN具有更大的感受野和适应能力。Swin Transformer是一种著名的ViT变体,采用局部注意和切换窗口的方式。由于VAN对二维结构信息友好,具有更大的接收范围,并在通道维度上实现了适应性,因此VAN Base超过了SWN-T 1.5%(82.8%对81.3%)。至于MLP,我们选择gMLP[46]。VAN Base超过gMLP-S[46]3.2%(82.8%对79.6%),这反映了地域性的重要性。
形象化
类激活映射(CAM)是一种可视化区分区域(注意映射)的流行工具。我们采用Grad CAM[66]将VAN Base模型生成的ImageNet验证集上的注意事项可视化。图4中的结果显示,VAN Base可以清晰地聚焦在目标物体上。因此,可视化直观地证明了我们方法的有效性。
4.2目标检测
设置。
我们在COCO 2017 benchmark[45]上进行了对象检测和实例分割实验,该测试集在训练集中包含118K图像,在验证集中包含5K图像。MMDetection[8]被用作实现检测模型的代码库。为了公平比较,我们采用了与Swin Transformer[52]和PoolFormer[94]相同的训练/验证策略。包括多种检测模型(如Mask R-CNN[28]、RetinaNet[44]、级联Mask R-CNN[6]、稀疏R-CNN[70]等)来证明我们方法的有效性。所有主干模型都是在ImageNet训练集上预训练的。
后果
根据Tab。6和标签。7.我们发现,在视网膜网[44]1x和遮罩R-CNN[28]1x设置下,VAN超过了基于CNN的方法ResNet[29]和基于变压器的方法PVT[83]。此外,我们还比较了表中最先进的方法Swin transformer[52]和ConvNeXt[53]。8.结果表明,VAN通过不同的检测方法,如Mask R-CNN[28]和Sparse R-CNN[70]实现了最先进的性能。
4.3语义分割
设置。
我们在ADE20K[105]上进行了实验,其中包含150个用于语义分割的语义类别。它由20000、2000和3000三部分组成,分别用于训练、验证和测试。MMSEG[13]被用作基本框架,两个著名的分割头,语义FPN[38]和SuperNet[88]被用于评估我们的VAN主干。为了进行公平比较,我们在[94]和[52]之后采用了两种训练/验证方案,验证集的定量结果显示在选项卡的上下部分。分别为9人。所有主干模型都是在ImageNet训练集上预训练的。
后果
从选项卡的上部开始。9.与使用FPN[38]的不同主干网相比,基于VAN的方法优于基于CNN(ResNet[29]、ResNeXt[90])或基于transformer(PVT[83]、PoolFormer[94]、PVTv2[82])的方法。例如,在可比较的参数和失败下,我们超过了四个PVTv2[82]变体+1.3(微小)、+0.4(小)、+1.5(基本)和+0.8(大)mIoU。在标签的下部。9.与之前最先进的基于CNN的方法和基于Swin Transformer的方法相比,四种VAN变体也表现出了出色的性能,参数和FLOPs更小。例如,基于Supernet[88],VAN Base分别比ResNet-101和Swin-T高出+3.4百万和+2.2百万。
5.今后的工作
未来,我们将在以下方面继续完善面包车:
–结构本身的持续改进。在本文中,我们只展示了一个直观的结构。有很多潜在的改进,例如采用更大的核、引入多尺度结构[19]和使用多分支结构[71]。
–大规模自监督学习和转移学习。VAN自然地结合了CNN和ViTs的优点。一方面,VAN可以利用图像的二维结构信息。另一方面,VAN可以根据输入图像动态调整输出,适合于自监督学习和转移学习[4,27]。结合以上两点,我们相信VAN可以在图像自监督学习和迁移学习领域取得更好的性能。
–更多应用领域。由于资源有限,我们只能在视觉任务中表现出色。货车是否能在NLP中的TCN[3]等其他领域表现良好仍然值得探索。我们期待着看到面包车在不同领域表现出色,成为通用车型。
6结论
在本文中,我们提出了一种新的视觉注意LKA,它结合了卷积和自注意的优点。基于LKA,我们构建了一个视觉主干车,在一些视觉任务中实现了最先进的性能,包括图像分类、目标检测、语义分割等。在未来,我们将从第。5.
网友评论