Focal Modulation Networks-焦点调制网络

本文介绍了使用Focal Modulation替代自注意力(self-attention)的FocalNet(Focal Modulation Network)网络,新模块具有更好的token交互效果。
摘要:我们提出焦调制网络(简称FocalNets),其中自注意(SA)完全被焦调制模块取代,用于建模视觉中的令牌交互。焦点调制包括三个组成部分:
(i)焦点上下文化,使用深度卷积层堆栈实现,从短范围到长范围对视觉上下文进行编码;
(ii)门控聚合,选择性地将上下文收集到每个查询令牌的调制器中;
(iii)元素智能仿射变换,将调制器注入查询中。

大量的实验表明,FocalNets具有非凡的可解释性(图1),并且在图像分类、目标检测和分割任务上,以相似的计算成本优于SoTA SA的同类产品(例如Swin和Focal Transformers)。具体来说,小尺寸和基本尺寸的FocalNets在ImageNet-1K上可以达到82.3%和83.9%的top-1精度。在224224分辨率的ImageNet-22K上进行预训练后,以224224和384*384分辨率进行微调时,top-1准确率分别达到86.5%和87.3%。对于Mask R-CNN的目标检测[29],使用1倍调度训练的FocalNet基比Swin基高出2.1点,并且已经超过使用3倍调度训练的Swin (49.0 vs . 48.5)。对于使用UPerNet进行语义分割[90],FocalNet基础在单尺度上的性能比Swin高出2.4,在多尺度上(50.5 v.s)优于Swin。49.7)。使用大型FocalNet和Mask2former[13],我们实现了ADE20K语义分割的58.5 mIoU和COCO全光分割的57.9 PQ。使用巨大的FocalNet和DINO[106],我们分别在COCO minival和test-dev上实现了64.3和64.4 mAP,在更大的基于注意力的模型(如Swinv2-G[53]和BEIT-3[84])上建立了新的SoTA。这些令人鼓舞的结果表明焦距调制可能是我们所需要的视觉。

1.介绍

在这里插入图片描述图2:(窗口方向)自我注意(SA)[79,22,54]与我们提出的焦点调制之间的说明性比较。给定查询令牌和目标令牌(,····,),SA首先执行查询键交互以计算注意分数,然后执行查询值聚合以从其他令牌中捕获上下文。相比之下,Focal Modulation首先将不同粒度级别的空间上下文编码为调制器(,,,),然后以查询相关的方式自适应地注入查询令牌。显然,SA需要大量的交互和聚合操作,而我们的Focal Modulation颠倒了它们的顺序,使它们都变得轻量级。彩色的数字更好看。

在这项工作中,我们的目标是回答一个基本问题:是否有比SA更好的方法来模拟依赖于输入的远程相互作用? 我们首先分析了当前先进的SA设计。在左侧图2中,我们展示了在ViTs[22]和Swin Transformer[54]中提出的红色查询令牌与其周围的橙色令牌之间常用的(窗口方向的)注意。

为了产生输出,SA涉及大量的查询键交互(红色箭头),然后是查询和大量空间分布的令牌(上下文特征)之间同样大量的查询值聚合(黄色箭头)。然而,有必要承担如此繁重的交互和聚合吗?在这项工作中,我们采用了另一种方法,首先围绕每个查询集中聚合上下文,然后用聚合的上下文自适应地调整查询。如图2右侧所示,我们可以简单地应用查询无关的焦点聚合(例如,深度卷积)来生成不同粒度级别的汇总令牌。然后,这些汇总的令牌被自适应地聚合到一个调制器中,该调制器最后被注入到查询中。

这种改变仍然支持依赖于输入的令牌交互,但是通过将聚合与单个查询解耦,极大地简化了流程,从而使交互仅依赖于几个特性。我们的方法受到焦点注意力[95]的启发,它执行多级聚合来捕获细粒度和粗粒度的视觉上下文。然而,我们的方法在每个查询位置提取调制器,并利用一种更简单的方式进行查询-调制器交互。我们称这种新机制为焦调制,用它来取代SA来构建一个无注意力的架构,即焦调制网络,简称FocalNet。

2.相关工作

Self-attentions :Transformer[79]是在vision Transformer (ViT)[22]中首次引入视觉的,它将图像分割成一系列视觉标记。ViTs中的自注意(SA)策略在使用优化配方训练时,表现出比现代卷积神经网络(ConvNets)(如ResNet[30])更优越的性能[22,75]。随后,多尺度架构[5,82,94]、轻量级卷积层[89,25,46]、局部自注意机制[54,108,15,95]和可学习注意权重[101]被提出,以提高性能并支持高分辨率输入。更全面的调查在[38,27,38]中有介绍。我们的焦点调制与SA有很大的不同,首先聚合来自不同粒度级别的上下文,然后调制单个查询令牌,为令牌交互呈现一种无需注意的机制。对于上下文聚合,我们的方法受到[95]中提出的焦点关注的启发。

但是,焦点调制的上下文聚合是在每个查询位置而不是目标位置执行的,然后是调制而不是注意。这些机制上的差异导致了效率和性能的显著提高。另一个密切相关的工作是Poolformer[100],它使用池化来总结本地上下文,并使用简单的减法来调整单个输入。尽管效率不错,但在性能上却落后于Swin等流行的视觉转换器。正如我们将展示的,在不同级别捕获局部结构是必不可少的。

MLP architectures:视觉mlp可分为两类:(i)全局混合mlp,如MLP-Mixer[72]和ResMLP[74],通过各种技术增强的空间智能投影(spatial-wise projection)在视觉令牌之间执行全局通信,如门通、路由和傅立叶变换[51,58,70,71]。(ii)局部混合mlp使用空间移动、置换和伪核混合对附近的标记进行交互采样[99,32,48,8,26]。最近,MixShift-MLP[113]以类似的焦点关注精神,利用了与mlp的局部和全局交互[95]。MLP架构和我们的焦点调制网络都是无注意力的。然而,具有多级上下文聚合的焦调制自然地捕获了短期和长期的结构,从而实现了更好的精度和效率权衡。
Convolutions:卷积神经网络一直是计算机视觉中深度神经网络复兴的主要驱动力。自VGG[63]、InceptionNet[67]和ResNet[30]出现以来,该领域发展迅速。关注卷积网络效率的代表性作品有MobileNet[33]、ShuffleNet[111]和EfficientNet[69]。另一项工作旨在整合全球背景来补偿卷积网络,如SE-Net[35]、Non-local Network[85]、GCNet[2]、LR-Net[34]和C3Net[97]等。引入动态运算是增强卷积网络的另一种方法,如Involution[43]和DyConv[10]所示。最近,ConvNets从两个方面进行反击:(i)将卷积层集成到SA中并带来显著的收益[89,25,46,23],反之亦然[76];(ii) ResNets使用类似的数据增强和正则化策略缩小了与ViTs的差距[88],用(动态)深度卷积代替SA[28,55]也可以略微超过Swin。

我们的焦点调制网络也利用深度卷积作为微架构,但通过引入多层次上下文聚合和输入相关调制而超越。我们将展示这个新模块显著优于原始卷积网络。

在这里插入图片描述

3.焦点调制网络

3.1从自我注意到焦点调制

给定一个视觉特征映射X属于R H×W×C作为输入,一个通用编码过程为每个视觉标记(查询)xi 2r C生成一个特征表示yi 2r C,通过与周围环境X(例如,邻近标记)的交互T和上下文上的聚合M。
Self-attention:自关注模块使用一个后期聚合过程,公式为
在这里插入图片描述
其中,在通过交互T1计算查询和目标之间的注意分数之后,执行上下文X上的聚合M1。

焦点调制:相比之下,焦调制生成精细的表示yi使用早期的聚合过程表示为
在这里插入图片描述
其中,首先使用M2在每个位置i聚合上下文特征,然后查询基于T2与聚合的特征交互以形成yi。

比较Eq.(1)和Eq.(2),我们看到(i) Focal Modulation M2的上下文聚合通过共享运算符(例如,深度卷积)平摊上下文的计算,而SA中的M1计算成本更高,因为它需要对不同查询的不可共享注意力分数求和;(ii)交互T2是令牌与其上下文之间的轻量级运算符,而T1涉及计算令牌对令牌的注意力得分,其具有二次复杂度。

基于Eq.(2),我们将焦点调制实例化为
在这里插入图片描述
其中q(·)是查询投影函数,是逐元素的乘法。M(·)是一个上下文聚合函数,其输出称为调制器。图4(a)和(b)比较了自我注意和焦点调制。所提出的焦调制具有以下优点:

  • 翻译不变性:由于q(·)和m(·)始终以查询令牌i为中心,并且没有使用位置嵌入,因此调制对输入特征映射X的平移是不变的。
  • 明确的输入依赖性:调制器通过m(·)通过聚集目标位置i周围的局部特征来计算,因此我们的焦调制是明确依赖于输入的。
  • 特定于空间和渠道:目标位置i作为m(·)的指针,可以实现空间特定的调制。元件智能倍增使信道特定调制成为可能。
  • 解耦的特性粒度:Q(·)保留单个令牌的最佳信息,而m(·)提取较粗的上下文。它们是解耦的,但通过调制结合在一起。
    接下来,我们将详细描述公式(3)中m(·)的实现
    在这里插入图片描述在这里插入图片描述
    图5:在ImageNet-1K上预训练的FocalNet (L = 3)的最后一层,Eq.(5)中门控值G的可视化。从左到右的列是输入图像、焦点级别1、2、3和全局级别的门控图。
    图6:FocalNet中最后一层调制器值的可视化(对应于式(6)中的右侧)。原始调制器映射被上采样显示。

3.2通过m(·)进行上下文聚合

已经证明,短期和长期上下文对视觉建模都很重要[95,21,55]。然而,具有较大接受场的单个聚合不仅在时间和内存上计算昂贵,而且会破坏局部细粒度结构,而这些结构对于密集预测任务特别有用。受[95]的启发,我们提出了一种多尺度分层上下文聚合。如图4 ©所示,聚合过程包括两个步骤:分层上下文化,从不同粒度级别的局部到全局范围提取上下文;门控聚合,将不同粒度级别的所有上下文特征浓缩到调制器中。
步骤1:分层情境化。
给定输入特征映射X,我们首先将其投影到具有线性层z0 = fz(X)属于R·H×W×C的新特征空间中。然后,使用L个深度卷积堆栈获得上下文的分层表示。在l属于{1,…L},输出Z的l次方的推导式为:
在这里插入图片描述

  • 18
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值