乐趣区

关于人工智能:EfficientFormer高效低延迟的Vision-Transformers

咱们都晓得 Transformers 绝对于 CNN 的架构效率并不高,这导致在一些边缘设施进行推理时提早会很高,所以这次介绍的论文 EfficientFormer 号称在准确率不升高的同时能够达到 MobileNet 的推理速度。

Transformers 是否在取得高性能的同时,跑得和 MobileNet 一样快? 为了答复这个问题,作者首先回顾了基于 vit 的模型中应用的网络架构和运算,并阐明了一些低效的设计。而后引入一个维度统一的纯 Transformer(没有 MobileNet 块)作为设计范例。最初以提早为指标进行优化设计,取得一系列称为 EfficientFormer 的最终模型。最初还设计了 EfficientFormerV2。

提早剖析

作者在论文中发现:

1、内核大、步幅大的补丁嵌入是挪动设施上的速度瓶颈。

2、统一的特色维度对于令牌混合器的抉择很重要。MHSA 不肯定是速度瓶颈。

3、convn – bn 比 LN (GN)-Linear 更有利于提早,对于提早的升高,精度的小损失是能够承受的。

4、非线性的提早取决于硬件和编译器。

EfficientFormer 整体架构

该网络由补丁嵌入 (PatchEmbed) 和元 Transformer 块堆栈组成,示意为 MB:

X0 为批大小为 B,空间大小为 [H, W] 的输出图像,Y 为冀望输入,m 为块总数 (深度)。MB 由未指定的令牌混合器(TokenMixer) 组成,后跟一个 MLP 块:

Xi|i>0 是第 i MB 的两头特色。阶段 Stage(或 S)被定义为几个 MetaBlocks 的堆栈。该网络包含 4 个阶段。在每个阶段中,都有一个嵌入操作来投影嵌入维数和下采样令牌长度,示意为嵌入,如上图所示。

也就是说 effentformer 是一个齐全基于 transformer 的模型,没有集成 MobileNet 构造。

Dimension-Consistent 设计

网络从四维划分开始,前期进行三维划分。首先,输出图像由 stem 层进行解决,这是两个 3 × 3,步幅为 2 的卷积作为 patch 嵌入:

其中 Cj 是第 j 级的通道号(宽度)。而后网络从 MB4D 开始,应用简略的 Pool mixer 提取低级特色:

式中,ConvB,G 示意是否有 BN 和 GeLU 追随卷积。在解决完所有 MB4D 块后,执行一次重塑以转换特色大小并进入 3D 分区。MB3D 应用传统的 ViT:

式中,LinearG 示意线性后接 GeLU, MHSA 为:

其中,Q, K, V 别离示意查问,键和值,b 是参数化的作为地位编码的注意力偏差。

在定义了总体体系结构之后,下一步作者就开始搜寻高效的体系结构。

以提早为指标架构优化

定义了一个搜寻高效模型的超级网络 MetaPath (MP),它是一些可能块的汇合:

其中 I 示意单位门路。

在网络的 S1 和 S2 中,每个区块能够抉择 MB4D 或 I,在 S3 和 S4 中,每个区块能够抉择 MB3D、MB4D 或 I。

在最初两个阶段只启用 MB3D 的起因有 2 个:1、因为 MHSA 的计算绝对于令牌长度呈二次增长,因而在晚期阶段将其集成将大大增加计算成本。2、网络的晚期阶段捕捉低级特色,而前期阶段学习长期依赖关系。

搜寻空间包含 Cj(每个 Stage 的宽度),Nj(每个 Stage 的块数,即深度)和最初 N 个利用 MB3D 的块。

搜索算法应用 Gumbel Softmax 采样对超级网络进行训练,以取得每个 MP 内块的重要性得分:

其中 α 评估 MP 中每个块的重要性,因为它示意抉择一个块的概率。ε ~ U(0,1)保障摸索。对于 S1 和 S2, n∈{4D, I},对于 S3 和 S4, n∈{4D, 3D, I}。

最初通过收集不同宽度的 MB4D 和 MB3D 的设施上提早(16 的倍数),构建一个提早查找表。

也就是说 EfficientFormer 的架构不是通过人工设计的,而是通过 NAS(Neural Architecture Search)搜寻进去的。作者通过查找表计算每个动作产生的提早,并评估每个动作的准确率降落。依据每提早精度降落 (-%/ms) 抉择动作。这个过程迭代地执行,直到达到目标提早。(细节见论文附录)

后果展现

ImageNet 上与宽泛应用的基于 cnn 的模型相比,EfficientFormer 在准确率和提早之间实现了更好的衡量。

传统的 vit 在提早方面依然体现不佳。EfficientFormer-L3 的 top- 1 准确率比 PoolFormer-S36 高 1%,在 Nvidia A100 GPU 上快 3 倍,在 iPhone NPU 上快 2.2 倍,在 iPhone CPU 上快 6.8 倍。

EfficientFormer-L1 的 Top1 精度比 MobileViT-XS 高 4.4%,并且在不同的硬件和编译器上运行得更快。

MS COCO 数据集,EfficientFormers 的体现始终优于 CNN (ResNet)和 Transformer (PoolFormer)。

应用 ADE20K,在相似的计算估算下,EfficientFormer 始终比基于 CNN 和 transformer 的骨干性能好得多。

论文地址:

EfficientFormer: Vision Transformers at MobileNet Speed

https://avoid.overfit.cn/post/eb0e56c5753942cf8ee70d78e2cd7db7

退出移动版