ViTAE:Vision transformer advanced by exploring intrinsic inductive bias
- 论文地址
- 摘要:
- 简介:
- 3 方法论
- 3.1 重温视觉变压器
- 3.2 ViTAE
- 3.3 缩减单元
- 3.4 Normal cell
- 3.5 模型细节
- 4 训练
- 4.1 Implementation details
- 4.2 Comparison with the state-of-the-art
- 5 局限性与讨论
- 6 总结
论文地址
1、论文地址
2、论文源码地址
摘要:
Transformer 在各种计算机视觉任务中显示出巨大的潜力,因为它们使用自注意力机制对远程依赖进行建模的强大能力。然而,视觉变换器将图像视为一维视觉标记序列,在建模局部视觉结构和处理尺度方差时缺乏内在的归纳偏差 (IB)。或者,他们需要大规模的训练数据和更长的训练计划来隐式学习 IB。在本文中,我们提出了一种新的 Vision Transformer Advanced by Exploring intrinsic IB from convolutions,即 ViTAE。从技术上讲,ViTAE 有几个空间金字塔缩减模块,通过使用具有不同扩张率的多个卷积对输入图像进行下采样并将其嵌入到具有丰富的多尺度上下文的标记中。通过这种方式,它获得了一个内在的尺度不变性 IB,并且能够为各种尺度的对象学习鲁棒的特征表示。此外,在每个转换器层中,ViTAE 都有一个与多头自注意力模块并行的卷积块,其特征被融合并馈入前馈网络。因此,它具有内在的局部性 IB,并且能够协同学习局部特征和全局依赖性。在 ImageNet 和下游任务上的实验证明了 ViTAE 优于基线转换器和并发工作。源代码和预训练模型将在代码处提供。
简介:
变形金刚[79, 17, 40, 14, 46, 61]在NLP研究中显示出支配趋势,因为它们在通过自我注意机制建模长期依赖方面具有很强的能力[67,81,51]。变形器的这种成功和良好特性激发了许多将它们应用于各种计算机视觉任务的工作[19,100,97,80,7]。其中,ViT [19] 是开创性的纯变压器模型,它将图像嵌入到一系列可视令牌中,并使用堆叠的变压器块对它们之间的全局依赖关系进行建模。尽管它在图像分类方面取得了可喜的表现,但它需要大规模的训练数据和更长的训练计划。一个重要原因是ViT在建模局部视觉结构(例如,边缘和角落)和处理各种尺度的对象(如卷积)时缺乏内在的归纳偏差(IB)。或者,ViT 必须从大规模数据中隐式地学习这种 IB。
与视觉转换器不同,卷积神经网络 (CNN) 自然地配备了尺度不变性和局部性的内在 IB,并且仍然作为视觉任务中的普遍骨干 [26, 70 , 62, 8, 96]。 CNN 的成功激励我们探索视觉转换器中的内在 IB。我们首先分析 CNN 的上述两个 IB,即局部性和尺度不变性。计算相邻像素之间局部相关性的卷积擅长提取边缘和角点等局部特征。因此,CNN 可以在浅层 [94] 提供丰富的低级特征,然后通过大量顺序卷积 [32、68、71] 逐渐将这些特征聚合成高级特征。此外,CNN 具有层次结构,可以在不同层提取多尺度特征 [68、38、26]。此外,层内卷积还可以通过改变内核大小和膨胀率来学习不同尺度的特征[25、70、8、45、96]。因此,可以通过层内或层间特征融合获得尺度不变的特征表示。然而,CNN 不太适合模拟长程依赖性 2,而这是 transformer 的主要优势。一个有趣的问题出现了:我们能否利用 CNN 的良好特性来改进视觉转换器?最近,DeiT [76] 探索了将知识从 CNN 提取到 Transformer 以促进训练和提高性能的想法。但是,它需要一个现成的 CNN 模型作为老师,并且会消耗额外的训练成本。
与 DeiT 不同的是,我们通过重新设计本文中的网络结构,将内在 IB 显式引入视觉转换器。当前的视觉转换器总是获得具有单尺度上下文的标记 [19、93、80、86、47、69、77],并学习适应来自数据的不同尺度的对象。例如,T2T-ViT [93] 通过以软分割方式巧妙地生成令牌来改进 ViT。具体来说,它使用一系列 Tokens-to-Token 转换层来聚合单尺度相邻上下文信息,并逐步将图像结构化为 tokens。受 CNN 在处理尺度方差方面的成功启发,我们探索了变压器中的类似设计,即具有不同感受野的层内卷积 [70、91],以将多尺度上下文嵌入到标记中。这样的设计允许令牌携带对象在各种尺度上的有用特征,从而自然地具有内在的尺度不变性 IB,并明确地促进变换器更有效地从数据中学习尺度不变的特征。另一方面,低级局部特征是生成高级判别特征的基本要素。尽管 transformer 也可以从数据中学习浅层的这些特征,但它们在设计上并不像卷积那样熟练。最近,[89、43、21] 按顺序堆叠卷积层和注意力层,证明局部性是对全局依赖性的合理补偿。但是,这种串行结构在局部建模期间忽略了全局上下文(反之亦然)。为了避免这种困境,我们遵循“分而治之”的思想,建议并行地对局部性和远程依赖性进行建模,然后融合这些特征来解释两者。通过这种方式,我们使 transformers 能够更有效地学习每个块内的局部和远程特征。
从技术上讲,我们提出了一种新的 Vision Transformers Advanced by Exploring Intrinsic Inductive Bias (ViTAE),它是两种基本单元的组合,即还原细胞 (RC) 和正常细胞 (NC)。 RCs 用于对输入图像进行下采样并将其嵌入到具有丰富的多尺度上下文的 token 中,而 NCs 旨在联合建模 token 序列中的局部性和全局依赖性。此外,这两种类型的细胞共享一个简单的基本结构,即并行的注意模块和卷积层,然后是前馈网络(FFN)。值得注意的是,RC 有一个额外的金字塔缩减模块,具有不同扩张率的空洞卷积,以将多尺度上下文嵌入到标记中。按照 [93] 中的设置,我们堆叠三个缩减单元以将空间分辨率降低 1/16,并堆叠一系列 NC 以从数据中学习判别特征。 ViTAE 在数据效率和训练效率(见图 1)以及下游任务的分类准确性和泛化方面优于代表性视觉转换器。
我们的贡献有三方面。
• 首先,我们探索了变压器中两种类型的内在 IB,即尺度不变性和局部性,并证明了该思想在提高变压器特征学习能力方面的有效性。
• 其次,我们基于两个新的还原和正常单元设计了一个名为 ViTAE 的新变压器架构,以内在地结合上述两个 IB。拟议的 ViTAE 将多尺度上下文嵌入到标记中,并学习局部和远程特征有效。
• 第三,ViTAE在分类精度、数据效率、训练效率和下游任务的泛化方面优于代表性视觉变压器。ViTAE 在 ImageNet 上分别实现了 75.3% 和 82.0% 的顶级 1 精度,参数分别为 4.8M 和 23.6M。
3 方法论
3.1 重温视觉变压器
我们首先对视觉变压器进行简要回顾。为了使变压器适应视觉任务,ViT [19] 首先将图像 x ∈ RH×W×C 拆分为还原比为 p 的标记(即 xt ∈ R((H×W)/p2)×D),其中 H、W 和 C 表示高度、宽度和通道尺寸输入图像 D = Cp2 表示令牌维度。然后,在以元素方式添加位置嵌入之前,将额外的类标记连接到可视标记。生成的令牌将馈送到以下转换器层。每个变压器层由多头自注意力模块(MHSA)和前馈网络(FFN)两部分组成。
MHSA多头自我注意通过为每个头部使用不同的投影矩阵来扩展单头自我注意(SHSA)。具体来说,输入标记 xt 首先使用投影矩阵投影到查询 (Q)、键 (K) 和值 (V),即 Q,K,V =xtWQ,xtQK,xtQV,其中 WQ/K/V ∈ RD×D 分别表示查询、键和值的投影矩阵。然后,该 SHSA 模块重复 h 次以制定 MHSA 模块,其中 h 是磁头数。 h个头的输出特征沿着通道维度连接起来,形成MHSA模块的输出。
FFN FFN被放置在MHSA模块之上,并且相同且分别应用于每个令牌。它由两个线性变换组成,中间有一个激活函数。
此外,在 MHSA 和 FFN 之前和旁边分别添加了层归一化 [2] 和快捷方式。
3.2 ViTAE
ViTAE 的概述架构旨在将 CNN 中的固有 IB 引入视觉转换器。如图 2 所示,ViTAE 由两种类型的细胞组成,即 RC 和 NC。 RC 负责将多尺度上下文和局部信息嵌入到令牌中,而 NC 用于进一步对令牌中的局部性和远程依赖性进行建模。以图像 x ∈ RH ×W ×C 作为输入,使用三个 RC 分别将 x 逐渐下采样 4×、2× 和 2×。因此,RC 的输出标记的大小为 [H/16,W/16,D],其中 D 是标记维度(在我们的实验中为 64)。然后 RC 的输出标记被展平为 RHW/256×D,与类标记连接,并通过正弦波位置编码添加。接下来,令牌被送入以下 NC,这些 NC 保持令牌的长度。最后,使用来自最后一个 NC 的类标记的线性分类层获得预测概率。
3.3 缩减单元
我们设计了缩减单元,将多尺度上下文和局部信息嵌入到视觉标记中,而不是直接将图像分割和展平为基于线性图像块嵌入层的视觉标记,这引入了内在的尺度不变性和局部性 IB卷积。
从技术上讲,RC 有两个并行分支分别负责建模局部性和远程依赖性,然后是一个用于特征转换的 FFN。
我们将第 i 个 RC 的输入特征表示为 fi ∈ RHi ×Wi ×Di 。第一个 RC 的输入是图像 x。
在全局依赖分支中,fi 首先被送入金字塔缩减模块 (PRM) 以提取多尺度上下文,即
(2) 其中Convij(·)表示PRM中的第j个卷积层(PRMi(·))。它使用来自对应于第 i 个 RC 的预定义扩张率集 Si 的扩张率 sij。请注意,我们使用步幅卷积从预定义的缩减比率集 R 中按比率 ri 缩减特征的空间维度。conv 特征沿通道维度连接,即 f ms ∈ iR(Wi/p)×(Hi/p) ×(|Si|D),其中|S|表示 S 中扩张率的数量。
然后通过 MHSA 模块 iii 处理 fms 以建模远程依赖性,即
(3) 其中 Img2Seq(·) 是一个简单的重塑操作,用于将特征图展平为一维序列。
通过这种方式,fig 将多尺度上下文嵌入到每个标记中。此外,我们使用并行卷积模块 (PCM) 将局部上下文嵌入标记中,这些标记与 fig 融合如下:
(4) 这里,PCMi(·)表示PCM,它由三个堆叠的卷积层和一个Img2Seq(·)操作组成。值得注意的是,并行卷积分支通过使用步长卷积具有与 PRM 相同的空间下采样率。这样,令牌特征可以携带局部和多尺度上下文,这意味着 RC 通过设计获得局部 IB 和尺度不变 IB。融合的标记然后由 FFN 处理,重塑回特征图,并馈送到以下 RC 或 NC,即
(5) 其中 Seq2Img(·)是一个简单的重塑操作,用于将标记序列重塑回特征图。 F F Ni (·) 表示第 i 个 RC 中的 FFN。在我们的 ViTAE 中,三个 RC 按顺序堆叠以分别逐渐将输入图像的空间维度减少 4×、2× 和 2×。最后一个RC生成的feature maps大小为[H/16, W/16, D],然后被压扁成visual tokens,送入后面的NCs。
3.4 Normal cell
如图右下部分所示如图 2 所示,除了没有 PRM 外,NC 与还原单元RC具有相似的结构。由于16RCs后feature map的空间尺寸相对较小(1×),NCs中没有必要使用PRM。
给定来自第三个 RC 的 f3,我们首先将它与类标记 tcls 连接起来,然后将它添加到位置编码中以获得后续 NC 的输入标记 t。在这里,为了清楚起见,我们忽略了下标,因为所有 NC 都具有相同的架构,但可学习的权重不同。 tcls 在训练开始时随机初始化,并在推理期间固定。
与 RC 类似,令牌被送入 MHSA 模块,即 tg = MHSA(t)。
同时,它们被重塑为 2D 特征图并输入 PCM,即 tl = Img2Seq(PCM(Seq2Img(t)))。请注意,类标记在 PCM 中被丢弃,因为它与其他视觉标记没有空间连接。为了进一步减少 NC 中的参数,我们在 PCM 中使用组卷积。
MHSA 和 PCM 的特征然后通过逐元素求和融合,即 tlg = tg + tl。
最后,将 tlg 馈入 FFN 得到 NC 的输出特征,即 tnc = F F N (tlg ) + tlg 。
与 ViT [19] 类似,我们对最后一个 NC 生成的类标记应用层归一化,并将其馈送到分类头以获得最终分类结果。
3.5 模型细节
我们在实验中使用了两种ViTAE变体,以公平地比较具有sim-ilar模型大小的其他模型。它们的详细信息总结在第一个RC的表 1.In 中,默认的convo-lution核大小为7×7,跨度为4,膨胀率为S1 = [1, 2, 3, 4]。在以下两个RC中,卷积核大小分别为3×3,步幅为2,膨胀率分别为S2 = [1, 2, 3]和S3 = [1, 2]。由于令牌的空间维度减小,因此无需使用大内核和膨胀率。RC 和 NC 中的 PCM 包括三个卷积层,内核大小为 3 × 3。
4 训练
4.1 Implementation details
我们在标准 ImageNet [38] 数据集上训练和测试了提议的 ViTAE 模型,该数据集包含约 130 万张图像并涵盖 1k 类。除非明确说明,否则训练期间的图像大小设置为 224 × 224。我们使用 AdamW [48] 优化器与余弦学习速率调度器,并使用与 T2T [93] 完全相同的数据增强策略进行公平比较,涉及训练策略和模型大小。我们使用 512 的批量大小来训练所有模型,并将初始学习率设置为 5e-4。我们的模型结果可以在表 2 中找到,其中所有模型都在 8 个 V100 GPU 上训练了 300 个 epoch。这些模型建立在 PyTorch [57] 和 TIMM [82
4.2 Comparison with the state-of-the-art
我们在表 2 中将我们的 ViTAE 与具有相似模型大小的 CNN 模型和视觉转换器进行了比较。报告了 ImageNet 验证集上的 Top-1/5 准确度和实际 Top-1 准确度。我们将这些方法分为 CNN 模型、具有学习 IB 的视觉转换器和具有引入的固有 IB 的视觉转换器。与 CNN 模型相比,我们的 ViTAE-T 达到了 75.3% 的 Top-1 准确率,优于参数更多的 ResNet-18。 ViTAE 模型的真实 Top-1 精度为 82.9%,与参数比我们多四倍的 ResNet-50 相当。同样,我们的 ViTAE-S 使用 ResNet-101 和 ResNet-152 一半的参数实现了 82.0% 的 Top-1 精度,显示了通过设计从具有相应内在 IB 的特定结构学习局部和远程特征的优越性。
将 ViTAE-T 与 MobileNetV1 [31] 和 MobileNetV2 [65] 进行比较时也可以观察到类似的现象,其中 ViTAE 使用更少的参数获得更好的性能。与根据 NAS [73] 搜索的较大模型相比,我们的 ViTAE-S 在使用 384 × 384 图像作为输入时实现了相似的性能,这进一步显示了具有固有 IB 的视觉转换器的潜力。此外,在转换器中通过学习 IB,ViT 是第一个用于视觉识别的纯 transformer 模型。 DeiT 与 ViT 具有相同的结构,但使用不同的数据增强和训练策略来促进 transformer 的学习。 DeiT⚗ 表示使用现成的 CNN 模型作为教师模型来训练 DeiT,它以知识蒸馏的方式隐式地将 CNN 的固有 IB 引入到 transformer,在 ImageNet 数据集上表现出比 vanilla ViT 更好的性能。令人兴奋的是,我们的 ViTAE-T 参数更少,甚至优于蒸馏模型 DeiT⚗,证明了通过设计在变压器中引入本征 IB 的功效。此外,与其他具有显式固有 IB 的变压器相比,我们的参数较少的 ViTAE 也实现了相当或更好的性能。例如,ViTAE-T 实现了与 LocalVit-T 相当的性能,但参数减少了 1M,证明了所提出的 RC 和 NC 在引入内在 IB 方面的优越性。
5 局限性与讨论
在本文中,我们探索了两种类型的 IB,并通过建议的还原和正常单元将它们合并到变压器中。通过这两个单元的协作,我们的 ViTAE 模型在 ImageNet 上以快速收敛和高数据效率实现了令人印象深刻的性能。然而,由于计算资源的限制,我们没有缩放 ViTAE 模型并在大型数据集上训练它,例如 ImageNet-21K [38] 和 JFT-300M [30]。虽然目前还不清楚,但从以下初步证据来看,我们对其规模属性持乐观态度。如图 2 所示,由于跳跃连接和并行结构,我们的 ViTAE 模型可以看作是互补变换层和卷积层的单元内集成。根据图 3 所示的注意力距离分析,集成特性使 transformer 层和卷积层能够专注于它们擅长的领域,即建模远程依赖性和局部性。因此,ViTAE 很有可能从大规模数据中学习到更好的特征表示。此外,我们在本文中只研究了两个典型的 IB。在未来的研究中可以探索更多种类的 IB,例如构成视点不变性 [64]。
6 总结
在本文中,我们重新设计了变压器模块,
提出了两个基本单元(还原单元和普通单元),
将两种类型的固有电感偏置(IB)集成到变压器中,即局部性和尺度不变性,
从而产生了一种简单而有效的视觉变压器架构ViTAE。
大量实验表明,ViTAE在分类精度、数据效率、训练效率和下游任务的泛化能力等多方面都优于代表性视觉变压器。
我们计划将ViTAE扩展到大型或巨大的模型大小,并在未来的研究中在大型数据集上进行训练。
此外,还将调查其他类型的IB。我们希望这项研究将为以下将内在IB引入视觉转换器以及了解内在和习得IB的影响的研究提供有价值的见解。