【文献阅读】An Investigation on Hardware-Aware Vision Transformer Scaling

题目:An Investigation on Hardware-Aware Vision Transformer Scaling
时间:2022
会议/期刊:ICLR 2022
研究机构:

An Investigation on Hardware-Aware Vision Transformer Scaling

https://openreview.net/forum?id=OhytAdNSzO-

摘要

Vision Transformer (ViT) 在各种计算机视觉任务中表现出可观的性能,最近引起了很多研究关注。最近的许多工作都集中在提出新的架构以改进 ViT 并将其部署到实际应用程序中。然而,很少有人努力分析和理解 ViT 的架构设计空间及其对不同设备的硬件成本的影响。在这项工作中,通过简单地缩放 ViT 的深度、宽度、输入大小和其他基本配置,我们表明,与大多数最新的 ViT 变体相比,没有花里胡哨的 a scaled vanilla ViT model 可以实现相当或更高的精度效率权衡。具体来说,与 DeiT-Tiny 相比,我们的缩放模型在 NVIDIA Edge GPU 上实现了“在相同 FLOP 下 ImageNet top-1 准确度提高 1:9%,在相同延迟下 ImageNet top-1 准确度提高了 3:7%” TX2。受此启发,我们从以下两个方面进一步研究提取的缩放策略:(1)“这些缩放策略可以在不同的真实硬件设备之间转移吗?”; (2) “这些扩展策略可以转移到不同的 ViT 变体和任务吗?”。对于(1),我们基于具有不同资源预算的各种设备的探索表明,可迁移性的有效性取决于底层设备及其相应的部署工具;对于(2),我们验证了上述从图像分类任务之上的普通 ViT 模型获得的缩放策略到 PiT 模型的有效可迁移性、强大的 ViT 变体目标效率以及对象检测和视频分类任务。特别是,当转移到 PiT 时,我们的缩放策略导致在相同的 0.7G FLOP 下 ImageNet top-1 准确率从 74.6% 提高到 76.7%(“2.1%);当转移到COCO 目标检测任务,在 V100 GPU 上类似吞吐量下,平均精度提高了“ 0.7%。

1. Introduction

Transformer (Vaswani et al., 2017) 最初是为自然语言处理 (NLP) 而提出的,是一种主要基于自注意力机制的深度神经网络 (DNN),在 NLP 任务上取得了重大突破。由于其强大的表示能力,许多工作已经开发出将 Transformer 应用于计算机视觉 (CV) 任务的方法,例如图像分类 (Dosovitskiy et al., 2021)、对象检测 (Carion et al., 2020)、语义分割 ( Wu 等人,2020 年)和视频分类(Bertasius 等人,2021 年)。其中,Vision Transformer (ViT) (Dosovitskiy et al., 2021) 脱颖而出,证明了直接应用于图像块序列的纯 Transformer 在图像分类任务上表现非常出色,例如,实现了可比的 ImageNet (Deng et al., ., 2009) 作为 ResNet 的 top-1 准确率 (He et al., 2016)。受 ViT 令人鼓舞的性能的推动,越来越多的工作跟随它探索纯 Transformer 架构,以推动其在准确性和效率之间的权衡和部署到实际应用中(Touvron 等人,2020;Heo 等人。 , 2021; Graham et al., 2021; Liu et al., 2021; Wu et al., 2021),实现了比广泛使用的高效卷积神经网络 (CNN) EfficientNetV1 (Tan & Le, 2019) 更好的性能.

最近 ViT 工作的成功表明,模型架构对于 ViT 可实现的性能至关重要。因此,在这项工作中,我们从一个新的角度探索 ViT 架构,旨在分析和了解 ViT 的架构设计空间和跨不同设备的实际硬件成本。尽管最近对 ViT 模型和 CNN 模型缩放的成功感到兴奋,但在探索 ViT 的模型缩放策略或硬件成本方面几乎没有做出任何努力。请注意,直接将缩放策略应用于 CNN(Tan & Le,2019;Sun 等,2017)或 Transformer 用于 NLP 任务(Kaplan 等,2020;Henighan 等,2020)将导致次优,如第 3.2 节所述。此外,针对一个设备/任务的扩展策略可能无法转移到另一个设备/任务。有趣的是,我们发现与专门设计的 ViT 变体相比,简单缩放的 ViT 模型可以实现可比甚至更好的准确率-效率权衡,如图 1 所示。受此启发,我们进一步探索了我们的缩放策略 (1) 的可转移性不同的真实硬件设备和 (2) 不同的 ViT 变体和任务。特别是,我们做出了以下贡献:

• 我们第一个证明,与专门设计的 ViT 变体相比,简单缩放的普通 ViT 模型可以实现相当甚至更好的准确率-效率权衡(Touvron 等人,2021;Yuan 等人,2021;Zhou 等人) ., 2021; Chen et al., 2021; Wu et al., 2021; Liu et al., 2021; Chu et al., 2021; Touvron et al., 2020; Heo et al., 2021),如图所示图 1. 具体来说,与 DeiT-Tiny 相比,我们的缩放模型在相同的 FLOPs 下实现了“1:9% 更高的 ImageNet top-1 准确度,在相同的延迟下实现了 3:7% 的 ImageNet top-1 准确度” NVIDIA Edge GPU TX2。
在这里插入图片描述
• 我们研究了扩展的ViT 模型在不同设备上的可迁移性,并表明可迁移性的有效性取决于底层设备和部署工具。例如,针对 FLOP 或 V100 GPU (NVIDIA LLC.) 上的吞吐量的扩展策略可以转移到 Pixel3 (Google LLC., a) 设备,而性能损失很小甚至没有损失,但针对 TX2 上的延迟(NVIDIA Inc. ., c) 由于明显的性能损失,不得转移到其他设备上。此外,我们提供了 ViT 模型的成本细分以及它们在不同设备上的硬件成本之间的排名相关性,以便更好地理解它。

• 我们表明,我们的扩展策略也可以有效地转移到不同的 ViT 变体和识别任务,以进一步提高实现的准确率-效率权衡,例如,在转移到 PiT 时,在类似的 FLOPs 下实现 2.1% 更高的准确度当转移到目标检测任务时,在相似的推理吞吐量下,模型的平均精度提高了 0.7%。

2. Related Works

ViT。 Transformer 最初被提出用于机器翻译(Vaswani 等人,2017 年)。受其在 NLP 任务中最先进 (SOTA) 性能的推动,人们越来越关注将 Transformer/self-attention 机制应用于 CV 任务,例如,通过为 CNN 提出新的注意力机制(Hu et al ., 2018; Li et al., 2019; Zhang et al., 2020),在同一模型中融合 Transformer 和 CNN 设计(Bello et al., 2019; Carion et al., 2020; Wu et al., 2020) ,或设计纯 Transformer 模型(Dosovitskiy 等人,2021;Chen 等人,2020)。其中,ViT (Dosovitskiy et al., 2021) 通过将 NLP 任务的 Transformer 架构直接应用于视觉任务的输入原始图像补丁,实现了 SOTA 性能。尽管如此,ViT 的强大性能很大程度上取决于它在 JFT-300M(Sun 等人,2017 年)(一个巨大的私有标签数据集)上的预训练。因此,DeiT (Touvron et al., 2020) 进一步开发了一种改进的训练方案(即优化超参数的设置),包括蒸馏设置和更强的数据增强和正则化,以实现可比的性能,同时消除了昂贵的预训练。为了构建更高效的 ViT 模型,(Chen et al., 2021) 利用多个分支提取和融合不同尺度的特征; (Heo 等人,2021;Graham 等人,2021;Liu 等人,2021;Fan 等人,2021;Wang 等人,2021)将 CNN 中常用的类似金字塔的架构应用于 ViT; (Graham et al., 2021; Liu et al., 2021; Wu et al., 2021) 提出了更有效的注意力机制或特征投影块。

模型缩放Model scaling 先前的工作已经探索了缩放 CNNs/NLP-Transformer(即 NLP 任务中的 Transformer)以提高其准确性或降低其计算资源需求,例如,ResNet 可以沿其深度维度进行缩放(He et al., 2016),MobileNets 可以沿其宽度(即通道数)和输入分辨率维度(Sandler 等人,2018;Howard 等人,2019)进行缩放。值得注意的是,EfficientNet 进一步指出,以复合方式(即同时缩放模型宽度、深度和输入分辨率)缩放 CNN 至关重要,这样做是为了实现 SOTA 准确率与效率的权衡(Tan & Le,2019 )。然而,正如 (Bello et al., 2021) 所证明的那样,从特定模型(例如 EfficientNet-B0)获得的缩放策略可能会导致另一个模型的准确性与效率之间的折衷不理想;受此观察的启发,他们开发了一种从网格搜索实验中提取的更通用的缩放策略,该策略基于所选的训练配方而不是特定模型,从而实现了更好的权衡。除了扩展模型架构之外,(Kaplan 等人,2020 年;Henighan 等人,2020 年)表明,扩大数据集大小和用于训练的计算数量也有助于实现更小的交叉熵损失NLP 任务中的 Transformer。最近,周等人。 (2021)证明了当仅沿深度维度(即层数)放大时,ViT 的准确性会降低,并提出了 Re-attention 来解决它。

然而,之前的工作都没有针对具有多个缩放因子的 ViT 的缩放策略或研究其跨具有不同计算和存储能力的不同平台的实际硬件效率。此外,尚不清楚他们对缩放 CNN 的见解是否可以直接应用于 ViT,因为它们的缩放因子定义不同,例如,虽然通道数代表 CNN 中的宽度,但头数和嵌入维度都可以代表ViT 中的宽度。因此,非常需要专门针对 ViT 的扩展策略,我们的扩展策略可以提供独特的见解,以激发更多创新以实现高效的 ViT 模型。尽管在 (Dosovitskiy et al., 2021; Zhai et al., 2021) 中进行了一些模型扩展策略探索,但我们的工作与它们的区别在于提供了更多的发现和见解。特别是,我们在扩展 ViT 时更关注准确性与效率的权衡,而不仅仅是准确性; (2) 对提取的扩展策略在不同设备、ViT 变体和任务之间的可转移性进行额外分析。

3. SCALING VIT: HOW AND WHY DO WE SCALE VIT?

在本节中,我们首先分析 ViT 的缩放因子,然后研究专用于 CNN 或 Transformer 的先前缩放策略在 ViT 上的有效性,最后介绍我们的迭代贪心搜索方法来缩放 ViT。

3.1 scaling factors in ViT

正如 (Kaplan et al., 2020) 中分析的那样,Transformers 中的缩放因子包括层数 (d)、头数 (h)、每个头的嵌入维度 (e) 和线性投影比 ( r)。 ViT 直接采用 Transformer 架构进行 NLP 任务,并将原始图像分割成块作为 Transformer 输入,增加了额外的缩放因子,包括图像分辨率 (I) 和块大小 ( p)。 图 2 说明并总结了我们考虑的 ViT 比例因子。
在这里插入图片描述

3.2 PREVIOUS SCALING STRATEGIES FAIL ON VIT

CNN 和 ViT 缩放因子不匹配。 专用于 CNN 的缩放策略(Tan & Le,2019;Sun 等,2017;Feichtenhofer,2020)大多带有 CNN 特定的缩放因子定义(例如,卷积层中的通道数代表模型宽度),它不能 直接转移到ViT。 例如,可以通过头数 (h) 和 ViT 中每个头 (e) 的嵌入尺寸的各种组合来实现 CNN 中的宽度加倍 (2×)。 此外,ViT 有额外的缩放因子,例如线性投影比 ( r) 和补丁大小 §,它们在 CNN 的缩放因子中不存在,但对 ViT 很重要,如附录 D 所示,因此直接 将缩放策略从 CNN 转移到 ViT 会导致模棱两可和次优性能。
NLP 的 Transformer 缩放策略在 ViT 上是次优的。 (Kaplan 等人,2020 年)指出,对于 NLP,模型性能(即准确度或训练损失)“很大程度上取决于模型规模(即参数数量),但较弱地取决于模型形状”。 然而,当按照图 2 中总结的因素对 ViT 进行缩放时,我们的观察表明 ViT 并非如此。 如图 3 所示,当在 DeiT-Small (Touvron et al., 2020) 和 (Sun et al., 2017) 之上进行广泛搜索时,我们观察到模型的形状对性能有很大影响。 具体来说,如果我们改变纵横比,即嵌入维度(e×h)与层数(d)的比率,同时保持模型参数相同,精度漂移高达 18:61 %。 这组实验激发了探索专用于 ViT 的扩展策略。
在这里插入图片描述

3.3 OUR SCALING METHOD BASED ON AN ITERATIVE GREEDY SEARCH

从表 1 中定义的相对较小的模型开始,我们采用简单的迭代贪心搜索逐步执行 ViT 缩放,类似于之前探索 CNN 设计空间和特征选择的算法(Feichtenhofer,2020;John 等人; Jain 和 Zongker,1997 年;Guyon 和 Elisseeff,2003 年)。具体来说,基于起始点模型或上一个缩放步骤的最佳模型,我们沿着第 3.1 节中介绍的每个独立缩放因子对模型进行缩放,以匹配目标硬件成本(例如,FLOP 或特定硬件的延迟)设备),并选择具有最佳精度-效率折衷的模型作为下一步的起点模型。正如 (Bello et al., 2021) 中分析的那样,与从特定模型中提取的缩放策略不同,基于这种迭代贪心搜索的缩放可以避免生成的缩放策略在特定模型上的不可缩放性。我们在 4.1 节中的实验也验证了这种缩放方法对于缩放 ViT 模型既简单又有效,并且只需要在每个搜索步骤中训练几个模型。
在这里插入图片描述

4. 实验结果

5. 结论

在这项工作中,我们展示了探索硬件感知 ViT 缩放的研究,并表明简单缩放的 vanilla ViT 模型可以实现相当甚至更好(例如,高达“ 3:7% 更高的准确度)的准确率-效率权衡 与专门设计的 SOTA ViT 变体相比。此外,我们提取了专用于 ViT 的扩展策略,并研究了它们在不同硬件设备、ViT 变体和计算机视觉任务之间的可迁移性。我们相信这项工作展示了朝着更高效/准确的方向发展的前景 ViT 模型,并将通过扩展和硬件高效的 ViT 模型激发更多新 ViT 模型的后续创新。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值