NeurIPS2021 | ViTAE+: vision transformer中的归纳偏置探索

news2025/1/11 19:57:49

参考资料:NeurIPS 2021 | ViTAE: vision transformer中的归纳偏置探索 - 知乎

paper地址:https://openreview.net/pdf?id=_RnHyIeu5Y5

论文标题:ViTAE: Vision Transformer Advanced by Exploring Intrinsic Inductive Bias

code:

GitHub - Annbless/ViTAE: The official pytorch implementation of ViTAE: Vision Transformer Advanced by Exploring Intrinsic Inductive Bias

一、问题提出

Transformers have shown great potential in various computer vision tasks owing to their strong capability in modeling long-range dependency using the self-attention mechanism.

Transformers 由于具有较强的利用自注意机制建模长期依赖关系的能力,在各种计算机视觉任务中显示出巨大的潜力。

Unlike vision transformers, Convolution Neural Networks (CNNs) naturally equip with the intrinsic IBs of scale-invariance and locality and still serve as prevalent backbones in vision tasks.

与视觉转换器不同,卷积神经网络(cnn)具有固有的尺度不变性和局部性,仍然是视觉任务中普遍存在的backbones

Can we improve vision transformers by leveraging the good properties
of CNNs?

能否利用CNN的良好特性来改进vision transformers?

尺度不变性,多尺度特征来有效地表示不同尺度下的对象。有两种方法:

To construct multi-scale feature representation, the classical idea is using image pyramid, where features are hand-crafted or learned from a pyramid of images at different resolutions respectively. 为了构建多尺度特征表示,经典思想是使用图像金字塔,其中特征分别是手工制作或从不同分辨率的图像金字塔中学习。

In addition to the above inter-layer fusion way, another way is to aggregate multi-scale
context by using multiple convolutions with different receptive fields within a single layer, i.e. intra-layer fusion. 除了上述的层间融合方式外,另一种方法是在一层内使用不同感受野的多次卷积来聚合多尺度上下文,即层内融合

Either inter-layer fusion or intra-layer fusion empower CNNs an intrinsic IB in modeling scale-invariance. This paper introduces such an IB to vision transformers by following the intra-layer fusion idea and utilizing multiple convolutions with different dilation rates in the reduction cells to encode multi-scale context into each visual token.

无论是层间融合还是层内融合,都使cnn在建模尺度不变性时具有内在的IB。本文通过遵循层内融合思想,利用不同膨胀率的多卷积,将多尺度上下文编码到每个visual token中,将这种IB引入vision transformers。

二、Methodology

1、Overview architecture of ViTAE

有两种结构(cell):RCs and NCs。RCs负责将多尺度上下文和局部信息embedding到token中,NCs用于进一步建模token中的局部和长期依赖关系。

输入图片(H,W,3),通过3个RCs对其分别进行4×, 2×, 2×的下采样,得到feature maps(H/16,W/16,D),实验中D=64。然后拉伸为H*W/256×D的2D向量,添加cls token,正弦(sinusoid )位置编码。然后将tokens输入NCs,保留token的长度。最后,使用来自最后一个NC的cls token获得预测概率。

2、Reduction cells(RCs)

RC有两个并行分支,分别负责建模局部性和长程依赖性,然后是一个FFN,用于特征转换。

1)Pyramid Reduction Module, PRM

第一个RC的输入是图像x。在全局依赖项分支中,fi首先被输入到金字塔缩减模块(Pyramid Reduction Module, PRM)中来提取多尺度上下文:

第i个PRM模块,Convij表示第i个PRM模块中第j个卷积层,sij表示第i个PRM模块中第j个卷积层的膨胀率,使用跨步卷积来降低特征的空间维数(ri为步距),不同卷积得到的feature map通过在channel维度上进行concate,然后将fmsi由MHSA(Multiple head self-attention)模块处理,以建模长期依赖关系:

Img2Seq(·)是一个简单的reshape为1D序列的操作,

2)Parallel Convolutional Module (PCM)

使用并行卷积模块(PCM)将局部上下文embedd到token中,令牌与fgi融合:

平行卷积分支与跨步卷积的PRM具有相同的空间下采样比(保证能add)。

3)fusion

特征可以携带局部和多尺度上下文,这意味着RC通过设计获得了局部性IB和尺度不变性IB。

然后,融合的token被FFN处理,重新reshape为特征映射,并输入以下RC或NC,即:

Seq2Img(·)是将seqence reshape为feature maps的格式。

3、Normal cells(NCs)

NC除了缺少PRM外,具有与RC相似的结构。由于RC后的特征图空间尺寸相对较小(1/16 ×),在nc中不需要使用PRM.

首先将其与类标记tcls连接起来,然后将添加位置编码,上分支采用2D group卷积,下分支采用多头注意力机制,对最后一个NC生成的类令牌进行层归一化,并将其送入分类头,得到最终的分类结果。

4、model detail

在第一个RC中,默认卷积核大小为7 × 7,步幅为4,膨胀率为S1 =[1,2,3,4]。在接下来的两个rc中,卷积核大小为3 × 3, stride为2,膨胀率分别为S2 =[1,2,3]和S3 =[1,2]。由于标记的空间维度减小,因此不需要使用大内核和膨胀率。RCs和nc中的PCM都包含三个卷积层,核大小为3 × 3。

三、Experiments

1、Implementation details

ImageNet、224 × 224、AdamW、 cosine learning rate scheduler、batch size  512、initial learning rate 5e-4、8 V100 GPUs、PyTorch

2、Comparison with the state-of-the-art

3、Ablation study

4、Data efficiency and training efficiency

(a)在完整的ImageNet训练集上使用20%、60%和100%的ImageNet训练集进行等效100个epoch的训练,例如,与使用100%的数据相比,我们在使用20%的数据进行训练时使用5次epoch;

(b)使用完整的ImageNet训练集分别训练100、200和300个epoch

在较小的数据集Cifar10和Cifar100上从头开始训练ViTAE模型:

5、Generalization on downstream tasks

6、Visual inspection of ViTAE

Grad-CAM

Limitation

由于计算资源的限制,没有缩放ViTAE模型并在大型数据集上进行训练,例如ImageNet-21K和JFT-300M

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

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

相关文章

假设检验之卡方检验

之前我对卡方检验的了解都是一知半解的,即知道作用是对离散变量分布差异的比较,根据期望频数和观察频数的差异计算出来一个卡方值,之后根据自由度和显著性水平查卡方分布对应的临界值,比较大小得出有无明显差异的结论。 一般我们都…

基于FPGA平台实现 ARM Cortex-M0 SOC(一)简介

本系列笔记为基于FPGA平台实现 ARM Cortex-M0 SOC 集创赛作品复盘 Platform: ARM Cortex-M0 Design Srart AT510 XLINX FPGA ARM MDK 5 CM0-Design start 是ARM公司放出的一个免费的ARM 内核学习版本,它比M3还要简单,并且官方把整块代码模糊化…

TFN CK1840B 喇叭天线 定向 18GHz~40GHz

TFN CK1840B 喇叭天线 定向 18GHz~40GHz 产品概述 TFN CK1840B喇叭天线工作频率为 18GHz~40GHz。具有频带宽, 性能可靠, 增益高等优 点, 是理想的 EMC 测试、电子对抗等领域的定向接收、发射天线。 应用领域 ● 电子对抗领域 ● EMC 测试…

基于python多光谱遥感数据处理、图像分类、定量评估及机器学习方法应用

普通数码相机记录了红、绿、蓝三种波长的光,多光谱成像技术除了记录这三种波长光之外,还可以记录其他波长(例如:近红外、热红外等)光的信息。与昂贵、不易获取的高光谱、高空间分辨率卫星数据相比,中等分辨…

Gateway

Gateway—SpringCloud微服务网关组件 一、Spring Cloud Gateway简介 1.为什么要用Gateway? 在微服务架构中,通常一个系统会被拆分为多个微服务,微服务之间的调用可以用OpenFeign,但面对这么多微服务客户端调用会遇到哪些问题呢…

Hudi(3):Hudi之基本概念

目录 0. 相关文章链接 1. 时间轴(TimeLine) 1.1. Instant action:在表上执行的操作类型 1.2. Instant time 1.3. State 1.4. 两个时间概念 2. 文件布局(File Layout) 2.1. Hudi表的文件结构 2.2. Hudi存储的两…

Cocos 引擎生态部负责人李阳:己之所欲,可施于人,希望通过生态促进国内引擎技术发展

前言 “小小的身体,大大的能量,这个应该是我对大表姐最直接的感觉,在她娇小的身躯里蕴含了无限的精力和潜力,很像漫威里的神奇女侠,作为一个具备冒险精神的非典型程序员,大表姐热爱的体育活动都是很具挑战…

大数据系列——什么是ClickHouse?ClickHouse有什么用途?

目录 一、什么是ClickHouse 二、ClickHouse有什么用途 三、ClickHouse的不足 四、适用场景 五、ClickHouse特点 六、ClickHouse VS MySQL 七、类SQL 语句 八、核心概念 一、什么是ClickHouse clickHouse是俄罗斯的 Yandex 公司于 2016 年开源的列式存储数据库&#x…

win11系统用户名称为中文导致文件夹出现繁体字文件夹、系统路径配置错误修改教程(博主亲测,基于win11,系统文件保留)

写在前面:很多人在拿到新电脑激活那会,命名就是简单的中文,但是中文命名电脑系统名称,会导致系统用户文件夹自动命名为中文,在后期使用中会导致c盘系统用户文件夹下面出现不知名繁体字文件夹,甚至有的朋友会…

终难逃一阳

阳了,抗原试剂显示我阳了。每天都带口罩的我还是未能逃过此劫。真是覆巢之下,焉有完卵。 ​ 1.背景 12月初国家逐步放开防疫,随之而来的就是奥秘克戎肆虐全国。身边同事和朋友一个接着一个倒下,朋友圈里更是哀嚎一片。好在专家…

《CSAPP》笔记——链接、异常控制流、虚拟内存

文章目录传送门链接基础链接器的意义编译器驱动程序静态链接ELF目标文件格式可重定位目标文件符号和符号表链接过程符号解析解析规则静态链接库带有静态链接库的解析过程重定位重定位条目重定位节重定位符号引用重定位相对引用重定位绝对引用加载可执行目标文件动态链接共享库库…

Kafka 消费者组开发

Kafka consumer - 消费者组 上一篇文章学习到kafka消费者、消费者组之间处理消息的差异,总结起来就是: 同一个消费组的不同消费实例 共同消费topiic的消息, 一个消息只会消费一次; 也叫做集群消费同一个消息被不同的消费组同时消费&#xf…

机器学习基石1(ML基本概念和VC dimension)

文章目录一、什么是机器学习?二、什么时候可以使用机器学习?三、感知机perceptron四、机器学习的输入形式五、机器真的可以学习吗?六、vc dimension一、什么是机器学习? 其实第一个问题和第二个问题是穿插到一块儿回答的,首先机器学习要解决的是常规的…

RedisTemplate操作redis

目录 Redis Repositories方式 a、启用 Repository 功能 b、注解需要缓存的实体 c、创建一个 Repository 接口 d、测试类中测试 Redis Repositories方式 Spring Data Redis 从 1.7 开始提供 Redis Repositories ,可以无缝的转换并存储 domain objects&#xff0…

TOPSIS法(熵权法)(模型+MATLAB代码)

TOPSIS可翻译为逼近理想解排序法,国内简称为优劣解距离法 TOPSIS法是一种常用的综合评价方法,其能充分利用原始数据的信息,其结果能精确地反映各评价方案之间的距离 一、模型介绍 极大型指标(效益型指标) &#xff…

OR-Tools工具介绍以及实战(从入门到超神Python版)

目录前言0、安装一、什么是优化问题?1-1、优化问题介绍1-2、举例1-2-1、导入所需要的库1-2-2、声明求解器1-2-3、创建变量1-2-4、定义约束条件1-2-5、定义目标函数1-2-6、调用求解器,并且显示结果。二、python有关于各种优化问题示例2-1、简单的线性编程…

AlexNet 深度学习奠基作之一(1)

2012年发表 imagenet 一百二十万的图片 1000个种类 cv 对于刷榜 是非常在意的 AlexNet 有六千万的参数,和65000的神经元 为了减少过拟合 我们使用了dropout 很work 很有效 而且 这篇文章没有conclusion 只有 讨论 当他发现 从5个层里面去掉一个 performence会降…

ubuntu设置core文件

长久不写代码,突然发现ubuntu当前运行目录下没有生成core文件,记录如下,避免下次重找。 1、首先开启core文件权限: ulimit -c 如果结果为0, 则表示没有开启,需要开启,如下: 通过u…

【Linux】Linux系统SSH客户端断开后保持进程继续运行配置方法;Python等脚本在终端后台运行的方法

0. 概述 在Linux系统中,通常我们在执行一些运行时间比较长的任务时,必须等待执行完毕才能断开SSH连接或关闭客户端软件,否则可能会导致执行中断。本文介绍几种保障程序在用户退出登录后持续运行的方法。 一、方法 1. 使用nohup执行 nohup…

网络编程 事件选择模型

目录 1.概念分析 2.事件选择代码逻辑 1.WSACreateEvent函数 2.WSACloseEvent函数 3.WSAEventSelect函数 4.WSAWaitForMultipleEvents()函数 5.WSAEnumNetworkEvents函数 事件分类 3.##模型代码样例 1.概念分析 本质上是操作系统处理用户行为,详细如下 事件选…