Do Vision Transformers See Like Convolutional Neural Networks?
https://arxiv.org/abs/2108.08810
摘要:迄今为止,卷积神经网络(CNN)已成为视觉数据的事实模型。最近的工作表明,(视觉)Transformer模型(ViT)可以在图像分类任务上实现相当甚至更高的性能。这就提出了一个中心问题:视觉Transformer是如何解决这些任务的?他们是像卷积网络一样工作,还是学习完全不同的视觉表现?通过分析ViT和CNN在图像分类基准上的内部表示结构(internal representation structure),我们发现这两种架构之间存在显著差异,例如ViT在所有层上都有更统一的表示。我们探索了这些差异是如何产生的,发现了自注意和ViT残差连接所起的关键作用,自注意使全局信息得以早期聚合,ViT残差连接强烈地将特征从较低层传播到较高层。我们研究了空间定位的影响,证明了在不同分类方法下,VIT成功地保留了输入的空间信息,且效果显著。最后,我们研究了(预训练)数据集规模对中间特征和迁移学习的影响,最后讨论了与新架构(如MLP Mixer)的联系。
1 引言
在过去几年中,视觉任务深度学习的成功在很大程度上依赖于卷积神经网络[20,16]。这在很大程度上是由于卷积层编码的空间等变的强大归纳偏置,这是学习通用视觉表示的关键,便于迁移和强大的性能。然而,值得注意的是,最近的工作已经证明,Transformer神经网络在大规模图像分类任务中具有同等或优越的性能[14]。这些视觉Transformer(ViT)的工作方式与语言[13]中使用的Transformer几乎相同,使用自注意,而不是卷积,跨位置聚合信息。这与之前的大量工作形成对比,之前的工作重点是更明确地结合图像特定的归纳偏置[30,9,4]
这一突破突出了一个基本问题:视觉Transformer如何解决这些基于图像的任务?它们是否像卷积一样,从头开始学习相同的归纳偏置?或者它们在建立新的任务表示法?尺度在学习这些表征中的作用是什么?在本文中,我们研究了这些问题,揭示了VIT和CNN之间的关键差异。具体而言,我们的贡献是:
• 我们调查了ViT和CNN的内部表征结构,发现两个模型之间存在显著差异,例如ViT具有更统一的表征,较低层和较高层之间具有更大的相似性。
• 通过分析局部/全局空间信息的利用方式,我们发现ViT在较低层比ResNet包含更多的全局信息,从而在数量上形成不同的特征( leading to quantitatively different features)。
• 尽管如此,我们发现在较低层次融入局部信息仍然至关重要,大规模的预训练数据有助于早期注意层学习做到这一点。
• 我们研究了ViT的统一内部结构,发现ViT中的跳连比RESNET中的影响更大,对性能和表示相似性有很大影响。
• 考虑到将来可能用到目标检测上,我们检查输入空间信息的保存情况,发现空间定位和分类方法之间的联系。
• 我们研究了数据集规模对迁移学习的影响,线性探测器研究揭示了数据集规模对高质量中间表征的重要性。
2 相关工作
开发非卷积神经网络来处理计算机视觉任务,特别是Transformer神经网络[44]一直是一个活跃的研究领域。先前的研究已经着眼于局部多头自注意,局部的范式是来自卷积的感受野[30,36](编者注:[30]Image Transformer,[36]SASA),将CNN与自注意直接结合[4,2,46],或将Transformer应用于较小尺寸的图像[6,9]。与之相比,Vision Transformer[14]对Transformer架构的修改更少,因此与CNN相比尤其有趣。自其发展以来,最近也有研究分析ViT的各个方面,特别是鲁棒性[3,31,28]和自监督的效果[5,7]。最近的其他相关工作着眼于设计混合ViT CNN模型[49,11],利用模型之间的结构差异。Transformer和CNN之间的比较最近也在文本领域进行了研究[41]。
我们的工作集中在VIT的表征结构上。为了研究ViT表示,我们利用了神经网络表示相似性的技术,这允许在神经网络内和神经网络之间对表示进行定量比较[17,34,26,19]。这些技术非常成功地洞察了不同视觉网络结构的特性[29,22,18]、语言模型中的表示结构[48,25,47,21]、训练方法的动力学[33,24]和特定领域的模型行为[27,35,38]。我们在研究中还应用了线性探测器,这对于分析视觉[1]和文本[8,32,45]模型中的学习表征非常有用。
3 背景和实验设置
我们的目标是了解与CNN相比,VIT表示和解决图像任务的方式是否存在差异。基于Dosovitskiy等人[14]的结果,我们采用了一组具有代表性的CNN和ViT模型——ResNet50x1、ResNet152x2、ViT-B/32、ViT-B/16、ViT-L/16和ViT-H/14。除非另有规定,模型是在JFT-300M数据集[40]上训练的,尽管我们也调查了在ImageNet ILSVRC 2012数据集[12,37]和标准迁移学习基准[50,14]上训练的模型。我们使用各种分析方法来研究这些模型的层表示,从而对这些模型的功能有了许多深入的了解。我们在附录A中提供了实验设置的更多细节。
表示相似性和CKA(中心核对齐,Centered Kernel Alignment):
分析神经网络的(隐藏)层表示具有挑战性,因为它们的特征分布在大量神经元上。这种分布式的特性也使得在神经网络中对表示进行有意义的比较变得困难。中心核对齐(CKA)[17,10]解决了这些挑战,实现了网络内和网络间表示的定量比较。具体来说,CKA将两个神经网络层的表示(激活矩阵)和作为输入,这两个神经层分别有和个神经元,在相同的个样本上进行评估。令和表示两个层的Gram矩阵(根据层表示来测量一对数据点的相似性),CKA计算为:
其中,HSIC是希尔伯特-施密特独立性评估(Hilbert-Schmidt independence criterion)[15]。给定中心矩阵( centering matrix )和中心Gram矩阵(centered Gram matrices)与,有,这些中心Gram矩阵之间的相似性。CKA相对于表示的正交变换(包括神经元的排列)具有不变性,归一化项确保了对各向同性缩放的不变性。这些特性使得对神经网络隐藏表示进行有意义的比较和分析成为可能。为了在我们的模型和任务中进行大规模工作,我们使用小批量近似HSIC[39]的无偏估计量,如[29]所提议的。
4 ViTs和卷积网络的表示结构
我们首先使用CKA来研究每个模型的内部表示结构。表示是如何在两种网络结构中传播的,是否存在功能差异的迹象?为了回答这些问题,我们在一个模型中取每对层X,Y,并计算它们的CKA相似性。注意,我们不仅从ViT/ResNet块的输出中获取表示,还从中间层获取表示,例如归一化层和ViT MLP中的隐藏激活。图1显示了多个VIT和ResNets.的热图结果。我们观察到两个模型架构之间的内部表示结构存在明显差异:
(1)ViT显示出更为一致的相似性结构,具有清晰的网格状结构( grid like structure)。
(2)ViT中较低和较高的层显示出比ResNet中更大的相似性,ResNet中相似性被划分在不同的(低/高)阶段。(编者注:指ResNet低层和低层相似度大,高层和高层相似度大)
我们还执行跨模型比较,从ViT中获取所有层X,并与ResNet中的所有层Y进行比较。我们观察到(图2),ResNet的前半部分(60层)与ViT层的前1/4部分相似(We observe (Figure 2) that the lower half of 60 ResNet layers are similar to approximately the lowest quarter of ViT layers)。特别地,需要在ResNet中有更多的较低层来计算与ViT较低层相似的表示。ResNet的上半部分与ViT层接下来的1/3部分大致相似。最后三分之一的ViT层与所有ResNet层不太相似,可能是因为这组层主要操纵CLS token表示,在第6节中进一步研究。
综上所述,这些结果表明:
(i)ViT较低层以不同于ResNet较低层的方式计算表示;
(ii)ViT也更强烈地在较低层和较高层之间传播表示;
(iii)ViT的最高层对ResNet具有完全不同的表示。
5 层表示中的局部和全局信息
在上一节中,我们观察到ViT中较低层和较高层之间有更大的相似性,并且我们还看到ResNet需要更多较低层来计算与较小ViT较低层集相似的表示。在本节中,我们将探讨造成这种差异的一个可能原因:两个模型在整合全局信息的能力上的差异。在ViT中,早期自注意层聚合了多少全局信息?CNN在早期具有固定的局部感受野,其特征是否存在明显的差异?(Are there noticeable resulting differences to the features of CNNs, which have fifixed, local receptive fifields in early layers? )在研究这些问题时,我们展示了全局表征的影响,以及规模和自注意距离之间惊人的联系。
分析注意距离:
我们首先分析ViT自注意层,这是ViT从其他空间位置聚集信息的机制,在结构上与CNN的固定感受野大小非常不同。每个自注意层包含多个自注意头部,对于每个头部,我们可以计算查询patch位置与其关注位置之间的平均距离。这揭示了每个自注意层为表示聚合了多少局部和全局信息。具体来说,我们通过每个注意力头部的注意力权重对像素距离进行加权,并平均5000多个数据点,结果如图3所示。与Dosovitskiy等人[14]的观点一致,我们观察到,即使在ViT的最底层,自注意层也混合了局部头部(小距离)和全局头部(大距离)。这与CNN形成对比,CNN硬编码为在较低层仅局部参与。在更高层次上,所有自注意头都是全局性的。
有趣的是,我们看到了规模对注意力的明显影响。在图4中,我们观察了仅在ImageNet上进行训练时的注意距离(无大规模预训练),这导致ViT-L/16和ViT-H/14的性能大大降低[14]。与图3相比,我们看到,由于数据不足,ViT无法在早期的层中学习局部参与。总之,这表明在图像任务的早期使用局部信息(CNN中,局部模式是被硬编码)对于强大的性能非常重要。
访问全局信息是否会产生不同的功能?图3的结果表明,VIT在其低层比CNN能够访问更多的全局信息。但这会导致不同的学习特征吗?作为一项干预性测试,我们从第一个编码器块中获取ViT注意头的子集,子集范围从对应于大多数局部注意头的子集到对应于大多数全局注意头的表示的子集。然后,我们计算这些子集和ResNet的低层表示之间的CKA相似性。
(原文:But does this result in different learned features? As an interventional test, we take subsets of the ViT attention heads from the fifirst encoder block, ranging from the subset corresponding to the most local attention heads to a subset of the representation corresponding to the most global attention heads. We then compute CKA similarity between these subsets and the lower layer representations of ResNet.)
结果如图5所示,根据CKA相似性绘制了每个子集的平均距离,清楚地表明,随着平均注意距离的增加,相似性单调减少,证明访问更多的全局信息也会导致与ResNet较低层的局部感受野计算出的特征在定量上的不同
(原文:The results, shown in Figure 5, which plot the mean distance for each subset against CKA similarity, clearly show a monotonic decrease in similarity as mean attention distance grows, demonstrating that access to more global information also leads to quantitatively different features than computed by the local receptive fifields in the lower layers of the ResNet.)
有效感受野:我们通过计算ResNet和ViT的有效感受野[23]得出结论,结果如图6和附录C所示。我们观察到,ViT的低层有效感受野确实比ResNet的大,而当ResNet的有效感受野逐渐增大时,ViT感受野在网络的中途变得更加全局化。ViT感受野也表现出对其中心patch的强烈依赖性,这是由于其强烈的残差连接,将在下一节中进行研究。正如我们在附录C中所示,在注意力子层中,在残差连接之前的感受野显示出对这个中央patch的依赖性要小得多。
6 通过跳连进行的表示传播
上一节的结果表明,由于访问全局信息,VIT在较低层学习到不同于ResNets表示,这解释了第4节中观察到的表示结构的一些差异。然而,ViT表示的高度一致性(图1)也表明,较低层的表示会如实地传播到较高的层。但这是怎么发生的呢?在本节中,我们将探讨跳连在ViT和ResNets的表示传播中的作用,发现ViT跳连具有很高的影响力,具有从保留CLS(类)token表示(在较低层)到空间token表示(在较高层)的明显相位转移(编者注:相位转移参看图7右图)。
原文:with a clear phase transition from preserving the CLS (class) tokenrepresentation (in lower layers) to spatial token representations (in higher layers).
与Transformer一样,VIT包含跳连(也称为identity or shortcut),这些连接添加在(i)自注意层和(ii)MLP层之后。为了研究它们的影响,我们绘制了范数比,其中是跳连前的第层的隐藏表示,是长分支的对的变换(即MLP或自注意)。
结果如图7所示(图E.2中有额外的余弦相似性分析)。左侧的热图显示了不同token表示的| | zi | |/| f(zi)|。我们观察到一个引人注目的相变:在网络的前半部分,CLStoken(token0)表示主要由跳连分支(高范数比)传播,而空间token表示有很大的贡献来自长分支(低范数比)。引人注目的是,在网络的后半部分,情况正好相反。
右窗格显示了ResNet50、ViT CLStoken和ViT空间token中这些范数比的折线图,另外还表明,与ResNet相比,跳连在ViT中的影响更大:我们观察到ViT在整个过程中的范数比更高,我们还观察到从CLS到空间token的相位转移(显示了MLP和自注意层)。
无跳连的ViT表征结构:范数比结果强烈表明,跳连在ViT表征结构中起着关键作用。为了进行干预性测试,在ViT中,我们对第个块删除跳连,再进行模型训练,并绘制CKA表示热图。图8中的结果表明,删除块中的跳连会将两侧的层表示分隔开。(我们注意到,从中间块删除跳连时,性能下降了4%)。这说明了跳连传播表示对于图1中ViT的统一相似性结构的重要性。
7 空间信息和定位
到目前为止,关于自注意在VIT中聚集空间信息的作用,以及将表征忠实传播到更高层的跳连的结果,提出了一个重要的后续问题:VIT的空间定位能力如何?具体来说,输入的空间信息是否保存在ViT的更高层?在这方面,它与ResNet相比如何?对这一点的肯定回答对于ViT在分类之外的应用至关重要,例如目标检测。
我们首先比较ViT和ResNet更高层token表示与输入patch的token表示。回想一下,ViT token具有相应的输入patch,因此具有相应的输入空间位置。对于ResNet,我们将token表示定义为特定空间位置的所有卷积通道。这也为它提供了相应的输入空间位置。然后,我们可以获取一个token表示,并用输入图像块计算不同位置的CKA分数。使用不同位置的输入图像块计算其CKA分数。图9显示了不同token(及其空间位置标签)的结果。
对于ViT,我们观察到对应于图像边缘位置的token类似于位于边缘的图像块,但对应于内部位置的token定位良好,其表示与对应图像块最为相似。相比之下,对于ResNet,我们可以看到明显较弱的局部化(尽管图D.3显示了早期层的改进)
原文:For ViT, we observe that tokens corresponding to locations at the edge of the image are similar to edge image patches, but tokens corresponding to interior locations are well localized, with their representations being mostsimilar to the corresponding image patch. By contrast, for ResNet, we see signifificantly weaker localization(though Figure D.3 shows improvements for earlier layers.)
影响架构之间这种明显差异的一个因素是,ResNet训练时使用全局平均池步骤进行分类,而ViT有一个单独的分类(CLS)token。为了进一步检验这一点,我们测试了一个使用全局平均池(GAP)进行训练的ViT网络结构(训练详情见附录A)。图10所示的结果表明,全局平均池化确实减少了更高层的定位能力。更多结果见附录D节。
定位和线性探头分类:
之前的结果通过直接比较每个token和输入patch来研究定位能力。为了更进一步,我们将分别使用每个token来使用线性探测器执行分类。我们在模型的不同层上进行这项工作,训练线性探测器,用closed-form few-shot线性回归对图像标签进行分类,类似于Dosovitskiy等人[14](详情见附录A)。结果如图11所示,进一步的结果如附录F所示。左窗格显示了对单个token进行训练的分类器的平均准确度,其中我们看到带有GAP模型token的ResNet50和ViT在更高层次上表现良好,而在使用CLStoken训练的标准ViT中,空间token表现不佳——可能是因为它们的表示在更高的层上仍然在空间上局部化,这使得全局分类具有挑战性。支持这一点的是右窗格中的结果,该结果显示,来自ViT GAP模型的单个token在最高层的精度与汇集在一起的所有token相当。根据图9的结果,这表明GAP模型中的所有高层token都学习类似的(全局)表示。
8 规模对迁移学习的影响
由Dosovitskiy等人[14]的结果推动,证明了数据集规模对高性能VIT的重要性,以及我们先前关于局部注意需要大规模数据的结果(图4),我们对数据集规模对迁移学习表征的影响进行了研究。
我们首先研究JFT-300M预训练数据集大小变化时对表示的影响。图12说明了ViT-B/32和ViT-L/16的结果。即使是整个数据集的3%,较低的层表示与完整数据集训练的模型非常相似,但较高的层需要更多的预训练数据来学习与大数据规模下相同的表示,尤其是对于大型号模型。在第G节中,我们研究了fine tune中表示的变化,发现了数据集的异构性。
接下来,我们将研究数据集大小对更大的ViT-L/16和ViT-H/14模型的影响。具体地说,在图13的左窗格中,我们对JFT-300M上预训练模型和仅在ImageNet上预训练模型进行ImageNet类别线性分类探测器的训练。我们观察到,JFT-300M预训练模型即使使用中间层表示也能获得更高的精度,与仅在ImageNet上预训练的模型相比,绝对精度有30%的差距。这表明,对于较大的模型,较大的数据集尤其有助于学习高质量的中间表示。图13右窗格的结果进一步支持了这一结论,其中显示了不同ResNet和ViT模型上的线性探头,所有这些探头均在JFT-300M上预训练。我们再次看到,较大的ViT模型比ResNet学习到更强的中间表示。第F节中的其他线性探测器实验证明了迁移到CIFAR-10和CIFAR-100的相同结论。
9 讨论
鉴于卷积神经网络在计算机视觉突破中的核心作用,Transformer结构(与语言中使用的结构几乎相同)具有相似的性能是值得注意的。这就提出了关于这些网络结构是否与CNN以相同的方式工作的基本问题。利用表征相似性技术,我们发现VIT和CNN的特征和内部结构存在惊人的明显差异。对自注意和跳连强度的分析表明,早期的全局特征和强表征传播在ViTs中对这些差异所起的作用,同时也揭示了一些CNN特性,例如低层的局部信息聚合,对ViTs很重要,可以通过大规模数据训练来从零习得局部信息。我们通过对空间定位的研究,研究了VIT在分类之外的应用潜力,发现带有CLStoken的VIT具有很强的空间信息保存能力,有望在未来的目标检测中得到应用。最后,我们研究了大规模数据对迁移学习的影响,发现更大的ViT模型通过更大的预训练数据集发展出更强的中间表征。这些结果也与理解并行工作[42,43]提出的基于MLP的视觉网络结构非常相关,将在H部分进一步讨论,并共同回答关于VIT和CNN之间差异的中心问题,并为未来研究提出新方向。
附录
以下包括不同部分的其他细节和结果。
A 关于方法和实验设置的附加细节
为了了解ViT和CNN之间的系统差异,我们根据[14]中的性能结果,使用了一组具有代表性的每种类型的不同模型。具体而言,对于ViT,我们研究了ViT-B/32、ViTL/16和ViT-H/14,其中最小的模型(ViT-B/32)在JFT-300M[40]上进行预训练时,与ImageNet大型视觉识别挑战2012数据集[12,37]相比,显示出有限的改进,而最大的ViT-H/14在JFT-300M上进行预训练时,达到了最先进的水平[40]。ViT-L/16的性能接近于ViT-H/14[14]。对于CNN,我们看一下ResNet50x1,它在JFT-300M上预训练时也显示饱和性能,还有ResNet152x2,相比之下,随着预训练数据集大小的增加,它显示了较大的性能增益。正如Dosovitskiy等人[14]所述,这些ResNets 遵循BiT[16]首次提出的一些实现变更。
除了使用分类token(CLS)训练的标准视觉Transformer外,我们还使用全局平均池(GAP)训练VIT。在这些模型中,没有分类token,相反,Transformer最后一层中的token表示被平均并直接用于预测logit。GAP模型使用与CLS模型相同的超参数进行训练,但初始学习率设置为较低值0.0003。
对于模型内表示的分析,我们观察到从ImageNet绘制的图像表示与从JFT-300M绘制的图像表示之间没有显著差异。图1、2、9和10使用了JFT-300M数据集的图像,这些图像在训练期间未被看到,而图6、3、4、5、7、8和12使用了ImageNet 2012验证集的图像。图11和图13涉及在ImageNet 2012训练集上训练的10-shot probes ,在训练集的heldout部分上微调超参数,并在验证集上进行评估。
关于CKA实施的其他详细信息 为了计算CKA相似性分数,我们使用了[29]中介绍的minibatch CKA。具体地说,我们使用1024的batch size,我们无替换地总共抽样了10240个样本。我们重复20次,取平均值。改变确切批量大小(减少到128个)和CKA使用的样本总数(减少到2560个样本总数,重复10次)的实验对结果没有明显影响。
关于线性探头的其他详细信息。 我们按照Dosovitskiy等人[14]的观点,将线性探测训练为正则化最小二乘回归。我们将表示映射训练图像到个目标向量,其中N是类的数量。可以高效地求得闭式解。
对于视觉Transformer,我们在不同Transformer层(每层表示一个完整的Transformer块,包括自注意和MLP)的输出处,对单个token的表示或所有token的平均表示进行线性探测。对于ResNet,我们在每个残差块(包括3个卷积层)的输出处取得表示。特征映射的分辨率在整个模型中都会发生变化,因此我们执行一个额外的池化步骤,使特征映射的空间大小与最后一个阶段相同。此外,ResNet与VIT的不同之处在于,在整个模型中,通道的数量会发生变化,早期层中的通道较少。早期层中较小的通道数可能导致线性探头的性能较差。为了补偿这一点,在合并之前,我们将特征图拆分为patch并展平每个patch,以便获得接近最终块中通道数量的通道数。文中给出的所有结果包括这一额外的修补步骤;然而,我们发现,在简单池化的基础上,它只带来了非常微小的改进。
原文:however, we have found that it brings only a very minor improvement on top of simple pooling.
B 其他代表性结构结果
在这里,我们包括一些更多的CKA热图,这些热图提供了关于模型表示结构的见解(与正文中的图1、图2相比)。我们观察到类似的结论:ViT表示结构在各层之间具有更均匀的相似结构,将ResNet与ViT表示进行比较,发现早期ResNet层中有很大一部分类似于数量较少的ViT层。
C 其他局部/全局信息结果
在图C.1、C.2和C.3中,我们提供了ViT-B/32、ResNet-50和ViT-L/16所有层的有效感受野的完整图,这些图是在文本中图6所示的残差连接后获得的。在图C.4中,我们显示了在残差连接之前采集的ViT-B/32和ResNet-50的感受野。尽管ViT MLP子层的残差前感受野类似于图C.1中的残留后感受野,但注意子层的残差前感受野相对来自相应输入patch的贡献较小。这些结果支持我们在第5节中关于注意头的全局性质的发现,但表明网络表征仍然与输入patch位置相关,因为第6节研究了跳连的强大贡献。ResNet-50残差前感受野与残差后感受野相似。
原文:Although the pre-residual receptive fifields of ViT MLP sublayers resemble the post-residual receptive fifields in Figure C.1, the pre-residualreceptive fifields of attention sublayers have a smaller relative contribution from the corresponding input patch.
D 定位
下面我们将介绍其他定位结果:在模型更高层中,计算不同输入patch和token之间的CKA。我们展示了ViT-H/14、ViT-L/16、ViT-B/32和ResNet附加层的结果。
E 其他的表示传播结果
图E.1显示了在MLP和自注意块跳连前后的表示的范数之比。在这两种情况下,我们观察到,CLStoken表示在前几层中基本保持不变,而随后的层则快速地改变它,主要是通过MLP块。相反,表示图像patch的空间token的表示的大部分变化发生在早期层,在后期层中变化不大。查看图E.2中输出之间表示的余弦相似性证实了这些发现:虽然空间token表示在早期层中变化更大,但后期块的输出与跳连上的表示非常相似,而CLStoken的情况正好相反。
F 线性探头的附加结果
在这里,我们提供了补充主要论文图11和13的线性探测器的额外结果。特别是,我们在CIFAR-10和CIFAR-100数据集上重复线性探测,并在某些情况下添加更多模型进行比较。对于CIFAR-10和CIFAR-100,我们使用训练集的前45000个图像进行训练,最后5000个图像进行验证。其他结果如图F.1、F.2、F.3所示。
此外,我们在本文中对结果进行了更详细的讨论。在图11(左)中,我们对评估ViT-B/32模型的不同方法进行了实验。我们在两个方面有所不同:
1)用于训练模型的分类器使用分类token(CLS)还是全局平均池化(GAP)
2)聚合表示的方式:只取第一个token(对于CLS模型,就是CLStoken)还是平均所有token,还是平均除第一个token之外的所有token。
有三个有趣的观察。首先,使用原始聚合方法的CLS和GAP模型(CLS模型就取第一个token,GAP模型就取GAP后的表示)的性能非常相似。第二,用池化表示评估的CLS模型与取第一个token表示的模型的评估一致,直到最后几个层,此时性能平台。这表明CLStoken对后一层中的信息聚合起着至关重要的作用。第三,在使用GAP分类器训练的模型的第一个token上训练的线性探测器在早期层的性能非常差,但在后一层中性能显著提高,几乎与最后一层中标准GAP评估的性能相匹配。这表明,在GAP模型的后几层中,所有token在很大程度上都是可互换的。
为了更好地理解单个token中包含的信息,我们对三种模型的所有单个token进行了线性探测训练:使用CLS或GAP训练的ViT-B/32,以及ResNet50。图11(右)绘制了这些每token分类器的平均性能。有两个主要的观察结果。首先,在ViT CLS模型中,在单个token上训练的探测性能非常差,这证实了CLStoken在聚合全局类相关信息方面起着至关重要的作用。第二,在ResNet中,探测器在早期层中表现不佳,但在模型结束时表现更好。这种行为在性质上类似于ViT GAP模型,这可能是意料之中的,因为ResNet也使用GAP分类器进行训练。
G 数据规模对迁移学习的影响
最后,我们研究了在JFT-300M上预训练的模型在fine tune过程中表示的变化程度,发现与数据集相关的非常显著的变动。对于像ImageNet或Cifar100这样与JFT300M的自然图像设置非常相似的任务,表示形式不会有太大变化。对于医学数据(糖尿病视网膜病变检测)或卫星数据(RESISC45),变化更为明显。在所有情况下,前四到五层似乎都保存得很好,即使模型大小不同。这表明在那里学到的特性很可能与任务无关,如图G.1和图G.2所示。
H MLP Mixer的初步结果
图H.1显示了各种MLP Mixer模型的表示。这些表示似乎也非常清晰地划分为不同的、不相关的块(distinct, uncorrelated blocks),开头是一个较小的块,后面是一个较大的块。这与模型大小无关。如图H.2所示,将这些模型与ViT或ResNet进行比较,可以清楚地看出,总体而言,这些模型的行为与ViT比ResNet更为相似(c.f.图1和图2)