EMO:重新思考高效的基于注意力的移动块模型

news/2024/4/28 6:59:13/文章来源:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/131992979

文章目录

  • 摘要
  • 1、介绍
  • 2、方法论:归纳法和演绎法
    • 2.1、通用效率模型标准
    • 2.2、元移动块
    • 2.3、微设计:倒置残余移动块
    • 2.4、面向密集预测的EMO宏观设计
  • 3、实验
    • 3.1、图像分类
    • 3.2、下游任务
    • 3.3、额外的消融和解释分析
  • 4、相关工作
  • 5、结束语及未来工作

摘要

论文链接:https://arxiv.org/pdf/2301.01146.pdf
本文的重点是在权衡参数、FLOPs和性能的同时,为密集预测开发现代、高效、轻量级的模型。倒立残差块(IRB)是轻量级CNN的基础结构,但在基于注意力的研究中还没有相应的基础结构。本文从高效IRB和Transformer的有效组件的统一角度重新思考轻量级基础架构,将基于CNN的IRB扩展到基于注意力的模型,并抽象出一个用于轻量级模型设计的单残留元移动块(MMB)。根据简单而有效的设计准则,我们推导出了一种现代的反向残差移动块(iRMB),并构建了一个只有iRMB的类resnet高效模型(EMO)用于下游任务。在ImageNet-1K, COCO2017和ADE20K基准测试上的大量实验证明了我们的EMO优于最先进的方法,例如,EMO- 1m /2M/5M达到71.5,75.1和78.4 Top-1,超过了等阶CNN /基于注意力的模型,同时很好地权衡了参数,效率和精度:运行速度比iPhone14上的EdgeNeXt快2.8-4.0倍。代码是可用的。

在这里插入图片描述

1、介绍

随着近年来存储/计算受限应用需求的增加,具有更少参数和低FLOPs的移动模型引起了开发人员和研究人员的极大关注。设计高效模型的最早尝试可以追溯到Inceptionv3[55]时代,它使用非对称卷积来取代标准卷积。然后,MobileNet[20]提出了深度可分离卷积,以显著减少计算量和参数,这被视为后续工作中基于CNN的基本组成部分[81,43,48,15]。值得注意的是,MobileNetv2[51]提出了一种基于深度卷积(deep - wise Convolution, DW-Conv)的高效倒残差块(Inverted Residual Block, IRB)算法,该算法至今被认为是高效模型的基础架构[58]。不可避免的是,受静态CNN自然归纳偏差的限制,CNNpure模型的精度仍然保持在较低的精度水平,需要进一步提高。总之,一个极端的核心是推进一个更强大的基本块,超越IRB。

另一方面,从视觉tansformer(vision transformer, ViTs)[13]开始,许多后续研究[61,65,66,38,37,79,78]都取得了较CNN的显著改进。这是由于它能够动态建模并从广泛的数据集中学习,如何将这种能力迁移到轻量级CNN是值得我们探索的。然而,受多头自注意(Multi-Head Self-Attention, MHSA)计算量为二次元的限制,基于注意的模型需要大量的资源消耗,特别是当特征图的通道和分辨率较大时。一些研究试图通过设计具有线性复杂性的变量[29,7]、降低特征的空间分辨率[69,65,31]、重新排列通道[45]、使用局部窗口注意力[38]等方法来解决上述问题。但是,这些方法仍然不能在设备上部署。

近年来,研究人员致力于设计轻量级CNN的高效混合模型,并在精度、参数和FLOPs方面取得了比基于CNN的模型更好的性能。然而,目前的方法引入了复杂的结构[46,47,64,6,44]或多个混合模块[44,49],这对应用优化是非常不利的。到目前为止,很少有研究像IRB那样基于注意力的对应物的工作,这激发了我们的思考:我们可以为基于基本操作符的基于注意力的模型构建一个轻量级的类似IRB的基础设施吗?

在这里插入图片描述

基于上述动机,我们从统一的角度重新思考MobileNetv2[51]中的高效倒立剩余块和Transformer[63]中的有效MHSA/FFN模块,期望在基础设施设计层面整合两者的优势。如图2-左所示,在努力将具有归纳偏置的单残差IRB引入注意模型时,我们观察到双残差Transformer中的两个底层子模块(即FFN和MHSA)与IRB具有相似的结构。因此,我们归纳地抽象了一个单残差元移动块(MMB, c.f,第2.2节),它采用参数参数扩展比λ和有效算子F来实例化不同的模块,即IRB, MHSA和FFN。我们认为MMB可以体现上述三个模块的一致本质表达,可以看作是Transformer的改进轻量化浓缩集合体。此外,我们推导了一个简单而有效的反向残差移动块(iRMB),它只包含基本的深度智能卷积和我们改进的ewmhsa (c.f,第2.3节),并且我们只使用iRMB (c.f,第2.4节)构建了一个类似resnet的4相高效模型(EMO)。令人惊讶的是,即使没有复杂的结构,我们的方法也比SoTA轻量级的基于注意力的模型表现更好,如图1所示。总之,这项工作遵循简单的设计标准,同时逐渐产生一个高效的基于注意力的轻量级模型。

我们的贡献有四个方面:1)我们将基于CNN的IRB扩展到双残差Transformer,并抽象了一个单残差元移动块(MMB)用于轻量化模型设计。该元范式可以描述现有的高效模块,对构建新型高效模块具有指导意义。2)在归纳式MMB的基础上,推导出一种简单而有效的现代倒转残差移动块(iRMB),并构建了一种仅含iRMB的类似resnet的高效模型(EMO),用于下游应用。具体来说,iRMB仅由朴素的DW-Conv和改进的EW-MHSA组成,分别用于模拟短/长依赖关系。3)我们对我们的方法进行了详细的研究,并给出了一些基于注意力的轻量化模型的实验结果,希望我们的研究能够启发研究界设计出强大而高效的模型。4)即使不引入复杂的结构,我们的方法在几个基准测试上仍然比基于并行注意力的方法取得了非常有竞争力的结果,例如,我们的EMO-1M/2M/5M比目前基于SoTA CNN / transformer的模型达到了71.5,75.1和78.4 Top-1。此外,EMO-1M/2M/5M武装SSDLite仅以2.3M/3.3M/6.0M参数和0.6 g /0.9G/1.8G FLOPs获得22.0/25.2/27.9 mAP,比最近的MobileViTv2[47]提高了+0.8↑/+0.6↑/+0.1↑,FLOPs降低了-33%↓/-50%↓/-62%↓;EMO-1M/2M/5M武装DeepLabv3仅以5.6M/6.9M/ 103m参数和2.4G/3.5G/5.8G FLOPs获得33.5/35.3/37.98 mIoU,超过MobileViTv2 +1.6↑/+0.6↑/+0.8↑,FLOPs更低。

2、方法论:归纳法和演绎法

2.1、通用效率模型标准

在为移动应用程序设计高效的可视化模型时,我们在主观上和经验上都主张一个高效的模型应该尽可能满足以下标准:①可用性。简单的实现,不使用复杂的操作符,易于针对应用程序进行优化。➁一致性。尽可能少的核心模块,以减少模型复杂性和加速部署。➂有效性。具有良好的分类和密集预测性能。➃效率。参数少,计算量少,精度折衷。我们在表1中总结了目前的高效模型:1)MobileNet系列[20,51,64]的性能现在看起来略低,其参数略高于同类产品。2)最近的MobileViT系列[46,47,64]取得了显著的性能,但它们的FLOPs更高,模块略复杂。3) EdgeNeXt[44]和EdgeViT[49]得到了漂亮的结果,但它们的基本模块也由复杂的模块组成。相比之下,我们的EMO的设计原则遵循上述标准,没有引入复杂的操作(参见第2.4节),但它仍然在多个视觉任务上获得了令人印象深刻的结果(参见第3节)。
在这里插入图片描述

2.2、元移动块

动机。1)最近基于transformer的工作[73,38,12,53,35,59,60]致力于在MetaFormer[74]下改善高性能网络的空间令牌混合。基于CNN的倒残差块[51] (IRB)被认为是高效模型的基础设施[51,58],但很少有研究探索基于注意力的基础设施。这启发我们为基于注意力的模型构建一个轻量级的类似irb的基础结构。2)在努力将具有归纳偏差的单残差IRB引入注意模型时,我们偶然发现了双残差Transformer中的两个底层子模块(即FFN和MHSA),它们恰好与IRB具有相似的结构。

归纳。我们用Transformer[63]中的核心MHSA和FFN模块重新思考MobileNetv2[51]中的倒残块,并在图2中归纳抽象了一个通用的Meta Mobile Block (MMB),它采用参数参数扩展比λ和有效算子F来实例化不同的模块。我们认为MMB可以体现上述三个模块的一致性本质表达,可以将MMB视为Transformer的改进轻量化浓缩集合体。这也是我们设计简洁易用的EMO的基本动机,它只包含一个推导出的iRMB吸收轻量级CNN和Transformer的优点。以图像输入 X ( ∈ R λ C × H × W ) \boldsymbol{X}\left(\in \mathbb{R}^{\lambda C \times H \times W}\right) X(RλC×H×W)为例,MMB首先使用输出/输入比为λ的扩展MLPe扩展通道维数:
X e = MLP ⁡ e ( X ) ( ∈ R λ C × H × W ) (1) \boldsymbol{X}_{e}=\operatorname{MLP}_{e}(\boldsymbol{X})\left(\in \mathbb{R}^{\lambda C \times H \times W}\right) \tag{1} Xe=MLPe(X)(RλC×H×W)(1)
然后,中间算子F进一步增强图像特征,如恒等算子、静态卷积、动态MHSA等。考虑到MMB适合于高效网络设计,我们将F作为高效运算符的概念,表示为:
X f = F ( X e ) ( ∈ R λ C × H × W ) (2) \boldsymbol{X}_{f}=\mathcal{F}\left(\boldsymbol{X}_{e}\right)\left(\in \mathbb{R}^{\lambda C \times H \times W}\right) \tag{2} Xf=F(Xe)(RλC×H×W)(2)
最后,一个反向输入/输出比等于λ的收缩mlp来收缩通道尺寸:
X s = MLP ⁡ s ( X f ) ( ∈ R C × H × W ) (3) \boldsymbol{X}_{s}=\operatorname{MLP}_{s}\left(\boldsymbol{X}_{f}\right)\left(\in \mathbb{R}^{C \times H \times W}\right) \tag{3} Xs=MLPs(Xf)(RC×H×W)(3)
其中残余连接用于获得最终输出 Y = X + X s ( ∈ R C × H × W ) \boldsymbol{Y}=\boldsymbol{X}+\boldsymbol{X}_{s}\left(\in \mathbb{R}^{C \times H \times W}\right) Y=X+Xs(RC×H×W)。注意,为了清晰起见,省略了正则化和激活函数。

与MetaFormer的关系。我们在图3中讨论了Meta Mobile Block和MetaFormer[74]之间的差异。1)从结构上看,双残差MetaFormer包含两个具有两个跳过连接的子模块,而我们的Meta Mobile Block只包含一个覆盖轻量级CNN领域的单残差IRB的子模块。此外,较浅的深度需要较少的内存访问并节省成本[43],这是更通用和硬件友好的。2)从动机来看,MetaFormer是对高性能Transformer/ mlp类模型的归纳,而我们的Meta Mobile Block是对MobileNetv2中高效IRB[51]和Transformer中有效MHSA/FFN[66,13]的归纳,用于设计高效的基础设施。3)在一定程度上,感应式单残差Meta Mobile Block可以看作是双残差MetaFormer在轻量级领域的概念扩展。我们希望我们的工作能够激发更多的未来研究,致力于基于注意力的轻量化模型设计领域。

在这里插入图片描述

2.3、微设计:倒置残余移动块

基于归纳Meta移动块,我们从微观角度实例化了一个有效而高效的现代倒立残余移动块(iRMB),如图4所示。
在这里插入图片描述

设计原则。根据2.1节的标准,iRMB中的F被建模为级联MHSA和卷积操作,公式为F(·)= Conv(MHSA(·))。该设计吸收了类似CNN的局部特征建模效率和类似transformer的动态建模能力来学习远距离交互。然而,天真的实现可能会导致无法承受的费用,主要有两个原因:

  1. λ通常大于1,中间维度将是输入维度的倍数,导致参数和计算量的二次λ增加。因此,F的分量应该是独立的或线性依赖于通道的数量。

  2. MHSA的FLOPs与总图像像素的二次方成正比,所以一个简单的Transformer的成本是无法承受的。具体影响见表2。
    在这里插入图片描述

演绎。我们采用了高效的Window-MHSA (WMHSA)和深度卷积(DW-Conv),并采用跳跃连接来权衡模型成本和精度。

改进EW-MHSA。W-MHSA中获取Q、K的参数和FLOPs是通道的二次元,因此我们采用未展开的X更有效地计算注意力矩阵,即 Q = K = X ( ∈ R C × H × W ) Q=K=\boldsymbol{X}\left(\in \mathbb{R}^{C \times H \times W}\right) Q=K=X(RC×H×W),而展开的值 X e X_e Xe V ( ∈ R λ C × H × W ) V\left(\in \mathbb{R}^{\lambda C \times H \times W}\right) V(RλC×H×W)。这种改进被称为更适用的扩展窗口MHSA (EW-MHSA),表述如下:
F ( ⋅ ) = ( DW-Conv, Skip  ) ( EW-MHSA  ( ⋅ ) ) (4) \mathcal{F}(\cdot)=(\text { DW-Conv, Skip })(\text { EW-MHSA }(\cdot)) \tag{4} F()=( DW-Conv, Skip )( EW-MHSA ())(4)

此外,这种级联方式可以增加感受野的扩展速度,并将模型的最大路径长度降低到 O ( 2 W / ( k − 1 + 2 w ) ) O(2 W /(k-1+2 w)) O(2W/(k1+2w)),这已经在第3.3节中得到了一致性的实验验证。

灵活性。根据经验,目前基于Transformer的方法[44,32,72]达成了共识,即在浅层中归纳CNN,而在深层中全局Transformer的组合可以提高性能。与最近的EdgeNeXt为不同的深度使用不同的块不同,我们的iRMB满足上述设计原则,仅使用两个开关来控制是否使用两个模块(代码级别在#Supp中也简洁)。

高效的等价实现。MHSA通常用于通道一致投影(λ=1),这意味着乘以 X e ( λ > 1 ) \boldsymbol{X}_{e}(\lambda>1) Xe(λ>1)的注意力矩阵的计算量将增加λ - 1。幸运的是,从X到扩展 V ( X e ) V\left(\boldsymbol{X}_{e}\right) V(Xe)的信息流只涉及线性运算,即 MLP ⁡ e ( ⋅ ) \operatorname{MLP}_{e}(\cdot) MLPe(),因此我们可以推导出一个等价命题:“当MLPe的组数等于W-MHSA的头数时,交换顺序的乘法结果保持不变。”为了减少计算量,默认使用 M L P e MLP_e MLPe之前的矩阵乘法。

选择高效的操作符。我们还将F的分量替换为组卷积、非对称[55]卷积和performer[7],但它们没有进一步改进我们的方法,并使用更高的参数和相同量级的flop。
在这里插入图片描述

提升Naive Transformer。为了评估iRMB的性能,我们将λ设置为4,并在柱状DeiT[61]和金字塔状PVT[65]中替换标准Transformer结构。如表3所示,我们惊奇地发现,在相同的训练设置下,iRMB可以用更少的参数和计算量来提高性能,特别是对于柱状ViT。这证明了在轻量化模型中,单残差iRMB相对于双残差Transformer具有明显的优势。

F的并行设计。我们还实现了DW-Conv和EW-MHSA的并行结构,每个组件的通道数量减半,并自适应修改了一些配置细节以确保相同的幅度。相比之下,该并行模型在ImageNet-1k数据集上以5.1M参数和964M FLOPs(比EMO-5M +63M↑)获得78.1(-0.3↓)Top-1,但其吞吐量将下降约-7%↓。这一现象在“网络碎片化降低了并行度”的著作[43]中也有讨论。

2.4、面向密集预测的EMO宏观设计

基于上述标准,我们基于一系列irmb为密集应用设计了一个类似resnet的4相高效模型(EMO),如图2-右所示。

  1. 整体框架而言,EMO仅由irmb组成,没有多样化的模块,这在设计思想上偏离了最近的高效方法[44,44]。
  2. 对于特定模块,iRMB仅由标准卷积和多头自关注组成,没有其他复杂算子。此外,得益于DW-Conv, iRMB可以通过跨步适应下采样操作,并且不需要任何位置嵌入来引入MHSA的感应偏置。
  3. 对于不同的设置,我们采用逐步增加的扩展速率和通道数,详细配置如表4所示。第3节中基本分类和多个下游任务的结果表明,我们的EMO在1M、2M和5M量级上优于SoTA轻量级方法。
    在这里插入图片描述

细节。由于MHSA更适合为更深层的语义特征建模,我们只在之前的工作[44,32,72]的阶段3/4打开它。注意,这并不违反均匀性标准,因为MHSA的关闭是iRMB结构的特殊情况。为了进一步提高EMO的稳定性,BN [26]+SiLU[18]与DWConv结合,LN [2]+GeLU[18]与EW-MHSA结合。此外,iRMB还能胜任降采样操作。

与MetaFormer的关系。1)从结构上看,MetaFormer扩展密集预测模型采用了额外的补丁嵌入层进行下采样,而我们的EMO仅由iRMB组成。2)从结果来看,我们实例化的EMO-5M (w/ 5.1M #Params和903M FLOPs)比实例化的PoolFormer-S12 (w/ 11.9M #Params和1823 m FLOPs)高出+1.2↑,说明更强的高效算子具有优势。3)我们进一步用iRMB中的F替换MetaFormer中的Token Mixer,并与我们的EMO-5M构建5.3M模型。它在ImageNet-1k上仅达到77.5 Top-1,即比我们的模型低-0.9↓,这意味着我们提出的Meta Mobile Block在构建轻量级模型方面比双残差MetaFormer有更好的优势.
在这里插入图片描述

实例化的高效操作符的重要性。我们定义的有效算子F包含EW-MHSA和DWConv两个核心模块。在表5中,我们进行了烧蚀实验来研究两个模块的影响。第一行表示既不使用EW-MHSA,也不使用DW-Conv,即模型几乎是由多个DW-Conv进行下采样的MLP层组成,F退化为恒等运算。令人惊讶的是,这个模型仍然产生了一个可观的结果,即73.5 Top-1。相比之下,第二行和第三行结果表明,每个成分都对性能有贡献,例如,添加DW-Conv和EW-MHSA时,分别为+3.1↑和+4.1↑。我们的模型在同时使用两个分量的情况下得到了最好的结果,即78.4 Top-1。此外,本实验还说明了iRMB的具体实例化对模型性能的影响。

算子的顺序。基于EMO-5M,我们调换了DW-Conv/EW-MHSA的顺序,发现性能略有下降(-0.6↓),因此EW-MHSA默认先执行。

3、实验

3.1、图像分类

设置。由于SoTA方法的各种训练配方[19、13、61、46、47、42、44]可能导致潜在的不公平比较(总结于表6),我们在#Supp中采用较弱的训练配方来增加模型说服力,并开放源代码以进行后续的公平比较。所有实验均在ImageNet-1K数据集[11]上进行,没有额外的数据集和预训练模型。每个模型在224×224上从头开始训练300个标准epoch,使用AdamW[41]优化器,贝塔系数为(0.9,0.999),权重衰减5e−2,学习率6e−3,批大小为2048。在训练过程中,我们使用了余弦调度器[40]、20个预热时段、标签平滑0.1[56]、随机深度[22]和随机增强[10],而LayerScale[62]、Dropout[54]、MixUp[77]、CutMix[76]、随机擦除[83]、位置嵌入[13]、令牌标记[28]和多尺度训练[46]被禁用。EMO由PyTorch[50]实现,基于TIMM[67],并使用8×V100 gpu进行训练。
在这里插入图片描述

结果。在三个小尺度上用SoTAs评价EMO,定量结果见表7。令人惊讶的是,我们的方法在没有使用复杂模块和类似mobilevitv2的强训练配方的情况下获得了目前最好的结果。例如,最小的EMO-1M获得SoTA 71.5 Top1,以接近一半的参数超过基于CNN的MobileNetv3-L-0.50[19] +2.7↑,以仅56%的FLOPs超过基于transformer的MobileViTv2-0.5[47] +1.3↑。更大的EMO-2M仅以439M FLOPs达到SoTA 75.1 Top-1,接近MobileVit-XS的一半[46]。相比之下,最新的EdgeViT-XXX[49]获得了较差的74.4 Top-1,需要+78%的↑参数和+27%的↑FLOPs。EMO-5M始终如一地在#Params (5.1M) / #FLOPs (903M)和精度(78.4)之间取得了卓越的平衡,比当代同类产品更高效。令人惊讶的是,在将EMO-5M的第四级通道从288通道增加到320通道后,新的EMO-6M仅以961M的FLOPs达到了79.0的Top-1。
在这里插入图片描述

训练食谱很重要。我们用不同的训练方法来评估EMO:
在这里插入图片描述

我们发现,对于我们的轻量级EMO,简单的训练配方(我们的)足以获得良好的结果,而现有的更强的配方(特别是在EdgeNeXt[44]中)不会进一步改进模型。NaN表明模型没有很好地训练可能未适应的超参数。

3.2、下游任务

对象检测。将ImageNet-1K预训练EMO与轻量级SSDLite[19]集成,以320×320分辨率评估其在MS-COCO 2017[34]数据集上的性能。考虑到比较的公平性和社区的友好性,我们使用标准的MMDetection库[4]进行实验,并将优化器替换为AdamW[41],不调整其他参数。
在这里插入图片描述

与SoTA方法的对比结果如表8所示,我们的EMO明显优于同类方法。例如,搭载EMO-1M的SSDLite仅以0.6G FLOPs和2.3M参数实现22.0 mAP,与仅66% FLOPs的SoTA MobileViT[46]相比,提升了+2.1↑。一致地,我们的EMO-5M以更少的FLOPs获得了迄今为止最高的27.9 mAP,例如,MobileViT-S [46] (3.4G)的53% (1.8G),比EdgeNeXt-S (2.1G)少0.3G。

语义分割。ImageNet-1K预训练的EMO与DeepLabv3[5]和PSPNet[82]集成,以充分评估其在512×512分辨率下挑战ADE20K[84]数据集上的性能。此外,我们使用标准的MMSegmentation库[9]进行实验,并将优化器替换为AdamW[41],而不调整其他参数。详细信息可以在代码中查看。
在这里插入图片描述
与SoTA方法的对比结果如表9所示,结合分割框架,我们的EMO在各个尺度上都明显优于基于SoTA transformer的MobileViTv2[47]。例如,EMO-1M/2M/5M武装DeepLabv3获得33.5/35.3/37.8 mIoU,比MobileViTv2的同类产品多+1.6↑/+0.6↑/+0.6↑,同时拥有更少的参数和FLOPs,受益于高效的iRMB。将EMO作为PSPNet的骨干网也得到了一致的结论。更多定性结果见#Supp。

3.3、额外的消融和解释分析

吞吐量的比较。在表10中,我们给出了与SoTA EdgeNeXt相比的吞吐量评估结果[44]。测试平台为AMD EPYC 7K62 CPU和V100 GPU,分辨率为224×224,批处理大小为256。结果表明,尽管两种方法的flop相似,但我们的EMO在两种平台上的速度都更快。例如,与EdgeNeXt-XXS相比,在相同的FLOPs下,EMO-1M可以实现GPU +20%的速度提升,CPU +116%的速度提升。这一差距在移动设备(iPhone14)上进一步扩大,即比SoAT EdgeNeXt快2.8×↑、3.9×↑和4.80×↑[44]。这源于我们简单且设备友好的iRMB,没有其他复杂的结构,例如Res2Net模块[14],转置频道注意力[1]等。
在这里插入图片描述

深度配置。我们在表11中评估了另外三种不同深度的模型,其深度在5M量级。所选深度配置产生相对较好的性能。
在这里插入图片描述

不同阶段的规范化类型。相同维数的BN和LN具有相同的参数和相似的FLOPs,但LN受到底层GPU结构优化的限制,对视觉模型的速度产生了巨大的负面影响。图5A为LN层应用于不同阶段时EMO-5M的吞吐量,LN默认用于stage-3/4 (S-34)。随着越来越多的阶段用LN(即S-1234)取代BN,吞吐量显著下降(1693→952),而收益有限(+0.2↑)。我们发现,当不使用LN时,模型容易产生不稳定的纳米网络;因此,我们认为LN是必要的,但在几个阶段使用对于基于注意的EMO就足够了。

不同阶段的MHSA。图5B显示了基于EMO-5M将MHSA应用于不同阶段时模型精度的变化。结果表明,无论插入何种阶段,MHSA都对模型精度有正向影响。我们的高效模型在每个阶段都应用MHSA时获得了最佳结果,但这将额外增加10% ^ ^的FLOPs,即从903M到992M。因此,默认情况下只在最后两个阶段使用MHSA,这将牺牲模型的准确性和效率。

Drop Path的影响。图5C探讨了跌落路径速率对训练EMO-5M的影响。结果表明,本文提出的模型在[0,0.1]范围内对该训练参数具有较强的鲁棒性,准确度在0.2以内波动,而在0.05以内可以获得稍好的结果。

批量大小的影响。图5D探讨了批量大小对训练EMO的影响。小批量(≤512)会带来性能下降,而大批量则会受到性能饱和的影响,并且对硬件的要求也会更高。因此,1 024人或2 048人就足以满足培训要求。
在这里插入图片描述

#Params和FLOPs的分布。iRMB主要由DW-Conv和EW-MHSA模块组成,图6进一步显示了#Params和FLOPs的分布。总的来说,DW-Conv和MHSA在#Params和FLOPs中所占的比例较低,分别为4.6%/4.1%和13.8%/14.6%。此外,我们发现#Params与我们的方法中FLOPs的比例一致,这意味着EMO是一个相对平衡的模型。
在这里插入图片描述

注意可视化由Grad-CAM。为了更好地说明我们方法的有效性,我们使用Grad-CAM[52]来突出不同模型的相关区域。如图7所示,基于CNN的ResNet倾向于关注特定对象,而基于transformer的MPViT则更关注全局特征。相比之下,我们的EMO可以更准确地聚焦在显著目标上,同时保持对全局区域的感知能力。这可能解释了为什么EMO在各种任务中获得更好的结果。
在这里插入图片描述

特征相似性可视化。如2.3节所述,级联卷积和MHSA操作可以提高感受野的扩展速度。为了验证该设计的有效性,我们可视化了Stage-3中不同组成的对角线像素的相似性,即只有DW-Conv,只有EW-MHSA,以及两个模块。如图8所示,结果表明,仅使用DW-Conv时,特征往往具有短距离相关性,而使用EW-MHSA时,特征具有更多的远距离相关性。相比之下,iRMB利用了两个模块更大的接受场,即距离较远的位置具有较高的相似性。

4、相关工作

高效的CNN模型。随着神经网络在移动视觉应用中的需求不断增加,高效的模型设计近年来引起了研究者的广泛关注。SqueezeNet[24]将3x3滤波器替换为1x1滤波器,并减少通道数以减少模型参数,而Inceptionv3[55]将标准卷积分解为非对称卷积。后来的MobileNet[20]引入了深度可分离卷积来减轻大量的计算和参数,随后的轻量级模型也采用了这种方法[21,51,81,43,48,15]。除了上述手工方法外,研究人员还在预定义的搜索空间中进行自动架构设计[19,58,57,36,3]。

拥抱视觉Transformer与CNN。自ViT[13]首次将Transformer结构[63]引入可视化任务以来,已经成功地开发了大量改进。DeiT[61]为高效的Transformer训练提供了基准,后续作品[65,66,38]采用类似resnet[17]的金字塔结构,形成纯基于Transformer的模型,用于密集预测任务。然而,缺乏二维卷积可能会因为缺乏局部归纳偏置而增加优化难度,损害模型精度,因此研究人员[16,27]将重点放在如何更好地将卷积整合到Transformer中,以获得更强的混合模型。例如,work[75]将卷积设计纳入FFN, works[8,32,71]将卷积作为增强模型归纳偏置的位置嵌入,以及works[70, 69]分别用于注意力和QKV计算。与上述改进朴素Transformer以获得高性能的方法不同,我们研究如何基于改进的单残余注意力块构建一个简单但有效的轻量级模型。

有效的Transformer改进。最近,研究人员开始减轻基于Transformer的低计算能力模型。Tao等人[23]引入了额外的可学习令牌来有效地捕获全局依赖关系,Chen等人[23]设计了MobileNet和Transformer的并行结构,中间有一个双向桥。Works[80,49]通过借用卷积运算提高了Transformer块的效率,而EdgeNeXt[44]吸收了有效的Res2Net[14]和转置通道注意力[1]。最近流行的MobileVit系列[46,47,64]将改进的MobileVit块与Mobile块[51]融合在一起,在几个视觉任务上比MobileNet[20,51,19]取得了显著的改进。然而,目前大多数方法建立在Transformer结构上,需要复杂的模块,这限制了模型的移动性和可用性。综上所述,如何在设计一个易于使用的移动模型的同时平衡参数、计算和精度,还需要进一步的研究。

5、结束语及未来工作

本工作从高效IRB和Transformer的有效组件的统一角度重新思考轻量级基础设施,并提出了用于设计高效模型的Meta Mobile Block的概念。详细地说,我们推导了一个现代的基础iRMB,并构建了一个轻量级的基于注意力的EMO,只有iRMB用于下游任务。在多个数据集上进行的大量实验证明了我们方法的优越性。此外,我们还对我们的方法进行了详细的研究,并给出了一些基于注意力的轻量级模型的实验结果。希望我们的研究能启发研究者设计出更节能的模型,并做出有趣的应用。

更复杂的算子可能会潜在地提高模型的有效性,如转位通道注意[1]、多尺度Res2Net[14]、高效的Performer[7]等,这些算子需要进一步进行深入的尝试和实验,以探索有效模型结构的上限。此外,更高分辨率的输入,结合神经结构搜索(NAS),从重模型中提取,在更大的ImageNet-21K数据集上训练,以及更强的训练增强/策略[46,44,28],将进一步提高模型的性能。由于目前的计算能力所限,我们将把以上的尝试留在以后的工作中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_337347.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux安装MySQL 8.1.0

MySQL是一个流行的开源关系型数据库管理系统,本教程将向您展示如何在Linux系统上安装MySQL 8.1.0版本。请按照以下步骤进行操作: 1. 下载MySQL安装包 首先,从MySQL官方网站或镜像站点下载MySQL 8.1.0的压缩包mysql-8.1.0-linux-glibc2.28-x…

机器学习:提取问题答案

模型BERT 任务:提取问题和答案 问题的起始位置和结束位置。 数据集 数据集 DRCDODSQA 先分词,然后tokenize 文章长度是不同的,bert的token的长度有限制,一般是512, self-attention的计算量是 O ( n 2 ) O(n^2) O(n…

vo 2 输出helloworld

vo 2 输出helloworld 目录概述需求: 设计思路实现思路分析1.code 拓展实现性能参数测试: 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better r…

NoSQL-Redis集群

NoSQL-Redis集群 一、集群:1.单点Redis带来的问题:2.解决:3.集群的介绍:4.集群的优势:5.集群的实现方式: 二、集群的模式:1.类型:2.主从复制: 三、搭建主从复制&#xff…

[个人笔记] vCenter设置时区和NTP同步

VMware虚拟化 - 运维篇 第三章 vCenter设置时区和NTP同步 VMware虚拟化 - 运维篇系列文章回顾vCenter设置时区和NTP同步(附加)ESXi设置alias参考链接 系列文章回顾 第一章 vCenter给虚机添加RDM磁盘 第二章 vCenter回收活跃虚拟机的剩余可用空间 vCente…

【算法基础:动态规划】5.4 数位统计DP(计数问题)(数位DP)

文章目录 例题:338. 计数问题解法1——转换成1067. 范围内的数字计数,数位DP模板解法2——分情况讨论(TODO,还没理解) 相关链接⭐ 例题:338. 计数问题 https://www.acwing.com/problem/content/340/ 解法…

软考A计划-系统集成项目管理工程师-项目人力资源管理-中

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

运算放大器--------加减运算电路

反向求和运算电路 电路 公式 同向加法运算电路 电路 公式 加减运算电路 分别求正向输入的输出和反相输入的输出,然后求和就可以得到到最终的输出。 切记,虚短虚断不是真正的断路和短路。

M1/M2 通过VM Fusion安装Win11 ARM,解决联网和文件传输

前言 最近新入了Macmini M2,但是以前的老电脑的虚拟机运行不起来了。😅,实际上用过K8S的时候,会发现部分镜像也跑不起来,X86的架构和ARM实际上还是有很多隐形兼容问题。所以只能重新安装ARM Win11,幸好微软…

MySQL的JSON操作

官网地址 1. MySQL json介绍 As of MySQL 5.7.8, MySQL supports a native JSON data type defined by RFC 7159 that enables efficient access to data in JSON (JavaScript Object Notation) documents. Automatic validation of JSON documents stored in JSON columns. …

iOS - 检测项目中无用类和无用图片

一、无引用图片检测 LSUnusedResources 安装插件 LSUnusedResources ,用【My Mac】模拟器运行,如下图: Project Path 就是项目所在的路径,然后点击右下角 Search按钮,就可以看到被搜索出来的图片资源。 注意:这里被搜…

绕过TLS/akamai指纹护盾

文章目录 前言TLS指纹什么是TLS指纹测试TLS指纹绕过TLS指纹使用原生urllib使用其他成熟库!!修改requests底层代码 Akamai指纹相关(HTTP/2指纹)什么是Akamai指纹测试Akamai指纹绕过Akamai指纹使用其他成熟库 实操参考 前言 有道是…

【计算机网络】11、网桥(bridge)、集线器(hub)、交换机(switch)、路由器(router)、网关(gateway)

文章目录 一、网桥(bridge)二、集线器(hub)三、交换机(switch)四、路由器(router)五、网关(gateway) 对于hub,一个包过来后,直接将包转发到其他口。 对于桥&…

基于RK3588+FPGA+AI算法定制的智慧交通与智能安防解决方案

随着物联网、大数据、人工智能等技术的快速发展,边缘计算已成为当前信息技术领域的一个热门话题。在物联网领域,边缘计算被广泛应用于智慧交通、智能安防、工业等多个领域。因此,基于边缘计算技术的工业主板设计方案也受到越来越多人的关注。…

【1.1】Java微服务:初识微服务

✅作者简介:大家好,我是 Meteors., 向往着更加简洁高效的代码写法与编程方式,持续分享Java技术内容。 🍎个人主页:Meteors.的博客 💞当前专栏: 微服务 ✨特色专栏: 知识分享 &#x…

KWP2000协议和OBD-K线

KWP2000最初是基于K线的诊断协议, 但是由于后来无法满足越来越复杂的需求,以及自身的局限性,厂商又将这套应用层协议移植到CAN上面,所以有KWP2000-K和KWP2000-CAN两个版本。 这篇文章主要讲基于K线的早期版本协议,认…

NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读

论文信息 标题:NICE-SLAM: Neural Implicit Scalable Encoding for SLAM 作者:Zihan Zhu, Songyou Peng,Viktor Larsson — Zhejiang University 来源:CVPR 代码:https://pengsongyou.github.io/nice-slam…

Spring-mybatis结合的底层原理

1.项目前期准备 1.1 导入maven jar包 <dependencies><!-- spring依赖 --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.5.RELEASE</version></depende…

Java中对Redis的常用操作

目录 数据类型五种常用数据类型介绍各种数据类型特点 常用命令字符串操作命令哈希操作命令列表操作命令集合操作命令有序集合操作命令通用命令 在Java中操作RedisRedis的Java客户端Spring Data Redis使用方式介绍环境搭建配置Redis数据源编写配置类&#xff0c;创建RedisTempla…

QT--day5(网络聊天室、学生信息管理系统)

服务器&#xff1a; #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//给服务器指针实例化空间servernew QTcpServer(this); }Widget::~Widget() {delete ui; …