面向图像分类的视觉Transformer

        一种面向对象分类的视觉Transformer,即ViT。该模型避免了卷积带来的归纳偏置,弥补了卷积神经网络在超长周期建模的不足。

1、DeiT(data-efficient image transformer)采用了知识蒸馏策略(将大型模型的复杂知识(包括其中的泛化能力和细节知识)传递给小型模型,使得小型模型能够在有限的数据集上达到与大型模型相当的性能),使得视觉Transformer能够学习归纳偏差(机器学习算法在学习过程中出现的不准确和不稳定的情况);

2、Swin Transformer将自注意力的计算范围限制在不重叠的局部窗口内,并通过移位窗口操作实现局部窗口间的交互。

3、DINO(DETR with imporoved denoising anchor boxes)结合自监督学习和Transformer,使得可学习的特征更具解释性(DETR指的是目标检测算法)


ViT是首个针对图像分类任务提出的纯Transformer的模型,并在超大规模数据集上取得了超越CNN的效果。

ViT的三个模块

嵌入层

嵌入层由图像块嵌入、可学习的嵌入和位置嵌入组成,旨在将输入的三维图像数据转换为Transformer要求输入的一维token序列。

  1. 图像块嵌入将输入的二维图像进行切分并转化为Transformer可处理的一维向量,即图像块token。 
  2. 可学习的嵌入使用一个可学习的类别向量与图像块token通过自注意力层实现对图像特征的信息交互,用于存储学习到的分类向量,即class token。
  3. 位置嵌入通过位置编码添加图像块序列的位置信息,以解决Transformer因自注意力机制无法保留图像空间信息的问题。

位置编码与图像块嵌入及可学习嵌入按元素拼接得到一个完整的类别嵌入输入至Transformer编码器中

Transformer编码器

Transformer编码器负责提取输入图像的全局特征,由L(ViT中为12)个相同的层堆叠而成。每个层由多头注意力层多层感知机两个子层组成。

将类别嵌入向量输入编码器中后,Transformer编码器通过自注意力层实现对图像特征的信息交互或聚合。并将class token送入MLP Head进行分类预测。

MLP Head

其负责最终的多分类任务。以全局特征为输入,通过计算编码器输入的类别嵌入向量与图片标签损失反向约束网络完成分类预测。

传统领域的图像分类任务

表征能力

尽管基于注意力机制的ViT善于捕捉全局特征,但它在特征提取方面仍存在一些挑战。

一方面,ViT在特征提取过程中始终保持图像块token的尺度不变,不具备构建多尺度特征之间交互的能力;

另一方面,ViT将每个图像块视作一个单元token,仅捕捉token间的关联关系,不具备捕捉图像块内部信息的能力。

Transformer采用绝对位置编码无法实现对不同长度的序列的表达不变性。

多尺度表征能力

多尺度特征在CNN中得到了广泛的应用。

通过利用多尺度信息,模型可以有效地融合高分辨率特征和高语义特征,从而实现对不同尺度目标的有效学习。

多尺度是指深度网络中有n个conv_kernel可以将一张图片的维度扩展至长n,这就把一个高为1的长方体扩展为一个高为n的长方体,在这里提取的信息就与原图像中提取的信息尺度不同,后面经过不同比例的下采样后,每个比例内获得的信息统称为"多尺度"信息

多尺度嵌入

主要通过对不同尺度的图像 / 特征图进行早融合和晚融合,进而捕捉输入图像的多尺度信息。

早融合方式

通过下采样等一系列的操作,使得模型在嵌入之前就已经获得了多尺度图像信息。

CrossFormer使用单分支网络,首先通过使用不同大小的卷积核对原始图像块进行采样,然后对采样得到的多尺度图像进行投影和拼接等嵌入融合操作,进而得到一个包含多尺度信息的token,然后将其输入到Transformer编码器。

晚融合方式

通过构建多分支网络将图像 / 特征图进行不同尺度的划分,然后将其独立输入到参数互不共享的Transformer编码其中提取不同尺度的特征,最后使用不同的特征融合策略融合各分支的特征。

CrossViT

将输入图像划分为两种不同尺度的图像块序列,构造了双分支Transformer编码器网络分别生成不同尺度的初始特征,最后通过交叉注意力融合模块实现尺度间的特征融合。

MPViT

通过多路径结构对特征图并行使用不同大小卷积核的卷积操作,进而生成相同序列长度的不同尺度的序列。不同尺度的序列通过多条路径并行输入到Transformer编码器中,并使用拼接等特征融合操作聚合所得的特征,从而在同一特征级别实现精细和粗略的特征表示。

现有的多尺度嵌入方式主要通过融合多尺度图像或多尺度特征进而捕捉输入图像的多尺度信息 

多尺度注意力机制

在ViT中,图像块token具有固定且相等的感受野,并且模型单层内的注意力机制作用在相同尺度的token上,导致Transformer无法捕获不同尺度的特征。

多尺度注意力机制使注意力在图像 / 特征图的作用范围不同,捕捉从大到小、从全局到局部的特征,最终通过特征融合操作融合各分支的特征。

Cross Former  提出长短距离注意力( long short distance attention, LSDA )机制捕捉从大到小、从全局到局部的特征。 短距离注意力对特征图在局部范围内(G × G )提取局部特征,即小尺度特征,建立相邻图像块间的依赖关系;长距离注意力在全局范围内通过固定步长 I 对特征图进行采样,建立较远图像块间的依赖关系,进而获取全局特征,即大尺度特 征。CrossFormer  可以同时获取不同尺度的特征,进而提升模型的表征能力。实验证明,该模型在降低计算成本的同时获得了多尺度特征的建模能力,在图像分类任务中取得了具有竞争力的结果 。
DW-ViT
DW- ViT dynamic window visual transformer 提出动态多尺度窗口策略来探索窗口设置对模型性能的影响。在 DW-ViT 中,通过将不同大小的窗口分配给窗口多头注意力机制的不同注意力头来获得多尺度信息。然后,通过对多尺度窗口分支赋予不同的权重,实现多尺度信息的动态融合。
VSA
从图像数据中学习自适应窗口配置。基于每个默认窗口内的token,VSA运用窗口回归模块来预测目标窗口的大小和位置。通过对每个注意力头独立采用VSA,构建一个长期依赖模型能够从多种窗口中捕获丰富的上下文信息。
注意力层通过下采样改变注意力图的尺寸

结构融合方法将Transformer和CNN的模块融合为全新的网络结构。HRViT将HRNet和视觉Transformer相结合,通过Transformer与CNN相结合的多分支架构,HRViT可以并行提取多尺度特征并进行多次融合,生成具有丰富语义信息的多分辨率表示,增强了视觉Transformer在学习语义丰富且空间精确的多尺度表示方面的能力。

特征融合方式是在特征级别实现CNN特征和Transformer特征之间的双向桥接来实现融合。采用并行的CNN和Transformer分支,通过CNN分支中池化操作实现特征的多尺度操作。

局部信息捕捉能力

ViT在中小型数据集中的性能较差,原因是ViT更偏向于在全局关联关系间建模。在建模过程中,会不可避免地存在丢失重要局部信息、特征丰富度有限等现象

嵌入局部化

图像块在嵌入阶段便可以获得局部信息捕捉能力。

现有文献中,学者们主要通过聚合或重叠相邻图像块的方式捕捉相邻图像块间的关系

聚合相邻图像块的方式:

递归地将相邻的图像块token聚合为一个token,以模拟周围图像块的局部结构信息。 

在非重叠图像块上递归重叠,采用自底向上方式分层逐步集成,以促进相邻图像块之间的信息耦合与通信,从而捕捉图像块内和相邻图像块间的信息。

重叠相邻图像块的方式:

将图像块的感受野进行逐层扩增,在不改变图像块尺寸的情况下捕捉相邻图像块的信息

PVT v2通过重叠相邻图像块的方式改进PvT,逐层地扩展图像块的感受野。具体的,该模型将输入图像边缘填充为0(填充大小为S-1),之后使用步长S和卷积核大小2S-1的卷积将图像块与其相邻的图像块进行结合,实现重叠图像块的操作。

 局部注意力机制

将自注意力的计算范围限制在局部区域内一定会导致全局建模能力的减弱。

基于隐式全局交互的局部注意力

将输入图像分为若干个局部区域,将注意力的计算限制在局部范围内,通过各类操作隐式地捕获局部区域间的关系,实现全局建模能力。

Swin Transformer提出了基于窗口的局部注意力机制,并通过层间窗口移动完成跨窗口的信息交互。在n层通过窗口多头自注意力完成局部窗口范围内的自注意计算,缓解了内存和计算量较大的问题;在n+1层通过偏移操作使得窗口移位,实现跨窗口的交互,避免上下文建模的不足。

基于窗口扩增操作的局部自注意力,提出了具有缩放属性的Transformer模型HaloNet;每一层中,在局部图像块内计算查询向量Q,在图像块扩展后得范围内计算键值对向量K和V,使得一次计算获得了局部以及其相邻图像块边缘处的信息,有效平衡计算复杂度和特征提取能力。

正则化的HaloNet比ResNet的性能增益更多,但对于ResNet中重要的架构化模块却没有显著改进

基于显式全局交互的局部自注意力

通过串行并行的网络结构直接有效地构建局部和全局的关系

Twins-SVT首先将特征图划分为m*n个子窗口,然后通过串联后的全局注意力机制实现不同子窗口间的通信,在降低计算成本的同时实现局部和全局的建模。

RegionViT采用双分支网络得到尺度不同的区域token和局部token。首先利用区域注意力提取所有区域token中的信息,然后通过局部自注意力完成区域token和与之相关的局部token之间的信息交互。

Focal Transformer则通过多分支网络提取当前token不同感受野的信息,更加有效地捕获局部和全局的信息。

上述模型将自注意力限制在局部范围内,通过串行或并行的网络结构直接有效地构建局部和全局的关系。

与CNN相结合

结构融合方法将Transformer和CNN的模块融合为全新的网络结构。Next-ViT和LocalViT将卷积模块添加到Transformer编码器中实现对局部信息的提取。Mobile-ViT将Transformer视为卷积层嵌入到卷积神经网络中,实现局部信息和全局信息的交互。

特征融合方式通过双向桥接的方式在特征级别实现CNN特征和Transformer特征的融合。

  • 23
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值