学习记录——FLatten Transformer

news2024/10/6 18:27:56

FLatten Transformer: Vision Transformer using Focused Linear Attention

ICCV 2023
聚焦式线性注意力模块

关于Transformer

  在Transformer模型应用于视觉领域的过程中,降低自注意力的计算复杂度是一个重要的研究方向。线性注意力通过两个独立的映射函数来近似Softmax操作,具有线性复杂度,能够很好地解决视觉Transformer计算量过大的问题。 然而,目前的线性注意力方法整体性能不佳,难以实际应用。
  将Transformer模型应用于视觉领域并不是一件简单的事情。与自然语言不同,视觉图片中的特征数量更多,由于自注意力是平方复杂度,直接进行全局自注意力的计算往往会带来过高的计算量。针对这一问题,先前的工作通常通过减少参与自注意力计算的特征数量的方法来降低计算量。例如,设计稀疏注意力机制(如PVT)或将注意力的计算限制在局部窗口中(如Swin Transformer)。尽管有效,这样的自注意力方法很容易受到计算模式的影响,同时也不可避免地牺牲了自注意力的全局建模能力。
  线性注意力将Softmax解耦为两个独立的函数,从而能够将注意力的计算顺序从(query·key)·value调整为query·(key·value),使得总体的计算复杂度降低为线性。 然而,目前的线性注意力方法要么性能明显不如Softmax注意力,要么引入了过多的额外计算量导致模型推理速度很慢,难以实际应用。
  针对目前线性注意力机制的缺陷,论文创新地提出了聚焦的线性注意力模块,具有很强的模型表达能力并且推理速度很快。具体而言,文章从聚焦能力和特征多样性两个方面分析了现有线性注意力机制的缺陷,并分别设计了聚焦函数和矩阵秩恢复模块作为补偿,最终得到了比Softmax注意力性能更好的线性注意力模块。
在这里插入图片描述

关于线性注意力

  在自注意力计算中,Softmax提供了一种非线性的权重生成机制,使得模型能够更好地聚焦于一些重要的特征。如下图所示,本文基于DeiT-tiny模型给出了注意力权重分布的可视化结果。可以看到,Softmax注意力能够产生较为集中、尖锐的注意力权重分布,能够更好地聚焦于前景物体;而线性注意力的分布则十分平均,这使得输出的特征接近所有特征的平均值,无法聚焦于更有信息量的特征。
在这里插入图片描述

在这里插入图片描述

个人收获:这个模块主要功能是在不怎么影响性能的情况下降低计算量和计算复杂度。

End

以上仅作个人学习记录使用

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

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

相关文章

【图解】多层感知器(MLP)

图片是一个多层感知器(MLP)的示意图,它是一种常见的神经网络模型,用于从输入到输出进行非线性映射。图片中的网络结构如下:

python 打印沁园春 雪 居中对齐 文本对齐

以下是python 中使用 DebugInfo 模块居中对齐打印《沁园春・雪》的效果 引入模块 pip install DebugInfopython代码 # -*- coding:UTF-8 -*-# region 引入必要依赖 from DebugInfo.DebugInfo import * # endregion诗文 沁园春 雪 作者: 毛主席 北国风光,千里冰封…

12312321312

目录 层次分析法(AHP) 基本步骤 建立层次模型 构造判断矩阵 一致性检验 求得权重 填表得结果 一点补充 详细做法补充 特征向量含义思考 一些问题 优劣解距离法(TOPSIS) 基本思想 模型步骤 数据处理 指标正向化 标准化处理 计算得分 *结果处理 熵权法 模型思…

【【萌新的STM32学习-12】】

萌新的STM32学习-12 GPIO八种模式 1输入浮空 输入用,完全浮空,状态不定 2输入上拉 输入用,用内部上拉,默认是高电平 3输入下拉 输入用,用内部下拉,默认是低电平 4模拟功能 ADC DAC 5开漏输出 软件IIC的…

春秋云镜 CVE-2019-2725

春秋云镜 CVE-2019-2725 Weblogic < 10.3.6 ‘wls-wsat’ XMLDecoder 反序列化漏洞 靶标介绍 Oracle Fusion Middleware&#xff08;子组件&#xff1a;Web Services&#xff09;的 Oracle WebLogic Server 组件中的漏洞。受影响的受支持版本为 10.3.6.0.0 和 12.1.3.0.0。…

5个最重要的开源电商 ERP 系统功能

作为开源电商 ERP 系统领域的专家&#xff0c;我想分享一下电商企业在选择 ERP 系统时需要考虑的关键功能。 功能一&#xff1a;库存管理 库存管理是任何一家电商企业都必须考虑的问题。好的库存管理系统可以帮助企业减少库存积压、避免库存短缺&#xff0c;并提高库存周转率…

如何使用HTML5新增的标签来优化SEO?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 使用HTML5新增的标签来优化SEO&#xff1f;⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对…

SpringCloud学习笔记(一)_快速入门

SpringCloud简介 Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具&#xff08;例如配置管理&#xff0c;服务发现&#xff0c;断路器&#xff0c;智能路由&#xff0c;微代理&#xff0c;控制总线&#xff09;。分布式系统的协调导致了样板模式, 使用Spr…

MyBaits_Plus

MyBatis_Plus 文章目录 MyBatis_Plus0. 必备知识1.快速入门1.1什么是MyBatis_Plus1.2快速使用 2.配置日志3.CURD的扩展3.1Insert3.2 update3.3自动填充3.4乐观锁3.5delete 4.select4.1基本查询4.2分页查询4.3条件构造器 5.代码自动生成器 0. 必备知识 使用第三方组件一般步骤 …

[已解决]system: No such file or directory #include <filesystem>

make编译&#xff0c;遇到&#xff1a;system: No such file or directory #include <filesystem> &#xff08;1&#xff09;升级gcc[参考][gcc升级参考1][gcc升级参考2]&#xff1a;gcc7.5 升级为 gcc11.1, 未解决问题&#xff1b; &#xff08;2&#xff09;修改头文…

TienChin 渠道管理-工程创建

因为本文章主要围绕着项目开发进行&#xff0c;所以前言不做开头&#xff0c;直接上内容。 添加字段 我们的渠道表&#xff0c;我看到若依脚手架当中有一个是否删除的标志字段&#xff0c;所以我这里也添加一下&#xff1a; ALTER TABLE tienchin_channelADD COLUMN del_flag c…

使用MySQL:5.6和owncloud镜像搭建个人网盘

拉取镜像 [rootkvm ~]# docker pull mysql:5.6[rootkvm ~]# docker pull owncloud启动mysql容器 [rootkvm ~]# docker run -d --name db1 -e MYSQL_ROOT_PASSWORDroot mysql:5.6 db832e4e4333a0e9a7c152a67272721fdbe5381054090c5eb24f90455390a852 [rootkvm ~]# docker ps …

2、Spring_DI

DI 1.概述 概述&#xff1a;Dependency Injection 依赖注入&#xff0c;给对象设置属性&#xff0c;曾经我们需要自己去创建 mapper 对象&#xff0c;才能调用&#xff0c;现在交给 spring 创建&#xff0c;并且使用 DI 注入&#xff0c;直接拿来用&#xff0c;程序员就可以更…

小说作者分享:如何利用爱校对使我的作品更出彩?

在创作小说的过程中&#xff0c;校对和修改是至关重要的步骤。许多作家已经开始利用“爱校对”这一工具&#xff0c;有效地提高他们作品的质量。本篇文章将通过实际案例&#xff0c;展示一些小说作者是如何成功地利用爱校对来精雕细琢他们的文字&#xff0c;并将作品提升到一个…

数据结构,二叉树,前中后序遍历

二叉树的种类 最优二叉树 最优二叉树画法 排序取最小两个值和&#xff0c;得到新值加入排序重复1&#xff0c;2 前序、中序和后序遍历是树形数据结构&#xff08;如二叉树&#xff09;中常用的遍历方式&#xff0c;用于按照特定顺序遍历树的节点。这些遍历方式在不同应用中有不…

x86 分段机制

本篇只是做个记录,把重要的东西记录一下. 不保证正确x86中的物理地址计算过程 8086 时代的分段机制 这要从8086实模式说起 8086实模式 是基于 分段机制的.该模式下有段寄存器该模式下存在 逻辑地址[a:b] 和 (线性地址) 物理地址 // a 存储在段寄存器中,[a:b] 存储了 逻辑地址…

记一次由于整型参数错误导致的任意文件上传

当时误打误撞发现的&#xff0c;觉得挺奇葩的&#xff0c;记录下 一个正常的图片上传的点&#xff0c;文件类型白名单 但是比较巧的是当时刚对上面的id进行过注入测试&#xff0c;有一些遗留的测试 payload 没删&#xff0c;然后在测试上传的时候就发现.php的后缀可以上传了&a…

PostMan 测试项目是否支持跨域

使用PostMan可以方便快速的进行跨域测试。 只需要在请求头中手动添加一个Origin的标头&#xff0c;声明需要跨域跨到的域&#xff08;IP&#xff1a;端口&#xff09;就行&#xff0c;其余参数PostMan会自动生成。添加此标头后&#xff0c;请求会被做为一条跨域的请求来进行处…

Python编程基础-文件的打开和读取

文件的访问 使用 open() 函数 打开文件 &#xff0c;返回一个 file 对象 使用 file 对象的读 / 写方法对文件进行读 / 写的 操作 使用 file 对象的 close() 方法关闭文件 打开文件 open()方法&#xff0c;需要一个字符串路径&#xff0c;并返回一个文件对象&#xff0c;默认是”…

学习maven工具

文章目录 &#x1f412;个人主页&#x1f3c5;JavaEE系列专栏&#x1f4d6;前言&#xff1a;&#x1f3e8;maven工具产生的背景&#x1f993;maven简介&#x1fa80;pom.xml文件(project object Model 项目对象模型) &#x1fa82;maven工具安装步骤两个前提&#xff1a;下载 m…