论文阅读——ViTAE

ViTAE: Vision Transformer Advanced by Exploring Intrinsic Inductive Bias

ViTAE旨在将细胞神经网络中固有的IB引入视觉转换器。如图2所示,ViTAE由两种类型的细胞组成,即RC和NC。RC负责将多尺度上下文和局部信息嵌入到令牌中,NC用于进一步对令牌中的局部性和长程依赖性进行建模。以图像x∈RH×W×C为输入,使用三个RC分别将x逐步下采样4×、2×和2×。因此,RC的输出令牌的大小为[H/16,W/16,D],其中D是令牌维度(在我们的实验中为64)。然后,RC的输出标记被平坦化为RHW/256×D,与类标记连接,并通过正弦位置编码相加。接下来,令牌被馈送到以下NC中,这些NC保持令牌的长度。最后,使用来自最后一个NC的类标记上的线性分类层来获得预测概率。

ViTAE(Vision Transformers Advanced by Exploring Intrinsic Inductive Bias),通过从卷积中探索内在IB而得到改进。从技术上讲,ViTAE有几个空间金字塔缩减模块,通过使用不同膨胀率的多个卷积,对输入图像进行下采样,并将其嵌入到具有丰富多尺度上下文的令牌中。通过这种方式,它获得了固有的尺度不变性IB,并且能够学习各种尺度下对象的鲁棒特征表示。此外,在每个转换器层中,ViTAE都有一个与多头自注意模块并行的卷积块,其特征被融合并馈送到前馈网络中。因此,它具有固有的局部性IB,能够协同学习局部特征和全局依赖性

ViT在建模局部视觉结构(例如边和角)和处理卷积等各种尺度的对象时缺乏固有的归纳偏差(IB)。或者,ViT必须从大规模数据中隐含地学习这种IB。

与视觉转换器不同,卷积神经网络(CNNs)自然具有尺度不变性和局部性的内在IB,并且仍然是视觉任务中的主要骨干[26,70,62,8,96]。细胞神经网络的成功激励我们在视觉转换器中探索内在的IB。我们首先分析了细胞神经网络的上述两个IB,即局部不变性和尺度不变性。卷积计算相邻像素之间的局部相关性,擅长提取边缘和角点等局部特征。因此,细胞神经网络可以在浅层提供丰富的低级别特征[94],然后通过大量的顺序卷积将其逐渐聚合为高级别特征[32,68,71]。此外,细胞神经网络具有层次结构,可以提取不同层的多尺度特征[68,38,26]。此外,层内卷积还可以通过改变其内核大小和膨胀率来学习不同尺度的特征[25,70,8,45,96]。因此,可以通过层内或层间特征融合来获得尺度不变的特征表示。然而,细胞神经网络不太适合对长期依赖性进行建模2,这是变压器的关键优势。一个有趣的问题出现了:我们能利用细胞神经网络的良好特性来改进视觉转换器吗?最近,DeiT[76]探索了从细胞神经网络到变压器提取知识的想法,以促进培训并提高性能。然而,它需要现成的CNN模型作为教师,并消耗额外的培训成本。

与DeiT不同的是,本文通过重新设计网络结构,将固有IB明确引入到视觉变换器中。当前的视觉转换器总是获得具有单尺度上下文的标记[19,93,80,86,47,69,77],并从数据中学习适应不同尺度的对象。例如,T2T-ViT[93]通过以软分割方式精细地生成令牌来改进ViT。具体而言,它使用一系列令牌到令牌转换层来聚合单尺度的相邻上下文信息,并将图像逐步结构化为令牌。受细胞神经网络在处理尺度方差方面的成功启发,我们在转换器中探索了一种类似的设计,即具有不同感受野的层内卷积[70,91],以将多尺度上下文嵌入到令牌中。这样的设计允许标记在各种尺度上携带对象的有用特征,从而自然地具有固有的尺度不变性IB,并明确地促进变换器从数据中更有效地学习尺度不变特征。另一方面,低级局部特征是生成高级判别特征的基本要素。尽管变换器也可以从数据中学习浅层的这些特征,但它们在设计上并不擅长卷积。最近,[89,43,21]依次堆叠卷积和注意力层,并证明局部性是全局依赖性的合理补偿。然而,这种串行结构在局部建模过程中忽略了全局上下文(反之亦然)。为了避免这种困境,我们遵循“分而治之”的思想,提出并行地对局部依赖和长程依赖进行建模,然后融合特征来兼顾两者。通过这种方式,我们使转换器能够更有效地学习每个块中的局部和远程特征。从技术上讲,我们提出了一种通过探索固有电感偏置(ViTAE)先进的新型视觉转换器,它是两种基本单元的组合,即还原单元(RC)和正常单元(NC)。RC用于对输入图像进行下采样并将其嵌入到具有丰富多尺度上下文的令牌中,而NC旨在对令牌序列中的局部和全局依赖性进行联合建模。此外,这两种类型的细胞共享一个简单的基本结构,即并行注意力模块和卷积层,然后是前馈网络(FFN)。值得注意的是,RC有一个额外的金字塔缩减模块,该模块具有不同膨胀率的atrous卷积,以将多尺度上下文嵌入到令牌中。根据[93]中的设置,我们堆叠三个归约单元以将空间分辨率降低1/16,并堆叠一系列NC以从数据中学习判别特征。ViTAE在数据效率和训练效率(见图1)以及下游任务的分类精度和泛化能力方面优于具有代表性的视觉转换器。

我们的贡献有三方面。首先,我们探索了变换器中的两种固有IB,即尺度不变性和局部性,并证明了这种思想在提高变换器的特征学习能力方面的有效性。其次,我们基于两个新的归约和正常单元设计了一个新的变压器架构,命名为ViTAE,以本质上结合上述两个IB。所提出的ViTAE将多尺度上下文嵌入到令牌中,并有效地学习局部和远程特征。第三,ViTAE在分类精度、数据效率、训练效率和下游任务的泛化方面优于具有代表性的视觉转换器。ViTAE在ImageNet上分别以4.8M和23.6M的参数实现了75.3%和82.0%的第一精度。

ViTAEv2

ViTAEv2: Vision Transformer Advanced by Exploring Inductive Bias for Image Recognition and Beyond

除了分类之外,其他下游任务,包括对象检测、语义分割和姿态估计,也是通用主干网应该适应的非常重要的任务。这些下游任务通常需要从主干网中提取多层次特征,以处理不同尺度的对象。为此,我们将普通的ViTAE模型扩展到多阶段设计,即ViTAE-v2。ViTAE-v2设计的一个自然选择是通过重新组织RC和NC来重新构建模型。如图3所示,ViTAE-v2有四个阶段,其中使用四个相应的RC分别对特征进行4×、2×、2倍和2×的逐步下采样。在每个阶段,多个Ni正常电池在第i个RC之后顺序堆叠。请注意,一系列NC仅在各向同性设计的最粗略阶段使用。正常细胞(即Ni)的数量控制着模型的深度和大小。通过这样做,ViTAE-v2可以从不同阶段提取特征金字塔,其可以由专门为各种下游任务设计的解码器使用。

剩下的一个问题是,transformer中的普通注意力操作具有二次计算复杂性,因此需要大的内存占用和计算成本,尤其是对于具有大分辨率的特征图。与普通ViTAE设计中的快速分辨率降低相比,我们在多阶段设计中采用了慢速分辨率降低策略,例如,第一阶段的特征图的分辨率仅为原始图像大小的1/4,从而导致更多的计算成本,尤其是当下游任务中的图像具有高分辨率时。为了缓解这一问题,我们进一步探讨了RC和NC模块中的另一种归纳偏差,即(Liu et al,2021)中引入的局部窗口注意力。具体来说,窗口注意力将整个特征图拆分为几个不重叠的局部窗口,并在每个窗口内进行多头自注意力,即同一窗口内的每个查询令牌共享相同的键值集。由于所提出的两个单元中的并行卷积分支可以对位置信息进行编码并实现窗口间信息交换,因此可以省略(Liu et al,2021)中的相对位置编码和窗口移位机制等特殊设计。我们实证发现,在早期阶段用局部窗口注意力取代完全注意力可以在计算成本和性能之间实现良好的权衡。因此,在前两个阶段,我们只在RC和NC模块中使用局部窗口注意力。因此,我们的ViTAEv2模型可以为各种视觉任务提供卓越的性能,包括图像分类、对象检测、语义分割和姿态估计,同时保持快速的推理速度和合理的内存占用。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AUTOSAR软件配置(3):MCAL下载安装

前言 所有的NXP软件的下载安装都是需要自己在官网去注册账号的 中文的NXP官方网址:恩智浦半导体官方网站 | NXP 半导体 注:本文指导安装教程将以S32K144平台为例展开。 下载 找到下载入口的指引 然后在左侧的导航栏找到AUTOSAR 然后选择4.2版本 在…

java-集合工具类Collections

我们在使用它的时候记得导包 常见API 我们就简单看看第一第二个方法,代码如下,其余的知道用就行

信息系统项目管理师--沟通管理

IT 项⽬成功有关的最重要的四个因素是:主管层的⽀持、⽤户参与、有经验的项⽬经理和清晰的业务⽬标 项⽬沟通管理是确保及时、正确地产⽣、收集、分发、存储和最终处理项⽬信息所需的过程 项⽬沟通管理由两部分组成:⼀是制定策略,确保沟通对…

leetcode一天一题-第1天

为了增加自己的代码实战能力,希望通过刷leetcode的题目,不断提高自己,增加对代码的理解,同时开拓自己的思维方面。 题目名称:两数之和 题目编号:1 题目介绍: 给定一个整数数组 nums 和一个整数…

中介者模式(Mediator Pattern)

中介者模式 说明 中介者模式(Mediator Pattern)属于行为型模式,又称为调解者模式或调停者模式。用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散,而且可以独立…

【AI大模型应用开发】【LangChain系列】9. 实用技巧:大模型的流式输出在 OpenAI 和 LangChain 中的使用

大家好,我是同学小张,日常分享AI知识和实战案例欢迎 点赞 关注 👏,持续学习,持续干货输出。v: jasper_8017 一起交流💬,一起进步💪。微信公众号也可搜【同学小张】 🙏 本…

Python使用openpyxl库或pandas库创建.xlsx格式的Excel文件,并向文件不同的sheet按行或按列写入内容

import openpyxl# 创建-一个Workbook对象 wb openpyxl.Workbook()# 创建多个工作表 sheet1 wb.active sheet1.title "s1"sheet2 wb.create_sheet("s2")# 在不同的工作表中写入数据 sheet1["A1"] Data for Sheet1 sheet1["A2"] D…

数学问题难解?新研究提出MathScale方法,让AI更懂数学推理

引言:数学问题解决中的语言模型挑战 数学问题解决是一个复杂的认知过程,它要求参与者不仅要掌握数学知识,还要能够进行多步骤的逻辑推理。近年来,大语言模型(LLMs)在解决问题方面展现出了显著的能力&#…

18. 查看帖子详情

文章目录 一、建立路由二、开发GetPostDetailHandler三、编写logic四、编写dao层五、编译测试运行 一、建立路由 router/route.go v1.GET("/post/:id", controller.GetPostDetailHandler)二、开发GetPostDetailHandler controller/post.go func GetPostDetailHand…

java数据结构与算法刷题-----LeetCode90. 子集 II

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 解题思路:时间复杂度O( n 2 ∗ n n^2*n n2∗n),空间复杂度O(n) 7…

JAVA初阶数据结构栈(工程文件后续会上传)(+专栏数据结构练习是完整版)

1.栈的概念讲解(Stack)) 定义:栈是一种先进后出的数据结构 要想拿到12就要把它头上的所有东西给移出去 2.栈的实现(代码) 2.1栈的方法逻辑的讲解 (1)新建一个测试类Frank (2)进…

机器学习模型—决策树

机器学习模型—决策树 决策树是最强大和最流行的算法之一。Python 决策树算法属于监督学习算法的范畴。它适用于连续输出变量和分类输出变量也就是可以处理分类和回归任务。在本文中,我们将在 UCI 上提供平衡秤体重和距离数据库上用 Python 算法实现决策树。 决策树算法,是…

【MySQL探索之旅】MySQL数据表的增删查改(初阶)

📚博客主页:爱敲代码的小杨. ✨专栏:《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 |《MySQL探索之旅》 ❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️ &…

【Java设计模式】十九、中介者模式

文章目录 1、中介者模式2、案例3、总结 1、中介者模式 如图: 同事类之间关联较多时,整体出现网状结构,耦合度极高。一个对象一变动,好多对象都得改。若变为右边的星形结构,则一个类的变动,只影响自身与中介…

二叉树算法

递归序 每个节点都能回到3次! 相当于2执行完然后返回了代码会往下走,来到3节点 小总结: 也就是4节点先来到自己一次,不会执行if,先调用自己左边的那个函数,但是是null,直接返回。 这个函数执行完了,就会回到自己,调用自己右边的那个函数,结果又是空,又返回,回到…

鸿蒙API9+axios封装一个通用工具类

使用方式: 打开Harmony第三方工具仓,找到axios,如图: 第三方工具仓网址:https://ohpm.openharmony.cn/#/cn/home 在你的项目执行命令:ohpm install ohos/axios 前提是你已经装好了ohpm ,如果没…

最适合Oracle数据库的Linux操作系统?

先声明:以下观点仅供参考。我只引用网上的一些观点,包括官网等。 Oracle数据库认证的Linux操作系统 最近老被问到Oracle Linux免费吗?因为用户需要安装Oracle数据库,面临选择操作系统的问题。 首先,Oracle数据库 19…

考研C语言复习进阶(2)

目录 1. 字符指针 2. 指针数组 3. 数组指针 3.1 数组指针的定义 3.2 &数组名VS数组名 4. 函数指针 5. 函数指针数组 6. 指向函数指针数组的指针 7. 回调函数 8.三步辗转法 9. 指针和数组笔试题解析 10. 指针笔试题 指针的主题,我们在初级阶段的《指…

【小沐学C#】C#文件读写方式汇总

文章目录 1、简介2、相关类介绍3、代码示例3.1 FileStream(流文件)3.2 StreamReader / StreamWriter (文本文件)3.2.1 StreamReader3.2.2 StreamWriter 3.3 BinaryReader / BinaryWriter (二进制文件)3.3.1…

地理数据 vs. 3D数据

在表示我们周围的物理世界时,地理空间数据和 3D 建筑数据是两个最常见的选择。 他们在各个行业和项目中发挥着至关重要的作用。 从构建数字孪生到可视化城市景观和创建沉浸式应用程序。 尽管地理空间和 3D 建筑数据有相似之处,但它们不可互换。 虽然地…