文章地址:https://arxiv.org/abs/2310.19380
项目地址:https://github.com/LMMMEng/TransXNet
00 | 导言
现状:
最近的研究将卷积集成到transformer中以引入归纳偏置并提高泛化性能。
(1)传统卷积的静态特性使其无法动态适应输入变化,导致卷积和自注意之间的表示差异,因为自注意是动态计算注意矩阵的。
(2)当堆叠由卷积和自关注组成的token混合器以形成深度网络时,卷积的静态性质阻碍了将先前由自关注生成的特征融合到卷积核中这两个限制导致构建网络的次优表示能力。
解决:
提出了一个轻量级的双动态token混频器(D-Mixer),它以一种依赖输入的方式聚合全局信息和局部细节。D-Mixer的工作原理是在均匀分割的特征段上分别应用高效的全局注意模块和输入依赖的深度卷积,从而赋予网络强大的归纳偏置和扩大的有效接受野。用D-Mixer作为基本构建块来设计TransXNet,这是一种新颖的混合CNN-Transformer视觉骨干网络。
在ImageNet-1K图像分类任务中,TransXNet-T在top-1精度上超过swwin - t 0.3%,而所需的计算成本不到swwin - t的一半。此外,TransXNet-S和TransXNet-B具有出色的模型可扩展性,在合理的计算成本下,分别实现了83.8%和84.6%的top-1准确率。
01 | 方法
图1 TransXNet架构
如图1所示,提出的TransXNet采用了四个阶段的分层架构。每个阶段由一个patch嵌入层和几个顺序堆叠的块组成。使用7×7卷积层(步幅=4)实现第一个patch嵌入层,然后使用批归一化(BN),而其余阶段的patch嵌入层使用3×3卷积层(步幅=2)和BN。每个块由一个动态位置编码(DPE)层、一个双动态token混频器(D-Mixer)和一个多尺度前馈网络(MS-FFN)组成。
1)Dual Dynamic Token Mixer
图2 D-Mixer的工作流程
为了通过引入归纳偏置来增强Transformer模型的泛化能力,之前的许多方法将卷积和自关注结合起来,构建了混合模型。然而,它们的静态卷积淡化了transformer的输入依赖性,也就是说,虽然卷积自然地引入了归纳偏置,但它们对提高模型的表示学习能力的能力有限。在这项工作中,提出了一种称为双动态token混合器(D-Mixer)的轻量级token混合器,它动态地利用全局和局部信息,在不影响输入依赖性的情况下注入大ERF和强归纳偏置的潜力。所提出的D-Mixer的整体工作流程如图2 (a)所示。具体而言,对于一个特征映射,我们首先沿通道维度将其均匀划分为两个子特征映射,表示为。随后,将和分别送入全局自关注模块OSRA和动态深度卷积IDConv,得到相应的特征映射,然后沿着通道维度进行连接,生成输出特征映射。最后,我们采用压缩token增强器(STE)进行高效的本地token聚合。的D-Mixer表示为:
通过叠加D-Mixers, OSRA和IDConv生成的动态特征聚合权值同时考虑了全局和局部信息,从而将强大的表征学习能力封装到模型中。
输入依赖深度卷积(IDConv) 为了注入归纳偏置并以动态输入依赖的方式进行局部特征聚合,提出了一种新的动态深度卷积,称为输入依赖深度卷积(IDConv)。如图2 (b)所示,取一个输入特征图,使用自适应平均池化对空间上下文进行聚合,将空间维度压缩到,然后将其转发到两个顺序的1×1卷积中,得到注意图,其中G表示注意组的数量。然后,将重塑为,并在G维上使用softmax函数,从而生成注意力权重。最后,将A按元素与一组可学习参数相乘,并将输出对G维求和,得到依赖于输入的深度卷积核,可以表示为:
由于不同的输入产生不同的注意图A,因此卷积核W随输入而变化。IDConv为每个注意组生成一个空间变化的注意图,并且这种注意图的空间维度(K ×K)与卷积核的空间维度完全匹配,而DyConv仅为每个注意组生成一个标量的注意权值。因此,DConv支持更动态的本地特征编码。与最近提出的动态深度卷积(D-DWConv)相比,IDConv将动态注意力图与静态可学习参数相结合,大大减少了计算开销。值得注意的是,D-DWConv应用全局平均池化,然后对输入特征进行通道挤压和扩展点向卷积,从而得到维度为的输出,然后对其进行重塑以匹配深度卷积核。在这个过程中产生的参数是,而IDConv结果是 Params。在实际应用中,当G的最大值为4,r和K分别为4和7时,IDConv 的Params数量远少于DDWConv。
重叠空间降维注意(OSRA): 空间降维注意(SRA)在前人的研究中得到了广泛的应用,利用稀疏标记区域关系高效提取全局信息。然而,为了减少标记计数而进行的非重叠空间缩减打破了patch边界附近的空间结构,降低了token的质量。为了解决这一问题,在SRA中引入了重叠空间缩减(OSR),通过使用更大的重叠斑块来更好地表示斑块边界附近的空间结构。在实践中,将OSR实例化为深度可分离卷积,其中步幅跟随PVT,内核大小等于步幅加3。图2 (c)描述了OSRA Pipeline,也可以表示为:
压缩token增强器(STE):在执行token混合后,大多数先前的方法使用1×1卷积来实现跨通道通信,这会产生相当大的计算开销。为了在不影响性能的情况下降低计算成本,提出出了一种轻量级的token令牌增强器(STE),如图2 (d)所示。STE包括用于增强局部关系的3 × 3深度卷积,用于降低计算成本的通道压缩和扩展1×1卷积,以及用于保留表示能力的剩余连接。STE可表示为:
由上式可知,STE的FLOPs为HWC(2C/r + 9),在实际操作中,将信道缩减比r设为8,但要保证压缩的信道数不小于16,这样得到的FLOPs明显小于1×1卷积的FLOPs,即。
2)Multi-scale Feed-forward Network (MS-FFN)
图3 不同FFN
MS-FFN如图3所示,不使用单个3×3深度卷积,而是使用四个不同尺度的平行深度卷积,每个卷积处理四分之一的通道。核大小为{3,5,7}的深度卷积核可以有效地捕获多尺度信息,而1×1深度卷积核实际上是一个可学习的通道尺度因子。
3)架构变体
TransXNet有三个不同的变体:TransXNet- t (Tiny), TransXNet- s (Small)和TransXNetB (Base)。为了控制不同变量的计算成本,除了通道数和块数之外,还有另外两个可调的超参数。首先,由于IDConv的计算成本与注意组的数量直接相关,在IDConv中对不同的变量使用不同的注意组数量。在微小版本中,注意组的数量固定为2个,以保证合理的计算成本,而在更深的小模型和基础模型中,使用越来越多的注意组来提高IDConv的灵活性,这类似于MHSA模块的头部数量随着模型的深入而增加。此外在不同的架构变体中逐渐增加扩展比。表1列出了不同体系结构变体的详细信息。
02 | 实验结果
图像分类
使用224×224输入对imagenet-1k数据集进行定量性能比较
TransXNet-T仅以1.8 GFLOPs和12.8M Params实现了令人印象深刻的top-1精度81.6%,大大超过了其他方法。尽管计算成本不到swwin - t的一半,但TransXNet-T的top-1精度比swwin - t[4]高0.3%。其次,TransXNet-S在不需要专门的CUDA实现的情况下实现了83.8%的top- 1精度,比InternImageT高0.2%。此外,TransXNet方法优于众所周知的混合模型,包括MixFormer和MaxViT,同时具有更低的计算成本。小模型比MixFormer-B5表现得更好,后者的Params数量实际上超过了TransXNet的基本模型。
在图像分类方面,TransXNet-S比CMT- s的性能改进似乎有限,猜测是因为CMT有一个更复杂的分类头来提高性能。
目标检测与实例分割
对于retinanet的目标检测,本文方法与其他竞争对手相比获得了最好的性能。以前的方法往往不能同时在小对象和大对象上表现良好。然而,本文方法在全局和局部动态以及多尺度token聚合的支持下,不仅在小目标上取得了优异的效果,而且在中大型目标上也明显优于先前的方法。
对于使用Mask-RCNN的实例分割,本文方法在计算成本相当的情况下也比以前的方法有明显的优势。尽管在ImageNet-1K分类中,TransXNet-S相对于CMT-S的性能提升有限,但在对象检测和实例分割方面取得了明显的性能提升,说明我们的主干具有更强的表征能力和更好的可移植性
参考
https://arxiv.org/abs/2310.19380