题目:CrossFormer++: A Versatile Vision Transformer Hinging on Cross-Scale Attention
CrossFormer++: 基于跨尺度注意力的多功能视觉Transformer
作者:Wenxiao Wang; Wei Chen; Qibo Qiu; Long Chen; Boxi Wu; Binbin Lin; Xiaofei He; Wei Liu
摘要
虽然不同尺度的特征在视觉输入中具有感知重要性,但现有的视觉Transformer尚未显式利用这些特征。为此,我们首先提出了一种跨尺度视觉Transformer,即CrossFormer。它引入了跨尺度嵌入层(CEL)和长短距离注意力(LSDA)。一方面,CEL将每个标记与不同尺度的多个补丁混合,为自注意力模块本身提供跨尺度特征。另一方面,LSDA将自注意力模块分为短距离和长距离部分,这不仅减少了计算负担,还保留了标记中的小尺度和大尺度特征。此外,通过对CrossFormer的实验,我们观察到影响视觉Transformer性能的另外两个问题,即自注意力图的扩展和幅度爆炸。因此,我们进一步提出了渐进组大小(PGS)范式和幅度冷却层(ACL)来分别缓解这两个问题。结合PGS和ACL的CrossFormer称为CrossFormer++。大量实验表明,CrossFormer++在图像分类、目标检测、实例分割和语义分割任务上均优于其他视觉Transformer。
关键词
- 图像分类
- 目标检测
- 语义分割
- 视觉Transformer
I. 引言
基于Transformer的视觉骨干在许多计算机视觉任务中取得了巨大成功,例如图像分类、目标检测、语义分割等。与卷积神经网络(CNN)相比,视觉Transformer通过引入自注意力模块,实现了长程依赖,从而赋予模型更高的容量。
Transformer需要一个标记序列(例如,词嵌入)作为输入。为了使这一要求适应典型的视觉任务,大多数现有的视觉Transformer通过将输入图像拆分为等大小的补丁来生成标记。例如,可以将224×224的图像拆分为56×56个4×4大小的补丁,并通过线性层嵌入这些补丁以生成标记序列。在某个Transformer内部,自注意力用于构建任意两个标记之间的交互。因此,自注意力模块的计算或内存成本为 O ( N 2 ) O(N^2) O(N2),其中 N N N是标记序列的长度。对于视觉输入来说,这样的成本太高,因为它的标记序列比NLP任务的标记序列长得多。因此,最近提出的视觉Transformer开发了多种替代方案(例如,Swin将自注意力限制在一个小的局部区域而不是全局区域)来以较低的成本近似原始自注意力模块。
尽管上述视觉Transformer取得了进展,但它们在利用不同尺度的视觉特征方面仍然面临挑战,而多尺度特征对于许多视觉任务非常重要。特别是,一张图像通常包含许多不同大小的对象,为了全面理解图像,模型需要提取不同尺度(即不同范围和大小)的特征。现有的视觉Transformer由于两个原因无法处理上述情况:
- 这些模型的输入标记是由等大小的补丁生成的。尽管理论上这些补丁有机会提取任何尺度的特征,只要补丁大小足够大,但实际上很难保证它们能够自动学习适当的多尺度特征。
- 一些视觉Transformer(如Swin)将注意力限制在一个小的局部区域,放弃了长程注意力。
在本文中,我们提出了一种跨尺度嵌入层(CEL)和一种长短距离注意力(LSDA),以从两个角度填补跨尺度的空白:
跨尺度嵌入层(CEL)
遵循PVT,我们也为设计的Transformer采用了金字塔结构,这自然地将视觉Transformer模型分为多个阶段。CEL出现在每个阶段的开始,接收上一阶段的输出(或输入图像)作为输入,并使用多个不同尺度的核(例如4×4或8×8)采样补丁。然后,通过嵌入和连接这些补丁来构建每个标记。通过这种方式,我们强制一些维度(例如,来自4×4补丁)仅关注小尺度特征,而其他维度(例如,来自8×8补丁)则有机会学习大尺度特征,从而生成具有显式跨尺度特征的标记。
长短距离注意力(LSDA)
我们主张视觉输入需要短距离和长距离注意力,因此提出了LSDA。特别地,我们将自注意力模块分为短距离注意力(SDA)和长距离注意力(LDA)。SDA构建邻近嵌入之间的依赖关系,而LDA负责远距离嵌入之间的依赖关系。SDA和LDA在连续的CrossFormer层中交替出现,这不仅减少了自注意力模块的成本,还保持了短距离和长距离注意力。
动态位置偏差(DPB)
此外,遵循之前的工作,我们为标记的位置表示采用相对位置偏差(RPB)。相对位置偏差(RPB)仅支持固定的图像/组大小。然而,许多视觉任务(如目标检测)的图像大小是可变的,我们的架构中的组大小也是如此。为了使RPB更加灵活,我们进一步引入了一个可训练模块,称为动态位置偏差(DPB),它接收两个标记的相对距离作为输入,并输出它们的位置偏差。DPB模块在训练阶段进行端到端优化,几乎不增加成本,但使RPB适用于可变组大小。
凭借上述三个模块,我们将我们的架构命名为CrossFormer,并设计了四个不同深度和通道的变体。尽管这些变体表现出色,但我们也发现CrossFormer的进一步扩展并未带来持续的准确性提升,甚至出现了下降。为此,我们分析了每一层的输出(即自注意力图和MLP),并观察到另外两个影响模型性能的问题,即自注意力图的扩展和幅度爆炸。因此,我们进一步提出了渐进组大小(PGS)和幅度冷却层(ACL)来缓解这些问题。
渐进组大小(PGS)
在自注意力图方面,我们观察到浅层的标记总是关注自身周围的标记,而深层的标记则几乎平均关注所有其他标记。这一现象表明,视觉Transformer的表现类似于CNN,即分别在浅层提取局部特征,在深层提取全局特征。如果为所有阶段采用固定的组大小,这将阻碍模型的性能。因此,我们建议从浅层到深层逐步扩大组大小,并在此指导下实施手动设计的组大小策略。尽管这是一种简单的策略,但PGS实际上是一种通用范式。我们希望展示其重要性,并呼吁其他研究人员探索更自动化和自适应的组大小策略。
幅度冷却层(ACL)
在视觉Transformer中,激活的幅度随着层数的加深而显著增长。例如,在CrossFormer-B中,第22层的最大幅度是第1层的300倍。层间巨大的幅度差异使训练过程不稳定。然而,我们也发现我们提出的CEL可以有效抑制幅度。考虑到在CrossFormer中添加更多CEL有些繁琐,我们设计了一个类似CEL但更轻量级的层,称为幅度冷却层(ACL)。ACL插入到一些CrossFormer块后面,以冷却幅度。
我们通过引入PGS和ACL改进了CrossFormer,生成了CrossFormer++,并提出了四个新变体。对四个下游任务(即图像分类、目标检测、语义分割和实例分割)的大量实验表明,CrossFormer++在所有这些任务上均优于CrossFormer和其他现有的视觉Transformer。
以下章节组织如下:第二节将介绍背景和相关工作。然后,我们将在第三节回顾CrossFormer及其CEL、LSDA和DPB。PGS、ACL和CrossFormer++将在第四节详细介绍。随后将在第五节展示实验。最后,我们将在第六节给出结论和未来工作。
III. CrossFormer
CrossFormer的整体架构如图1所示。遵循以前的工作,CrossFormer也采用了金字塔结构,这自然地将Transformer模型分为四个阶段。每个阶段由一个跨尺度嵌入层(CEL,第三节A)和几个CrossFormer块(第三节B)组成。CEL接收上一个阶段的输出(或输入图像)作为输入,并通过嵌入层生成跨尺度标记。在此过程中,CEL(除了第一个阶段)将嵌入数量减少为四分之一,同时将其维度加倍以形成金字塔结构。然后,在CEL后设置几个CrossFormer块,每个块涉及长短距离注意力(LSDA)和动态位置偏差(DPB)。最后阶段后是一个专门的头(例如图1中的分类头),用于特定任务。
A. 跨尺度嵌入层(CEL)
跨尺度嵌入层(CEL)用于生成每个阶段的输入标记。图3以第一个CEL为例,它位于第一个阶段之前。它接收图像作为输入,然后使用四个不同尺寸的核采样补丁。四个核的步幅保持相同,因此生成相同数量的标记。每个嵌入通过嵌入和连接这四个补丁来构建。在实践中,采样和嵌入的过程可以通过四个卷积层完成。
对于跨尺度标记,一个问题是如何设置每个尺度的嵌入维度。一种直观的方法是均等分配维度。以一个96维的标记和四个核为例,每个核输出一个24维的向量,并通过连接这些向量得到一个96维的标记。然而,卷积层的计算预算与 K 2 D 2 K^2 D^2 K2D2成正比,其中 K K K和 D D D分别表示核大小和输入/输出维度(假设输入维度等于输出维度)。因此,给定相同的维度,大核比小核消耗更大的预算。为了控制CEL的总预算,我们为大核使用较低的维度,而为小核使用较高的维度。图3在其子表中提供了具体的分配规则,并给出了一个96维的例子。与均等分配维度相比,我们的方案节省了很多计算成本,但并未显著影响模型的性能。其他阶段的跨尺度嵌入层也以类似方式工作。如图1所示,第二、三、四阶段的CEL使用两个不同的核(2×2和4×4)。此外,为了形成金字塔结构,第二、三、四阶段的CEL的步幅设置为2×2,以将嵌入数量减少到四分之一。
B. CrossFormer块
每个CrossFormer块由一个长短距离注意力模块(即LSDA,涉及短距离注意力(SDA)模块或长距离注意力(LDA)模块)和一个多层感知机(MLP)组成。如图1(b)所示,SDA和LDA在不同块中交替出现,动态位置偏差(DPB)模块在SDA和LDA中都起作用,用于获取嵌入的位置表示。遵循之前的视觉Transformer,每个块中使用残差连接。
1) 长短距离注意力(LSDA)
我们将自注意力模块分为两部分:短距离注意力(SDA)和长距离注意力(LDA)。对于SDA,所有 G × G G×G G×G相邻嵌入被分组在一起。图2(a)给出了一个 G = 3 G=3 G=3的例子。对于输入大小为 S × S S×S S×S的LDA,嵌入以固定间隔 I I I进行采样。例如在图2(b)中( I = 3 I=3 I=3),所有带红色边框的嵌入属于一个组,带黄色边框的嵌入属于另一个组。LDA组的高度或宽度计算为 G = S / I G=S/I G=S/I(即在此示例中 G = 3 G=3 G=3)。在分组嵌入后,SDA和LDA都在每个组内使用原始自注意力。因此,自注意力模块的内存/计算成本从 O ( S 4 ) O(S^4) O(S4)减少到 O ( S 2 G 2 ) O(S^2 G^2) O(S2G2)。
值得注意的是,LDA的有效性也得益于跨尺度嵌入。具体来说,我们绘制了组成两个嵌入的所有补丁。如图2(b)所示,这两个嵌入的小尺度补丁是非相邻的,因此在没有上下文的帮助下很难判断它们之间的关系。换句话说,如果这些嵌入仅由小尺度补丁(即单尺度特征)构成,那么很难建立它们之间的依赖关系。相反,相邻的大尺度补丁提供了足够的上下文来连接这两个嵌入,从而使长距离跨尺度注意力更容易计算和更有意义。
2) 动态位置偏差(DPB)
相对位置偏差(RPB)通过向注意力中添加偏差来指示嵌入的相对位置。形式上,具有RPB的LSDA注意力图变为:
A t t n = S o f t m a x ( Q K T / d + B ) V , Attn = Softmax(QK^T/\sqrt{d} + B)V, Attn=Softmax(QKT/d+B)V,
其中 Q , K , V ∈ R G 2 × D Q, K, V \in \mathbb{R}^{G^2 \times D} Q,K,V∈RG2×D分别表示自注意力模块中的查询、键和值。 d \sqrt{d} d是一个常数归一化因子, B ∈ R G 2 × G 2 B \in \mathbb{R}^{G^2 \times G^2} B∈RG2×G2是RPB矩阵。在之前的工作中, B i , j = B ^ Δ x i j , Δ y i j B_{i,j} = \hat{B}_{\Delta x_{ij}, \Delta y_{ij}} Bi,j=B^Δxij,Δyij,其中 B ^ \hat{B} B^是一个固定大小的矩阵,$ (\Delta x_{ij}, \Delta y_{ij}) 是第 是第 是第i 和第 和第 和第j 个嵌入之间的坐标距离。显然,图像 / 组大小在 个嵌入之间的坐标距离。显然,图像/组大小在 个嵌入之间的坐标距离。显然,图像/组大小在 (\Delta x_{ij}, \Delta y_{ij}) 超过 超过 超过\hat{B}$的大小时受到限制。相反,我们提出了一个基于MLP的模块,称为DPB,用于动态生成相对位置偏差,即
B i , j = D P B ( Δ x i j , Δ y i j ) . B_{i,j} = DPB(\Delta x_{ij}, \Delta y_{ij}). Bi,j=DPB(Δxij,Δyij).
DPB的结构如图2©所示。其非线性变换由三层全连接层、层归一化和ReLU组成。DPB的输入维度为2,即$ (\Delta x_{ij}, \Delta y_{ij}) ,中间层的维度设为 ,中间层的维度设为 ,中间层的维度设为D/4 ,其中 ,其中 ,其中D 是嵌入的维度。输出 是嵌入的维度。输出 是嵌入的维度。输出B_{ij} 是一个标量,编码了第 是一个标量,编码了第 是一个标量,编码了第i 和第 和第 和第j 个嵌入之间的相对位置特征。 D P B 是一个可训练的模块,与整个 T r a n s f o r m e r 模型一起优化。它可以处理任何图像 / 组大小,而无需担心 个嵌入之间的相对位置特征。DPB是一个可训练的模块,与整个Transformer模型一起优化。它可以处理任何图像/组大小,而无需担心 个嵌入之间的相对位置特征。DPB是一个可训练的模块,与整个Transformer模型一起优化。它可以处理任何图像/组大小,而无需担心 (\Delta x_{ij}, \Delta y_{ij})$的边界。
在附录中,我们证明了如果图像/组大小是固定的,DPB等效于RPB。在这种情况下,我们可以在测试阶段将训练好的DPB转换为RPB。我们还提供了在图像/组大小可变时DPB的高效 O ( G 2 ) O(G^2) O(G2)实现(在正常情况下的复杂度为 O ( G 4 ) O(G^4) O(G4),因为 B ∈ R G 2 × G 2 B \in \mathbb{R}^{G^2 \times G^2} B∈RG2×G2)。
C. CrossFormer的变体
表I列出了CrossFormer的四个图像分类变体的详细配置。为了重新使用预训练权重,其他任务(例如目标检测)使用的模型除了可能使用不同的 G G G和 I I I外,骨干网与分类任务相同。具体来说,除了与分类相同的配置外,我们还测试了 G 1 = G 2 = 14 G_1 = G_2 = 14 G1=G2=14, I 1 = 16 I_1 = 16 I1=16, 和 I 2 = 8 I_2 = 8 I2=8,以适应较大图像的检测(和分割)模型的前两个阶段。值得注意的是,组大小或间隔(即 G G G或 I I I)不影响权重张量的形状,因此预训练在ImageNet上的骨干网可以轻松微调到其他任务,即使它们使用不同的 G G G或 I I I。
IV. CrossFormer++
在本节中,我们提出了渐进组大小(PGS)范式,以适应视觉Transformer逐渐扩展的组大小。此外,还提出了一种幅度冷却层(ACL)来缓解幅度爆炸问题。PGS和ACL插入到CrossFormer中,生成了改进版本,称为CrossFormer++。
A. 渐进组大小(PGS)
现有工作探索了原始ViTs的机制,发现ViTs甚至在早期层也偏好全局注意力,这与CNN的工作方式不同。然而,具有金字塔结构的视觉Transformer采用较小的补丁作为输入,求助于组自注意力,可能与原始ViTs的工作方式不同。我们以CrossFormer为例,计算其平均注意力图。具体来说,某个组的注意力图可以表示为:
A t t n ∈ R B × H × G × G × G × G , Attn \in \mathbb{R}^{B \times H \times G \times G \times G \times G}, Attn∈RB×H×G×G×G×G,
其中 B , H , G B, H, G B,H,G分别表示批次大小、头的数量和组大小。这意味着总共有 G × G G \times G G×G个标记,每个标记的注意力图大小为 G × G G \times G G×G。图像 b b b、头 h h h和位置$ (i, j)$处的标记的注意力图表示为:
A t t n b , h , i , j ∈ R G × G . Attn_{b,h,i,j} \in \mathbb{R}^{G \times G}. Attnb,h,i,j∈RG×G.
对于位置$ (i, j)$的标记,批次和多头的平均注意力图为:
A t t n i , j = 1 B H ∑ b = 0 B ∑ h = 0 H A t t n b , h , i , j ∈ R G × G . Attn_{i,j} = \frac{1}{BH} \sum_{b=0}^{B} \sum_{h=0}^{H} Attn_{b,h,i,j} \in \mathbb{R}^{G \times G}. Attni,j=BH1b=0∑Bh=0∑HAttnb,h,i,j∈RG×G.
我们训练了一个组大小为14×14的CrossFormer-B,并计算每个标记的平均注意力 A t t n Attn Attn。随机标记的 A t t n Attn Attn结果如图4所示。正如我们所见,注意力区域从浅层到深层逐渐扩大。例如,前两个阶段的标记主要关注自身周围的4×4区域,而来自第三阶段的深层注意力图则均匀分布。结果表明,浅层的标记偏好局部依赖关系,而深层的标记则偏好全局注意力。
为此,我们提出了PGS范式,即在浅层采用较小的组大小以降低计算预算,在深层采用较大的组大小以获取全局注意力。在此指导下,我们首先经验性地将四个阶段的组大小设置为{4, 4, 14, 7}。然后,提出了一种线性扩展组大小策略,即从浅层到深层线性扩大组大小。
之前的工作提出了类似PGS的设计指南。然而,其背后的直觉和细节不同。之前的工作灵感来自NAS过程中的现象观察。他们使用的组大小搜索空间仅限于两个整数,即{7, 14},并使用线性近似建模不同组大小的效果,相对于PGS来说相对较粗略。相反,PGS通过注意力矩阵可视化获得直觉,并采用更积极和灵活的策略,使不同的Transformer块能够从[4, 14]区间内的一组连续整数中选择不同的组大小,例如线性扩展组大小策略。我们比较实验结果并提供详细的消融实验,以证明PGS在第五节中的有效性。PGS和NAS的结合留待未来研究。
B. 幅度冷却层(ACL)
除了注意力图,我们还探索了每个块的输出幅度。如图5所示,对于一个CrossFormer-B模型,幅度随着块的加深而显著增加。特别地,第22块的最大输出超过3000,是第1块的约300倍。此外,第22块的平均幅度也成为第1块的约15倍。极值使训练过程不稳定,阻碍了模型的收敛。
幸运的是,我们还观察到幅度在每个阶段开始时缩小回较小值(例如,第5和第23块)。我们认为,所有块的输出通过模型中的残差连接逐渐积累。每个阶段开始的CEL没有残差连接,切断了积累过程,因此可以有效地冷却幅度。而CEL仍包含繁琐的正常卷积层,我们提出了一个更轻量级的对应层,称为幅度冷却层(ACL)。如图6所示,类似于CEL,ACL也不使用任何残差连接。它仅由一个深度卷积层和一个归一化层组成。图5中的比较显示,ACL也可以冷却幅度,但它引入的参数和计算预算比CEL少,因为使用了一个小核的深度卷积(而不是一个正常的卷积层)。
然而,没有残差连接的ACL会延长反向传播路径并加剧梯度消失问题。为防止这种情况,我们在每 k k k块后放置一个ACL层, k > 1 k > 1 k>1,如图6所示。经验表明, k = 3 k = 3 k=3在幅度冷却和反向传播之间实现了令人满意的权衡。
C. CrossFormer++的变体
凭借PGS和ACL,我们进一步改进了CrossFormer并提出了CrossFormer++。架构如表I所列。其中,CrossFormer+±B和CrossFormer+±L继承了CrossFormer-B和CrossFormer-L的每个阶段的深度和通道。此外,CrossFormer++更加关注较大的模型,因此忽略了"Tiny (-T)"版本,并构建了一个新的"Huge (-H)"版本。特别地,CrossFormer+±H在前两个阶段增加了更多的层,以细化低级特征。此外,我们发现,对于"Small (-S)"版本,深而窄的模型与浅而宽的模型表现相似,但引入的参数更少,因此CrossFormer+±S比CrossFormer-S更倾向于使用更深的模型,同时每个块使用更少的通道。
V. 实验
实验在四个具有挑战性的任务上进行:图像分类、目标检测、实例分割和语义分割。为了确保公平比较,我们尽可能保持与其他视觉Transformer相同的数据增强和训练设置。竞争者都是竞争激烈的视觉Transformer,包括DeiT、PVT、T2T-ViT、TNT、CViT、Twins、Swin、S3、NesT、CvT、ViL、CAT、ResT、TransCNN、Shuffle、BoTNet、RegionViT、ViTAEv2、MPViT、ScalableViT、DaViT和CoAtNet。
A. 图像分类
实验设置:图像分类实验在ImageNet数据集上进行。它包含1.28M张自然图像用于训练,50,000张图像用于评估。默认情况下,图像大小调整为224×224用于训练和评估。采用与其他视觉Transformer相同的训练设置。具体来说,我们使用AdamW优化器,训练300个epoch,采用余弦衰减学习率调度器,并使用20个epoch的线性预热。批次大小为1,024,分布在8个V100 GPU上。初始学习率为0.001,权重衰减为0.05。此外,对于CrossFormer-T、CrossFormer-S、CrossFormer-B和CrossFormer-L,我们分别使用0.1、0.2、0.3、0.5的掉落路径率。对于CrossFormer+±S、CrossFormer+±B、CrossFormer+±L和CrossFormer+±H,分别使用0.2、0.3、0.5、0.7的掉落路径率。此外,类似于Swin,使用RandAugment、Mixup、Cutmix、随机擦除和随机深度进行数据增强。
结果:结果如表II所示。CrossFormer优于所有其他同时期的视觉Transformer。具体来说,与强大的基线DeiT、PVT和Swin相比,我们的CrossFormer在小模型上的准确率至少高出绝对值1.2%。与CrossFormer相比,CrossFormer++平均带来了约0.8%的准确率提升。例如,CrossFormer-B的准确率为83.4%,而CrossFormer+±B的准确率为84.2%,几乎没有额外的计算预算。此外,CrossFormer++优于所有现有的具有相似参数和可比计算预算和吞吐量的视觉Transformer。
B. 目标检测和实例分割
实验设置:目标检测和实例分割实验均在COCO 2017数据集上进行,该数据集包含118K张训练图像和5K张验证图像。我们使用基于MMDetection的RetinaNet和Mask R-CNN分别作为目标检测和实例分割头。对于这两个任务,骨干网用预训练在ImageNet上的权重初始化。然后,整个模型在8个V100 GPU上以批次大小16进行训练,并使用初始学习率为1×10^-4的AdamW优化器。遵循先前的工作,当采用RetinaNet作为检测器时,我们采用1×训练计划(即,模型训练12个epoch),图像大小调整为800像素的短边。对于Mask R-CNN,我们既使用1×又使用3×训练计划。需要注意的是,当采用3×训练计划时,还采用多尺度训练。
结果:RetinaNet和Mask R-CNN的结果分别如表III和表IV所示。正如我们所见,CrossFormer优于大多数现有的视觉Transformer,并显示出比图像分类任务更高的优越性。我们认为这是因为CrossFormer显式利用了跨尺度特征,跨尺度特征对目标检测和实例分割等密集预测任务特别重要。然而,仍有一些架构的表现优于CrossFormer,例如,PVTv2-B3比CrossFormer-S高出0.2% AP。相反,CrossFormer++至少比CrossFormer高出0.5% AP,优于所有现有方法。此外,随着模型的扩大,其相对于其他架构的性能提升变得更加显著,表明CrossFormer++具有更大的潜力。例如,当使用Mask R-CNN作为检测头时,CrossFormer+±S优于ScalableViT-S 0.8个AP(48.7对49.5),而CrossFormer+±B优于ScalableViT-B 1.2个AP。
C. 语义分割
实验设置:ADE20K用作语义分割的基准。它涵盖了150个语义类别的广泛范围,包括20K张训练图像和2K张验证图像。类似于检测模型,我们用预训练在ImageNet上的权重初始化骨干网,并采用基于MMSegmentation的语义FPN和UPerNet作为分割头。对于FPN,我们使用学习率和权重衰减为1×10-4的AdamW优化器。模型训练80K次迭代,批次大小为16。对于UPerNet,使用初始学习率为6×10-5和权重衰减为0.01的AdamW优化器,模型训练160K次迭代。
结果:所有结果如表V所示。与早期发布的架构相比,CrossFormer在扩大模型时表现出更大的性能提升,这与目标检测类似。例如,CrossFormer-T在IOU上绝对高于Twins-SVT-B 1.4%,但CrossFormer-B在IOU上绝对高于Twins-SVT-L 3.1%。总体而言,CrossFormer在密集预测任务(例如检测和分割)上的表现优于其他任务,暗示注意力模块中的跨尺度交互对密集预测任务比对分类任务更为重要。
此外,当使用更强大的分割头时,CrossFormer++显示出比CrossFormer更显著的优势。如表V所示,UPerNet比语义FPN更强大。当使用语义FPN时,CrossFormer++S比CrossFormer-S高出1.0 AP(47.4对46.4),而当使用UPerNet作为分割头时,高出2.0 AP。
D. 消融研究
1) 跨尺度标记与单尺度标记
我们通过用单尺度嵌入层替换跨尺度嵌入层来进行实验。正如我们在表VI中所见,当使用单尺度嵌入时,阶段1中的8×8核比4×4核带来0.4%的绝对提升(81.9%对81.5%)。这告诉我们,重叠感受野有助于提高模型的性能。此外,所有具有跨尺度嵌入的模型表现优于具有单尺度嵌入的模型。特别是,与在所有阶段使用单尺度嵌入相比,我们的CrossFormer绝对提高了1%的性能(82.5%对81.5%)。对于跨尺度嵌入,我们还尝试了几种不同的核尺寸组合,结果表现相似(82.3%∼82.5%)。总之,跨尺度嵌入可以带来大的性能提升,然而模型对于不同的核尺寸选择相对稳健。
此外,我们还测试了CEL的不同维度分配方案。如图3所述,我们为不同的采样核分配了不同的维度数量,并与“均等分配”进行了比较。实验在CrossFormer-S上进行,结果如表VII所示。结果表明,两种分配方案的准确率相似,而我们的方案拥有更少的参数。
2) LSDA与其他自注意力
还比较了其他视觉Transformer中使用的自注意力机制。具体来说,我们将CrossFormer-S中的LSDA替换为之前工作中提出的自注意力模块,保留CEL和DPB(除了PVT,因为DPB不能应用于PVT)。如表VIII所示,自注意力机制对模型的准确率有很大影响。特别是,LSDA比类似CAT的自注意力高出1.4%(82.5%对81.1%)。此外,一些自注意力机制可以达到与LSDA相似的准确率(如CSwin和ScalableViT),这表明最合适的自注意力机制并不是唯一的。
3) 关于PGS和ACL的消融研究
手动设计的组大小:我们采用手动设计的组大小用于CrossFormer++,即四个阶段分别为[4, 4, 14, 7]。我们还测试了其他组大小,结果如表IX所示。比较CrossFormer+±S与CrossFormer+±S3和CrossFormer+±S4,结果显示第一个两个阶段的7×7组大小并非必要,这导致了更大的计算预算但没有准确率提升。CrossFormer+±S与CrossFormer+±S1(83.2%对82.6%)的比较显示,阶段3的大组大小至关重要。这些结论也与我们的观察一致,即浅层的自注意力集中在每个标记周围的小区域,而深层的注意力逐渐分散。
线性扩展组大小:此外,我们还尝试了一种简单的非手动设计的组大小,即我们从阶段1到阶段3线性扩展组大小为4×4到14×14。然而,线性组大小不如手动设计的组大小效果好。
注意力机制与组大小:还值得强调的是,关于组大小的结论也适用于其他视觉Transformer。如表IX所示,适当的组大小也为Swin-T带来了显著的准确率提升,从81.3%提高到82.8%。相比之下,将Swin中的移位窗口替换为LSDA仅带来了0.6%的提升(如表VIII所示),这表明适当的组大小可能比选择自注意力机制更为重要。
关于ACL的消融研究:关于ACL,ACL层带来了约0.3%∼0.4%的准确率提升。具体来说,CrossFormer+±B在插入ACL后从83.9%提高到84.2%,CrossFormer+±L从84.3%提高到84.7%。此外,ACL是一个通用层,也适用于其他视觉Transformer。例如,将ACL插入Swin-T可以带来0.4%的准确率提升(82.8%对83.2%)。
4) DPB与其他位置表示
我们比较了绝对位置嵌入(APE)、相对位置偏差(RPB)和DPB之间的参数、FLOPs、吞吐量和准确率。结果如表X所示。DPB-residual表示带有残差连接的DPB。DPB和RPB均比APE高出绝对0.4%的准确率,表明相对位置表示比绝对位置表示更有利。
此外,DPB以可以忽略的额外成本达到与RPB相同的准确率(82.5%);然而,如我们在第三节B2中所述,它比RPB更灵活,适用于可变的图像大小或组大小。此外,结果还表明DPB中的残差连接并未帮助提高模型性能,甚至降低了模型性能(82.5%对82.4%)。
此外,我们设计了两种插值策略来使RPB适应可变组大小,称为离线插值RPB和在线插值RPB:
- 离线插值RPB:在ImageNet上用小组大小(例如14×14)训练模型后,我们首先将RPB插值到足够大的大小(例如,适用于最多41×41组大小的COCO数据集)。在微调过程中,扩大的RPB随整个模型一起微调。在下游任务的推理阶段,扩大的RPB是固定的,无需插值。
- 在线插值RPB:在训练后,RPB保持原样(例如,适用于14×14组大小)。在微调过程中,我们通过可微分的双线性插值动态调整每个图像的RPB。虽然保持为固定的小大小,但RPB经过微调以适应可变组大小。在下游任务的推理阶段,RPB需要对每个图像进行在线插值。
由于目标检测和实例分割是具有可变输入图像大小的最常见任务,实验在COCO数据集上进行,结果如表XI所示。正如我们所见,DPB优于离线和在线插值DPB。离线插值RPB在绝对APb上比DPB低1.5。我们认为这是因为有太多不同的组大小(41×41),导致每个组大小的训练样本有限,因此插值RPB可能欠拟合。相比之下,在线插值RPB的表现稍好于离线版本,但仍不如DPB。此外,由于在线插值RPB对每个图像执行在线插值,其吞吐量与DPB相当,略小于离线插值RPB(16图像/秒对14图像/秒)。吞吐量表明在线插值RPB和DPB的额外计算预算均可接受。
VI. 结论和未来工作
在本文中,我们首先提出了一种通用视觉骨干,称为CrossFormer。它通过我们提出的CEL和LSDA利用跨尺度特征。实验结果表明,显式利用跨尺度特征可以显著提高视觉Transformer在图像分类和其他下游任务上的性能。此外,还提出了一种更灵活的关系位置表示DPB,使CrossFormer适用于动态组大小。基于CrossFormer,我们进一步分析了CrossFormer中的自注意力模块和MLP的输出,并提出了渐进组大小(PGS)和幅度冷却层(ACL)。基于PGS和ACL,CrossFormer++比CrossFormer取得了更好的性能,并且在代表性的视觉任务上优于所有现有的最先进视觉Transformer。此外,大量实验表明,CEL、PGS和ACL都是通用的,当插入到其他视觉Transformer中时,可以持续带来性能提升。
尽管有这些贡献,提出的模块仍存在一些局限性。具体来说,尽管我们证明了渐进适当组大小的重要性,但最终使用了经验设计的组大小。仍然期待一种自适应和自动化的组大小策略。然后,为了防止梯度消失问题,ACL层不能在视觉Transformer中大量使用。因此,我们还将探索如何在不切断残差连接的情况下冷却视觉Transformer的幅度。
声明
本文内容为论文学习收获分享,受限于知识能力,本文对原文的理解可能存在偏差,最终内容以原论文为准。本文信息旨在传播和学术交流,其内容由作者负责,不代表本号观点。文中作品文字、图片等如涉及内容、版权和其他问题,请及时与我们联系,我们将在第一时间回复并处理。