点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者丨ChaucerG

来源丨集智书童

尽管 Vision Transformer 的表示能力令人叹服,但目前的轻量级 Vision Transformer 模型仍然存在局部区域密集预测不一致和不正确的问题。作者怀疑Self-Attention机制的效果在比较浅的网络中是有限的。

因此,本文提出了Lite Vision Transformer (LVT),这是一种新型的轻量级Transformer网络,具有两种增强的Self-Attention机制,以改善边缘部署模型的性能。

对于Low-level特征,引入了卷积自注意力(Convolutional Self-Attention, CSA)。与以往融合卷积和自注意力的方法不同,CSA将局部自注意力引入到大小为3×3卷积中,以丰富LVT第一阶段的Low-level特征。

对于High-level特征,提出了递归Atrous自注意力(RASA),利用多尺度上下文计算相似性映射,并采用递归机制以增加额外的边际参数代价的表示能力。

LVT在ImageNet识别、ADE20K语义分割、COCO全景分割等方面的优势得到了验证。

1介绍

基于Transformer的架构最近取得了显著的成功,它们在各种视觉任务中表现出了卓越的性能,包括视觉识别、目标检测、语义分割等。

Dosovitskiy受到自然语言处理中Self-Attention的启发,首次提出了一种基于Transformer的计算机视觉网络,其关键思想是将图像分割成小块,从而通过位置嵌入实现线性嵌入。

为了降低 Self-Attention 引入的计算复杂度,Swin-Transformer通过使用局部非重叠窗口限制自注意力的计算开销。此外,引入分层特征表示来利用来自不同尺度的特征以获得更好的表示能力。

另一方面,PVT提出了spatial-reduction attention (SRA)来降低计算成本。它还通过在基本Transformer Block的自注意力层之后的前馈网络(FFN)中插入深度卷积来消除位置嵌入。

Swin-Transformer和PVT都证明了它们对于下游视觉任务的有效性。然而,当将模型缩小到移动端友好的大小时,也会出现显著的性能下降。

在这项工作中,专注于设计一个移动端高效的Vision Transformer。更具体地说,引入了一个Lite Vision Transformer (LVT) Backbone,它具有两个新颖的自注意力层,以追求性能和紧凑性。LVT遵循标准的四阶段结构,但与现有的移动端网络(如MobileNetV2和PVTv2-B0)具有类似的参数大小。

这里对自注意力的第一个改进是卷积自注意力(Convolutional self-attention, CSA)。自注意力层是Vision Transformer的基本组件,因为自注意力捕获了短期和长期的视觉依赖。然而,识别位置是视觉任务成功的另一个重要关键。例如,卷积层是处理Low-level特征的更好层。现有的技术已经提出将卷积和自注意力与全局感受野结合起来可以得到更高的性能。

相反,作者将局部自注意力引入到卷积核大小为3×3的卷积中。CSA被提出并应用于LVT的第一阶段。由于CSA的存在,LVT比现有的Transformer模型更丰富了Low-level特征,具有更好的泛化能力。如图1所示,与PVTv2-B0相比,LVT能够在局部区域产生更多的相干标签。

另一方面,lite模型的性能仍然受到参数数量和模型深度的限制。本文进一步提出通过递归Atrous自注意力(RASA)层来提高lite Transformer的表示能力。如图1所示,LVT结果的语义正确性较好,这是因为这种有效的表示方式。

具体来说,RASA包含了两个具有权重共享机制的组件。第一个是Atrous自注意力(ASA)。在计算query和key之间的相似度时,它利用了具有单个卷积核的多尺度上下文。第二个是递归管道。按照标准的递归网络,将RASA形式化为一个递归模块,其中ASA作为激活函数。它在不引入额外参数的情况下增加了网络深度。

在ImageNet分类、ADE20K语义分割和COCO全景分割上进行实验,以评估LVT作为广义视觉模型Backbone的性能。

主要贡献总结如下:

  1. 提出了卷积自注意力(CSA)。与以往融合全局自注意力和卷积的方法不同,CSA将局部自注意力集成到卷积核大小为3 × 3的卷积中。该算法通过包含动态核和可学习滤波器来处理Low-level特征;

  2. 提出递归Atrous自注意力(RASA)。它由两部分组成。第一部分是Atrous自注意力(ASA),它捕捉了自注意力相似性映射计算中的多尺度语义。另一部分是用ASA作为激活函数的递归公式。提出了RASA算法,在增加额外参数代价的前提下提高算法的表示能力。

  3. 提出Lite Vision Transformer (LVT)作为视觉模型的轻量级Transformer Backbone。LVT包含四个阶段,前三个阶段分别采用CSA和RASA。LVT在ImageNet识别、ADE20K语义分割和COCO全景分割等方面的性能都得到了验证。

2相关工作

2.1 Vision Transformer

ViT是第一个证明了Transformer结构可以以优异的性能转移到图像识别任务中的Vision Transformer。图像被分割成一系列的patches,这些patches被线性嵌入为ViT的token输入。

在ViT之后,提出了一系列的改进方法。

在训练方面,DeiT介绍了Transformer知识蒸馏策略。

对于Tokenization,T2T-ViT提出了T2T模块,递归地将相邻token聚合成一个token,以丰富局部结构建模。TNT进一步将token分解成更小的token,从它们中提取特征,以便与普通token特征集成。

对于位置嵌入,CVPT提出了可推广到任意分辨率图像的动态位置编码。

在多尺度加工方面,Twins研究了局部自注意力和全局自注意力的结合。该方法在位置嵌入中引入了卷积,从不同阶段考察了不同尺度下特征间的交叉注意力。

Cross-ViT提出了处理不同尺度token的双路Transformer,并采用了基于交叉注意力的token融合模块。

在层次设计方面,Swin-Transformer和PVT都采用了四阶段设计,并逐渐下样,这有利于下游的视觉任务。

2.2 CNN与Transformer的结合

有四种方法:

  • 第一种是将自注意力中的位置嵌入与卷积相结合,包括CVPT和CoaT;

  • 第二种是在自注意力前应用卷积,包括CvT、CoAtNet和BoTNet;

  • 第三个是在自注意力后插入卷积,包括LocalViT和PVTv2;

  • 第四种是并行的自注意力和卷积,包括AA和LESA。

与上述所有将局部卷积与全局自注意力合并的方法不同,本文提出了卷积自注意力(Convolutional self-attention, CSA),它将自注意力和卷积结合在一起,并在模型的第一阶段将3×3 kernel作为一个强大的层。

2.3 递归卷积

递归方法已被用于卷积神经网络(CNNs)的各种视觉任务。它包括图像识别、超分辨率、目标检测、语义分割。与这些方法不同的是,本文在轻量级Vision Transformer中研究了一种递归方法作为通用Backbone。具体而言,提出了一种具有多尺度query信息的递归自注意力层,有效地提高了移动端模型的性能。

3Lite Vision Transformer

本文提出了Lite Vision Transformer (LVT),如图2所示。作为多视觉任务的Backbone,遵循标准的四阶段设计。每个阶段执行一次下采样操作,并由一系列构建块组成。输出决议从第4步逐步到第32步。与以往的Vision Transformer不同,LVT的参数比较少,具有两个新的自注意力层。第一个是卷积自注意力层,第一阶段采用了3×3卷积核。第二个是递归的Atrous自注意力层,它有一个全局卷积核,在最后三个阶段被采用。

3.1 卷积自注意力模块(CSA)

我们应该都知道全局感受野有利于自注意力层的特征提取。然而,在视觉模型的早期阶段,卷积更受青睐,因为局部性在处理Low-level特征时更为重要。与以往结合卷积和大核(全局)自注意力的方法不同,作者重点设计了一个基于窗口的自注意力层,它有一个3×3 kernel,并包含卷积的表示。

1、卷积再分析

让是输入和输出特征向量,其中d表示通道数。让索引空间位置。卷积是通过滑动窗口计算的。在每个窗口中,可以将卷积公式写为:

其中表示由以位置为中心的核定义的局部邻域中的空间位置。,其中为核大小。表示到之间的相对空间关系。是投影矩阵。总的来说,kernel中有 。一个3 × 3 kernel由9个这样的矩阵组成。

2、Self-Attention再分析

自注意力需要3个投影矩阵计算query,key和value。本文考虑了基于滑动窗口的自注意力问题。在每个窗口中,可以写出自注意力的公式为:

其中,是一个标量,控制值在求和中每个空间位置的贡献。通过softmax操作归一化,使得。与相同核大小k的卷积相比,可学习矩阵的数量为3,而不是。最近,Outlook Attention提出了预测,而不是通过query和key的点积来计算,并且在kernel size较小时表现出了优越的性能。这里也采用这样的计算,可以写成:

其中和表示向量的第个元素。

3、Conv Self-Attention的诞生

将自注意力和卷积推广为统一的卷积自注意力,如图3所示。其公式如下:

SA和CSA都有大小为k×k的局部窗口输出。当且所有权值相同时,CSA为输出中心的卷积。当且所有投影矩阵都相同时,CSA为自注意力。

由于采用输入预测的动态,如Eqn(3)所示,Outlook Attention是CSA的一个特例。CSA的容量比Outlook Attention大。在表1中总结了它的性质。通过这种推广,CSA既具有输入相关的kernel,又具有可学习的滤波器。为增强Vision Transformer第一阶段的表现能力而设计的。

3.2 Recursive Atrous自注意力(RASA)

轻量化模型更高效,更适合于设备上的应用程序。然而,即使采用先进的模型体系结构,它们的性能也受到参数数量较少的限制。对于轻量级模型,本文将重点放在通过略微增加参数数量来增强它们的表示能力。

1、Atrous自注意力层

我们都知道多尺度特征有利于检测或分割目标。Atrous卷积被提出以与标准卷积相同数量的参数来捕获多尺度上下文。权值共享的Atrous卷积也被证明可以提高模型性能。

与卷积不同,自注意力的特征响应是来自所有空间位置的投影输入向量的加权和。这些权重由query和key之间的相似度确定,并表示任何一对特征向量之间的关系强度。因此,在生成如图4所示的权重时,添加了多尺度信息。具体来说,将query的计算从1×1的卷积升级为以下操作:

为特征映射,为权值。是空间维度。D为特征通道。表示卷积的核大小、膨胀率和组数。

这里,首先使用1×1卷积来应用线性投影。然后,应用三种具有不同膨胀率但共享内核的卷积来捕获多尺度上下文。通过将组数量设置为特征通道数量,进一步降低了参数开销。然后将不同尺度的并行特征加权求和。

同时本文采用了一种自校准机制,通过激活强度来确定每个刻度的weight。这可以由SiLU实现。在本设计中,自注意力中任意一对空间位置之间的query和key的相似度计算采用了多尺度信息。

2、Resursive Atrous自注意力 (RASA)

对于轻量级模型,在不增加参数使用的情况下增加它们的深度。递归方法在卷积神经网络的许多视觉任务中被提出。与这些方法不同,本文提出了一种自注意力的递归方法。设计遵循标准循环网络。与Atrous自注意力(ASA)相结合,提出递归Atrous自注意力(RASA),其公式可以写成:

其中为步长,为隐状态。以ASA作为非线性激活函数。初始隐藏状态。是输入状态与隐藏状态相结合的线性函数。是投影weight。然而,经验发现,设置可以提供最好的性能,并且避免引入额外的参数。将递归深度设置为2,以限制计算成本。

4模型架构

LVT的架构如表2所示。采用标准的四阶段设计。采用四层重叠的patch嵌入层。第一个将图像采样到stride-4分辨率。另外三个样本将特征映射为stride-8、stride-16和stride-32的分辨率。所有级均由Transformer组成。每个块包含Self-Attention层,后面跟着一个MLP层。CSA嵌入在第1阶段,RASA嵌入在其他阶段。它们是增强的自注意力层,用于处理LVT中的局部和全局特征。

5实验

4.1 消融实验

1、Recursion Times of RASA

作者研究了递归时间和模型性能之间的关系。实验是在ImageNet分类上进行的。作者把递归时间设为1到4。结果如表7所示。

通过上表可以看出,随着递归时间的变长,精度也得到了一定的提升,但是FLOPs也有一定的提升。

2、CSA和RASA的贡献

在下表中。对于ImageNet分类,训练和测试的输入分辨率都是224 × 224。对于ADE20K语义分割,按照SegFormer框架,在MLP解码器中插入VOLO和LVT。在测试期间,图像的短边被调整为512。它被观察到CSA和RASA对性能增益有显著的贡献。

4.2 ImageNet分类

结果如表所示。限制编码器尺寸小于3.5M,遵循MobileNet和PVTv2-B0。编码器是设计重点,因为它是其他复杂任务(如检测和分割)所使用的Backbone。为了将LVT与其他标准模型进行比较,这里将LVT扩展到ResNet50的大小。

4.3 ADE20K语义分割

使用输入分辨率512×512计算。在单个NVIDIA V100 GPU上计算2000张图像的FPS。在推理过程中,将调整图像的大小,使其短边为512。只使用单尺度测试。模型是紧凑的。加上解码器,参数小于4M。可以观察到LVT在之前所有的移动语义分割方法中表现出最好的性能。

4.4 移动端COCO全景分割

输入分辨率为1200 × 800。在推理过程中,将调整所有图像的大小,使大边不大于1333,短边小于800。使用单个NVIDIA V100 GPU,在2000张高分辨率图像上计算FLOPs。包括解码器在内的整个模型所需参数小于5.5M。可以观察到LVT在移动全景分割方面的优势。

6参考

[1].Lite Vision Transformer with Enhanced Self-Attention

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

LVT | ViT轻量化的曙光,完美超越MobileNet和ResNet系列相关推荐

  1. 深度学习与计算机视觉教程(10) | 轻量化CNN架构 (SqueezeNet,ShuffleNet,MobileNet等)(CV通关指南·完结)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/37 本文地址:https://www.showmeai.tech/article-d ...

  2. 骁龙AR2平台解析:分布式架构开启轻量化AR眼镜新时代

    在今天的骁龙峰会2022上,高通面向轻量化AR眼镜推出了专属SoC:第一代骁龙AR2平台,这套方案将骁龙XR1.骁龙XR2的单片式方案,改为多芯片分布式SoC方案,同时融合了分离式渲染,实现一整套的A ...

  3. 【深度学习】轻量化CNN网络MobileNet系列详解

    深度学习100问 Author:louwill Machine Learning Lab MobileNet系列作为轻量级网络的代表,使得CNN轻量化和移动端的部署成为可能.MobileNet系列目前 ...

  4. 2021极术通讯-CSL-YOLO | 超越Tiny-YOLO V4,全新设计轻量化YOLO模型实现边缘实时检测

    首发极术社区 如对Arm相关技术感兴趣,欢迎私信aijishu20加入技术微信群. 导读:极术社区与E-learning平台联合推出极术通讯,引入行业媒体和技术社区.咨询机构优质内容,定期分享产业技术 ...

  5. CSL-YOLO | 超越Tiny-YOLO V4,全新设计轻量化YOLO模型实现边缘实时检测!!!

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文提出了一种新的轻量级卷积方法Cross-Stage Lightweight(CSL)模块,从简单的 ...

  6. 突破置换模块计算瓶颈,MSRA开源轻量版HRNet,超越主流轻量化网络!|CVPR2021...

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨happy 审稿丨邓富城 编辑丨极市平台 极市导读 本文从HRNet与轻量化网络ShuffleN ...

  7. 【论文解读】突破置换模块计算瓶颈,MSRA开源轻量版HRNet,超越主流轻量化网络!|CVPR2021...

    作者丨happy 审稿丨邓富城 编辑丨极市平台 极市导读 本文从HRNet与轻量化网络ShuffleNet的组合出发,针对置换模块存在的计算瓶颈问题,提出了一种高效条件通道加权单元替换1x1卷积,并得 ...

  8. CV全新范式 | LSTM在CV领域杀出一条血路,完美超越Swin与ConvNeXt等前沿算法

    在最近的计算机视觉研究中,ViT的出现迅速改变了各种架构设计工作:ViT利用自然语言处理中的Self-Attention实现了最先进的图像分类性能,MLP-Mixer利用简单的多层感知器也实现了具有竞 ...

  9. 什么是轻量化,轻量化模型is all your need hhh

    其实学了几个小月,我们肯定知道,MLP有多deeper ,卷积层有多少层呀 抑或是Transformer架构,大量的参数,只能用huge 来描述, 可实际上我们的设备,有时候并没有服务器那么厉害,所以 ...

最新文章

  1. python场景建立_Python创建一个街道地址表-问答-阿里云开发者社区-阿里云
  2. mongodb全套配置
  3. BZOJ2208 [Jsoi2010]连通数
  4. S3C6410 KeyPad驱动(下)
  5. 活动 | 5G万物智联下互联网通信技术升级之路
  6. overfit underfit
  7. ASP.NET MVC 1.0 Result 几何?
  8. 【Python基础入门系列】第02天:Python 基础语法
  9. 70% 的Chrome漏洞是内存安全问题,谷歌和开发人员约法三章
  10. HTML使川锚标签,第1章HTML的基本标签祥解.ppt
  11. 2022年上半年软件设计师上午真题及答案解析
  12. Blender真是不错的东西
  13. 冰雪传奇刷怪计时器_专业冰雪传奇辅助计时器
  14. Android 腾讯信鸽集成
  15. linux压缩命令常用:tar,tgz,gzip,zip,rar
  16. ValueError: The name None occurs multiple times, use a level number
  17. 微信网页第三方登陆 获取用户信息 代码
  18. 开课吧 python与人工智能 下载_开课吧app|开课吧手机版下载v2.3.6安卓版 - 欧普软件下载...
  19. Yocto系列讲解[理论篇]26 - BitBake全过程(4)
  20. 域名解析的DNS缓存如何清理

热门文章

  1. IT内审那点事 之 审计要点
  2. 每日必看的五个产品科技类网站?
  3. Linux系统中安装和管理程序 太详细了
  4. 泡面健康煮法 [Health Tips]
  5. 遗传算法python(含例程代码与详解)
  6. 如何设计一款合适的丙烯酸树脂?——丙烯酸树脂配方设计概要
  7. 服务器上的SDR传感器状态,ipmitool sdr type Temperature sdr 从传感器获取某一类数据...
  8. MyBase7定期破解
  9. npmjs 注册上传代码流程
  10. php读书笔记,深入理解PHP ed3 读书笔记