HOW DO VISION TRANSFORMERS WORK

2024-09-04 20:20
文章标签 work vision transformers

本文主要是介绍HOW DO VISION TRANSFORMERS WORK,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

HOW DO VISION TRANSFORMERS WORK
Namuk Park1,2, Songkuk Kim1 1Yonsei University, 2NAVER AI Lab{namuk.park,songkuk}@yonsei.ac.kr

总结

MSA 改善模型泛化能力

MSA 不仅提高了模型的准确性,还通过平滑损失景观来提高泛化能力。损失景观的平坦化使得模型更容易优化,表现为更好的泛化能力。

MSA 和卷积神经网络 (CNNs) 的互补性

MSA 和卷积层(Convs)表现出相反的行为。MSA 作为低通滤波器减少高频信号,而卷积层则作为高通滤波器放大高频信号。因此,MSA 和卷积层是互补的,且可以在模型中结合使用,以提高性能。

多阶段神经网络的阶段行为

多阶段神经网络的行为类似于串联的小型模型,特别是阶段末尾的 MSA 对预测性能起关键作用。这一发现促使作者提出了一种新的模型结构(AlterNet),通过在阶段末尾使用 MSA 提升模型的性能。

提出 AlterNet 模型架构

基于上述发现,文章提出了一种名为 AlterNet 的模型架构。AlterNet 在多阶段神经网络的末尾引入 MSA 块,以替代部分卷积块。该模型在大型和小型数据集上都优于传统的 CNN 模型,证明了 MSA 和卷积层的互补性。

MSA 的数据特异性比长程依赖更重要

文章挑战了 MSA 通过捕捉长程依赖来提高性能的普遍观点,提出 MSA 的数据特异性(Data Specificity)才是关键特性。MSA 的局部性约束比全局自注意力更有助于神经网络的优化。

MSA 平滑损失景观

MSA 可以通过减少 Hessian 特征值的大小来平滑损失景观,减少训练中的不稳定性,并提高模型的鲁棒性。这使得 MSA 在大数据集上的表现优于 CNN。

MSA 和卷积层的融合模型优于单一结构

AlterNet 模型在小型数据集(如 CIFAR-100)上也优于纯 CNN 或纯 MSA 的模型,这表明 MSA 和卷积层的结合在广泛的数据规模上都具有优势。


ABSTRACT

多头自注意力 (MSA) 在计算机视觉方面的成功现在是不可计算的。然而,人们对 MSA 的工作原理知之甚少。我们提出了基本解释来帮助更好地理解 MSA 的性质。特别是,我们展示了 MSA 和 Vision Transformers (ViTs) 的以下属性:1 MSA 不仅提高了准确性,而且通过展平损失景观来提高泛化能力。这种改进主要归因于它们的数据特异性,而不是长期依赖。另一方面,vit遭受非凸损失。大型数据集和损失景观平滑方法缓解了这个问题; 2 MSA 和 Convs 表现出相反的行为。例如,MSA 是低通滤波器,但 Convs 是高通滤波器。因此,MSA 和 Convs 是互补的; 3 多阶段神经网络的行为类似于小型单个模型的串联。此外,阶段末尾的 MSA 在预测中起着关键作用。基于这些见解,我们提出了 AlterNet,这是一种模型,其中阶段末尾的 Conv 块被替换为 MSA 块。AlterNet 不仅在大数据机制中而且在小型数据机制上都优于 CNN。

1 INTRODUCTION

对多头自注意力 (MSA) 的理解有限,尽管它们现在在计算机视觉中无处不在。MSA成功最广泛接受的解释是它们的弱归纳偏差和捕获长期依赖关系(例如,(Dosovitskiy 等人,2021;Naseer 等人,2021;Tuli 等人,2021;Yu 等人,2021;Mao 等人,2021;Chu 等人,2021))。然而,由于视觉转换器(ViTs) -由msa组成的神经网络(NNs)由于其过度的灵活性,已知倾向于过度拟合训练数据集,从而导致小数据状态下的预测性能较差,例如CIFAR上的图像分类。但是,我们表明解释的支持很差。

1.1 RELATED WORK

Self-attentions (Vaswani et al., 2017; Dosovitskiy et al., 2021) 用归一化重要性聚合(空间)标记:

在这里插入图片描述

其中 Q、K 和 V 分别是查询、键和值。d 是查询和键的维度,zj 是第 j 个输出标记。从卷积神经网络 (CNN) 的角度来看,MSA 是大型和特定于数据的内核的所有特征图点的变换。因此,MSA 至少与卷积层 (Convs) (Cordonnier et al., 2020) 一样具有表现力,尽管这并不保证 MSA 的行为就像 Convs 一样。

MSA的弱归纳偏差(如建模远程依赖关系)是否有利于预测性能?相反,适当的约束实际上可以帮助模型学习强表示。例如,局部msa (Yang et al., 2019;Liu et al., 2021;Chu et al., 2021)仅在小窗口内计算自我关注,不仅在小数据集上,而且在大数据集(例如ImageNet-21K)上,都比全局msa取得了更好的性能。

此外,先前的工作观察到 MSA 具有以下有趣的特性:1 MSA 提高了 CNN 的预测性能,ViTs 预测校准良好的不确定性(Minderer 等人,2021 年)。2 ViT 对数据损坏、图像遮挡 (Naseer et al., 2021) 和对抗性攻击具有鲁棒性 (Shao et al., 2021; Bhojanapalli et al., 2021; Paul & Chen, 2022; Mao et al., 2021)。它们对高频噪声特别健壮(Shao等人,2021年)。3 更接近最后一层的 MSA 显着提高了预测性能。

在这里插入图片描述

图 1. 全局和局部方面一致表明 MSA 会平坦损失景观(loss landscapes.)。左:损失景观可视化表明 ViT 的损失比 ResNet 更平坦(NLL + `2 正则化)。右图:在训练阶段,ViT 的 Hessian 特征值的大小小于 ResNet 的大小。由于Hessian表示局部曲率,这也表明ViT的损失景观比ResNet的损失景观更平坦。为了证明这一点,我们展示了预热阶段结束时的 Hessian 最大特征值谱和第 100、200 和 300 个 epoch。有关更详细的分析,请参见图 4。

“loss landscape”(损失景观)是指模型的损失函数在参数空间中的表现。具体来说,损失景观描述了模型的损失函数值如何随模型参数的变化而变化。可以将其想象为一个高维空间,其中每个点代表一组模型参数,对应的高度(即损失值)表示模型在这些参数下的表现。

  • 平滑的损失景观:意味着随着模型参数的变化,损失函数的值变化得比较缓慢和平稳。这样的景观通常更容易进行优化,因为梯度下降等优化算法能够更容易找到全局最优或局部最优。
  • 崎岖的损失景观:意味着损失函数的值随着参数的微小变化会发生剧烈变化,表现为高峰和低谷交错。这种景观通常会导致优化变得困难,因为梯度下降可能会陷入局部最优点或在高维空间中迷失。

在你的句子中,“MSAs flatten loss landscapes” 是指某些技术或方法(如多头自注意力机制,MSAs)使得损失景观变得更加平坦或平滑。这意味着使用这些技术后,模型的损失函数对参数变化的敏感性降低,从而可能导致更稳定的训练过程,并更容易找到好的模型参数。

换句话说,损失景观的平坦化可以帮助减少训练中的不稳定性,避免陷入局部最优,并且可能提高模型的泛化能力。

这些经验观察提出了一个直接的问题:1为了更好地优化神经网络,我们需要msa的哪些特性?msa的远程依赖是否有助于神经网络的学习?msa的行为像Convs吗?如果不是,它们有什么不同?我们如何协调msa和Convs?我们能利用他们的优势吗?

我们解释了 MSA 如何通过将它们视为特征图的可训练空间平滑来工作,因为等式(1) 还表明 MSA 具有正重要性权重的平均特征图值。即使是不可训练的空间平滑,例如一个小的 2 × 2 框模糊,也有助于 CNN 更好地看到(Zhang,2019;Park & Kim,2022)。这些简单的空间平滑不仅提高了准确性,而且通过空间集成特征图点和平坦损失景观来提高鲁棒性(Park & Kim, 2022)。值得注意的是,空间平滑具有 MSAs1 – 3 的属性。有关 MSA 作为空间平滑的详细解释,请参见附录 B。

1.2 CONTRIBUTION

我们解决了三个关键问题:

What properties of MSAs do we need to improve optimization?

我们提出了各种证据来支持 MSA 是广义空间平滑。这意味着 MSA 提高了性能,因为它们的公式——等式(1)——是一种适当的归纳偏差。它们的弱归纳偏差破坏了 NN 训练。特别是,MSA 的一个关键特征是它们的数据特异性,而不是远程依赖。作为极端的例子,具有 3 × 3 感受野的局部 MSA 优于全局 MSA,因为它们减少了不必要的自由度。

MSA 如何提高性能。MSA 各有优缺点。一方面,它们使损失景观变平,如图1所示。损失景观越平坦,性能和泛化能力越好(Li等人,2018;Keskar等人,2017;Santurkar等人,2018;Foret等人,2021年;Chen等人,2022)。因此,它们不仅提高了准确性,而且提高了大数据机制的鲁棒性。另一方面,MSA 在小型数据机制中允许负 Hessian 特征值。这意味着 MSA 的损失情况是非凸的,这种非凸性干扰了 NN 优化(Dauphin 等人,2014)。大量的训练数据抑制了负特征值和凸化损失。

在这里插入图片描述

图 2. 傅里叶分析表明 MSA 不像 Convs。左:傅里叶变换特征图的相对对数幅度表明 ViT 倾向于减少高频信号,而 ResNet 放大它们。高频信号的∆对数振幅是归一化频率0.0π(中心)和1.0π(边界)的对数振幅之差。为了更好地可视化,我们只提供二维傅里叶变换特征图的半对角线分量。有关更详细的分析,请参见图 8。右图:我们测量与基于频率的随机噪声的准确性降低。ResNet 容易受到高频噪声的影响,而 ViT 对它们具有鲁棒性。对于基于频率的噪声,我们使用 0.1π 的频率窗口大小。

傅里叶变换的基本原理

傅里叶变换是一种数学变换,将一个信号(例如图像、音频信号)从时域/空间域(描述信号随时间或空间的变化)转换到频域(描述信号的不同频率成分)。具体来说,它将一个复杂的信号分解为不同频率的正弦波的叠加,允许我们更好地理解信号的频率结构。

  • 低频信号:对应图像或信号中的平滑变化,通常包含全局的或大尺度的信息。
  • 高频信号:对应图像或信号中的快速变化,通常包含细节、边缘等小尺度信息。

在深度学习中的应用

在深度学习中,特征图可以被看作是一个二维或三维信号。通过傅里叶变换,特征图可以被转换到频域中,便于分析模型如何处理不同频率的信息。具体来说,基于傅里叶变换的分析可以揭示:

  1. 模型对高频和低频信息的敏感性:傅里叶变换可以展示模型在训练过程中更关注高频还是低频信息。例如,如果特征图的高频部分有较大的幅度,这可能意味着模型对细节特征(如边缘)更加敏感;而如果低频部分占主导,模型可能更多地关注全局结构。
  2. 模型的鲁棒性:通过在输入图像上添加不同频率的噪声,然后观察模型性能的变化,可以分析模型对不同频率噪声的鲁棒性。

ResNet:卷积网络,尤其是ResNet,由于其依赖局部卷积操作,往往会放大高频特征,尤其是在浅层。虽然它对边缘和细节有更高的敏感度,但这也意味着它在噪声或高频扰动下更容易表现出脆弱性。

ViT:与ResNet相比,ViT则会更注重全局上下文的处理,倾向于平滑高频成分(如图中所示,ViT的高频对数幅度较小)。因此,ViT对高频噪声的鲁棒性更好,因为它在特征提取过程中不会过度依赖高频信息。

归一化深度(Normalized depth)的具体含义:

  • 归一化深度:它将模型层的深度从 0 到 1 进行归一化处理,0 表示模型的最浅层(靠近输入的层,如 ResNet 的 stem 层或 ViT 的 Embedding 层),1 表示模型的最深层(靠近输出的层)。介于 0 和 1 之间的值代表模型中间的不同层次。
  • 颜色的含义:图中的颜色条表示归一化深度的范围,从颜色最深(紫色)表示最浅层,到颜色最浅(黄色)表示最深层。每条曲线的颜色对应某一深度的特征图。

不同深度对应的特性:

  1. 浅层(颜色较深,接近 0.0 的紫色)
    • 这些层靠近输入,负责提取低级别的特征(如边缘、纹理)。
    • 浅层通常对高频信息更加敏感,因为这些层更关注局部的细节和快速变化的特征。
  2. 深层(颜色较浅,接近 1.0 的黄色)
    • 这些层靠近输出,负责提取更高级别的特征(如全局结构或语义信息)。
    • 深层更倾向于捕捉低频信息,即图像的全局结构或大尺度特征。

Do MSAs act like Convs?

我们表明 MSA 和 Convs 表现出相反的行为。MSA 聚合特征图,但 Convs 使它们多样化。此外,如图 2a 所示,特征图的傅里叶分析表明 MSA 减少了高频信号,而 Convs 相反放大了高频分量。换句话说,MSA 是低通滤波器,但 Convs 是高通滤波器。此外,图 2b 表明 Convs 容易受到高频噪声的影响,但 MSA 则没有。因此,MSA 和 Convs 是互补的。

How can we harmonize MSAs with Convs?

我们发现多阶段 NN 的行为类似于小型单个模型的串联。因此,在阶段结束时应用空间平滑通过集成每个阶段的转换后的特征图输出来提高准确性(Park & Kim,2022),如图 3a 所示。基于这一发现,我们提出了一种 Convs 和 MSA 的交替模式。使用这种设计模式的 NN 阶段由阶段末尾的许多 CNN 块和一个(或几个)MSA 块组成,如图 3c 所示。设计模式自然地推导出规范 Transformer 的结构,每个 MLP 块都有一个 MSA 块,如图 3b 所示。它还解释了如何将 Convs 添加到 Transformer 的 MLP 块中可以提高准确性和鲁棒性(Yuan 等人,2021;Guo 等人,2021;Mao 等人,2021)。

令人惊讶的是,使用Convs和msa交替模式的模型不仅在大型数据集上优于cnn,而且在小型数据集(如CIFAR)上也优于cnn。这与典型的vit形成对比,后者在少量数据上表现不佳。这意味着msa是补充Convs的广义空间平滑,而不是简单地取代传统Convs的广义Convs。

2 WHAT PROPERTIES OF MSAS DO WE NEED TO IMPROVE OPTIMIZATION?

为了了解MSAs的基本性质,我们研究了ViT家族的性质:例如vanilla ViT (Dosovitskiy等人,2021);PiT (Heo等人,2021),即“ViT +多阶段”;Swin (Liu et al., 2021),即“ViT +多阶段+局部MSA”。本节表明,这些额外的归纳偏差使 ViT 能够学习强表示。我们还使用 ResNet (He et al., 2016a) 进行比较。NN 使用 DeiT 风格的数据增强 (Touvron et al., 2021) 从头开始训练 300 个 epoch。NN 训练从 5 个 epoch 的逐渐预热 (Goyal et al., 2017) 开始。附录 A 为实验提供了更详细的配置和背景信息。

在这里插入图片描述

图 3. 三种不同重复模式的比较。左:空间平滑位于 CNN 阶段的末尾。中:ViTs 阶段由规范 Transformer 的重复组成。“D”是隐藏维度,“H”是头部的数量。右图:使用交替模式的阶段由许多 CNN 块和 MSA 块组成。有关更多详细信息,请参见图 11。

The stronger the inductive biases, the stronger the representations (not regularizations).

具有弱归纳偏差的模型是否过拟合训练数据集?为了解决这个问题,我们在CIFAR-100上提供了两个标准:测试数据集的误差和训练数据集的交叉熵或负对数似然(NLLtrain,越低越好)。结果见图5a。

与我们的预期相反,实验结果表明归纳偏差越强,测试误差和训练 NLL 越低。这表明 ViT 不会过度拟合训练数据集。此外,适当的归纳偏差,例如 MSA 的局部性约束,有助于 NN 学习强表示。我们还观察到 CIFAR-10 和 ImageNet 上的这些现象,如图 C.1 所示。图 C.2 还支持弱归纳偏差会破坏 NN 训练。在本实验中,非常小的patch size会损害 ViT 的预测性能。

ViT does not overfit small training datasets.

我们观察到,即使在较小的数据集上,ViT 也不会过拟合。图 5b 显示了 ViT 在二次采样数据集上的测试误差和训练 NLL。在这个实验中,随着数据集的大小的减小,误差会 正如预期的那样增加,但令人惊讶的是,NLLtrain 也会增加。由于强大的数据增强,即使在 2% 的数据集大小上,ViT 也不会过度拟合。这表明 ViT 在小型数据机制中表现不佳不是由于过度拟合造成的。

在这里插入图片描述

图4。Hessian最大特征值谱表明MSAs具有优缺点。虚线是使用 6% 数据集进行训练的 ViT 光谱。左:ViT 有许多负 Hessian 特征值,而 ResNet 只有几个。右图:ViT 的正 Hessian 特征值的大小很小。有关更多结果,请参见图 1b。

图的详细解释

  • Hessian 矩阵:Hessian 矩阵是二阶导数矩阵,用于描述损失函数相对于模型参数的曲率。Hessian 的特征值可以告诉我们,某个方向上损失函数的曲率有多大。
  • 最大特征值谱:最大特征值谱是指在所有特征值中取最大值的分布。特征值越大,表示该方向上的曲率越大;如果特征值为负,则表示该方向上存在“鞍点”或“下降”的趋势。

左图:负特征值的情况

  • ResNet(蓝色曲线):ResNet 的曲线几乎没有分布在负特征值区域,表示它的 Hessian 矩阵在训练过程中大多数情况下是正定的,损失函数的曲率主要为正,即没有出现太多的鞍点。这意味着模型的损失表面相对光滑,有利于优化。
  • ViT(红色实线曲线):ViT 的曲线显示出了一些负特征值,表明在 ViT 的损失表面上存在一些鞍点或下降方向。这表明 ViT 的损失函数曲率更复杂,优化过程可能会遇到更多挑战。
  • ViT(6%数据,红色虚线曲线):使用更少的数据(6%)训练的 ViT 显示出更多的负特征值,表明数据量减少后,损失函数变得更加不稳定,这可能会使得优化更困难。

右图:正特征值的情况

  • ResNet(蓝色曲线):ResNet 的正特征值较小且较均匀分布,表明它的损失函数在大多数方向上的曲率较小,这意味着优化路径相对平稳。
  • ViT(红色实线曲线):ViT 的正特征值较大,表明在某些方向上它的损失函数曲率较大,损失函数的斜率较陡峭,这可能会导致优化过程中出现梯度爆炸等问题,尤其是在训练的早期阶段(Warmup)。
  • ViT(6%数据,红色虚线曲线):使用较少数据训练的 ViT,特征值谱的形状与使用完整数据集时类似,但分布更加集中和尖锐,表示在小数据集下损失曲率可能更不稳定。

总结

这张图表明了 ViT 和 ResNet 在损失曲率上的显著差异:

  1. ViT
    • 在损失表面上存在更多的鞍点和负曲率区域,特别是在数据较少的情况下,优化难度增加。
    • 在正曲率区域,ViT 的曲率较大,说明损失函数在某些方向上的变化较为剧烈,这可能会导致优化过程中的不稳定。
  2. ResNet
    • 损失曲率较小且较平滑,优化过程相对稳定,几乎没有负特征值,表明其损失表面更平滑,更容易优化。

这解释了为什么 MSAs(多头自注意力机制)有其优势和劣势。ViT 在处理全局信息时可能更有优势,但由于其损失表面复杂,优化过程可能更加困难。相反,ResNet 更容易优化,但在捕捉全局信息方面可能不如 ViT。

在这里插入图片描述

图5。ViT不过度拟合训练数据集。“R”是 ResNet,“RX”是 ResNeXt。左:弱归纳偏差干扰 NN 优化。NLLtrain 越低,误差越低。右图:缺乏数据集也会干扰 NN 优化。

Loss landscape smoothing methods aids in ViT training.

损失景观平滑方法还可以帮助ViT学习强表示。在分类任务中,全局平均池化(GAP)通过强集成特征映射点平滑损失景观(Park & Kim, 2022)。我们演示了损失平滑方法如何通过使用GAP分类器分析ViT而不是CIFAR-100上的CLS令牌来帮助ViT提高性能。

在这里插入图片描述

图6。GAP分类器在训练的早期阶段抑制负Hessian最大特征值。我们提出了带有GAP分类器的ViT的Hessian最大特征值谱,而不是CLS标记。

图 6 显示了具有 GAP 的 ViT 的 Hessian 最大特征值谱。正如预期的那样,结果表明 GAP 分类器抑制了负 Hessian max 特征值,这表明 GAP 凸化损失。由于负特征值干扰 NN 优化,GAP 分类器将准确率提高了 +2.7%。

同样,Sharpness-Aware Minimization (SAM) (Foret et al., 2021) 是一种依赖于损失函数局部平滑度的优化器,也有助于 NN 寻求平滑的最小值。Chen等人(2022)表明SAM提高了ViT的预测性能。

MSAs flatten the loss landscape.

MSA 的另一个特性是它们减少了 Hessian 特征值的大小。图1b和图4显示ViT的特征值明显小于cnn的特征值。由于Hessian表示损失函数的局部曲率,这表明MSAs使损失景观变平。虽然大特征值阻碍了 NN 训练(Ghorbani 等人,2019 年),但 MSA 可以通过抑制大 Hessian 特征值来帮助 NN 学习更好的表示。全球方面还支持这一主张。在图 1a 中,我们通过使用滤波器归一化 (Li et al., 2018) 来可视化损失景观,结果表明 ViT 的损失景观比 ResNet 更平坦。在大数据体系中,负Hessian特征值——MSAs的缺点——消失,只有它们的优点仍然存在。因此,ViTs在ImageNet和JFT等大型数据集上的表现优于cnn (Sun et al., 2017)。PiT 和 Swin 也使损失景观变平。有关更多详细信息,请参见图 C.4。

A key feature of MSAs is data specificity (not long-range dependency).

MSAs的两个显著特征是远程依赖和数据特异性,也称为数据依赖性,如第1.1节所述。与流行的信念相反,远程依赖阻碍了神经网络优化。为了证明这一点,我们分析了卷积 ViT (Yang et al., 2019),它由卷积 MSA 而不是全局 MSA 组成。视觉任务的卷积 MSA 在以与二维卷积相同的方式展开特征图后,仅在卷积感受野中的特征图点之间计算自注意力。

在这里插入图片描述

图7。局部约束提高了ViT的性能。我们使用卷积 MSA 分析 ViT。具有 8 × 8 内核的卷积 MSA 是全局 MSA。左:本地 MSA 比全局 MSA 学习更强的表示。右图:局部归纳偏差抑制了负 Hessian 特征值,即局部 MSA 具有凸损失。

图7a显示了CIFAR-100上核大小为3 × 3、5 × 5和8 × 8(全局MSA)的卷积vit的误差和NLLtrain。在本实验中,5 × 5核在训练和测试数据集上都优于8 × 8核。3 × 3 内核的 NLLtrain 比 5 × 5 内核差,但优于全局 MSA。虽然 3×3 和 5 × 5 内核的测试错误具有可比性,但 5 × 5 内核的鲁棒性明显优于 CIFAR-100-C 上的 3 × 3 内核(Hendrycks & Dietterich,2019)。

图7b显示,强局域归纳偏差不仅降低了最初提出的计算复杂度(Liu et al., 2021),而且通过凸化损失景观来帮助优化。5 × 5核的负特征值比全局MSA少,因为它限制了不必要的自由度。5 × 5 内核的负特征值也比 3 × 3 内核少,因为它集成了更多的特征图点(另请参见图 6)。当这两种效应平衡时,负特征值的数量最小化。

很明显,数据特异性改进了 NN。MLP-Mixer (Tolstikhin et al., 2021; Yu et al., 2021),一个 MLP 内核的模型不依赖于输入数据,与 ViT 相比表现不佳。没有自注意力的数据特异性 (Bello, 2021) 提高了性能。

3 DO MSAS ACT LIKE CONVS?

Convs 是数据不可知的和特定于通道的,因为它们混合了通道信息而不利用数据信息。相反,MSA 是特定于数据和通道不可知的。这些差异导致了较大的行为差异,这反过来表明 MSA 和 Convs 是互补的。

在这里插入图片描述

图8。MSAs(灰色区域)通常减少特征图的高频分量,MLPs(白色区域)放大它。该图提供了 ViT 在高频 (1.0π) 处的 Δ 对数幅度。有关更多结果,请参见图 2a 和图 D.2。

MSAs are low-pass filters, but Convs are highpass filters.

如第 1.1 节所述,MSA 在空间上平滑具有自注意力重要性的特征图。因此,我们预计 MSA 将倾向于减少高频信号。有关更详细的讨论,请参见附录 B。图 8 显示了 ViT 在 ImageNet 上的高频 (1.0π) 处的傅里叶变换特征图的相对对数幅度 (Δ log 幅度)。在此图中,msa几乎总是降低高频振幅,mlp(对应于convs)会增加它。唯一的例外是在模型的早期阶段。在这个阶段,MSA 的行为类似于 Convs,即它们增加了幅度。这可以作为混合模型的证据,该模型在早期阶段使用 Convs 和后期的 MSA(Guo 等人,2021;Graham 等人,2021;Dai 等人,2021;Xiao 等人,2021;Srinivas 等人,2021)。

在这里插入图片描述

图 9. MSA(灰色区域)减少了特征图点的方差,但 Convs(白色区域)增加了方差。蓝色区域是子采样层。这个结果意味着 MSA 集成特征图,但 Convs 不是。

在此基础上,我们可以推断低频信号和高频信号分别对MSAs和Convs提供信息。为了支持这一论点,我们报告了 ViT 和 ResNet 对基于频率的随机噪声的鲁棒性。继Shao等人(2021)和Park & Kim(2022)之后,我们测量了基于频率的随机噪声xnoise = x0 + F−1 (F(δ) Mf)的数据的准确性降低,其中x0为干净数据,F(·)和F−1(·)为傅里叶变换和傅里叶逆变换,δ为随机噪声,Mf为频率掩码。

正如预期的那样,图2b的结果表明,ViT和ResNet分别容易受到低频噪声和高频噪声的影响。低频信号和高频信号分别对应图像的形状和纹理。因此,结果表明 MSA 是形状偏向的(Naseer 等人,2021 年),而 Conv 是纹理偏向的(Geirhos 等人,2019 年)。

MSA 聚合特征图,但 Convs 则没有。由于 MSA 的平均特征图,它们将减少特征图点的方差。这表明 MSA 集成特征图(Park & Kim,2022)。为了证明这一说法,我们测量了来自 NN 层的特征图的方差。

图 9 显示了 ResNet 和 ViT 的实验结果。该图表明 ViT 中的 MSA 倾向于减少方差;相反,ResNet 中的 Conv 和 ViT 中的 MLP 增加了它。总之,MSA 集成特征图预测,但 Convs 则没有。正如 Park & Kim (2022) 所指出的,减少特征图的不确定性有助于通过集成和稳定转换后的特征图进行优化。有关 PiT 和 Swin 的更多结果,请参见图 D.1。我们观察到特征图方差的另外两个模式。首先,方差在每个 NN 层累积,并且随着深度的增加趋于增加。其次,ResNet 的特征图方差在每个阶段结束时达到峰值。因此,我们可以通过在每个阶段的末尾插入 MSA 来提高 ResNet 的预测性能。此外,我们还可以通过在后期使用具有大量头部的 MSA 来提高性能。

4 HOW CAN WE HARMONIZE MSAS WITH CONVS?

由于 MSA 和 Convs 是互补的,本节旨在设计一个仅利用两个模块优点的模型。为此,我们提出了图 3c 中描述的设计规则,并证明使用这些规则的模型优于 CNN,不仅在大数据机制中,而且在 CIFAR 等小数据机制中。

4.1 DESIGNING ARCHITECTURE

我们首先研究了多阶段 NN 架构的属性。基于这项调查,我们提出了一种交替模式,即基于 CNN 堆叠 MSA 的原则。多阶段 NN 的行为类似于单个模型。在图 9 中,我们观察到特征图方差的模式在每个阶段都重复自己。在特征图相似性和病变研究中也观察到这种行为。

在这里插入图片描述

图 10。多阶段 CNN 和 ViT 的行为类似于小型单个模型的串联。左:特征图相似度显示 ResNet 和 Swin 的块结构。“E”代表词干/嵌入,“P”代表池化(子采样)层。右图:我们在从训练模型中删除一个单元后测量精度下降。准确性周期性地变化,这个时期是一个阶段。白色、灰色和蓝色区域分别是 Conv/MLP、MSA 和子采样层。

图 10a 显示了 ResNet 和 Swin 在 CIFAR-100 上的表示相似性。在本实验中,我们使用小批量 CKA (Nguyen et al., 2021) 来衡量相似性。正如Nguyen等人(2021)所指出的,cnn的特征图相似度具有块结构。同样,我们观察到多阶段 ViT(如 PiT 和 Swin)的特征图相似性也具有块结构。由于 vanilla ViT 没有这种结构(Bhojanapalli 等人,2021 年;Raghu 等人,2021 年),因此结构是多阶段架构的固有特征。有关ViT和PiT的更详细结果,请参见图D.3。

图 10b 显示了病变研究的结果(Bhojanapalli 等人,2021 年),其中在测试阶段从已经训练的 ResNet 和 Swin 中删除了一个 NN 单元。在本实验中,我们从 ResNet 的瓶颈块中删除了一个 3 × 3 Conv 层,从 Swin 中删除了一个 MSA 或 MLP 块。在 ResNet 中,删除早期阶段层比删除后期层会损害准确性。更重要的是,在阶段开始时移除一层会损害准确性,而不是在阶段结束时移除一层。Swin的情况更有趣。在阶段开始时,移除 MLP 会损害准确性。在阶段结束时,删除 MSA 会严重损害准确性。这些结果与图 8 一致。有关 ViT 和 PiT 的结果,请参见图 D.4。

基于这些发现,我们预计 MSA 更接近阶段的末尾以显着提高性能。这与流行的信念相反,即更接近模型末尾的 MSA 提高了性能(Srinivas 等人,2021;d’Ascoli 等人,2021;Graham 等人,2021;Dai 等人,2021)。

建立规则。考虑到所有见解,我们提出了以下设计规则:

  • 或者将 Conv 块替换为基线 CNN 模型末尾的 MSA 块。
  • 如果添加的 MSA 块没有提高预测性能,则将位于较早阶段末尾的 Conv 块替换为 MSA 块。
  • 在后期对 MSA 块使用更多的头部和更高的隐藏维度。

我们称遵循这些规则的模型 AlterNet。AlterNet通过调整MSAs和Convs的比例来统一vit和cnn,如图3所示。图11显示了以CIFAR-100为示例的基于预激活ResNet-50 (He et al., 2016b)的AltNet。图 D.5 显示了 ImageNet 的 AlterNet。

图12a报告了Alter-ResNet-50的准确性,根据CIFAR-100上上述规则,将ResNet-50中的Conv块替换为本地MSAs (Liu et al., 2021)。正如预期的那样,最后阶段(c4)中的MSAs显著提高了精度。令人惊讶的是,第二阶段 (c2) 中的 MSA 提高了准确性,而第三阶段 (c3) 中的两个或多个 MSA 降低了它。总之,阶段末尾的 MSA 在预测中起着重要作用,如前所述。图 12c 表明 MSA 在只允许少数负特征值的同时抑制大特征值。如图 4 所示,大型数据集弥补了 MSA 的缺点。因此,更多的数据允许模型更多的 MSA。

4.2 PERFORMANCE

图12b显示了Alter-ResNet-50和其他基线在CIFAR-100和CIFAR-100- c上的准确性和损坏稳健性。由于CIFAR是一个小数据集,cnn优于标准vit。令人惊讶的是,alter - resnet -一个msa遵循适当构建规则的模型-即使在小数据体系中也优于cnn。这表明msa是对Convs的补充。以同样的方式,这个简单的修改在较大的数据集(如ImageNet)上显示了具有竞争力的性能。详见图E.1。

在这里插入图片描述

图12。AlterNet优于cnn和vit。左图:后期的msa提高了准确性。我们根据建立规则,将ResNet的Convs逐个替换为msa。c1到c4代表阶段。c3中的几个MSA损害了精度,但c2末尾的MSA改善了精度。中心:即使在小数据范围内,AlterNet也优于cnn。鲁棒性是指CIFAR-100-C的平均精度。“RX”是ResNeXt。右:AlterNet中的msa抑制了大特征值;也就是说,在训练的早期阶段,AlterNet的损失情况比ResNet更平坦。

5 DISCUSSION

我们目前的研究表明,MSA不仅仅是广义的Convs,而是补充Convs的广义空间平滑。MSAs通过集成特征映射点和平坦损失景观来帮助NNs学习强表示。由于这项工作的主要目标是研究 MSA 在计算机视觉中的性质,我们保留了 AlterNet 中 Conv 和 MSA 块的架构。因此,AlternNet 对未来改进有很强的潜力。此外,AlterNet可以方便地替代其他视觉任务的主干,如密集预测(Carion et al., 2020)。正如 Park & Kim (2022) 所指出的,用于简单分类任务的全局平均池化 (GAP) 具有很强的集成特征图的趋势,但用于密集预测的神经网络不使用 GAP。因此,我们相信 MSA 能够通过集成特征图来显着提高密集预测任务的结果。最后,MSA 训练的强数据增强会损害不确定性校准,如图 F.1a 所示。我们将详细调查留给未来的工作。

这篇关于HOW DO VISION TRANSFORMERS WORK的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1136929

相关文章

[论文笔记]LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale

引言 今天带来第一篇量化论文LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale笔记。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 大语言模型已被广泛采用,但推理时需要大量的GPU内存。我们开发了一种Int8矩阵乘法的过程,用于Transformer中的前馈和注意力投影层,这可以将推理所需

2015多校联合训练第三场Work(hdu5326)

题意: a是b的上司,b是c的上司,则a是c的上司,问构成一个树种,有多人是 k个人的上司 思路: 先找出root,然后dfs一下就行 #include <bits/stdc++.h>#define LL long longusing namespace std;const int MAXN = 1e6;int f[105];int n, k;int mp[101][101];

复盘高质量Vision Pro沉浸式视频的制作流程与工具

在探索虚拟现实(VR)和增强现实(AR)技术的过程中,高质量的沉浸式体验是至关重要的。最近,国外开发者Dreamwieber在其作品中展示了如何使用一系列工具和技术,创造出令人震撼的Vision Pro沉浸式视频。本文将详细复盘Dreamwieber的工作流,希望能为从事相关领域的开发者们提供有价值的参考。 一、步骤和工作流 构建基础原型 目的:快速搭建起一个基本的模型,以便在设备

一键部署Phi 3.5 mini+vision!多模态阅读基准数据集MRR-Benchmark上线,含550个问答对

小模型又又又卷起来了!微软开源三连发!一口气发布了 Phi 3.5 针对不同任务的 3 个模型,并在多个基准上超越了其他同类模型。 其中 Phi-3.5-mini-instruct 专为内存或算力受限的设备推出,小参数也能展现出强大的推理能力,代码生成、多语言理解等任务信手拈来。而 Phi-3.5-vision-instruct 则是多模态领域的翘楚,能同时处理文本和视觉信息,图像理解、视频摘要

【人工智能】Transformers之Pipeline(十五):总结(summarization)

​​​​​​​ 目录 一、引言  二、总结(summarization) 2.1 概述 2.2 BERT与GPT的结合—BART 2.3 应用场景​​​​​​​ 2.4 pipeline参数 2.4.1 pipeline对象实例化参数 2.4.2 pipeline对象使用参数 ​​​​​​​ 2.4.3 pipeline返回参数 ​​​​​​​​​​​​​​ 2.5 pipe

在Vision Pro上实现360度全景视频播放:HLS360VideoMaterial框架介绍

随着Apple Vision Pro的推出,空间计算技术正在变得越来越普及,而360度全景视频则是其中一种令人兴奋的应用形式。对于希望在visionOS平台上集成360度视频流的开发者而言,找到合适的工具和框架至关重要。今天,我们要介绍的正是这样一个框架——HLS360VideoMaterial,它可以帮助你在Vision Pro上轻松实现360度全景视频的播放,并支持二次开发,让你的应用更上一层

work note

1:  sum_total 是什么意思?  没有百度出来 见proce:  rptMohthCdr

Vision Transformer (ViT) + 代码【详解】

文章目录 1、Vision Transformer (ViT) 介绍2、patch embedding3、代码3.1 class embedding + Positional Embedding3.2 Transformer Encoder3.3 classifier3.4 ViT总代码 1、Vision Transformer (ViT) 介绍 VIT论文的摘要如下,谷歌

【HuggingFace Transformers】LlamaMLP源码解析

LlamaMLP源码解析 1. LlamaMLP 介绍2. LlamaMLP类 源码解析 1. LlamaMLP 介绍 LlamaMLP 是 LLaMA 模型中的 MLP 层,主要用于对输入特征进行非线性变换。在分片预训练模式下,线性层的权重被切分,分步处理后再进行拼接和求和,而在常规模式下,直接应用线性变换和激活函数处理输入数据。其计算公式为: o u t p u t = W

NLP-文本摘要:利用预训练模型进行文本摘要任务【transformers:pipeline、T5、BART、Pegasus】

一、pipeline 可以使用pipeline快速实现文本摘要 from transformers import pipelinesummarizer = pipeline(task="summarization", model='t5-small')text = """summarize: (CNN)For the second time during his papacy, Pope Fr