0. 这篇文章干了啥?
近年来,计算机视觉领域经历了快速的增长和发展,这主要归功于深度学习的进步以及大型数据集的易获取性。在众多显著的深度学习技术中,卷积神经网络(CNNs)已被证明特别有效,在包括图像分类、目标检测和语义分割在内的一系列应用中表现出卓越的性能。
受到Transformers在自然语言处理中取得巨大成功的启发,Vision Transformers(ViTs)将每个图像分解为一系列令牌(tokens)。然后,这些令牌被编码以生成一个注意力矩阵,该矩阵是自注意力机制的基本组成部分。然而,自注意力机制的计算复杂度与令牌数量呈二次方增长,对于高分辨率图像,计算负担变得更加沉重。一些研究人员试图通过动态选择或令牌剪枝来减少令牌的冗余性,以减轻注意力计算的计算负担。这些方法已经展示了与标准ViT相当的性能。然而,涉及令牌减少和剪枝的方法需要精心设计令牌选择模块,并可能导致关键令牌的意外丢失。
在这项工作中,我们探索了一个不同的方向,并重新思考了自注意力机制。在[38]中提出的注意力饱和问题中,随着ViTs层数的逐渐增加,注意力矩阵往往保持基本不变,反映了之前层中观察到的权重分配。考虑到这些因素,我们提出了以下问题:
在网络的每个阶段,从开始到结束,真的有必要一直应用自注意力机制吗
?
在本文中,我们提出了通过引入低注意力视觉转换器(LaViT)来修改标准ViT的基本架构。我们的框架由普通注意力(VA)层和我们提出的低注意力(LA)层组成,以捕获长程关系。在每个阶段,我们仅计算传统的自注意力,并将注意力分数存储在少数初始的普通注意力(VA)层中。在后续层中,我们利用先前计算的注意力矩阵来高效生成注意力分数,从而减轻与自注意力机制相关的二次计算成本。此外,我们在跨阶段的下采样过程中在注意力层内集成残差连接,以在通过交替路径传递全局上下文信息的同时保留早期阶段学习到的关键语义信息。最后,我们精心设计了一种新颖的损失函数,以在转换过程中保持注意力矩阵的对角性。这些关键组件使我们的ViT模型能够降低计算复杂度和注意力饱和,最终通过减少每秒浮点运算次数(FLOPs)和显著提高吞吐量来实现显著的性能提升。
下面一起来阅读一下这项工作~
1. 论文信息
标题:You Only Need Less Attention at Each Stage in Vision Transformers
作者:Shuoxi Zhang, Hanpeng Liu, Stephen Lin, Kun He
机构:华中科技大学、微软亚洲
原文链接:https://arxiv.org/abs/2406.00427
2. 摘要
视觉转换器(ViTs)的出现标志着计算机视觉领域的一个重大范式转变。ViTs通过自注意力模块捕获图像的全局信息,这些模块在分片化的图像标记之间进行点积计算。虽然自注意力模块使ViTs能够捕获长距离依赖关系,但计算复杂度随着标记数量的增加而呈二次增长,这是ViTs实际应用的主要障碍。此外,深度ViTs中的自注意力机制也容易受到注意力饱和问题的影响。因此,我们反对在每一层都计算注意力得分的必要性,并提出了较少注意力的视觉转换器(LaViT),它在每个阶段仅计算少数注意力操作,并通过利用先前计算的注意力得分的注意力变换在其他层中计算后续的特征对齐。这种新颖的方法可以缓解传统自注意力模块面临的两个主要问题:沉重的计算负担和注意力饱和。我们提出的架构具有卓越的效率和易于实现性,仅需要当前深度学习框架中高度优化的矩阵乘法。此外,我们的架构在包括分类、检测和分割在内的各种视觉任务中都表现出了出色的性能。
3. 基本原理是啥?
我们网络架构的总体框架如图1所示。在每个阶段,我们都分两个阶段提取特征表示。在最初的几个普通注意力(VA)层中,我们执行标准的MHSA操作以捕获全局长距离依赖关系。随后,我们通过对存储的注意力分数应用线性变换来模拟注意力矩阵,以在后续的较少注意力(LA)层中缓解二次计算并解决注意力饱和问题。
4. 实验结果
我们在表2中展示了在ImageNet-1K上的分类结果。这些模型根据其计算复杂度被分为三组:tiny(约2G)、small(约4G)和base(约9G)。与具有显著降低计算需求的最新ViT相比,我们的方法取得了具有竞争力的性能。具体来说,在tiny和small模型簇中,我们的方法分别至少超过了其他所有现有模型0.2%和0.5%,同时保持了显著较低的计算成本,这是我们主要关注的。在base大小的模型中,我们的架构,它结合了PVT的基础结构但包含了Less-Attention组件,展示了比两个基于PVT的模型(PVT-M和PVT-L)更优越的性能。此外,我们还将我们的架构与几种高效的ViT设计(DynamicViT、EViT、LiT、efficientViT和PPT)进行了比较。我们观察到,我们的结果反映了有效性和效率之间的更好平衡。请注意,由于我们资源高效的Less-Attention机制,我们的设计需要降低计算成本,这使得我们的轻量级模块成为在移动平台上实现ViT的一个有吸引力的选择。
我们在表3中展示了目标检测的结果。显然,我们的LaViT模型在CNN和Transformer的对应模型中都表现出了显著的优势。具体来说,在1×时间表下,我们的微型版本LaViT-T在类似设置下与ResNet相比,实现了9.9-12.5的APb,而小型版本LaViT-S则比其CNN对应模型高出了8.1-10.3的APb。这种趋势在3×时间表下依然持续,因为我们的LaViT始终展现出具有竞争力的性能。特别值得一提的是,我们的架构在检测性能方面始终优于Swin Transformer,同时训练负担更小。因此,COCO2017上的结果再次证明了我们的精心设计的LaViT模型通过减少计算开销来增强特征提取的断言。
表4概述了分割结果。我们的模型在Swin Transformer上表现出优越性,使用Semantic FPN时mIoU提高了+2.6,使用UperNet时mIoU提高了+2.7。在Semantic FPN测试中,与基线(PVT-S)相比,我们的LaViT-S仅实现了相对较小的mIoU增长(+0.9),但值得注意的是,计算量显著减少。当集成到UperNet架构中时,LaViT与各种主流模型相比,mIoU分别提高了+2.7,+1.0和+1.4。即使在采用测试时增强技术时,这些竞争性的结果也得以保持。特别是,LaViT-S在mIoU上比Focal-T高出+1.4,在MS mIOU上高出+2.5。这些发现强调了LaViT在高效计算注意力机制的框架内产生高质量语义分割输出的能力。
5. 总结
为了降低昂贵的自注意力计算成本,我们提出了一种新的模型,称为较少注意力视觉转换器(LaViT)。LaViT 利用多头自注意力(MHSA)块中计算的依赖关系,并通过重用之前 MSA 块中的注意力来绕过注意力计算。此外,我们还引入了一个直接的保对角性损失(Diagonality Preserving loss),旨在促进注意力矩阵在表示标记之间关系时的预期行为。值得注意的是,我们的转换器架构有效地捕获了跨标记的关联,在保持参数数量和每秒浮点运算次数(FLOPs)的计算效率的同时,超越了基准性能。全面的实验已经证实了我们的模型作为多个下游任务基础架构的有效性。具体来说,所提出的模型在分类和分割任务中表现出优于之前转换器架构的性能,达到了最先进的性能水平。
对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~
本文仅做学术分享,如有侵权,请联系删文。
计算机视觉工坊交流群
目前我们已经建立了3D视觉方向多个社群,包括
2D计算机视觉
、
大模型
、
工业3D视觉
、
SLAM
、
自动驾驶
、
三维重建
、
无人机
等方向,细分群包括:
2D计算机视觉:
图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等
大模型:
NLP、CV、ASR、生成对抗大模型、强化学习大模型、对话大模型等
工业3D视觉:
相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。
SLAM
:
视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。
自动驾驶:
深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、BEV感知、Occupancy、目标跟踪、端到端自动驾驶等。
三维重建:
3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等
无人机:
四旋翼建模、无人机飞控等
除了这些,还有
求职
、
硬件选型
、
视觉产品落地
、
最新论文
、
3D视觉最新产品
、
3D视觉行业新闻
等交流群
添加小助理: dddvision,备注:
研究方向+学校/公司+昵称
(如3D点云+清华+小草莓)
, 拉你入群。
3D视觉学习知识星球
3D视觉从入门到精通知识星球
、国内成立最早、6000+成员交流学习。包括:
星球视频课程近20门(价值超6000)
、
项目对接
、
3D视觉学习路线总结
、
最新顶会论文&代码
、
3D视觉行业最新模组
、
3D视觉优质源码汇总
、
书籍推荐
、
编程基础&学习工具
、
实战项目
&作业
、
求职招聘&面经&面试题
等等。欢迎加入3D视觉从入门到精通知识星球,一起学习进步。
3D视觉课程官网:
www.3dcver.com