【ARXIV2207】LightViT: Towards Light-Weight Convolution-Free Vision Transformers

news2024/12/30 2:40:28

请添加图片描述

【ARXIV2207】LightViT: Towards Light-Weight Convolution-Free Vision Transformers

论文地址:https://arxiv.org/abs/2207.05557

代码地址:https://github.com/hunto/LightViT

1、研究动机

作者认为,在ViT中混合 convolution,是一种信息聚合的方式,convolution 建立了所 token 之间的明确联系。基于这一点,作者等人提出“如果这种明确的聚合能以更均匀的方式发挥作用,那么它们对于轻量级的ViTs来说实际上是不必要的”。

请添加图片描述

因此,作者提出纯 attention 的轻量级网络,架构如上图所示,可以看出主要改进在于 attention 和 FFN 部分:

  • Local-global broadcast attention: 在self-attention中引入可学习的全局标记来对全局依赖关系进行建模,并被广播到局部token中,因此每一个token除了拥有局部窗口注意计算带来的局部依赖关系外,还获得了全局依赖关系
  • 在FFN中,设计一种双维注意模块来提升模型性能

2、Local-global broadcast of attention

请添加图片描述

  • local windows attention:和大多数方法一样,在7x7的局部窗口中计算注意力
  • global aggregation:设计矩阵 G ∈ R T × C G\in\R^{T\times C} GRT×C,是可以学习的,其中T代表token数量,C是特征维度。G做为Q与 image token 计算注意力得到 G ^ \hat{G} G^
  • global broadcast:将 G ^ \hat{G} G^作为 K和V,和 image token 计算注意力,得到全局矩阵,与 local window attention 的结果相加得到输出

其中,T数量远小于窗口大小7x7(LightVIT-T中T设置为8),可以大大节省 global aggregation 和 broadcast 的计算量

3、FFN with bi-dimensional attention

作者提出了基于二维注意力的FFN,包括通道注意力和空间注意力两个分支,具体细节如下图所示,这里不再多说。

4、实验分析

该方法在多个任务上都取得了非常好的性能,这里重点介绍消融实验。如下表所示, global attn显著提升了性能,而计算量只有轻微增加。FFN中的空间注意力可以捕获空间相关性,并且选择性的关注重要的token,更好的挖掘图像结构信息。

请添加图片描述

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

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

相关文章

高校部署房产管理系统前要认真做好那些基础工作?

高校部署数图互通房产管理系统的目的是为了在学校产权范围的基础上,确保开发工作的合理性、房产资源调配的科学性,强化房产资源的使用,切实将学校房产作用功能发挥出来。 一、在部署房产管理系统前期基础性工作包括: 1、摸清家底…

【C语言】-程序环境和预处理指令

文章目录前言1、翻译环境2、执行环境前言 1、翻译环境 我们的代码运行出来,变为我们人眼可以看到的结果的这个过程会经过两个过程。 一、程序的翻译环境:在这个环境中,源代码会变成可以执行的机器指令。这个过程就是把我们人能看懂的语言转换…

操作系统4小时速成:内存管理,程序执行过程,扩充内存,连续分配,非连续分配,虚拟内存,页面替换算法

操作系统4小时速成:内存管理,程序执行过程,扩充内存,连续分配,非连续分配,虚拟内存,页面替换算法 2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人&…

艾美捷C1q天然蛋白的应用和化学性质说明

C1q是构成C1的一个重要成分,由小肠、结肠上皮细胞、血液中单核细胞、腹膜巨噬细胞、上皮细胞、肝脏、脾脏等合成。活化后能启发补体经典激活途径。 C1q蛋白家族由众多含C1q结构域的蛋白组成, 从细菌到高等哺乳动物中都有分布。这类蛋白由一条信号肽、胶原样区(Colla…

Java BIO基本介绍

Java BIO基本介绍Java BIO基本介绍工作原理BIO传统通讯实现总结BIO实现多发和多收结果:Java BIO基本介绍 📜Java BIO就是传统的java io 编程,其相关的类和接口在java.io📜Blo(blockingl/O):同步阻塞,服务器实现模式为…

Java本地搭建宝塔部署实战springboot仓库管理系统源码

大家好啊,我是测评君,欢迎来到web测评。 本期给大家带来一套Java开发的springboot仓库管理系统源码。 技术架构 技术框架:jdk8 jQuery MySQL5.7 mybatisplus layui shiro运行环境:jdk8 IntelliJ IDEA maven3 宝塔面板 本…

云计算HCIA学习笔记-云计算基础概念

第1章 云计算基础概念 1.1 云计算课程安排说明 (IA-虚拟化-FC / IP-Linux OpenStack 桌面云/IE-备份容灾迁移) 1.2 为什么云计算IA讲虚拟化? 提前告知学员,为什么IA课程要重点讲解虚拟化?云计算基于OpenStack&…

c++多线程(一)线程管理

来源:微信公众号「编程学习基地」 文章目录1.启动线程2.等待线程完成2.1特殊情况下的等待2.2使用RAII等待线程完成2.3后台运行线程2.4量产线程,等待结束2.传递参数3.转移线程所有权4.运行时决定线程数量2.5 识别线程1.启动线程 当把函数对象传入到线程…

G1D15-fraud-APT-汇报-基础模型与LR相关内容总结-KG-cs224w colab1-ctf rce41-44

一、fraud 跑了一个lr模型,从正则,一直看到了极大似然和最大后验估计emmm。一路跑偏,已经0954了。先把实验结果抄一抄 本来想把模型都跑完,没想到看R补充了大量的基本知识(L1\L2正则、先验概率 今天先来看fraud 看的…

Hive——详细总结Hive中各大查询语法

✅作者简介:最近接触到大数据方向的程序员,刚入行的小白一枚 🍊作者博客主页:皮皮皮皮皮皮皮卡乒的博客 🍋当前专栏:Hive学习进阶之旅 🍒研究方向:大数据方向,数据汇聚&a…

单隐层神经网络在Matlab上实现及其简单应用

🍒🍒🍒欢迎关注🌈🌈🌈 📝个人主页:我爱Matlab 👍点赞➕评论➕收藏 养成习惯(一键三连)🌻🌻🌻 🍌希…

Kafka 认证三:添加 Kerberos 认证详细流程

背景 上一章节介绍了 Kerberos 服务端和客户端的部署过程,本章节继续介绍 Kafka 添加 Kerberos 认证的部署流程,及 Java API 操作的注意事项。 sasl.kerberos.service.name 配置的含义 Kafka 添加 Kerberos 部署的核心是 Kafka 服务端的 Principal 配…

基于gensim实现word2vec模型(附案例实战)

目录 什么是word2vec? Word2Vec的原理 gensim实现word2vec模型(实战) 什么是word2vec? Word2Vec是google在2013年推出的一个NLP工具,它的特点是能够将单词转化为向量来表示,这样词与词之间就可以定量的…

20+个很棒的 Python 脚本的集合(迷你项目)

💂 个人网站:【海拥】【摸鱼小游戏】【神级源码资源网站】🤟 风趣幽默的前端学习课程:👉28个案例趣学前端💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】💬 免费且实用的 前…

【软件分析第17讲-学习笔记】程序综合 Program Synthesis

文章目录前言正文程序综合枚举法CEGIS:基于反例的优化约束求解法启发式搜索法统计法基于组件的程序综合 Component-Based Synthesis小结参考文献前言 创作开始时间: 如题,学习一下程序综合 Program Synthesis的相关知识。参考:熊…

AUTOSAR-Fee模块

(73条消息) AUTOSAR-Fee模块_一ye残雪的博客-CSDN博客_fee 配置 0 前言 Fee模块全称Flash EEPROM Emulation Module,属于ECU抽象层 Fee模块本身是脱离硬件的,但是Fee模块可能会引用的Fls模块定制API,所以只能算半抽象 本文中,由于…

数据库高级 III

数据库高级 III 二叉排序树在极端情况下存在的问题 二叉排序树在极端情况下会产生失衡二叉树 失衡二叉树其实是不希望存在的,因为它失去了二叉排序树的查询优势,现在这种失衡二叉树的查询效率和单向链表一样,此时它就是单向链表 数据结构…

14.4、SpringWebFlux-1

14.4、SpringWebFlux-1 14.4.1、前置知识 SpringMVC,SpringBoot,Maven,Java8 新特性 14.4.2、基本介绍 官方文档 Web on Reactive Stack (spring.io) 是 Spring5 添加新的模块,用于 web 开发的,功能 SpringMVC 类…

网络热传App鉴定 |「得物」疑私删用户视频?从技术角度还原事件始末

声明:本文更注重于原理知识的普及,因此文中不会有大量实际代码的展示,如果想从代码层面上了解「应用存储分区」的内容,欢迎阅读我两年前写过的技术文章《Android 10 应用分区存储适配实践》 近日,有网友爆料&#xff0…

MySQL 分库分表

MySQL分库分表 概念 读写分离优化了互联网读多写少场景下的性能问题,考虑一个业务场景,如果读库的数据规模非常大,除了增加多个从库之外,还有其他的手段吗?实现数据库高可用,还有另外一个撒手锏&#xff…