文献阅读-ICCV2023-SPANet: Frequency-balancing Token Mixer using Spectral Pooling Aggregation Modulation

Scroll Down

摘要

最近的研究表明,自注意力的行为就像低通滤波器(与卷积相反),增强其高通滤波能力可以提高模型的性能。与此想法相反,我们研究了现有的基于卷积的模型和频谱分析,并观察到改进卷积操作中的低通滤波也会导致性能提高。为了解释这一观察结果,我们假设利用捕获高频和低频成分的平衡表示的最佳令牌混频器可以提高模型的性能。我们通过将视觉特征分解到频域并以平衡的方式组合它们来验证这一点。为了解决这个问题,我们用频域的掩模滤波问题代替了平衡问题。然后,我们引入一个名为SPAM的新型令牌混合器,并利用它派生一个称为SPANet的MetaFormer模型。实验结果表明,该方法提供了一种实现这种平衡的方法,并且高频和低频分量的平衡表示可以提高模型在多个计算机视觉任务中的性能。我们的代码可在https://doranlyong.github.io/projects/spanet/上获得。

1. 介绍

近年来,(Vision transformer, ViTs)在计算机视觉领域取得了显著的成功,引起了广泛的关注。因此,许多基于ViT[15]的后续模型被提出,使ViT成为各种计算机视觉任务中的主流架构和卷积神经网络(cnn)的可行替代方案,包括图像分类[55,67,34,58],目标检测[3,80,76],分割以及beyond。

image.png

ViT成功的原因主要被解释为使用多头自注意(MSA)进行token混合[15]。这种普遍的想法导致了MSA的许多变体的发展[16,20,63,79],旨在提高vit的性能。然而,最近的一些工作通过在不使用msa的情况下展示竞争性结果来挑战这一信念。Tolstikhin等人[52]用空间多层感知器(MLP)完全取代了msa,并在图像分类基准上取得了相当的结果。随后的研究[24,33,54,51]试图通过使用改进的数据高效训练和重新设计的MLP模块来缩小类MLP模型和vit之间的性能差距。这些努力表明了mlpllike模型取代msa作为令牌混合器的可行性。此外,其他研究[29,38,39,46,21]探索了其他基于自注意力的token混合器,并报告了令人鼓舞的结果。例如,GFNet[46]用傅里叶变换代替了自注意,在图像分类任务中取得了与ViT相媲美的性能。

image.png
也有一些工作旨在理解msa和卷积运算之间的根本区别。对于msa的有效性,人们普遍接受的解释是,与卷积运算相比,msa能够有效地捕获远程依赖关系,而不会施加强烈的归纳偏置[15,40,57,71,37,9]。然而,在最近的一项研究中,Park等人探索了msa和卷积的频谱滤波特性,发现msa更接近于低通滤波,而卷积运算更适合滤波高通信号。该研究还表明,将这两种操作结合在一个特定的顺序中可以提高性能。Bai等人的另一项研究通过增加频率扰动来研究msa和卷积操作的对抗鲁棒性,并得出了类似的结论。此外,本文还提出了三种训练方案来增强msa对高频成分的捕获,从而提高vit的性能。也就是说,可以通过增强msa的弱高通滤波能力,或者使用从光谱滤波角度优化的token混频器来提高模型性能。相反,可以预期,增强卷积的低通滤波能力也可以提高性能。

图1和图2提供了支持这一期望的证据。与先前的研究一致,与局部和全局msa相比,深度卷积(DepConv)在捕获高频信号方面相对更有效。另一方面,Focal Module[69]在使用DepConv的情况下表现出了更好的低通滤波能力,其性能也超过了ConvNeXt。ViT [15], Swin Transformer[34]。将所有这些结果收集在一起,然后我们自然地做出这样的假设:利用捕获高频和低频组件的平衡表示的最佳token混频器可以增强模型的性能。

为了验证这一假设,我们采用离散傅立叶变换(DFT)将视觉特征分解为低频和高频分量。然后,我们为每个频带对应的token分配权重,以某种方式平衡低频和高频分量。为了实现这一目标,我们用频域的掩模滤波问题取代了平衡问题,并引入了一种称为频谱池化聚合调制(SPAM)模块的新token混频器,它可以实现高频和低频分量的平衡。使用SPAM令牌混合器,我们提出了基于MetaFormer架构的SPANet[72]。SPANet的性能在三个基准计算机视觉任务上进行了评估:图像分类、对象检测和分割,与以前的最先进技术相比,它展示了改进的结果。

我们的贡献可以概括为三方面。(1)我们处理了视觉特征的高低频分量的平衡问题,并表明它可以用频域的掩模滤波问题代替。具体来说,我们通过引入SPAM来解决这个问题。(2)利用SPAM,我们提出了基于MetaFormer架构的SPANet[72]。(3)我们提出的SPANet在多个视觉任务上进行了评估,包括图像分类[14]、目标检测[32]、实例分割[32]和语义分割[78]。我们的结果表明,SPANet优于最先进的模型。

2. 相关工作

#2.1 Transformers
Transformer在[59]中首次被提出用于机器语言翻译,它利用自关注来学习输入序列的表示,从而捕获不同语言标记之间的远程依赖关系和关系。由于自注意在许多自然语言处理(NLP)任务中的成功应用,其适用性已经扩展到计算机视觉领域。例如,ViT[15]率先在图像分类任务中采用纯变压器架构,并取得了优异的性能。自ViT成功以来,许多后续工作都致力于通过各种方法改进基于msa的ViT令牌混合器,如滑动窗口[34]、相对位置编码[68]、抗混叠注意图[45]或合并卷积[16,19,67]等。

2.2 超越自注意力的MetaFormer

尽管人们普遍认为msa在vit的成功中起着至关重要的作用,但最近的一些研究提出了一个问题,即它是否是导致vit高性能的关键因素。例如,研究发现msa可以完全被mlp取代作为令牌混合器[52,54],同时仍然具有相对于vit的竞争力。这一发现引发了研究界关于哪个令牌混合器更好的讨论[7,24],一些工作通过用各种方法取代msa来挑战基于注意力的令牌混合器的主导地位[29,38,39,46]。同时,也有其他研究从通用架构(称为MetaFormer)的角度探索transformer,通过用非参数令牌混合器替换msa。ShiftViT[60]使用部分移位操作[30]代替msa, PoolFormer[72]使用空间平均池化算子代替msa。这两种模型在各种计算机视觉任务上都取得了具有竞争力的性能,这表明利用MetaFormer架构可以获得合理的性能。基于这个想法,我们提出了利用MetaFormer架构优势的SPANet

2.3 频域分析

频域分析在计算机视觉领域得到了广泛的研究。通常,低频对应于全局结构和颜色信息,而高频对应于物体的精细细节(例如,局部边缘/纹理)[11,13]。

根据[43,2],msa高度倾向于学习视觉数据中的低频表征,但学习高频表征的能力较弱。另一方面,卷积表现出相反的行为。基于这些观察,LITv2[42]提出了一种HiLo注意混合器,该混合器可以同时捕获具有自注意的高频和低频信息。此外,Bai等人提出了HAT,该HAT通过对抗性训练增强了vit捕获高频成分的能力。然而,据我们所知,之前还没有针对增强cnn有效捕获视觉数据中的低频成分的工作。受此启发,我们引入了一种名为SPAM的新令牌混频器,它利用卷积运算以平衡的方式有效捕获高频和低频信号。

3. 背景

3.1 频域特征滤波

通常,有两种类型的图像滤波方法。一种是在空间域进行核卷积,另一种是在频域利用离散傅立叶变换进行滤波。根据卷积定理[26],视觉特征处理不管在时域还是频域都是等效的。然而,将特征转换到频域可以直接控制特征的频谱信号。因此,我们采用基于频率的二维DFT滤波方法。这个过程分为以下三个步骤。

给定一个视觉特征image.png作为输入,利用二维DFT把其从空间域变换到频域:
image.png

式中F(·)为二维DFT函数,image.png为视觉特征x的第c维,Xc为复张量,表示xc的频谱。我们使用torch.fft.fft2来吧F(.)应用到xc。

然后通过使用Hadamard积(HP)和加权矩阵对频谱进行加权来修改期望的频带:
image.png
⊙表示HP, M是与Xc大小相同的任意加权矩阵。最后,应用逆DFT将调制后的image.png转换回空间域并更新特征。
image.png

3.2 focal modulation

焦调制[69]是一种利用深度卷积以不同方式模拟自注意的新方法。这种方法首先聚合上下文特性,然后使用HP与可视化标记进行交互:
image.png
其中,image.png为k位置的可视标记(查询),image.png为精细化表示。q(·)和m(·)分别是查询投影和上下文聚合函数。

从图1和图2可以看出,与DepConv相比,焦调制变换后的特征具有相对较多的低频信号集中。

这一结果表明,用m(·)调制对于构建低通滤波器具有结构优势。受此启发,我们利用Eq. 4中描述的焦点调制策略进行令牌混频器设计。

#频域均衡的令牌混合器
在本节中,我们将介绍一种使用卷积调制的新型上下文聚合。由于卷积运算相对倾向于高通滤波[43],我们的目标是调制上下文特征,使其相对更多地集中在低通信号上以实现平衡。

4.1 频谱池化门(SPG)

为了简化实现,我们将视觉特征分解为低通(lp)和高通(hp)滤波器的组合。也就是说,输入视觉特征x中的低频和高频分量通过预定义的滤波器过滤掉,然后混合成一个。可以用下式表示:
image.png
其中λb∈[0,1]是一个平衡参数,image.png表示低通滤波器和高通滤波器组合滤波后的xc。

现在可以通过调节λb来操纵视觉特征的频谱来控制高低频分量的平衡。例如,设λb为0.5,则归一化后的输出与未做任何变换的归一化后的输入相同。

4.1.1使用光谱池滤波器滤波(Spectral Pooling Filter, SPF)

Rippel等人提出的光谱池(Spectral Pooling)[47]是一种池化技术,通过低通滤波器降低空间张量维。这是基于逆幂律,即自然图像的期望功率在统计上集中在低频区域[53]。换句话说,自然图像中大部分重要的视觉信息都包含在频谱的低频部分。在此基础上,我们设计了低频分量比高频分量权重更大的频率平衡方法。此外,在传统的令牌混频器设计中,通常保留输入和输出尺寸。因此,在所提出的频谱池方案中,在保持维数的同时进行了滤波。

第一步是将二维DFT应用于输入特征映射,并将其移位,使低频分量位于中心(即。,原点设置在光谱图的中间)。对于低通滤波器flp,我们选择一个低频子集,并按如下方法去除其余部分:
image.png

其中G(·)是傅里叶变换定心的函数(我们使用PyTorch[44]库实现的torch.fft.fftshift), (u, v)是频域的一对位置,image.png是一个以原点为中心的选定低频区域。然后,应用反转变换和逆DFT得到谱池特征映射:
image.png

高通滤波器fhp的作用与低通滤波器相反,可以通过从输入特征映射中截取或减去低频分量来获得,如下所示:
image.png
其中image.png为高频子集,低频区域Alf在G(Xc)中为零。随后,将逆DFT应用于高频子集的倒移,方法与Eq. 7类似,得到高通滤波结果:
image.png

4.1.2 使用掩码过滤实现SPF

因为F G和它们的逆都是线性系统,它们满足叠加性。因此,可以用Eq. 7和Eq. 9代替Eq. 5,如下所示:
image.png

实际上,通过裁剪目标频带并用零填充其余部分来获得光谱池子集(Sclf和Schf )的过程可以通过使用公式2用理想二进制掩模掩盖光谱图G(Xc)来轻松实现。用于获取Sclf的二进制掩码Mlf在Alf中填充1,其余部分填充0,如下所示:
image.png

相反,二进制掩码Mhf在Alf中填充0,其余部分填充1
image.png

现在,通过简单的掩模运算可以得到频谱池子集Sclf和Schf,如下所示:
Snipaste_20231102_101418.png

因此,λbSclf +(1−λb)Schf可应用公式13和公式14表示为:
image.png

任何滤波器都可以通过组合两个或多个理想滤波器来描述。在Eq. 15中,λbMlf表示将Alf中的值缩放λb,(1−λb)Mhf表示把除了Alf外的值进行缩放。因此,为了实现有效的掩模操作,λbMlf +(1−λb)Mhf可以组合为单个掩模:
image.png
image.png

式中,Mf∈R H×W为Mlf与Mhf的组合。因此,将式10简单改写为:
image.png

最后,我们需要详细定义公式6的Alf。在Rippel等[47]的光谱池中,Alf被描述为矩形形状。然而,矩形低通滤波通常会导致输出图像中的伪影或失真。因此,我们将Alf定义为圆形:

image.png

式中(u0, v0)表示(u, v)对的原点,r为半径。也就是说,λb被分配到半径r内的位置,1 - λb被分配到其他位置。

4.1.3 特征交互

将4.1.2节中预定义的过滤器均匀地应用于所有特征维度通常是简单的,但通过考虑特征映射之间的相关性,限制了可靠地优化表示的能力。为了处理这个问题,Qian等人[45]通过1×1卷积的线性组合策略,从预定义的滤波器中推导出各种复杂的滤波器。在本文中,我们也采用同样的方案,使用公式17:
image.png

其中Φi,c∈R表示1×1卷积第i个卷积核以及第c维的可学习参数,image.pngimage.png的动态交互权重图。

因此,SPG利用Eq. 17的SPF来调整所有视觉特征的高低频分量,利用Eq. 19来表达复杂而丰富的特征,同时优化频率分量的平衡。SPG的概述见图3。
image.png

4.2. 频谱池化聚合调制
在本节中,我们提出了一种使用SPG的新型上下文聚合。然后,我们引入了一种新的令牌混合器,称为频谱池聚合调制(SPAM),遵循与Eq. 4中相同的策略。总体结构如图3所示。给定一个视觉特征x,它通过一个线性层和深度卷积进行查询投影。为了减少参数的数量,采用空间可分卷积[49],将K × K核分解为1 × K和K × 1对。在上下文聚合阶段,N个spg通过各种均衡参数对过滤后的值进行聚合。每个SPG接收一个统一分割的投影映射,其输出通过上下文的加法聚合。上下文映射如图4所示。然后,将聚合上下文应用于查询以进行调制。最后,调制特征通过线性层进行交互。
image.png

4.3. 我们采用与MetaFormer基线[72]相同的阶段布局和嵌入维度,但将令牌混合器部分替换为提议的SPAM,以构建一系列SPAM网络(SPANet)变体。在spanet中,我们只需要指定每个SPG的平衡参数λb,以及每个阶段低频带的半径r。表1描述了标记为小型、中型和基本的每个变体的详细配置。根据幂逆律[53],我们假设λb大于0.5以强调低频分量。实验中,我们将每个SPG的N设为3,λb分别设为0.7、0.8和0.9。

5. 实验

按照惯例[72,34,70,63],我们通过实验验证了SPANet在三个任务上的有效性:ImageNet1K[14]上的图像分类,COCO[32]上的目标检测和实例分割,ADE20K上的语义分割[78]。

首先,我们在三个任务上对所提出的SPANet体系结构进行了评估。此外,消融研究部分分析了拟议建筑的设计元素的意义。所有实验都是在Ubuntu 20.04上使用PyTorch[44]和4个NVIDIA RTX3090 gpu实现的。

5.1 ImageNet-1k

实现设置。对于图像分类,我们在ImageNet-1K[14]上对SPANet进行了评估,ImageNet-1K[14]是计算机视觉界最广泛引用的基准之一。它包括来自1K类的1.28M张训练图像和50K张验证图像。大多数训练策略在[72]和b[55]中被遵循。模型由AdamW优化器在2242分辨率下训练300次[27,36],权值衰减0.05,峰值学习率lr= 1e−3 × batch size/1024(本文使用批大小为1024,学习率为1e−3)。预热周期数为5,使用余弦衰减学习率调度器。对于数据增强和正则,MixUp[74]、CutMix[73]、CutOut[77]、RandAugment[12]、Label Smoothing[49]和Stochastic Depth[25]。Dropout被禁用,但在最后两个阶段采用ResScale[48]来帮助训练深度模型。我们采用改进的层归一化(MLN)[72]来计算沿视觉标记和通道维度的均值和方差,而不是仅在香草层归一化[1]中计算通道维度。MLN可以使用PyTorch[44]中的GroupNorm API通过将组号设置为1来实现。我们的代码实现是基于Pytorch-image-models[65]和MetaFormer baseline[72]。

结果。spanet在ImageNet分类上的性能如表2和图5所示。与cnn和其他基于卷积或自关注的MetaFormers相比,我们的spanet在小型、中型和基本模型的精度方面优于其他模型。在小型模型的情况下,尽管具有相似数量的参数和FLOPs,但SPANetS的性能优于两种最先进的MetaFormers,即LITv2-S和FocalNet-T。具体来说,它比LITv2-S(使用基于注意力的混频器来处理低频和高频)和FocalNet-T(使用基于调制卷积的混频器)的性能分别高出1.1%p和0.8%p。在中等模型情况下,SPANet-M以最少的flop数和参数实现了最高的精度。即使与LITv2-M相比,它的top-1精度也提高了0.2%。对于cnn,与小型和中型模型的比较结果类似,SPANets分别比ConvNeXts高出1.0%和0.4%。对于基本模型情况,也可以观察到与中小型情况相似的结果。

image.png

5.2 基于COCO的目标检测与实例分割

实现设置。SPANet基于COCO基准[32]进行评估,该基准[32]包括118K训练图像(train2017)和5K验证图像(val2017)。

在训练集上对模型进行训练,并在验证集上报告性能。SPANet被用作两种广泛采用的检测器的主干,即RetinaNet[31]和Mask R-CNN[22]。ImageNet预训练权重用于初始化主干,Xavier初始化[18]用于初始化添加的层。所有模型都使用AdamW[27,36]进行训练,初始学习率为1e−4,批大小为8。按照惯例[31,22],我们采用1x训练计划,即训练12个epoch的检测模型。训练图像的大小被调整为短边为800像素,而长边被限制为最多1333像素。为了进行测试,图像较短的一面也被调整为800像素。该实现基于mmdetection[5]代码库.结果。如表3所示,配备了retanet[31]的spanet与其他同类产品相比表现出了竞争力。例如,SPANet-S达到了43.3AP,超过了ResNet50 (36.3 AP)、PVT-Small (40.4 AP)和swwin - t (41.5 AP),同时取得了与LITv2-S (43.7 AP)竞争的成绩。SPANet-M也观察到类似的结果。此外,当配备Mask R-CNN时,这些相似的结果也成立。

5.3 ADE20k上的分割表现

实现设置。根据以往的研究[63,72],我们选择ADE20K[78]作为语义分割的基准,这需要对细粒度细节的理解以及分析远程交互的能力。该数据集由20K个训练图像和2K个验证图像组成,涵盖150个细粒度类别。我们采用基于语义FPN[28]的spanet作为主干,并根据mIoU测量模型性能。采用ImageNet预训练权值初始化主干,使用Xavier[18]初始化新增层。遵循常见的实践[28,6],模型训练为80K次迭代,批大小为16。我们采用了初始学习率为2e−4的AdamW[27,36],它将按照幂为0.9的多项式衰减计划衰减。图像随机调整大小并裁剪为512 × 512用于训练,并在512像素的较短一侧重新缩放用于测试。我们的代码实现基于mmsegmentation[10]代码库。结果。如表4所示,配备语义FPN[28]进行语义分割,SPANet的性能始终优于其他现有模型。例如,使用几乎相同数量的参数和FLOPs, SPANet-S在mIoU方面分别比swing - t和LITv2-S提高了3.9%和1.1%。在中等模型的情况下也观察到类似的结果。

5.4 消融实验

本节介绍使用ImageNet-1K[14]在SPANet上进行的消融研究。这些研究的结果如表5所示,下面将从以下几个方面进行讨论。

SPAM组件。为了研究组成SPAM的组件的重要性,我们进行了涉及改变操作符的实验。首先,确定SPF是SPG的重要组成部分。分析表明,去除该组件会导致性能显著下降,准确率降至82.2%。最后,我们发现加法运算符更适合SPAM中的上下文聚合。我们的实验结果如表5所示,表明用HP替换它会导致性能下降到82.7%。

每个阶段的低通带半径。每级低通区域的半径也是影响性能的重要因素。如表5所示,使用[1,1,1,1]和[4,4,1,1]分别在- 0.1%p和- 0.2%p下降低性能。因此,默认采用[2,2,1,1]。然而对于SPANet可能不是最优的,在今后的工作中,需要不断探索最优参数以进一步提高性能。

空间可分离卷积的核大小。为了检验空间可分离卷积[50]的核大小,我们使用大小为3、5和7的核进行了消融研究。我们的结果表明,将内核大小从3增加到7,在保持FLOPs和参数数量大致相同的情况下,SPANet的性能从82.8%提高到83.1%。然而,我们观察到,将内核从3个扩展到5个会导致性能下降。这可以用以下事实来解释:并非所有的核都可以分割成两个单独的核,这限制了对所有可能核的探索,并导致在训练期间出现次优。因此,我们根据实验结果将核大小设置为7,即默认使用一对1 × 7和7 × 1卷积。

支路输出缩放。在分支输出缩放中的评估表明ResScale[48]对SPANet最有效。值得注意的是,当使用LayerScale[56]时,SPANet表现出最低的性能。我们观察到LayerScale对训练SPANet有负作用。

  1. 结语及未来工作

讨论。在这项工作中,我们指出现有的有效令牌混频器通过增强高通或低通滤波功能来提高性能。在此基础上,我们证明了模型可以使用令牌混频器来改进,该混频器可以平衡特征映射的高频和低频分量。

为了实现这一点,我们用频域的掩模滤波取代了平衡问题,并提出了SPAM,这是一种新的上下文聚合机制,可以实现视觉特征的高频和低频成分的最佳平衡。使用SPAM,我们构建了一系列spanet,并在三个视觉任务上对它们进行评估。我们的实验结果表明,SPANets在图像分类和语义分割方面优于基于卷积或自关注的最先进的cnn和MetaFormers。此外,SPANet在目标检测和实力分割上也展现出有竞争力的结果。

不足 当应用于对象检测和实例分割任务时,spanet表现出有限的性能改进。在这种密集的预测任务中,识别物体的细粒度细节是很重要的,这就需要利用局部边缘和纹理,它们对应于高频分量。然而,使用ImageNet1K[14]预训练的SPANet主干相对优先考虑低频分量,以平衡遵循逆幂律[53]的频率分量。因此,这种设计选择导致了次优性能。

在未来的工作中,我们将进一步在更多需要细粒度特征的不同视觉任务下评估spanet,例如姿态估计和细粒度图像分类。此外,它还需要开发针对特定任务特征定制的频率平衡令牌混频器。