MobileViT V2(2023 TMLR)
| 论文标题 | Separable Self-attention for Mobile Vision Transformers |
|---|---|
| 论文作者 | Sachin Mehta, Mohammad Rastegari |
| 发表日期 | 2023年06月01日 |
| GB引用| > Sachin Mehta, Mohammad Rastegari. Separable Self-attention for Mobile Vision Transformers[J]. Transactions on Machine Learning Research(TMLR), 2023, 2835-8856.
论文地址:https://arxiv.org/pdf/2206.02680

摘要
本文提出了一种可分离自注意力机制,以解决移动视觉变换器(MobileViT)中多头自注意力(MHA)造成的效率瓶颈。现有的MHA方法在处理k个标记时的时间复杂度为O(k²),这在资源受限的设备上会导致高延迟。新提出的可分离自注意力方法将复杂度降低到O(k),并通过元素级操作(如加法和乘法)来计算自注意力,从而改善了推理速度。经过实验证明,改进后的模型MobileViTv2在多个移动视觉任务上达到了最先进的性能,包括在ImageNet数据集上取得了75.6%的Top-1准确率,相比MobileViT提高了约1%,且在移动设备上快了3.2倍。该研究展示了可分离自注意力在资源受限设备上的有效性,为未来的视觉模型优化提供了新的方向。
全文摘要
这篇论文的主题是针对移动视觉任务提出了一种新颖的分离自注意力机制,称为“可分离自注意力”,以优化Transformer中多头自注意力的计算效率 。
研究背景是,尽管移动视觉变压器(MobileViT)在各项移动视觉任务中展现出卓越的性能,但其主要瓶颈在于多头自注意力(MHA)操作的高延迟。
论文的主要结论 是,提出的可分离自注意力方法将其时间复杂度从O(k²)降低到O(k),从而显著提高在资源受限设备上的推理速度。不同于传统的MHA必须通过批量矩阵乘法等高成本操作来计算注意力矩阵,可分离自注意力采用逐元素操作,极大地提升了计算效率。实验结果表明,改进后的模型MobileViTv2在多项移动视觉任务中性能出众,如在ImageNet图像分类任务中,MobileViTv2的Top-1准确率为75.6%,比前一版本MobileViT提高了约1%,同时在移动设备上推理速度快了3.2倍。
论文的独特之处在于它提出了一种切实可行的自注意力优化策略,使得Transformer架构更适合移动设备。此外,MobileViTv2具有更少的参数与更好的性能,使其在实际应用中更具优势。
研究问题
能否优化变压器块中的自注意力机制以适应资源受限的设备?
研究方法
实验研究: 该论文通过训练和测试多个模型版本(如MobileViTv2-0.5, MobileViTv2-1.0等),在ImageNet-1k和ImageNet-21k数据集上验证了所提出的方法的有效性。此外,还对比了不同模型在不同输入分辨率下的性能,展示了MobileViTv2在高分辨率输入下的优越性能。
混合方法研究: 文章中提到的MobileViTv2模型结合了卷积神经网络(CNN)和视觉变换器(ViT)的优点,通过引入分离自注意力机制来改进MobileViT模型。这种混合方法不仅提高了模型的效率,还保持了良好的性能表现。
比较研究: 文中多次使用比较研究方法,例如比较不同模型(如MobileViTv2与MobileFormer)在不同任务上的表现(如图像分类、目标检测和语义分割)。这些比较展示了MobileViTv2模型在低延迟和高准确性方面的优势。
研究思路
这篇论文的研究思路主要集中在提高移动视觉任务中变换器模型(特别是移动视觉变换器,MobileViT)的计算效率。虽然现有的变换器模型在许多视觉任务上表现优异,但它们在资源受限设备上(如手机)存在高延迟的问题。因此,论文提出了一种新的可分离自注意力机制,以解决这一瓶颈。
理论基础 :
- 论文基于自注意力机制和变换器架构,特别是多头自注意力(MHA)机制。MHA的优点在于它能捕捉到全局信息,并允许输入的每个标记(或补丁)相互作用。
- 论文进一步引入了“可分离自注意力”的概念,这种机制的时间复杂度为O(k),与传统的O(k^2) 相比大幅降低了计算复杂度。
模型架构 :
- MobileViT是一个混合网络,结合了卷积神经网络(CNN)和变换器的优势。作者在此基础上,将MHA替换为可分离自注意力,形成新的模型MobileViTv2。
- MobileViTv2模型在架构上进行了优化,以便在充分保留性能的同时减少计算资源的消耗。
具体方法 :
- 论文首先分析了MHA在移动设备上推理时的延迟和计算复杂度问题。
- 提出了可分离自注意力机制,该机制通过以下步骤实现:
- 使用一个线性层将输入投影到标量,计算与潜在标记的内积,以获得上下文分数。
- 通过传播上下文分数来计算上下文向量,借助简单的逐元素运算(如加法和乘法)而非复杂的矩阵运算来完成。
- 在不同的视觉任务(如图像分类、目标检测和语义分割)上进行了实证实验,验证了可分离自注意力在性能和速度上的优越性。
技术路线 :
- 实验在ImageNet、MS-COCO等标准数据集上进行,使用了不同的模型复杂度和输入分辨率。
- 为了评估模型的效果,进行了一系列对比实验,包括与传统CNN模型和其它变换器模型的比较。
MobileViT V2
MobileViT [4] 是一种混合网络,结合了卷积神经网络 (CNN) 和视觉注意力模型 (ViT) 的优势。MobileViT 将转换器视为卷积运算,使其能够利用卷积的优点(如归纳偏见)和转换器的优点(如长程依赖关系),从而构建适用于移动设备的轻量级网络。尽管与轻量级 CNN(例如 MobileNets [24,25])相比,MobileViT 网络具有显著更少的参数并且性能更好,但它们有较高的延迟。MobileViT 中的主要效率瓶颈是多头自注意层(MHA;图 3a )。

MHA 使用缩放点积注意力来捕捉k个标记(或补丁)之间的上下文关系。然而,由于 MHA 具有O(k^2)的时间复杂度,因此它代价高昂。这种二次成本对于具有大量标记k的变压器来说是一个瓶颈(图 1 )。此外,MHA 使用计算和内存密集型操作(例如批量矩阵乘法和 softmax 来计算注意力矩阵;图 1 ),这可能成为资源受限设备上的瓶颈。为了解决 MHA 在资源受限设备上有效推理的局限性,本文引入了具有线性复杂度的可分离自注意(图 3c )。

我们分离自注意力方法的主要思想如图 4 (b) 所示 ,即根据潜在标记 L 计算上下文分数。然后使用这些分数对输入标记进行加权以产生一个表示全局信息的上下文向量。由于所使用的自注意计算是基于潜在标记的,因此本方法可以将变压器中的自注意复杂性降低 k 倍。本方法的一个简单而有效的特性是它使用标量运算(例如求和和乘法)来实现,使其成为资源受限设备上的一个好的选择。我们称这种注意方法为分离自注意,因为它允许我们通过两个独立的线性计算替换二次 MHA 来编码全局信息。改进后的模型,MobileViTv2,是在MobileViT中用分离自注意力代替MHA得到的。

多头自注意力综述

MHA(图 3a )允许变压器编码令牌之间的关系。具体来说,MHA 接受一个输入\mathbf{x}\in\mathbb{R}^{k\times d},其中包含k个d维令牌(或补丁)嵌入。然后,将输入\mathbf{x}提供给三个分支,即查询\mathcal{Q}、键\mathcal{K}和值\mathcal{V}。每个分支 (\mathcal{Q}、\mathcal{K}、\mathcal{V}) 都由h个线性层(或头)组成,这使得变压器能够学习到多个视角的输入。然后,对于所有h个头并行计算查询\mathcal{Q}和键\mathcal{K}的输出的内积,并随后应用 softmax 操作σ以产生注意力(或上下文映射)矩阵\mathbf{a}\in\mathbb{R}^{k\times k\times h}。然后在线性层\mathcal{V}的输出与 a 计算另一个内积来产生加权和输出\mathbf{y_w}\in\mathbb{R}^{k\times d_h\times h},其中d_h是头的维度。来自h个头的输出被连接起来形成一个具有k个d维令牌的张量,然后馈送给另一个具有权重\mathbf{W}_{\mathbf{O}}\in\mathbb{R}^{d\times d}的线性层,以产生 MHA 的输出\mathbf{y}\in\mathbb{R}^{k\times d}。数学上,可以这样描述这个操作:
\mathbf{y}=\mathrm{Concat}\left(\langle\underbrace{\sigma\left(\langle\mathbf{xW_{Q}}^{0},\mathbf{xW_{K}}^{0}\rangle\right)}_{\mathbf{a}^{0}\in\mathbb{R}^{k\times k}},\mathbf{xW_{V}}^{0}\rangle,\cdots,\langle\underbrace{\sigma\left(\langle\mathbf{xW_{Q}}^{h},\mathbf{xW_{K}}^{h}\rangle\right)}_{\mathbf{a}^{h}\in\mathbb{R}^{k\times k}},\mathbf{xW_{V}}^{h}\rangle\right)\mathbf{W_{O}}\quad(1)
其中\mathbf{W_Q}^i\in\mathbb{R}^{d\times d_h},\mathbf{W_K}^i\in\mathbb{R}^{d\times d_h},\mathrm{~and~}\mathbf{W_V}^i\in\mathbb{R}^{d\times d_h}分别为\mathcal{Q}、\mathcal{K}、\mathcal{V}分支中第i个线性层(或头)的权重。符号\langle\cdot,\cdot\rangle表示点积操作。
分离自注意力

分离自注意力结构的灵感来自于 MHA。与 MHA 类似,输入\mathbf{x}通过三个分支进行处理,即输入分支\mathcal{I}、键分支\mathcal{K}和值分支\mathcal{V}。输入分支\mathcal{I}使用具有权重矩阵\mathbf{W_I}\in\mathbb{R}^d的线性层将\mathbf{x}中的每个d维标记映射到标量。权重矩阵\mathbf{W_I}在图 4 b 中表示为潜在节点 L。这种线性投影是一种内积操作,用于计算潜在标记L和\mathbf{x}之间的距离,并生成一个k维向量。然后对这个k维向量应用 softmax 操作以产生上下文分数\mathbf{c_s}\in\mathbb{R}^k。与计算每个标记相对于所有k个标记的注意力(或上下文)分数的变压器不同,所提出的方法仅根据一个潜在标记L计算上下文分数。这将计算注意力(或上下文)分数的成本从O(k^2)降低到O(k)。
上下文分数\mathbf{c_s}用于计算上下文向量\mathbf{c_v}。具体来说,输入\mathbf{x}通过使用具有权重矩阵\mathbf{W_K}\in\mathbb{R}^{d\times d}的关键分支\mathcal{K}线性投影到d维空间中以产生输出\mathrm{x}_{\mathbf{K}}\in\mathbb{R}^{k\times d}。上下文向量\mathbf{c_v}\in\mathbb{R}^d随后被计算为\mathrm{x}_{\mathbf{K}}的加权和,如下所示:
\mathbf{c_v}=\sum_{i=1}^k\mathbf{c_s}(i)\mathbf{x_K}(i)\quad(2)
上下文向量\mathbf{c_v}类似于方程(1)中的注意力矩阵\mathbf{a},因为它也编码了输入\mathbf{x}中所有标记的信息,但计算成本较低。
\mathbf{c_v}中编码的上下文信息与\mathbf{x}中的所有标记共享。为此,使用具有权重\mathbf{W_V}\in\mathbb{R}^{d\times d}的值分支\mathcal{V}将输入\mathbf{x}线性投影到d维空间中,然后应用 ReLU 激活以产生输出\mathbf{x_V}\in\mathbb{R}^{k\times d}。通过广播的元素乘法操作将\mathbf{c_v}中的上下文信息传播到\mathbf{x_V}中。然后,将结果输出馈送到具有权重\mathbf{W_O}\in\mathbb{R}^{d\times d}的另一个线性层以产生最终输出\mathbf{y}\in\mathbb{R}^{k\times d}。数学上,分离自注意可以定义为:
\mathbf{y}=\left(\underbrace{\sum\left(\overbrace{\sigma\left(\mathbf{xW_{I}}\right)}^{\mathbf{c_{s}}\in\mathbb{R}^{k}}*\mathbf{xW_{K}}\right)}_{\mathbf{c_{v}}\in\mathbb{R}^{d}}*\mathrm{ReLU}\left(\mathbf{x}\mathbf{W_{V}}\right)\right)\mathbf{W_{O}}\quad\mathrm{(3)}
其中*和\sum分别为 元素乘法和求和操作,可以广播。

与自注意力方法的比较 。图1比较了本文提出的方法与Transformer和Linformer 。由于自注意方法的时间复杂度不考虑用于实现这些方法的操作的成本,因此某些操作可能会成为资源受限设备上的瓶颈。为了全面理解,除了理论指标外,在单个CPU内核上还测量了具有不同k值的模块级延迟。与Transformer中的多头自注意力(MHA)相比,提出的可分离自注意力(SA)更快、更高效。
除了这些模块级别的结果,当我们用 MobileViT 架构中提出的自分离注意力替换了变换器中的多头注意力(MHA)时,在ImageNet-1k数据集上观察到推理速度提高了 3 倍,具有类似的性能(表1 )。这些结果证明了所提出分离自注意的有效性。请注意,Transformer 和 Linformer 中的自注意力对 MobileViT 的效果相似。这是因为与语言模型相比,MobileViT 中的令牌数量k更少(k≤1024),Linformer 在这种情况下比 Transformer 快得多。

与加法相加的关系 该方法类似于 Bahdanau 等人 [26]的注意力机制,它还通过在每个时间步骤对 LSTM 输出进行加权求和来编码全局信息。 与[26]不同的是,在该方法中,输入标记仅与潜在标记交互。
MobileViTv2 架构
为了证明分离式自注意在资源受限设备上的有效性,我们在基于 Vision Transformer 的最新模型 MobileViT [4] 中集成了分离式自注意。MobileViT 是一个轻量级、移动友好的混合网络,比其他竞争的卷积神经网络、变压器或混合模型具有更好的性能,包括 MobileNets [27, 24, 25]。为了避免歧义,在本文余下部分中,我们称 MobileViT 为 MobileViTv1。
具体来说,我们在MobileViTv1中的变压器块中用提出的可分离自注意力方法替换了MHA。我们称该体系结构为MobileViTv2。由于MobileViT块([4] 中的图1b )的跳过连接和融合块几乎没有提高性能([4] 中的图12 ),因此我们也不使用它们。此外,为了创建不同复杂度的MobileViTv2模型,我们通过宽度乘数α∈\{0.5,2.0\}来均匀缩放MobileViTv2网络的宽度。这与用于移动设备训练三个特定架构(XXS、XS和S)的MobileViTv1形成对比。有关MobileViTv2体系结构的更多详细信息,请参见附录A。

研究背景
近年来,视觉变换器(Vision Transformers, ViTs)在各类视觉识别任务中得到了广泛应用,尤其是在移动视觉任务中表现优异。移动视觉变换器(MobileViT)因其参数较少而能够在多个移动视觉任务(如分类和检测)中取得最先进的性能。然而,这些模型相较于基于卷积神经网络(CNN)的模型,存在高延迟的问题,主要原因在于多头自注意力(Multi-Head Self-Attention, MHA)的计算复杂度为O(k²),其中k为标记或补丁的数量。MHA需要进行大量的高成本运算(例如,批量矩阵乘法)来计算自注意力矩阵,这在资源受限的设备上尤其影响延迟。
为了解决这一效率瓶颈,研究者们提出了多种优化自注意力操作的方法。这些方法包括引入稀疏性、低秩近似等,虽然它们在理论上减少了计算复杂度,但通常会伴随性能下降。现有的优化方法在降低推理时间和内存消耗方面的效果有限,特别是在资源受限的设备上。因此,该研究的主要目标是探索如何优化变换器块中的自注意力机制,以便更好地适应资源有限的环境。
文中提出了一种新颖的可分离自注意力(Separable Self-Attention)方法,该方法的复杂度为O(k),并采用元素级操作进行自注意力计算,适合在资源受限的设备上实现高效推理。通过将可分离自注意力替换为MobileViT中的MHA,改进后的模型MobileViTv2展现出在多个移动视觉任务上的先进性能,且在延迟和准确性方面均有显著提升。
研究现状
- 移动视觉变换器(MobileViT)在多个移动视觉任务中实现了最先进的性能,但其多头自注意力(MHA)机制导致了较高的延迟。
- 现有优化方法主要通过引入稀疏性或低秩近似来减少MHA的时间复杂度,但通常伴随性能下降,且在资源受限设备上效果不佳。
- 本文提出的可分离自注意力方法复杂度为O(k),通过使用元素级运算取代MHA中的高开销操作,有效降低了延迟,适合资源有限的设备。
- 改进后的MobileViTv2模型在多个标准移动视觉任务上表现优异,参数约为300万,在ImageNet数据集上达到75.6%的Top-1准确率,且在移动设备上运行速度提升3.2倍。
- 通过将可分离自注意力集成到MobileViT中,MobileViTv2实现了更快的推理速度和更好的性能,表明该方法在移动设备上的有效性。
基本理论
- Transformer模型 :文献讨论了Transformer架构及其在视觉任务中的应用,尤其是多头自注意力(MHA)机制的复杂性和其在资源受限设备上的性能瓶颈。
- 自注意力机制 :提出了可分离自注意力的方法,旨在优化MHA的时间复杂度,从O(k²)降至O(k),并使用元素级操作来提高计算效率。
- 深度学习与卷积神经网络(CNN) :文献提到MobileViT是结合CNN与Transformer的混合网络,强调了两者在移动视觉任务中的优缺点。
- 模型优化与性能评估 :文献中使用了多种方法来评估模型的性能,包括准确率、延迟和资源消耗等,强调了在移动设备上实现高效推理的重要性。
- 低秩近似与稀疏性 :提到了一些现有的优化MHA的方法,如低秩近似和自注意力层中的稀疏性,虽然这些方法在复杂性上有所改善,但在性能上可能会有所牺牲。
研究目的及创新点
论文《Separable Self-attention for Mobile Vision Transformers》的研究目的是为了解决现有视觉变换器(ViT)模型在移动设备上运行时的效率问题,特别是多头自注意力机制所带来的高延迟问题。
随着深度学习和计算机视觉的快速发展,视觉变换器(Vision Transformers, ViTs)已成为多个视觉识别任务的主流技术,尤其是在图像分类和物体检测等领域。然而,现有的移动版视觉变换器(如MobileViT)尽管在模型参数上有所减少,但在推理时仍表现出较高的延迟。这一延迟主要是由于多头自注意力(Multi-Head Self-Attention, MHA)的计算复杂度为O(k²),在用于处理较大规模输入时,这一复杂度显著增加了计算时间,成为在资源受限设备上应用的瓶颈。
本文的研究目的 在于提出一种新的可分离自注意力机制,以解决移动视觉变换器(MobileViT)中的多头自注意力(MHA)计算效率低下的问题。MHA在计算复杂性上呈现出O(k²)的二次增长,导致在资源受限的设备上推理速度较慢。通过引入线性复杂度的可分离自注意力,本文旨在提高模型在移动设备上的推理速度,同时保持或提升其性能。
研究的意义在于 ,随着移动设备的广泛应用,如何在这些设备上有效地运行深度学习模型成为了一个重要课题。本文提出的可分离自注意力不仅优化了计算效率,还通过减少计算资源的消耗,推动了视觉变换器在移动端的实际应用潜力,提供了一种更加高效的解决方案,以满足移动视觉任务的需求。实验结果显示,改进后的MobileViTv2模型在多个视觉任务上表现出色,运行速度比其前身快3.2倍,同时在准确性上也有所提高。这一成果为未来在移动设备上部署复杂的视觉任务提供了新的思路和方法。
研究动机
作者希望通过本项研究来解决当前在资源受限设备上运行视觉变换器所面临的挑战。传统的卷积神经网络(CNN)因其在移动设备上的高效性而广泛使用,但在处理长距离依赖关系和全局表示方面,CNN的能力有限。与之相比,ViT能够利用自注意力机制捕捉更复杂和丰富的特征表示,但其高延迟限制了其在移动设备上的应用。因此,研究动机主要是为了在不牺牲模型性能的情况下,提升计算效率,使得ViT能够在移动设备上进行更快速的推理。
研究目标
本研究的主要目标是提出一种新的“可分离自注意力”机制,使其在时间复杂度上降至O(k),进而解决MHA在计算效率上的问题。具体希望实现以下几点:
- 提升推理速度 :通过简化自注意力机制的计算方式,显著降低处理时间,适应移动设备的计算能力。
- 保持或提高模型性能 :在新提出的机制下,保证MobileViT在标准视觉任务(如ImageNet图像分类、MS-COCO目标检测等)中的性能提升或至少保持与之前的模型相当。
- 适用于广泛的移动视觉任务 :提供一个轻量级的模型,可以在各种资源受限设备上高效运行,促进移动视觉应用的发展。
创新点
- 复杂度降低 :可分离自注意力通过将复杂度从O(k^2)降至O(k),显著提高了推理速度。
- 运算效率 :采用了基于元素的运算方法,降低了对硬件资源的依赖,特别适合于资源受限的设备。
- 性能提升 :MobileViTv2在多个视觉任务上成功超越了MobileViT,且在进行推理时,速度提升了3倍以上,同时保持了较高的准确率。
- 架构灵活性 :可分离自注意力层可以方便地与现有的变换器模型结合,具有较好的通用性,可以用于更广泛的应用场景。
- MobileViTv2 模型 :通过将多头自注意力替换为提出的可分离自注意力模块,构建了改进模型MobileViTv2,在多个移动视觉任务上达到了最先进的性能,同时减少了延迟和参数量。
实验
实验概述
论文旨在验证和探究可分离自注意力机制在移动视觉任务中的有效性。特别是,实验关注于该机制能否在减少计算复杂度(从传统的多头自注意力的O(k^2)降至O(k)的同时,保持良好的模型性能,以适应资源受限的移动设备。
实验方法
模型构建 :研究者在原有的 MobileViT 架构基础上,替换掉多头自注意力(MHA)层,采用提出的可分离自注意力机制,形成新的模型 MobileViTv2。
数据集 :采用多个标准的数据集进行实验,包括:
- ImageNet-1k :用于图像分类任务。
- MS-COCO :用于物体检测任务。
- ADE20k 和 PASCAL VOC2012 :用于语义分割任务。
训练配置 :实验在多个不同的模型大小下进行了训练,评估标准包括模型的参数量、计算量(FLOPs)、推理延迟和分类/检测的准确率等。
主要结果
- 性能提升 :MobileViTv2 在 ImageNet 数据集上的 Top-1 准确率达到了75.6%,比 MobileViT 提升了约1%。此外,在推理速度上,MobileViTv2 在移动设备上的速度提高了3.2 倍。
- 多任务表现 :在多个视觉识别任务中,包括图像分类、物体检测和语义分割,MobileViTv2 在不同复杂度设置下均表现良好,能有效减少计算需求,同时保持或提升任务性能。
- 消融实验 :通过不同增广手段的比较,结果显示较小模型(参数量<4.5M)在标准增广下表现最佳,而较大模型则在高级增广(如 RandAugment 和 CutMix)下获得更优性能。并发现引入多个潜在节点(latent tokens)对性能提升的贡献有限。
图像分类
从头开始在 ImageNet-1k 上训练 我们使用 AdamW [28] 在 ImageNet-1k 数据集上[29] 训练了 300 个 epoch,该数据集包含 128 万张用于训练的图像和 5 万张验证图像(每张图片使用 128 个图像批处理×8个GPU)。我们在前 20k 次迭代中线性增加学习率,从10^{−6}增加到 0.002。之后,我们使用余弦退火策略[30] 降低学习率。为了减少训练过程中的随机噪声,我们使用指数移动平均值 (EMA)[31] 进行训练,因为我们发现对于较大的模型来说,这种方法效果更好。我们使用 CVNets[4, 32] 实现我们的模型,并使用其提供的脚本进行数据处理、训练和评估。
在 ImageNet-21k-P 上预训练,然后在 ImageNet-1k 上微调 我们在包含约 1300 万张图片的 ImageNet-21k (winter’21 发布版)上进行训练。具体而言,我们遵循 [33] 中的方法对数据集进行了预处理(例如,删除样本较少的类别),并将其分为大约 1100 万张和 522 万张用于训练和验证的图片,覆盖了 10,450 个不同的类别。按照 [33] 的说法,我们将此预处理的数据集称为 ImageNet-21k-P。请注意,ImageNet-21k-P 验证集与 ImageNet-1k 的验证和测试集并不重叠。
我们遵循 [33] 对 MobileViTv2 进行预训练在 ImageNet-21k-P 上。为了更快地收敛,我们在 ImageNet-1k 权重上初始化 MobileViTv2 模型,并在 ImageNet-21k-P 上对其进行微调 80 个 epochs,其中包含 4096 张图片的有效批次(每张 GPU 为 128 张图片,共 32 台 GPU)。我们没有使用线性暖身。其他设置遵照 ImageNet-1K 训练进行。
我们在 ImageNet-1k 上对 ImageNet-21k-P 预训练模型进行了微调,使用了带动量 (0.9) 的 SGD 和余弦退火策略,有效批量大小为 256 张图像(每个 GPU 使用 128 张图像×2个GPU)。
在更高分辨率下微调MobileViTv2是一种混合架构,结合了卷积和分离自注意来学习视觉表示。与许多基于ViT的模型(例如DeiT)不同,MobileViTv2不需要为不同的输入分辨率调整补丁嵌入或位置偏差,并且易于微调。我们使用SGD以固定的学习率 10^{-3} 对高分辨率(即384x384)的MobileViTv2模型进行10个时期的微调。


与现有方法的比较 表格 2 和图 2 比较了 MobileViTv2 的性能与最近的方法 。我们观察到:
- 当 MobileViTv1 中的多头自注意力层被替换为分离自注意时,产生的模型 MobileViTv2 更快且表现更好(图 2 )。这验证了我们提出的分离自注意方法在移动 ViT 中的有效性。
- 与基于变形器(包括混合)模型相比,MobileViTv2 模型在移动设备上运行得更快。例如,在移动设备上,MobileViTv2 的速度大约比 MobileFormer 快 8 倍,尽管 MobileFormer 在浮点运算 (FLOP) 效率方面(R9 vs. R10)更高,在 ImageNet-1k 数据集上的表现也比 MobileFormer 好 2.5%。然而,在 GPU 上,MobileFormer 和 MobileViTv2 运行的速度相似。MobileFormer 在各种设备上的浮点运算 (FLOP) 和速度之间的差异主要是由于其架构设计。MobileFormer 在移动和前馈块之间具有条件操作。这种条件操作,特别是在资源受限的设备上,会导致低并行度和内存瓶颈,从而导致高延迟网络。Ma等人。[37]还对卷积神经网络 (CNN) 架构进行了类似的观察。
- MobileViTv2 在移动设备上弥合了基于卷积神经网络(CNN) 和视觉注意力Transformer(ViT) 的模型之间的延迟差距,同时通过具有相似或更少参数保持性能。例如,在移动设备上,与基于卷积神经网络的模型相比,ConvNeXt [34] 比 MobileViTv2 (混合模型) 快 2 倍和 3.6 倍,而 DeiT (基于变压器的模型) 相同的性能(参见R11、R13和R14)。过去几年来,针对基于卷积神经网络的模型进行了许多设备级别的优化,这使得基于卷积神经网络的模型在移动设备上的低延迟得以实现(例如,专用硬件用于卷积和使用卷积折叠批量归一化)。由于 ViT 基模型仍然缺乏这些优化,因此生成的推理图并非最优。虽然 MobileViTv2 在 CNN 和 ViT 之间缩小了延迟差距,但我们认为随着类似优化的发展,基于 ViT 的模型的延迟在未来会得到改善。
- 当输入分辨率从 224 × 224 或 256 × 256 提高到 384 × 384 时,ConvNext 和 MobileViTv2(R15-R18) 在更高模型复杂度下的速度差异从 1.6 倍降低到 1.3 倍。这表明基于 ViT 的(包括混合)模型比卷积神经网络具有更好的扩展性。这是因为基于 ViT 的模型在大尺度下提供更高的并行程度[1,38]。我们在第 4.2 节下游任务上的结果以及对扩展 ViT 进行的先前工作[1,39]进一步支持了这一观察结果。
语义分割
我们将 MobileViTv2 与两个标准的分割架构 PSPNet [40] 和 DeepLabv3 [41] 集成,并在两个标准的语义分割数据集上对其进行研究,ADE20k [42] 和 Pascal VOC 2012 [43]。有关训练细节(包括超参数),请参见补充材料 。

表 3 和图 2c 比较了MobileViTv2与不同分割方法在验证平均交并比(mIOU)方面的性能 。MobileViTv2 在不同的复杂性下提供有竞争力的表现,同时具有显著更少的参数和浮点运算次数。有趣的是,MobileViTv2 模型的推理速度可以与包括轻量级 MobileNetv2 和重量级 ResNet-50 [44] 模型在内的基于卷积神经网络(CNN)的模型相媲美。这与我们在第4节中的观察一致(表2中R17对R18;4.1节),我们还观察到,在更高的输入分辨率和模型复杂度下,基于视觉注意力模块(ViT)的模型比CNN有更好的扩展性。

目标检测

我们将 MobileViTv2 和 SSDLite [24][46] (具有分离卷积的 SSD 头) 集成为移动目标检测,并在 MS COCO 数据集上[47] 对其性能进行研究。我们在训练检测模型时遵循了[4] 的方法。表 4 和图 2b 比较了使用不同的 ImageNet-1k 框架的不同验证平均精度(mAP)的 SSDLite 检测性能 。MobileViTv2 在不同容量的模型中表现出竞争性的性能,进一步证明了所提出的方法的有效性。

自注意力分数可视化
图 5 展示了在 MobileViTv2 网络的不同输出步长下,上下文分数学习的内容。我们发现分离自注意层关注低、中、高阶特征,并允许 MobileViTv2 学习来自语义相关的图像区域的表示。

结果与评价
- 研究思路: 本文提出了一种名为分离自注意力机制的方法,该方法具有线性复杂度(即O(k)),并且通过元素级运算实现,适用于资源受限设备。具体而言,该方法将输入的每个d维令牌映射到一个标量,并利用线性投影计算内积以生成上下文得分。这些上下文得分被用于重新加权输入令牌并生成上下文向量,从而编码全局信息。实验结果显示,该方法在标准视觉数据集和任务上表现出色。
- 研究结果: 在ImageNet-1k数据集上的分类任务中,MobileViTv2模型在参数数量相似的情况下,比传统的Transformer和Linformer模型更快(3.4ms vs. 9.9ms和10.2ms),并且性能相当(78.1% vs. 78.4%和78.2%)。此外,在不同的复杂度下,MobileViTv2模型在多个任务(如图像分类、语义分割和目标检测)中均表现出色,具有显著较少的参数和浮点运算次数(FLOPs)。
- 结果评价: 该研究展示了所提出的分离自注意力机制的有效性,特别是在移动设备上,该方法能够显著提高推理速度,同时保持或提升模型性能。与现有方法相比,MobileViTv2模型不仅速度快,而且在不同复杂度下都能保持竞争力。然而,尽管在GPU上MobileViTv2和MobileFormer的速度相近,但MobileFormer由于其架构设计,导致在资源受限设备上的延迟较高。总体而言,分离自注意力机制为优化移动视觉Transformer提供了新的途径。
局限与建议
局限:
- 当前模型在资源受限设备上的部署仍可能受到昂贵操作的限制。
- 模型性能在某些情况下可能会随着计算速度的提升而下降。
建议:
- 进一步优化操作以减少计算成本,特别是在资源受限设备上的部署。
- 探索更多硬件友好的操作以加速推理过程。
结论
- 提出了一种线性复杂度的可分离自注意力方法,旨在解决移动视觉变换器中的多头自注意力(MHA)效率瓶颈。
- 改进后的模型MobileViTv2在多个移动视觉任务上达到最先进的性能,包括ImageNet物体分类和MS-COCO物体检测,参数量约为三百万,且在移动设备上运行速度快3.2倍,Top-1准确率提升约1%。
- 实验结果表明,所提出的可分离自注意力方法在标准数据集和任务上有效提升了模型的推理速度和性能,尤其适合资源受限的设备。
课题探索
论文中提出的可分离自注意力方法(separable self-attention)极大地提升了移动视觉变换器(MobileViT)在移动设备上的效率,同时保持了良好的性能。这一研究方向的探索表明,传统的多头自注意力(MHA)机制在资源受限环境下存在显著的延迟和计算开销,而论文的贡献在于通过降低复杂度来解决这一问题。然而,当前研究仍面临一些未解决的问题和局限性。
未解决的问题与研究局限性
- 复杂场景下的性能 :虽然可分离自注意力在标准数据集上显示了良好的效果,但在复杂场景(如低光照、高动态范围等)下的表现尚未充分评估。这些环境可能会导致模型性能下降。
- 自注意力的灵活性 :当前方法使用的是单一的潜在Token进行计算,是否可通过引入多个潜在Token来增强模型的表达能力仍然是一个未解答的问题。
- 跨任务的扩展性 :模型的细节和结构是否能够有效地迁移到其他视觉任务(如视频分析、三维重建等)尚待验证。不同任务可能会需要不同的自注意力机制,未来的研究可以探讨如何在多任务学习中应用这个方法。
- 复杂度与效果平衡 :尽管减少了时间复杂度,但如何在模型复杂度和效果之间取得精细的平衡仍然没有明确的理论指导。
未来研究展望
- 算法优化与调整 :未来的研究可以探索进一步优化可分离自注意力机制,例如,结合其他注意力机制或优化策略,以提升模型在复杂场景下的表现并进一步降低延迟。
- 集成学习与多任务学习 :考虑将可分离自注意力结构与其他神经网络架构结合,探索在多任务学习框架下的应用。同时,可以尝试在图像分类、目标检测与分割等多种任务中一起训练,以实现更强的模型泛化能力。
- 硬件优化 :研究如何针对特定硬件(如移动设备的GPU或专用AI芯片)对可分离自注意力进行优化,以达到更高的运行效率。这包括近似推理技术和量化方法。
- 实际应用场景 :可分离自注意力方法仍可以进一步探索在智能驾驶、医疗影像分析、增强现实等领域的应用。这些领域通常需要在较低的延迟情况下实时处理大量视觉数据。
- 解释性分析 :研究可分离自注意力在深度学习中的行为和决策过程,以增强模型的可解释性,从而使其在实际应用中更具可信度。
相关研究
视觉变换器的发展与优化 这一类文献主要关注视觉变换器(Vision Transformers, ViTs)的架构创新和性能优化,探索如何利用变换器在视觉任务上取得更好的效果。
- [1] Alexey Dosovitskiy et al. “An image is worth16x16 words: Transformers for image recognition at scale.” In International Conference on Learning Representations,2021.
- [2] Hugo Touvron et al. “Training data-efficient image transformers & distillation through attention.” In International Conference on Machine Learning,2021.
- [3] Ze Liu et al. “Swin transformer: Hierarchical vision transformer using shifted windows.” In Proceedings of the IEEE/CVF International Conference on Computer Vision,2021.
自注意力机制的改进 此类文献探讨了自注意力机制的各种改进方法,旨在提高变换器模型的计算效率和推断速度,特别是在资源受限的设备上。
- [5] Ashish Vaswani et al. “Attention is all you need.” Advances in neural information processing systems,30,2017.
- [7] Rewon Child et al. “Generating long sequences with sparse transformers.” arXiv preprint arXiv:1904.10509,2019.
- [10] Sinong Wang et al. “Linformer: Self-attention with linear complexity.” arXiv preprint arXiv:2006.04768,2020.
轻量级网络与移动设备的应用 本主题涉及设计和实现轻量级神经网络,特别是针对移动设备进行优化,使得深度学习模型能够高效运作于资源受限的环境中。
- [4] Sachin Mehta and Mohammad Rastegari. “Mobilevit: Light-weight, general-purpose, and mobile-friendly vision transformer.” In International Conference on Learning Representations,2022.
- [24] Mark Sandler et al. “Mobilenetv2: Inverted residuals and linear bottlenecks.” In Proceedings of the IEEE conference on computer vision and pattern recognition,2018.
- [35] Yinpeng Chen et al. “Mobile-former: Bridging mobilenet and transformer.” arXiv preprint arXiv:2108.05895,2021.
数据增强和训练策略 该文献类别探讨了各种数据增强技术和训练策略,通过改进训练过程,提高模型在视觉任务上的表现。
- [55] Ekin D Cubuk et al. “Randaugment: Practical automated data augmentation with a reduced search space.” In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops,2020.
- [56] Sangdoo Yun et al. “Cutmix: Regularization strategy to train strong classifiers with localizable features.” In Proceedings of the IEEE/CVF international conference on computer vision,2019.
- [57] Hongyi Zhang et al. “Mixup: Beyond empirical risk minimization.” arXiv preprint arXiv:1710.09412,2017.
视觉任务的下游应用 此类文献关注将视觉模型应用于具体任务(如物体识别、语义分割、目标检测等),评估其在各类标准数据集上的表现。
- [40] Hengshuang Zhao et al. “Pyramid scene parsing network.” In Proceedings of the IEEE conference on computer vision and pattern recognition,2017.
- [41] Liang-Chieh Chen et al. “Rethinking atrous convolution for semantic image segmentation.” arXiv preprint arXiv:1706.05587,2017.
- [47] Tsung-Yi Lin et al. “Microsoft coco: Common objects in context.” In European conference on computer vision,2014.
