没有合适的资源?快使用搜索试试~ 我知道了~
123090AdaViT:自适应视觉Transformer用于高效图像识别0Lingchen Meng 1, 2, 3 * Hengduo Li 4 * Bor-Chun Chen 5 Shiyi Lan 40Zuxuan Wu 1, 2 † Yu-Gang Jiang 1, 2 Ser-Nam Lim 501复旦大学计算机科学学院智能信息处理上海市重点实验室2上海智能视觉计算协同创新中心3Biren Technology4马里兰大学5Meta AI0摘要0建立在自注意机制之上,视觉Transformer最近在各种任务上展示出了卓越的性能。尽管取得了出色的性能,但随着补丁数量、自注意头数和Transformer块数的增加,它们仍然需要相对密集的计算成本。本文中,我们认为由于图像之间的差异较大,它们对于建模补丁之间的长程依赖性的需求是不同的。为此,我们引入了AdaViT,一种自适应计算框架,它学习在每个输入上推导使用策略,以改善视觉Transformer的推理效率,并在图像识别中仅有0.8%的准确率下降的情况下。与Transformer主干一起进行联合优化,将轻量级决策网络附加到主干上以实时产生决策。在ImageNet上进行了大量实验证明,与最先进的视觉Transformer相比,我们的方法在效率上提高了2倍以上,准确率仅下降了0.8%,在不同的计算预算条件下实现了良好的效率/准确率权衡。我们进一步对学习到的使用策略进行定量和定性分析,并提供了有关视觉Transformer中冗余性的更多见解。代码可在https://github.com/MengLcool/AdaViT上获得。01. 引言0自然语言处理任务的主导架构Transformer [40]自从VisionTransformer(ViT)[7]的成功以来,已经在计算机视觉社区引起了越来越多的研究兴趣。建立在自注意机制之上,0* 相等贡献。†通讯作者。0头部0头部0头部0头部0头部0连接0头部0MSA FFN MSA FFN MSA FFN0MSA FFN MSA FFN MSA FFN0MSA0MSA0头部0连接0“理发店”0“白鹳”0头部0头部0头部0头部0头部0图1.我们方法的概念概述。利用视觉Transformer中的冗余性,AdaViT学习产生实例特定的使用策略,确定在整个网络中保留/激活哪些补丁、自注意头和Transformer块以实现高效的图像识别。对于简单的样本(上方),分配较少的计算资源,而对于困难的样本(下方),则使用更多的计算资源,以最小化分类准确率的下降。两个图中的绿色补丁都被激活。0transformers能够有效地捕捉输入图像中像素/补丁之间的长程依赖关系,这可能是它们在从图像分类[4, 12, 20, 22,38, 49, 56]到目标检测[3, 5, 43, 44],动作识别[9, 23,58]等视觉任务中优于标准CNN的主要原因之一。0最近对视觉Transformer [4, 7, 38,56]的研究通常采用了来自NLP的Transformer [40]架构123100通过最小手术。将一系列切片图像补丁作为输入,类似于令牌/单词,变换器骨干由堆叠的构建块组成,包括两个子层,即自注意力层和前馈网络。为了确保模型能够同时关注来自不同表示子空间的信息,每个块中都使用多头注意力而不是单个注意力函数[40]。尽管这些基于自注意力的视觉变换器在像ImageNet[6]这样的多个基准测试中表现优于CNN,但竞争性能并非免费 -带有多个头的堆叠注意块的计算成本很大,而且随着补丁数量的增加呈二次增长。但是,为了正确分类图像,是否需要在整个网络中关注所有补丁?我们是否需要所有具有多个头的自注意力块来寻找要关注的位置并建模所有不同图像的潜在依赖关系?毕竟,图像中存在着物体形状、物体大小、遮挡和背景复杂性等大的变化。直观地说,对于包含杂乱背景或遮挡物的复杂图像,需要更多的补丁和自注意力块,这些图像需要足够的上下文信息和对整个图像的理解,以推断它们的真实类别(例如图1中的理发店),而对于简单的图像,只需要少量信息补丁和注意力头/块就足以正确分类。考虑到这一点,我们试图开发一种自适应计算框架,该框架可以根据每个输入确定使用哪些补丁和激活哪些自注意力头/块。通过这样做,可以通过舍弃易样本的冗余输入补丁和骨干网络层来节省视觉变换器的计算成本,并且仅对于困难和复杂的样本使用具有所有补丁的完整模型。这是与最近关注设计静态网络架构的高效视觉变换器方法正交且互补的方向[4, 11, 22,56]。为此,我们引入了自适应视觉变换器(AdaViT),这是一个端到端的框架,根据输入图像自适应确定视觉变换器的补丁、头和层的使用情况,以实现高效的图像分类。我们的框架学习推导出实例特定的推理策略:1)保留哪些补丁;2)激活哪些自注意力头;3)跳过哪些变换器块,以提高推理效率,并最小程度地降低分类准确性。特别地,我们在骨干网络的每个变换器块中插入一个轻量级的多头子网络(即决策网络),该网络学习预测关于补丁嵌入、自注意力头和整个网络中的块使用情况的二进制决策。由于二进制决策是不可微分的,我们在训练过程中使用Gumbel-Softmax[26]使整个框架可以进行端到端的训练。决策网络与变换器骨干一起进行联合优化,使用一个衡量生成的使用策略的计算成本的使用损失和一个正常的交叉熵损失,该损失鼓励网络产生减少计算成本同时保持分类准确性的策略。整体目标计算成本可以通过超参数γ∈(0,1]来控制,该参数对应于在训练期间将所有补丁作为输入的完整模型的计算成本的百分比,使得该框架灵活适应不同的计算预算需求。我们在ImageNet[6]上进行了大量实验证明了AdaViT的有效性,并且显示出我们的方法能够以仅0.8%的分类准确性下降,将视觉变换器的推理效率提高了2倍以上,与其他标准视觉变换器和CNN相比,在效率和准确性之间取得了良好的平衡。此外,我们对学习到的使用策略进行了定量和定性分析,提供了有关视觉变换器中冗余性的更多直觉和见解。我们还展示了可视化结果,并证明AdaViT学会了在具有复杂场景的相对困难样本中使用更多的计算量,而在易于对象的样本中使用较少的计算量。0在训练过程中,使用Gumbel-Softmax[26]使整个框架可以进行端到端的训练。决策网络与变换器骨干一起进行联合优化,使用一个衡量生成的使用策略的计算成本的使用损失和一个正常的交叉熵损失,该损失鼓励网络产生减少计算成本同时保持分类准确性的策略。整体目标计算成本可以通过超参数γ∈(0,1]来控制,该参数对应于在训练期间将所有补丁作为输入的完整模型的计算成本的百分比,使得该框架灵活适应不同的计算预算需求。我们在ImageNet[6]上进行了大量实验证明了AdaViT的有效性,并且显示出我们的方法能够以仅0.8%的分类准确性下降,将视觉变换器的推理效率提高了2倍以上,与其他标准视觉变换器和CNN相比,在效率和准确性之间取得了良好的平衡。此外,我们对学习到的使用策略进行了定量和定性分析,提供了有关视觉变换器中冗余性的更多直觉和见解。我们还展示了可视化结果,并证明AdaViT学会了在具有复杂场景的相对困难样本中使用更多的计算量,而在易于对象的样本中使用较少的计算量。02. 相关工作0视觉变换器。受其在NLP任务中的巨大成功的启发,许多最近的研究探索了将Transformer[40]架构适应于多个计算机视觉任务[7-9, 14, 22, 27, 31,32, 42, 46, 48, 54, 59]。继ViT[7]之后,提出了各种视觉变换器变体,以提高识别性能以及训练和推理效率。DeiT[38]采用蒸馏策略来提高视觉变换器的训练效率,在不使用像JFT[35]这样的大规模数据集的预训练的情况下,优于标准CNN。其他方法如T2T-ViT [56],Swin Transformer [22],PVT[44]和CrossViT[4]旨在改进视觉变换器的网络架构。还通过使用卷积层[20,53],分层网络结构[22, 23, 44],多尺度特征聚合[4,9]等方法,将2DCNN的优势引入到变换器中。虽然获得了更好的性能,但视觉变换器的计算成本仍然很高,并且随着补丁数量、自注意力头数量和变换器块数量的增加而迅速增加。0高效网络。已经进行了大量研究,通过设计有效的轻量级网络架构[15, 16, 25, 34, 37,57]来提高CNN在视觉任务中的效率。为了与标准CNN的推理效率相匹配,最近的工作还探索了123110开发高效的视觉变换器架构。T2T-ViT[56]提出使用深窄结构和令牌到令牌模块,实现比ViT[7]更好的准确性和更少的计算成本。LeViT [11]和SwinTransformer[22]开发了具有下采样的多阶段网络架构,并获得更好的推理效率。然而,这些方法对所有输入样本使用固定的网络架构,而不考虑补丁和网络架构的冗余,以适应简单样本。我们的工作与此方向正交,专注于学习输入特定的策略,自适应地分配计算资源以节省计算量,同时保持准确性的最小降低。0自适应计算。自适应计算方法利用网络输入的大变化以及网络架构中的冗余来改善实例特定的推理策略的效率。特别是,现有的CNN方法已经探索了改变输入样本[28, 29, 39, 50,51, 55],跳过网络层[10, 18, 41, 45, 52]和通道[1,21],使用多分类器结构进行早期退出[2, 17,19]等方法。最近还尝试了一些加速视觉变换器的方法,利用补丁的冗余,即根据输入图像生成关于使用哪个补丁大小[47]和哪些补丁[30,33]的策略。相比之下,我们利用视觉变换器中的注意机制的冗余,并提出通过自适应选择哪些自注意力头、变换器块和补丁嵌入来改善效率,条件是输入样本。03. 方法0我们提出了AdaViT,一种端到端的自适应计算框架,用于减少视觉变换器的计算成本。给定一个输入图像,AdaViT学习适应性地推导出在变换器骨干中使用或激活的补丁、自注意力头和变换器块的策略,以输入图像为条件,鼓励使用更少的计算量同时保持分类准确性。我们的方法概述如图2所示。03.1. 预备知识0视觉变换器[7, 38,56]用于图像分类,将图像的切片序列作为输入,并使用堆叠的多头自注意力层和前馈网络来建模它们的长程依赖关系*。形式上,对于输入图像I,首先将其分割为固定大小的2D切片序列X = [x1, x2, ..., xN],其中N是切片的数量(例如N= 14×14)。然后将这些原始切片映射为D维切片嵌入-0* 在本节中,我们考虑ViT[7]的架构,并将其扩展到其他变种的视觉变换器是直接的。0使用线性层将补丁嵌入Z=[z1, z2, ...,zN]与线性层相连。一个可学习的嵌入zcls,称为类令牌,被附加到补丁嵌入序列上,它作为图像的表示。位置嵌入Epos也可以选择性地添加到补丁嵌入中,以增强它们的位置信息。总之,第一个变换器块的输入为:0Z=[zcls; z1; z2; ...; zN]+Epos (1)0其中z∈RD和Epos∈R(N+1)×D。与NLP中的Transformers[40]类似,视觉变换器的骨干网络由L个块组成,每个块由一个多头自注意力层(MSA)和一个前馈网络(FFN)组成。特别地,单头注意力的计算如下所示:0Attn(Q, K, V) = softmax(QKT0√ dk) V (2)0其中Q, K,V在广义上是查询、键和值矩阵,dk是一个缩放因子。对于视觉变换器,Q, K,V是从相同的输入(即补丁嵌入)投影出来的。为了在不同的表示子空间上实现更有效的注意力,多头自注意力将几个单头注意力的输出连接起来,并用另一个参数矩阵进行投影:0head i,l = Attn(ZlWQi,l, ZlWKi,l, ZlWVi,l) (3)0MSA(Zl) = Concat(head1,l, ..., headH,l)WOl, (4)0其中WQi,l,WKi,l,WVi,l,WOl是第i个注意力头在第l个变换器块中的参数矩阵,Zl表示第l个块的输入。MSA的输出然后被馈送到FFN,一个两层的MLP,并产生变换器块Zl+1的输出。在MSA和FFN上也应用了残差连接,如下所示:0Z′l = MSA(Zl) + Zl, Zl+1 = FFN(Z′l) + Z′l (5)0最终的预测由一个线性层产生,该线性层以最后一个变换器块的类令牌(Z0L)作为输入。03.2. 自适应视觉变换器0尽管大型视觉变换器模型在图像分类性能上取得了卓越的表现,但随着我们增加补丁数量、注意力头数和变换器块数以获得更高的准确性,计算成本会迅速增长。此外,一个计算成本昂贵的一刀切网络通常对于许多简单样本来说是过度的。为了解决这个问题,AdaViT学习自适应地选择:1)使用哪些补丁嵌入;2)在MSA中激活哪些自注意力头;3)跳过哪个变换器块-以改善视觉变换器的推理效率。我们通过插入一个决策网络来实现这一点。MSAFFNHeadHeadHeadHeadHeadHeadHeadHeadHeadHeadHeadHeadConcat(mpl , mhl , mbl) =(Wpl , Whl , Wbl )ZlZl = [zl,cls; Mpl,1z1; ...; Mpl,NzN](7)Attn(Q, K, V )l,i =�softmax(1 · Vl,i123120... 多头注意力0前馈网络0决策网络0多头注意力0前馈网络0决策网络0多头注意力0前馈网络0决策网络0喜鹊0补丁选择 头选择 块选择0图2.我们方法的概述。我们在视觉变换器骨干的每个块之前插入一个轻量级的决策网络。给定一个输入图像,决策网络在整个骨干中产生使用策略,决定哪些补丁、自注意力头和变换器块保持/激活。这些实例特定的使用策略被激励以减少视觉变换器的总体计算成本,同时最小化准确性的下降。详细信息请参阅文本。0在每个transformer块之前有一个轻量级的决策网络,并且该网络被训练用于为该块生成三组使用策略。0决策网络。第l个块的决策网络由三个线性层组成,参数为Wl ={Wpl,Whl,Wbl},用于分别生成patch选择的计算使用策略、注意力头选择的计算使用策略和transformer块选择的计算使用策略。形式上,给定第l个块的输入Zl,计算该块的使用策略矩阵的过程如下:0其中mpl ∈ RN,mhl ∈ RH,mbl ∈R(6)。0其中 N 和 H分别表示transformer块中的patch数量和自注意力头的数量,l ∈ [1, L]。mp l,mh l和mbl的每个条目都进一步传递给sigmoid函数,表示保留相应patch、注意力头和transformer块的概率。第l个决策网络共享前l-1个transformer块的输出,使得框架比使用独立的决策网络更高效。由于决策是二进制的,在推断过程中可以通过对条目应用阈值来选择保留/丢弃的操作。然而,对于不同样本来说,确定最佳阈值是具有挑战性的。为此,我们定义随机变量Mp l,Mh l,Mbl通过从mp l,mh l和mbl中进行采样来进行决策。例如,在第l个块中,第j个patch嵌入在Mpl,j = 1时保留,在Mpl,j =0时丢弃。我们使用Gumbel-Softmax技巧[26]来放松训练过程中的采样过程,使其可微分(见第3.3节)。0Patch选择。对于每个transformer块的输入,我们的目标是仅保留最具信息的patch嵌入,并丢弃其余的以加快推断速度。形式上,对于第l个块,如果Mpi中相应的条目等于0,则从该块的输入中删除这些patch:0类标记zl,cls始终保留,因为它用作整个图像的表示。注意力头选择。多头自注意力使模型能够共同关注表示的不同子空间[40],并且在大多数视觉transformer变体[4, 7, 22, 38,56]中被采用。这样的多头设计对于模拟图像中的基础长程依赖关系至关重要,特别是对于具有复杂场景和杂乱背景的图像,但是较少的注意力头可能足以查找易图像中的关注位置。考虑到这一点,我们探索根据输入图像自适应地丢弃注意力头以加快推断速度。与patch选择类似,激活或停用特定注意力头的决策由Mhl中的相应条目决定。注意力头的“停用”可以以不同的方式实现。在我们的框架中,我们探索了两种头选择方法,即部分停用和完全停用。对于部分停用,注意力中的softmax输出如Eqn.2中的预定义输出(如(N + 1,N +1)的单位矩阵1)替换,以节省计算注意力图的成本。然后,第l个块中第i个头的注意力计算如下:0√ dk ) ∙ V if Mhl,i = 1MSA(Zl)l,i = Concat([headl,i:1)H if Mhl,i = 1])WO′lZ′l = Mbl,0 MSA(Zl) + ZlLusage = ( 1DpDp�d=1Mpd − γp)2 + ( 1DhDh�d=1Mhd − γh)2+ ( 1DbDbd=1Mbd − γb)2123130对于完全停用,整个注意力头从多头自注意力层中移除,并相应地减小MSA输出的嵌入大小:0在实践中,与部分停用相比,完全停用在相同比例的停用头时节省更多的计算量,但由于嵌入大小在运行时被操作,可能会导致更多的分类错误。0块选择。除了补丁选择和头选择之外,当变换器块是多余的时,完全可以跳过它,这是由于网络中的残差连接。为了增加层跳过的灵活性,我们将块使用策略矩阵 m b l 的维度从1 增加到 2 ,使得每个变换器块中的两个子层(MSA 和FFN)可以分别控制。然后,等式 5 变为:0Z l +1 = M b l, 1 ∙ FFN ( Z ′ l ) + Z ′ l (8)0总之,给定每个变换器块的输入,决策网络产生该块的使用策略,然后将输入通过应用决策的块进行转发。最后,从最后一层得到分类预测和所有块的决策 M = { M p l , M h l, M b l , for l : 1 ) L }。03.3. 目标函数0由于我们的目标是在准确率最小下减少视觉变换器的总计算成本,AdaViT的目标函数旨在同时激励正确分类和减少计算。具体而言,使用损失和交叉熵损失被用于共同优化框架。给定带有标签y 的输入图像 I ,最终预测由具有参数 θ 的变换器 F产生,交叉熵损失计算如下:0L ce = − y log ( F ( I ; θ )) (9)0虽然在推理过程中可以通过应用阈值来轻松获得是否保留/丢弃补丁/头/块的二进制决策,但确定最佳阈值是具有挑战性的。此外,这种操作在训练过程中不可微分,因此使得决策网络的优化具有挑战性。一种常见的解决方案是使用强化学习,并使用策略梯度方法优化网络[36],但由于离散变量的维度与方差成比例,收敛速度可能较慢[26,36]。为此,我们使用 Gumbel-Softmax 技巧[26]来放松采样。0处理并使其可微分。形式上,m 的第 i 个元素的决策如下:0M i,k = exp ( log ( m i,k + G i,k ) /τ ) ÷K j =1 exp ( log ( m i,j + G i,j ) /τ )0对于 k = 1 , 2 , ..., K (10)0其中 K 是类别的总数(在我们的情况下,二进制决策的 K= 2),而 G i = − log ( − log ( U i )) 是 Gumbel分布,其中 U i 是从均匀分布 Uniform (0 , 1)中采样的独立同分布的均匀分布。温度 τ 用于控制 M i的平滑度。为了鼓励减少总体计算成本,我们设计了使用损失如下:0其中 D p = L × N, D h = L × H, D b = L × 2 (11)0这里 D p , D h , D b表示来自决策网络的用于补丁/头/块选择的平坦概率向量的大小,即整个变换器的补丁、头和块的总数。超参数 γ p ,γ h , γ b ∈ (0 , 1]表示以保留的补丁/头/块的百分比形式的目标计算预算。0min θ , W L = L ce + L usage (12)0最后,两个损失函数以端到端的方式组合并最小化,如等式12 所示。04. 实验04.1. 实验设置0数据集和评估指标。我们在ImageNet[6]上进行实验,使用约1.2M张图像进行训练,50K张图像进行验证,并报告Top-1分类准确率。为了评估模型的效率,我们报告每张图像的十亿次浮点运算(GFLOPs)。实现细节。我们使用T2T-ViT[56]作为Transformer的骨干,因为它在ImageNet上具有适度的计算成本的情况下表现优异。骨干由每个MSA层中的L=19个块和H=7个头组成,令牌数N=196。决策网络附加在从第2个块开始的每个Transformer块上。对于头部选择,如果没有另外说明,我们使用完全去激活的方法。我们使用[56]的官方实现中发布的预训练权重初始化AdaViT的Transformer骨干。我们将发布代码。1234678970727476788082123140方法 Top-1准确率(%) FLOPs(G) 图像大小 补丁数 头部数 块数0ResNet-50* [13, 56] 79.1 4.1 224×224 - - - ResNet-101* [13, 56] 79.9 7.9 224×224 - - -0ViT-S/16 [7] 78.1 10.1 224×224 196 12 8 DeiT-S [38] 79.9 4.6 224×224 196 6 12 PVT-Small [44]79.8 3.8 224×224 - - 15 Swin-T [22] 81.3 4.5 224×224 - - 12 T2T-ViT-19 [56] 81.9 8.5 224×224196 7 19 CrossViT-15 [4] 81.5 5.8 224×224 196 6 15 LocalViT-S [20] 80.8 4.6 224×224 196 6 120基准 上界 81.9 8.5 224×224 196 7 19 基准 随机 33.0 4.0 224×224 �118 �5.6 �16.2 基准 随机+ 71.53.9 224×224 �121 �5.6 �16.2 AdaViT(我们的方法)81.1 3.9 224×224 �95 �4.5 �15.50表1. 主要结果。我们将AdaViT与各种标准的CNN和视觉Transformer以及基准方法,包括上界、随机和随机+进行了比较。*表示使用我们的方法训练ResNets。0我们使用8个GPU进行训练,批量大小为512。模型使用学习率0.0005、权重衰减0.065和余弦学习率调度进行训练150个epoch,遵循[56]的方法。优化器使用AdamW[24]。对于所有实验,我们将输入大小设置为224×224。Gumbel-Softmax中的温度τ设置为5.0。γp、γh和γb的选择因不同的分类准确性和计算成本之间的权衡而灵活变化。04.2. 主要结果0我们首先从分类准确性和效率两个方面评估AdaViT的整体性能,并将结果报告在表1中。除了标准的CNN和Transformer架构,如ResNets [13]、ViT [7]、DeiT [38]、T2T-ViT[56]等,我们还将我们的方法与以下基准方法进行了比较:0•上界:原始的预训练视觉Transformer模型,保留所有补丁嵌入作为输入,并激活所有自注意头和Transformer块。这是我们方法在分类准确性方面的“上界”。0•随机:根据AdaVit生成的使用策略,我们生成了在补丁选择、头部选择和块选择上使用类似计算成本的随机策略,并将其应用于预训练模型以验证学习策略的有效性。0•随机+:进一步使用随机策略对预训练模型进行微调,以适应随机策略引起的多样化输入分布和网络架构。0如表1所示,AdaViT能够在仅略微降低分类准确性的情况下获得良好的效率提升。具体而言,AdaViT在每张图像上需要3.9 GFLOPs,Top-1准确率为81.1%。0推理时,AdaViT相比原始的T2T-ViT模型在效率上提高了2倍以上,仅降低了约0.8%的准确性。与标准的ResNets[13]和使用类似骨干架构的视觉Transformer [4, 7, 38,56]相比,AdaViT在更小的计算成本下获得更好的分类性能,在图3中进一步展示了良好的效率/准确性权衡。值得指出的是,与使用多尺度特征金字塔和分层下采样等先进设计选择的视觉Transformer变体[22,44]相比,我们的方法在类似的计算成本下仍然获得可比或更好的准确性。在相似的计算预算下,AdaViT比随机和随机+基准方法明显优越。具体而言,使用T2T-ViT作为骨干网络的Ada-ViT在每张图像上的计算成本为3.9GFLOPs,比随机和随机+分别获得48.1%和9.6%更高的准确性,证明了AdaViT学习到的使用策略可以有效地保持分类准确性和0GFLOPs0Top-1准确性%0我们的T2T-ViTDeiT0CrossViTResNetsLocalViT0图3.效率与准确性的权衡。与其他静态视觉变换器相比,AdaViT在效率/准确性权衡方面表现良好。2.02.53.54.060657075800.50.874767880820.50.874767880820.50.87476788082123150GFLOPs0Top-1准确性%0(a)整体0我们的随机+0%保留的补丁0(b)仅补丁0我们的随机+0%保留的头部0(c)仅头部0我们的随机+0%保留的块0(d)仅块0我们的随机+0图4.每个组件的有效性。AdaViT的效率/准确性权衡(a)所有三种选择方法;(b)补丁选择;(c)头部选择;(d)块选择及其随机+对应物。0同时降低计算成本。AdaViT具有不同的计算预算需求,通过改变超参数γp、γh和γb来灵活地适应不同的计算预算,如3.2节所讨论的。如图4(a)所示,AdaViT能够在效率和准确性之间涵盖广泛的权衡范围,并且比随机+基准方法表现出更好的性能。04.3.消融研究0学习的使用策略的有效性。在这里,我们验证了三组学习的使用策略中的每一组都能够在降低视觉变换器的计算成本的同时有效地保持分类准确性。为此,我们将学习的使用策略替换为消耗类似计算资源的随机生成的策略,并在表2中报告结果。如表2所示,将任何一组学习的策略更改为随机策略都会明显降低准确性。与0随机补丁 随机头部 随机块 Top-1准确性0� 49.2 � 57.4 � 64.70完全AdaViT 81.10表2.学习的使用策略的有效性。我们将每组策略替换为随机生成的策略,并与我们的方法进行比较。0方法 Top-1准确性% 头部 GFLOPs0上界 81.9 100% 8.50部分 81.7 50% 6.9 完全 80.3 50% 5.1 完全80.8 60% 5.8 完全 81.1 70% 6.60表3. 头选择的部分停用与完全停用。0通过随机的补丁/头部/块选择,AdaViT在相似的计算预算下获得了31.9% / 23.7% /16.4%更高的准确性。这证实了每个学习的使用策略的有效性。0各个组件的消融研究。在证明了联合学习的补丁、头部和块选择的有效性后,我们现在评估仅使用三种选择方法之一时的性能。可以说,表2中的性能差距部分是由于应用随机策略时输入/特征分布的改变所导致的,因此我们将每个组件与其进一步微调的随机+对应物进行比较。为了加快训练和评估速度,我们将这些模型训练100个时期。如图4(b-d)所示,我们的仅补丁/头部/块选择方法也能够在准确性/效率权衡的广泛范围内覆盖,并且明显优于随机+基准方法,验证了每个组件的有效性。0头选择的部分停用与完全停用。如3.2节所讨论的,我们提出了两种方法来停用多头自注意力层中的头部,即部分停用和完全停用。我们现在分析它们对于改善视觉变换器效率的有效性。如表3所示,当在骨干网络中停用相同百分比(即50%)的自注意力头部时,部分停用能够获得比完全停用更高的准确性(81.7% vs.80.3%),但也会增加计算成本(6.9 vs. 5.1GFLOPs)。这是合理的,因为部分停用只跳过了Softmax之前的注意力图计算,而完全停用则移除了整个头部及其输出到FFN的部分。随着头部数量的增加,完全停用逐渐获得更高的准确性。在实践中,这些不同的头部选择方法为适应不同的计算预算提供了更灵活的选择。04.4. 分析0网络中的计算节省。AdaViT利用计算冗余来提高视觉变换器的效率。为了更好地理解这种情况123456789101112131415161718.0.5123456789101112131415161718.0.5123451415161718.0.5123451245123160% Token(顶部)0Transformer块索引0%计算成本0图5.网络中的计算成本。报告了骨干网络中保留/激活的补丁(顶部)、头部(中部)和块(底部)的百分比。0喜鹊0降落伞0铲子0网球0基座0遥控器0鼓0台式机0螺丝刀0玩具店0花瓶0最少计算 最多计算0图6. 定性结果。显示了AdaViT分配最少和最多计算资源的图像。0冗余性,我们收集了我们的方法在验证集上预测的补丁/头部/块选择的使用策略,并显示了骨干网络中计算成本(即保留的补丁/头部/块的百分比)的分布。如图5所示,AdaViT倾向于在网络的早期阶段分配更多的计算资源。特别是对于补丁选择,每个变换器块中保留的补丁的平均数量逐渐减少,直到最后的输出层。这是合理的,因为补丁在堆叠的自注意层中聚合来自所有其他补丁的信息,并且在输出层附近的几个信息补丁足以表示整个输入图像以进行正确分类。如图7所示,选择的补丁数量逐渐减少,重点放在图像的有区别的部分上。对于头部选择和块选择,模式与令牌选择有些不同,在最后几个块中保留了相对更多的计算。我们假设骨干网络中的最后几层对最终的预测更负责,因此更经常保留。0不同类别的学习使用策略。我们进一步分析了不同类别的学习使用策略的分布。在图8中,我们展示了分配最多/最少计算资源的几个类别的箱线图。可以看到,我们的方法学习将更多的计算资源分配给具有复杂场景的困难类别,如“鞋店”、“理发店”、“玩具店”,但对于相对简单和以物体为中心的类别如“降落伞”和“风筝”,使用较少的计算资源。0定性结果。显示了我们的方法分配最少和最多计算资源的图像。0块#2 块#8 块#14 块#2 块#8 块#140图7. 不同块的选定补丁。绿色表示保留的补丁。0窗帘0白鹳0油0降落伞0GFLOPs0玩具火锅0餐厅 理发店鞋店0图8.分配计算资源的分布,用于使用最少(顶部)和最多(底部)计算的类别。0图6.可以看到,具有简单背景(如降落伞和网球)的以物体为中心的图像倾向于使用较少的计算资源,而具有杂乱背景的困难样本(例如鼓和玩具店)分配更多的计算资源。局限性。一个潜在的局限性是与“上界”基线相比,我们的方法仍然存在一小部分准确性下降,我们相信这将在未来的工作中进一步解决。05. 结论0在本文中,我们提出了AdaViT,一种自适应计算框架,通过在每个输入上学习哪些补丁、自注意力头和块保留来提高图像识别的效率。为了实现这一点,我们在每个Transformer块上附加了一个轻量级的决策网络,并与骨干网络一起进行端到端的优化。大量实验证明,与最先进的视觉Transformer相比,我们的方法在效率上提高了2倍以上,仅仅损失了一点准确性,并且涵盖了广泛的效率/准确性权衡范围。我们进一步定量和定性地分析了学习到的使用策略,提供了有关视觉Transformer中冗余性的更多见解。0致谢本项目得到了中国国家重点研发计划的支持(编号2021ZD0112805)。Y.-G.Jiang部分资助来自上海市教育发展基金会和上海市教育委员会的“曙光计划”(编号20SG01)。Z.Wu部分资助来自国家自然科学基金委员会(编号62102092)。123170参考文献0[1] Babak Ehteshami Bejnordi, Tijmen Blankevoort, and MaxWelling. 用于学习条件通道门控网络的批次整形. 在ICLR, 2020. 30[2] Tolga Bolukbasi, Joseph Wang, Ofer Dekel, andVenkatesh Saligrama. 用于快速测试时间预测的自适应神经网络.在ICML, 2017. 30[3] Nicolas Carion, Francisco Massa, Gabriel Synnaeve,Nicolas Usunier, Alexander Kirillov, and Sergey Zagoruyko.端到端的目标检测与Transformer. 在ECCV, 2020. 10[4] Chun-Fu Chen, Quanfu Fan, and Rameswar Panda.Crossvit: 交叉注意力多尺度视觉Transformer用于图像分类.在ICCV, 2021. 1, 2, 4, 60[5] Xiangxiang Chu, Zhi Tian, Yuqing Wang, Bo Zhang,Haibing Ren, Xiaolin Wei, Huaxia Xia, and Chunhua Shen.Twins: 重新审视视觉Transformer中的空间注意力设计.在NeurIPS, 2021. 10[6] Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, andLi Fei-Fei. ImageNet: 一个大规模的分层图像数据库. 在CVPR,2009. 2, 50[7] Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov,Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner,Mostafa Dehghani, Matthias Minderer, Georg Heigold,Sylvain Gelly等. 一张图像等于16x16个单词:用于大规模图像识别的Transformer. 在ICLR, 2021. 1, 2, 3, 4, 60[8] Alaaeldin El-Nouby, Natalia Neverova, Ivan Laptev, andHerv´e J´egou. 用于图像检索的训练视觉Transformer.arXiv预印本arXiv:2102.05644, 2021. 20[9] Haoqi Fan, Bo Xiong, Karttikeya Mangalam, Yanghao Li,Zhicheng Yan, Jitendra Malik, and Christoph Feichtenhofer.多尺度视觉Transformer. arXiv预印本arXiv:2104.11227, 2021.1, 20[10] Michael Figurnov, Maxwell D Collins, Yukun Zhu, LiZhang, Jonathan Huang, Dmitry Vetrov, and RuslanSalakhutdinov. 用于残差网络的空间自适应计算时间. 在CVPR,2017. 30[11] Ben Graham, Alaaeldin El-Nouby, Hugo Touvron, PierreStock, Armand Joulin, Herv´e J´egou, and Matthijs Douze. Levit:一个穿着卷积神经网络外衣的视觉Transformer,用于更快的推理.在ICCV, 2021. 2, 30[12] Kai Han, An Xiao, Enhua Wu, Jian
下载后可阅读完整内容,剩余1页未读,立即下载
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 利用迪杰斯特拉算法的全国交通咨询系统设计与实现
- 全国交通咨询系统C++实现源码解析
- DFT与FFT应用:信号频谱分析实验
- MATLAB图论算法实现:最小费用最大流
- MATLAB常用命令完全指南
- 共创智慧灯杆数据运营公司——抢占5G市场
- 中山农情统计分析系统项目实施与管理策略
- XX省中小学智慧校园建设实施方案
- 中山农情统计分析系统项目实施方案
- MATLAB函数详解:从Text到Size的实用指南
- 考虑速度与加速度限制的工业机器人轨迹规划与实时补偿算法
- Matlab进行统计回归分析:从单因素到双因素方差分析
- 智慧灯杆数据运营公司策划书:抢占5G市场,打造智慧城市新载体
- Photoshop基础与色彩知识:信息时代的PS认证考试全攻略
- Photoshop技能测试:核心概念与操作
- Photoshop试题与答案详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)