论文阅读——Slide-Transformer(cvpr2023)

Slide-Transformer: Hierarchical Vision Transformer with Local Self-Attention

一、分析

1、改进transformer的几个思路:

(1)将全局感受野控制在较小区域,如:PVT,DAT,使用稀疏全局注意力来从特征图选择稀疏的键对值,并且在所有查询中共享它们。

(2)就是Swin Transformer这条窗口注意力范式,输入被分为特殊设计的窗口,特征在窗口中提取并融合。非常有效,但是有一些局限性,一方面,稀疏全局注意力在捕捉局部特征方面往往较差,并且容易受到关键和值位置的影响,在这些位置,其他区域中的信息特征可能会被丢弃。另一方面,窗口注意可能会阻碍跨窗口通信,这又引入了额外的设计,如窗口偏移,从而对模型结构设置限制。

一个自然有效的替代方案不是缩小全局感受野,而是通过将每个查询的感受野约束在其自己的相邻像素中来采用局部注意力。与前面提到的注意力模式相比,局部注意力具有与平移等变和局部归纳偏差卷积的优点,同时也享有自注意机制的灵活性和数据依赖性。许多工作已经研究了将局部注意力应用于现代卷积或Transformer模型。然而,他们要么使用低效的Im2Col函数,这会导致推理时间的大幅增加,要么依赖于精心编写的CUDA内核,这限制了在没有CUDA支持的设备上的适用性。因此,开发一个既高效又可推广的局部注意力模块仍然具有挑战性。

PVT将特征图中的稀疏位置采样视为键值对。DAT采取了进一步的步骤,并以数据相关的方式将固定位置向不同的方向移动。MViT在输入上使用池化函数,以获得键和值对,这可以被视为特征图的较低分辨率。Swin Transformer使用窗口+位移,CSwin Transformer在此基础上使用十字形窗口,进一步提高模型能力。local attention限制每个查询的感受野在周围的像素。

2、Attention Patterns(即总结一下)

(1) 稀疏全局注意力考虑选择一组稀疏的键值对,而不是密集的特征图。然而,这也限制了将特征提取到有限的输入子集中的潜力。此外,键和值对对于所有查询都是相同的。这种查询不可知的选择策略可能导致整个特征图中的特征同质化。

(2) 窗口注意力是另一种将输入小心地完全划分为特定窗口的选项,在特定窗口中提取特征。尽管部分解决了查询不可知的键值对的限制,但所设计的模式可能会导致不自然的情况,即不同窗口边缘的特征尽管在特征图中很近,但却被完全隔离。此外,窗口模式需要在连续的块之间转换,以促进跨窗口的连接,这涉及到模型结构中的额外设计。

(3) 局部注意力将每个查询的感受野约束在其自己的相邻像素中,与卷积共享相似的模式。与以前的模式相比,局部注意力同时具有卷积和自我注意力的优点:1)以查询为中心的注意力模式产生的局部归纳偏差;2) 像传统卷积一样的平移等方差,显示出对输入偏移方差的鲁棒性;3) 涉及很少的人工设计,对模型架构设计的限制最小。

3、 Local Attention Implementation

不同方法的效率:

二、方法

1. New Perspective on Im2Col

图(1)是原本的Im2Col的基于列的试图。图2是基于行的试图,是作者发现的。以k=3为例,如果我们首先将原始特征图向9个不同的方向移动(图3(2.b)),然后将这些特征展平成行,最后将它们连接成列(图3的2.c)),则所获得的键/值矩阵被证明等效于HW局部窗口,该窗口可以恢复与原始Im2Col函数完全相同的输出(图3中的1.c))。

2. Shift as Depthwise Convolution

采用一个精心设计卷积核的深度卷积来代替低效的特征偏移。如上图(3.(3))

3. Deformed Shifting Module

引入了一种并行卷积路径,其中核参数在训练过程中被随机初始化并可学习。与将特征向不同方向转移的固定内核相比,可学习内核可以被解释为所有局部特征的线性组合。

(1) 局部注意力中的关键和价值对由一个更灵活的模块来处理,该模块大大提高了模型容量,并可以捕捉各种特征。(2) 可学习卷积核与DCN中的可变形技术表现出相似性。类似于DCN中四个相邻像素的双线性插值,我们的变形移位模块可以被视为局部窗口内特征的线性组合。这最终有助于增强输入的空间采样位置和模型几何变换。(3) 我们使用重新参数化技术[8]将两条平行路径转换为单个卷积。这样,我们可以在保持推理效率的同时提高模型容量。

结果:

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

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

相关文章

Linux:apache优化(3)—— 页面缓存时间

作用:通过 mod_expires 模块配置 Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求,减轻服务端工作压力。启用 mod_expires 模块后,会自动生成页面头部信息中的 Expires 标签和 CacheControl 标签&#xff0…

利用 IntelliJ IDEA 整合 GitHub 实现项目版本控制与协作管理

目录 前言1 设置GitHub登录账号2 将项目分享到GitHub3 IntelliJ IDEA 中导入Github项目4 往GitHub推送代码4.1 Commit Change(提交到本地库)4.2 Git -> Repository -> Push(推送到远程库) 5 拉取远程库代码到本地6 克隆远程…

08-React路由(Router 6版本)

Router5和Router6的变化 部分标签产生了变化,之前的标签都有了替(主要集中在Route匹配上),所以这里先回顾一下Router5,同时引出Router6的一些新特性 其次,React官方在推出Router6之后,就明确推…

【linux】Linux管道的原理与使用场景

Linux管道是Linux命令行界面中一种强大的工具,它允许用户将多个命令链接起来,使得一个命令的输出可以作为另一个命令的输入。这种机制使得我们可以创建复杂的命令链,并在处理数据时提供了极大的灵活性。在本文中,我们将详细介绍Li…

Python新手教程 —— Hello, World!

文章目录 Hello, World!作者自述关于本系列什么是编程语言什么是Python安装Python运行Python3解释器IDLE编写代码文件 本文复习Python技术资源分享1、Python所有方向的学习路线2、学习软件3、入门学习视频4、实战案例5、清华编程大佬出品《漫画看学Python》6、Python副业兼职与…

力扣刷题记录(22)LeetCode:714、300、674

714. 买卖股票的最佳时机含手续费 直接分析状态&#xff1a; 1.持有股票 可以是持续上一次持有股票的状态可以是买入当前股票 2.不持有股票 可以是持续上一次不持有股票的状态可以是卖出当前股票 class Solution { public:int maxProfit(vector<int>& prices, i…

轻松调整视频时长,创意与技术的新篇章

传统的视频剪辑工具往往难以精确控制时间&#xff0c;而【媒体梦工厂】凭借其先进的算法和界面设计&#xff0c;让视频时长的调整变得简单而精确&#xff0c;助你释放无限的创意&#xff0c;用技术为你的创意插上翅膀&#xff0c;让每一秒都有意义。 所需工具&#xff1a; 一…

sheng的学习笔记-【中】【吴恩达课后测验】Course 4 -卷积神经网络 - 第二周测验

课程4_第2周_测验题 目录 第一题 1.在典型的卷积神经网络中&#xff0c;随着网络的深度增加&#xff0c;你能看到的现象是&#xff1f; A. 【  】 n H n_H nH​和 n W n_W nW​增加&#xff0c;同时 n C n_C nC​减少 B. 【  】 n H n_H nH​和 n W n_W nW​减少&#x…

【C语言】随机数的生成

文章目录 前言rand函数srand函数time函数设置随机数的范围猜数字游戏的实现总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; C语言中的随机数生成是编程中常见的需求之一&#xff0c;用于模拟随机性、增加程序的变化性&#xff0c;或者进行一些涉及概…

《分布式事务理论基础:CAP定理 BASE理论》

目录 学习目标 1.分布式事务理论基础 1.1.本地事务 1.2.分布式事务 分布式事务产生的原因&#xff1f; 哪些场景会产生分布式事务&#xff1f; 单体系统会产生分布式事务问题吗&#xff1f; 只有一个库&#xff0c;会产生分布式事务问题吗&#xff1f; 分布式事务举…

数据预处理时,怎样处理类别型特征?

1. 序号编码 序号编码通常用于处理类别间具有大小关系的数据。例如成绩&#xff0c;可以分为低、中、高三档&#xff0c;并且存在“高>中>低”的排序关系。序号编码会按照大小关系对类别型特征赋予一个数值ID&#xff0c;例如高表示为3、中表示为2、低表示为1&#xff0…

C语言——扫雷

扫雷是一款经典的小游戏&#xff0c;那如何使用C语言实现一个扫雷游戏呢&#xff1f; 一、全部源码 直接把全部源码放在开头&#xff0c;如有需要&#xff0c;直接拿走。 源码分为三个文件&#xff1a; test.cpp/c 主函数的位置 #include "game.h"int main() {…

22款奔驰S450L升级主动式氛围灯 浪漫婉转的氛围感

主动式氛围灯有263个可多色渐变的LED光源&#xff0c;营造出全情沉浸的动态光影氛围。结合智能驾驶辅助系统&#xff0c;可在转向或检测到危险时&#xff0c;予以红色环境光提示&#xff0c;令光影艺术彰显智能魅力。配件有6个氛围灯&#xff0c;1个电脑模块。 1、气候&#xf…

MySQL 执行过程

MySQL 的执行流程也确实是一个复杂的过程&#xff0c;它涉及多个组件的协同工作&#xff0c;故而在面试或者工作的过程中很容易陷入迷惑和误区。 MySQL 执行过程 本篇将以 MySQL 常见的 InnoDB 存储引擎为例&#xff0c;为大家详细介绍 SQL 语句的执行流程。从连接器开始&…

Elasticsearch:升级索引以使用 ELSER 最新的模型

在此 notebook 中&#xff0c;我们将看到有关如何使用 Reindex API 将索引升级到 ELSER 模型 .elser_model_2 的示例。 注意&#xff1a;或者&#xff0c;你也可以通过 update_by_query 来更新索引以使用 ELSER。 在本笔记本中&#xff0c;我们将看到使用 Reindex API 的示例。…

如何安装ubuntu kylin(优麒麟)系统

半个月前(2020-12-25)&#xff0c;优麒麟官方发布消息说&#xff0c;优麒麟与 CodeWeavers 公司积极合作适配&#xff0c;正式推出 CrossOver 优麒麟版本&#xff0c;使优麒麟系统能够兼容运行 Windows 应用。将微信(crossover版) 和 QQ(crossover版) 上架麒麟软件商店。 优麒…

143.【Nginx-02】

Nginx-02 (五)、Nginx负载均衡1.负载均衡概述2.负载均衡的原理及处理流程(1).负载均衡的作用 3.负载均衡常用的处理方式(1).用户手动选择(2).DNS轮询方式(3).四/七层负载均衡(4).Nginx七层负载均衡指令 ⭐(5).Nginx七层负载均衡的实现流程 ⭐ 4.负载均衡状态(1).down (停用)(2)…

Linux:apache优化(2)—— 网页传输压缩

网页传输压缩 客户端在请求httpd服务器数据&#xff0c;httpd服务器在返回数据包给客户端时&#xff0c;先对返回的数据进行压缩&#xff0c;压缩之后再传输 作用&#xff1a;配置 Apache 的网页压缩功能&#xff0c;是使用 Gzip 压缩算法来对 Apache 服务器发布的网页内容进行…

【办公软件】Excel双坐标轴图表

在工作中整理测试数据&#xff0c;往往需要一个图表展示两个差异较大的指标。比如共有三个数据&#xff0c;其中两个是要进行对比的温度值&#xff0c;另一个指标是两个温度的差值&#xff0c;这个差值可能很小。 举个实际的例子&#xff1a;数据如下所示&#xff0c;NTC检测温…

JavaEE - 网络编程之回显服务器

目录 一.什么是回显服务器&#xff1f; 二.UDP是什么&#xff1f; 1.TCP 是有链接的&#xff0c; UDP 是无连接的 2.TCP是可靠传输的,UDP是不可靠传输的 3.TCP是面向字节流的&#xff0c;UDP是面向数据报 4.TCP和UDP是全双工的 三.UDP的 socket api 四. 具体代码实现 …