使用双动态令牌混合器学习全局和局部动态以进行视觉识别

TransXNet: Learning Both Global and Local Dynamics with a Dual Dynamic Token Mixer for Visual Recognition

  • 1、问题与解决
  • 2、引言
  • 3、方法
    • 3.1 双动态令牌混合器(D- Mixer)
    • 3.2 IDConv(Input-dependent Depthwise Convolution)
    • 3.3 Overlapping Spatial Reduction Attention (OSRA)
    • 3.4 Squeezed Token Enhancer (STE)
    • 3.5 Multi-scale Feed-forward Network (MS-FFN)
    • 3.6 架构变体
  • 4、实验
    • 4.1 目标检测和实例分割
  • 5、结论

前期知识:感应偏置(Inductive bias)是指对学习任务的假设和推断进行约束或偏好的先验知识或假设。它是为了帮助学习算法在未见过的数据上做出合理的预测而引入的一种偏置。CNN假设输入的局部数据存在相关性。
代码地址
论文地址

1、问题与解决

现状:
最近的研究将卷积集成到Transformer中以引入感应偏置并提高泛化性能。
1、然而,传统卷积的静态特性使其无法动态适应输入变化,导致卷积和自注意之间的表示差异,因为自注意是动态计算注意矩阵的。(即卷积核的权重在整个输入上是固定的,并且不会根据输入的变化而调整,这种静态特性可能限制了卷积操作在捕捉长程依赖和全局上下文信息方面的能力。而自注意机制可以根据输入的相对重要性和相关性,动态地计算每个位置的注意力权重。)
2、此外,当堆叠由卷积和自注意组成的令牌混合器以形成深度网络时,卷积的静态性质阻碍了将先前由自注意生成的特征融合到卷积核中
解决:
我们提出了一个轻量级的双动态令牌混频器(D-Mixer),它以一种依赖输入的方式聚合全局信息和本地细节。
D-Mixer的工作原理是在均匀分割的特征段上分别应用高效的全局注意模块和输入依赖的深度卷积,从而赋予网络强大的归纳偏置和扩大的有效接受野。
我们使用D-Mixer作为基本构建块来设计TransXNet,这是一种新颖的混合CNN-Transformer视觉骨干网络。

2、引言

使视觉变压器具有感应偏置
VIT:无法编码归纳偏执
SwinT:基于窗口注意力,感受阈有限
构建混合网络:性能有限

构建混合网络性能有限的原因:
1.与在给定输入时动态计算注意力矩阵的自注意不同,标准卷积核与输入无关,不能适应不同的输入,这导致了卷积和自我注意在表示能力上的差异
2.当一个模型通过叠加多个混合token混合器进行深入时,自注意能够在前面的块中动态地合并卷积产生的特征,而卷积的静态特性使得它无法有效地合并和利用自注意先前产生的特征。
在这项工作中,我们的目标是设计一个输入相关的动态卷积机制,该机制非常适合于在混合token混频器中深度集成自我注意,从而克服上述挑战,从而使整个网络具有更强的表示能力。
另一方面,一个网络也应该有一个大的接受领域以及归纳偏差,以捕捉丰富的语境信息。为此,我们通过有效接受场(ERF)[9]分析获得了一个有趣的见解: 在所有阶段利用全局自我注意可以有效地扩大模型的 ERF。具体来说,我们可视化具有相似计算成本的三个代表性网络的 ERF,包括 UniForm-S [10] ,Swin-T [4]和 PVTv2b2[11]。给定一个224 × 224的输入图像,UniForm-S 和 Swin-T 在浅层显示局部性,并在最深层捕获全球信息,而 PVTv2-b2在整个网络中享有全球信息。图1的结果表明,PVTv2-b2的 ERF 明显大于 UniForm-S 和 Swin-T,而这三个网络在最深层都采用了全局注意。根据这一观察,为了获得一个大的接受领域,一个有效的全球自我注意机制应该封装到一个网络的所有阶段。实证研究还发现,将动态卷积与全局自我注意相结合可以进一步扩大接受领域。
在这里插入图片描述
在这里插入图片描述

在以上讨论的基础上,我们提出了一种新颖的双动态令牌混合器(D-Mixer) ,它以依赖于输入的方式聚合全局和局部特征。具体地说,输入特征被分成两个半段,分别由OSRA和IDConv处理。然后将得到的两个输出连接在一起。这种简单的设计可以使网络在注入有效归纳偏差的同时看到全局上下文信息。如图1所示,我们的方法在其竞争者中脱颖而出,产生了最大的 ERF。此外,放大视图(最后一栏)显示,我们提出的混频器具有显着的局部敏感性,除了非局部注意力。我们进一步介绍了一个多尺度前馈网络(MS-FFN) ,它在令牌聚合过程中探索多尺度信息。通过分层叠加由 D- 混合器和 MS-FFN 组成的基本块,构建了一个多功能的主干网 TransXNet,用于视觉识别。与 ImageNet1K [12]图像分类中的最新技术(SOTA)方法相比,我们的方法显示出更好的性能。特别是,我们的 TransXNetT 仅使用1.8 G FLOP 和12.8 M 参数(Params)就达到了81.6% 的 top-1准确率,超过了 Swin-T,但其计算成本还不到 Swin-T 的一半。此外,我们的 TransXNet-S/B 模型达到了83.8%/84.6% 的最高准确率,超过了最近提出的 InternImage [13] ,同时产生较少的计算成本。
在这里插入图片描述
总之,我们的主要贡献包括: 首先,我们提出了一种新颖的令牌混频器称为 D-Mixer,它以一种输入独立的方式聚合稀疏的全局信息和局部细节,产生大的 ERF 和强的归纳偏差。其次,利用 D- 混频器作为标记混频器,设计了一种新颖、功能强大的视觉骨干网 TransXNet。最后,我们对图像分类、目标检测、语义和实例分割任务进行了广泛的实验。实验结果表明,该方法在降低计算代价的同时,性能优于以往的方法,达到了 SOTA 的性能。

3、方法

如图3所示,我们提出的 TransXNet 采用了四个阶段的分层体系结构,类似于以前的许多作品[18] ,[22] ,[31]。每个阶段由一个补丁嵌入层和几个顺序堆叠的块组成。我们使用7 × 7卷积层(步长 = 4)和批量归一化(BN)实现第一个补丁嵌入层,而其余阶段的补丁嵌入层使用3 × 3卷积层(步长 = 2)和 BN。每个块由动态位置编码(DPE)[10]层、双动态令牌混频器(D-Mixer)和多尺度前馈网络(MS-FFN)组成。在这里插入图片描述
图3。TransXNet的总体架构。

3.1 双动态令牌混合器(D- Mixer)

为了通过引入归纳偏差来提高变压器模型的泛化能力,许多以前的方法已经将卷积和自我注意相结合来建立一个混合模型[3] ,[5]-[8] ,[10] ,[25] ,[26]。然而,他们的静态卷积稀释了变压器的输入依赖性,即,虽然卷积自然引入感应偏差,他们有限的能力来提高模型的表示学习能力。在这项工作中,我们提出了一个轻量级的令牌混合器称为双动态令牌混合器(D-Mixer) ,它动态地利用全局和局部信息,注入潜在的大 ERF 和强感应偏差而不损害输入依赖性。所提出的 D-Mixer 的整体工作流程如图4(a)所示。对于一个特征映射 X ∈ RC × H × W,首先将其沿信道维数一致地划分为两个子特征映射,分别命名为{ X1,X2}∈ RC2 × H × W。然后将 X1和 X2分别提供给一个全局自注意模块 OSRA 和一个动态深度卷积 IDConv,生成相应的特征映射{ X ′1,X ′2}∈ RC2 × H × W,并沿信道维数连接生成输出特征映射 X ′∈ RC × H × W。总的来说,拟议的 D-Mixer 表示为:
在这里插入图片描述

在这里插入图片描述
图4。所提出的 D -Mixer的工作流程。

从上述方程可以看出,通过叠加 D 混合器,OSRA 和 IDConv 生成的动态特征聚合权重同时考虑了全局和局部信息,从而将强大的表示学习能力封装到模型中。

3.2 IDConv(Input-dependent Depthwise Convolution)

在这里插入图片描述

依赖输入的深度卷积:为了以动态依赖输入的方式注入诱导偏差并进行局部特征聚合,我们提出了一种新型的动态深度卷积,称为输入依赖深度卷积(IDConv)。如图所示,取输入特征映射X∈RC×H×W,使用自适应平均池化方法对空间上下文进行聚合,将空间维数压缩到K2,然后将其转发到两个序列1×1的卷积中,得到注意特征图A’∈R(G×C)×KxK,其中G表示注意组的个数。然后,将A '重塑为RG×C×KxK,并在G维上使用softmax函数,从而产生注意权值A∈RG×C×K2。最后,将A与一组可学习参数P∈RG×C×K2按元素方式相乘,将输出对G维求和,得到与输入相关的深度卷积核W∈RC×K2,可以表示为:
在这里插入图片描述
由于不同的输入产生不同的注意力特征图A,卷积核W随着输入而变化。现有的动态卷积方案有[29],[30]。与动态卷积(DyConv)[29]相比,IDConv为每个注意组生成一个空间变化的注意图,并且该注意特征图的空间维数(K×K)与卷积核的空间维数完全吻合,而DyConv仅为每个注意组生成一个标量的注意权值。因此,我们的IDConv支持更多的动态局部特征编码。与最近提出的动态深度卷积(Dynamic depth - wise Convolution, D-DWConv)[30]相比,IDConv结合了动态注意力特征图和静态可学习参数,大大减少了计算开销。值得注意的是,D-DWConv在输入特征上采用了全局平均池化,然后是通道压缩和扩展的逐点卷积,使得输出的维数(C×K2)×1×1,然后再进行整形以匹配深度卷积核。这个过程中产生的参数数是C2 r (K2 + 1),而我们的IDConv结果是C2 r (G+ 1) +GCK2参数。在实际应用中,当G的最大值为4,r和K分别为4和7时,IDConv (1.25C2+196C)的Params个数远远小于DDWConv (12.5 5c2)。

3.3 Overlapping Spatial Reduction Attention (OSRA)

在这里插入图片描述

重叠空间规约注意力:
SRA (Spatial Reduction Attention, SRA)[21]在前人的[7]、[11]、[20]、[32]等著作中得到了广泛的应用,利用稀疏的令牌-区域关系有效提取全局信息。但是,用于减少token数量的非重叠空间缩减会破坏patch边界附近的空间结构,降低tokens的质量。为了解决这一问题,==我们引入了重叠空间约简(OSR),使SRA能够通过使用更大的和重叠的斑块更好地表示patch边界附近的空间结构。==在实践中,我们将OSR实例化为深度可分离卷积[33],其中stride跟随PVT[21],而内核大小等于stride + 3。图4 ©描述了OSRA管道,也可以表示为:
在这里插入图片描述
其中LR(·)表示由3×3深度卷积实例化的局部细化模块,B为相对位置偏置矩阵,对注意特征图[7]、[26]中的空间关系进行编码,d为每个注意头部的信道数。

3.4 Squeezed Token Enhancer (STE)

挤压令牌增强器(STE):
在进行token混合后,以往的方法大多使用1×1的卷积实现跨信道通信,这带来了相当大的计算开销。为了在不影响性能的情况下降低计算成本,我们提出了一种轻量级的压缩令牌增强器(STE),如图4 (d)所示。STE包括一个用于增强局部关系的3 × 3深度卷积、用于降低计算成本的信道压缩扩展1×1卷积、以及保留表示容量的剩余连接。STE可以表示为:
在这里插入图片描述
由上式可知,STE的FLOPs为HWC(2C/r + 9),在实践中,我们设置了信道缩减比r为8,但保证压缩信道数不小于16,因此FLOPs明显小于1×1卷积HWC2。

3.5 Multi-scale Feed-forward Network (MS-FFN)

在这里插入图片描述
图5。(a) Vanilla FFN只处理跨通道信息。(b)倒置的剩余FFN进一步将tokens聚集在一个小区域内。©我们的MS-FFN执行多尺度token聚合。

与普通的FFN[1]相比,反向残差FFN[7]通过在隐含层中引入3×3的深度卷积实现局部token聚合。然而,由于隐含层中的通道数量较大,通常是输入通道数量的四倍,因此单尺度token聚合无法充分利用这种丰富的通道表示。为此,我们介绍了一种简单而有效的MS-FFN。如图所示,我们没有使用单一的3×3深度卷积,而是使用四个不同尺度的平行深度卷积,每个卷积处理四分之一的通道。核大小为{3,5,7}的深度卷积核可以有效地捕获多尺度信息,而1×1深度卷积核实际上是一个可学习的通道尺度因子。

3.6 架构变体

拟议中的TransXNet有三种不同的变体:TransXNet- t (Tiny)、TransXNet- s (Small)和TransXNetB (Base)。为了控制不同变量的计算开销,除了通道和块的数量外,还有两个可调超参数。首先,由于IDConv的计算成本与注意组的数量直接相关,我们在IDConv中使用不同数量的注意组来表示不同的变量。在微型模型中,为保证合理的计算成本,将注意力群体数量固定在2,而在更深层的small和base模型中,使用越来越多的注意力群体来提高IDConv的灵活性,这类似于随着模型的深入,MHSA模块头部数量的增加。其次,之前的许多作品[11]、[20]-[22]将阶段1和阶段2的ffn扩展比设置为8。然而,由于阶段1和2中的特征特征图通常分辨率较大,这将导致错误。因此,我们在不同的建筑变体中逐渐增加扩展比。表I中列出了不同体系结构变体的详细信息。
在这里插入图片描述

4、实验

为了评估TransXNet的有效性,我们在不同的任务上对其进行了评估,包括ImageNet1K数据集[12]上的图像分类,COCO数据集[34]上的目标检测和实例分割,以及ADE20K数据集[35]上的语义分割。此外,我们进行了广泛的消融研究,以分析我们模型的不同组成部分的影响。

4.1 目标检测和实例分割

为了评估我们的目标检测和实例分割任务的方法,我们使用MMDetection [46] codebase在COCO 2017[34]上进行了实验。具体来说,对于目标检测,我们使用的是RetinaNet框架[47],而实例分割使用的是Mask RCNN框架[48]。为了公平比较,我们用ImageNet-1K上预先训练的权值初始化所有骨干网,而训练设置遵循PVT[21]提供的1×时间表。

我们将结果列于表三。在使用RetinaNet进行目标检测时,与其他竞争对手相比,我们的方法取得了最好的性能。需要注意的是,以前的方法常常不能同时在小对象和大对象上很好地执行。然而,我们的方法在全局和局部的动态以及多尺度的token聚合的支持下,不仅在小目标上取得了很好的效果,而且在中、大目标上也明显优于之前的方法。例如,最近提出的SlidePVTv2-b1[19]侧重于局部信息建模,实现了与我们的微型模型相当的APS,而我们的方法在计算成本更低的情况下将APM/APL提高了1.9%/2.5%,突出了其在全局和局部信息建模方面的有效性。这一现象在小模型和基本模型的比较组中更为突出,说明我们的方法在不同目标大小上的性能都很好。对于使用掩码- rcnn的实例分割,我们的方法与之前的方法相比也有明显的优势,且计算成本相当。值得一提的是,尽管在ImageNet-1K分类中,TransXNet-S在性能上的提升相对于CMT-S[7]有限,但在目标检测和实例分割方面,TransXNet-S取得了明显的性能提升,这说明我们的主干具有更强的表示能力和更好的可转移性。

在这里插入图片描述

5、结论

在本研究中,我们提出了一种有效的双动态令牌混合器(D-Mixer),利用重叠空间约简注意(OSRA)和输入依赖深度卷积(IDConv)提供的混合特征提取。通过将基于d混合的块叠加到一个深度网络中,IDConv中的内核和OSRA中的注意矩阵使用之前块中收集的本地和全局信息动态生成,通过合并强大的归纳偏差和扩展的有效接受域,赋予网络更强的表示能力。此外,我们引入一个多尺度token聚合算法来研究前馈网络中的多尺度令牌聚合。利用d -混频器和MSFFN技术,我们构建了一种新型的混合cnn -变压器网络TransXNet,该网络在各种视觉任务上都表现出了良好的性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/127809.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java 身份证号校验,根据身份证号识别出生地

Java 身份证号校验: import org.apache.commons.lang.StringUtils;import java.util.Calendar; import java.util.Collections; import java.util.HashMap; import java.util.Map;/*** desc 身份证工具类* auth llp* date 2022/7/7 16:13*/ public class IdCardNum…

神仙打架!腾讯云阿里云谁更棋高一着?

现在,腾讯云和阿里云都在打价格战,推出了一系列的优惠政策。其中,腾讯云服务器只需要88元,而阿里云服务器也只需要99元。这么便宜的价格,是不是让你心动不已呢? 腾讯云的88元服务器:https://te…

MySQL优化方案

Mysql优化 一、连接配置优化1.服务端配置2.客户端优化 二、架构优化1.使用缓存2.做读写分离(集群、主从复制)3.分库分表3.1.垂直分库3.2.垂直分表3.3.水平分表3.4.水平分库 4.消息队列削峰 三、优化器——SQL分析与优化1.慢查询优化1.1.配置慢查询日志1.…

第三方支付支付宝的信息安全分析

随着信息技术的进步,网络结算方式也在迅速发展。网上结算虽然便捷快速,但是如果没有保障的平台或者法律的支持,双方在没有约束的情况下,就会导致拖延、折扣或者拒付等许多经济事件的发生,由此第三方支付就随之产生。第…

嵌入式开发:ST-LINK V2.1仿真器,Type-C接口

标题ST-LINK V2.1仿真器,Type-C接口 之前做的版本虽然也是V2.1的,但使用的接口是USB的Micro形式,不支持正反插,也不兼容现在通用的手机数据线,出差的时候又要多带一条线。 现在终于把我的ST-LINK的接口改了一下 如下…

oracle11G在linux环境下的卸载操作

1.使用SQL*PLUS停止数据库 [oracleOracleTest oracle]$ sqlplus / as sysdba SQL> shutdown [immediate] SQL> exit2.停止Listener [oracleOracleTest oracle]$ lsnrctl stop3.停止HTTP服务 [rootOracleTest /root]# service httpd stop4.用su或者重新登录到root(如想…

『吴秋霖赠书活动 | 第四期』《Spring Boot微服务实战》

文章目录 1. 写在前面2. Spring Boot介绍3. Spring Boot实战4. Spring Boot主要内容概览 1. 写在前面 【作者主页】:吴秋霖 【作者介绍】:Python领域优质创作者、阿里云博客专家、华为云享专家。长期致力于Python与爬虫领域研究与开发工作! 【…

视频剪辑方法:为视频剪辑添加亮点,如何制作精美的滚动字幕

在视频剪辑中,滚动字幕是一个重要的元素,它可以为视频增添视觉吸引力,增强观看体验。滚动字幕的长度和速度也是非常重要的因素。如果滚动字幕太长,会让人感到拖沓;如果滚动字幕太短,会让人感到匆忙。因此&a…

安装dock打包前端项目遇到的一些错误

1docker安装报错 2 docker安装报错 运行 wsl --list报错 wsl --list 适用于 Linux 的 Windows 子系统没有已安装的分发版。 可以通过访问 Microsoft Store 来安装分发版解决方法 如果执行 wsl --list 命令报告适用于 Linux 的 Windows 子系统没有已安装的分发版,…

Git的安装,简介以及常用命令【超详细】

目录 一. Git简介 分布式特点 优缺点 Git 与 SVN 区别 二. Git安装 三. Git常用命令 四. Git的文件状态 1.文件状态 2.工作区域 一. Git简介 Git 是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds…

AntDB-M高性能设计之hash索引动态rehash

AntDB-M支持hash索引、btree索引等索引类型,hash索引以hash表的方式实现,一个简单的hash表示意图如图1所示。hash桶下的元素节点为单向或者双向链表,数据行上某一个或者某几个字段组成索引,通过hash函数对索引字段的值进行运算&am…

移动机器人选择源头厂家有什么优势

在现代工业和服务领域,移动机器人应用日益广泛,广泛应用于汽车制造、电子组装、物流仓储等领域。在选择移动机器人时,选择源头厂家具有许多优势,下面将详细介绍这些优势。 一、品质保证 源头厂家的机器人经过严格的生产流程和质…

“最强”机器学习辅助!利用自然语言让机器人更好地理解开放性世界

原创 | 文 BFT机器人 想象一下,你正在国外拜访朋友,打开他的冰箱看看有没有能够制作一顿美味早餐的食材。最初,冰箱里的许多物品对你来说都很陌生,每个物品的包装都是你不熟悉的。你开始试图理解每个物品的用途,并根据…

Avalonia播放视频(mp4)

1.Nuget添加类库Dove.Avalonia.Extensions.Media,项目路径https://github.com/michael-eddy/Avalonia.Extensions/ 2.Nuget添加VideoLAN.LibVLC.Windows PlatformLibVLC PackageMinimum OS VersionWindowsVideoLAN.LibVLC.WindowsWindows XPUWPVideoLAN.LibVLC.UW…

【Mysql】联表查询

目录 表: 思路: inner join right join left join ​编辑 表: student表 class表 思路: 1.分析查找的字段来自哪些表 2.确定使用哪种连接查询 3.确定交叉点 比如student表的name与class表的name是相等的 inner join …

python 把函数的值赋给变量

嗨喽~大家好呀,这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 一个是模块的调用和一个自定义函数返回值赋值给变量 编写一个简单的函数模块: def run(name): list1 hello namereturn list1编写一个调用的脚…

YOLOv5 - common.py文件解读

🍨 本文为[🔗365天深度学习训练营学习记录博客 🍦 参考文章:365天深度学习训练营 🍖 原作者:[K同学啊 | 接辅导、项目定制](https://mtyjkh.blog.csdn.net/) 🚀 文章来源:[K同学的学…

el-table实现单选和隐藏全选框和回显数据

0 效果 1 单选 <el-table ref"clientTableRef" selection-change"clientChangeHandle"><el-table-column fixed type"selection" width"50" align"center" /><el-table-column label"客户名称" a…

Python进行多线程爬取数据通用模板

首先&#xff0c;我们需要导入所需的库&#xff0c;包括requests和BeautifulSoup。requests库用于发送HTTP请求&#xff0c;BeautifulSoup库用于解析HTML文档。 import requests from bs4 import BeautifulSoup然后&#xff0c;我们需要定义一个函数来发送HTTP请求并返回响应。…

C# 异步日志记录类,方便下次使用,不用重复造轮子

先定义接口类&#xff1a; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace 异常 {internal interface ILog{Task WriteErrorLog(string message);Task WriteInfoLog(string message);Task W…