首页 > 其他分享 >【阅读文献笔记】VMamba

【阅读文献笔记】VMamba

时间:2024-11-13 16:45:48浏览次数:3  
标签:CSM 视觉 VMamba 模型 扫描 笔记 图像 文献

      鹏城实验室网络智能研究部视觉智能研究所与中国科学院、华为公司共同合作,在Github开源了高效高精度视觉表征模型—视觉状态空间模型Vmamba.

      虽然CNNs和ViTs在计算视觉特征表示方面都取得了显著的成功,但与 CNN 相比,ViT 通常表现出更优越的性能,这主要归因于注意力机制促进的全局感受野和动态权重。然而注意力机制需要图像大小的二次复杂度,导致在处理下游稠密预测任务时计算开销很大。为了解决这个问题,本文设计了一种新的具有线性复杂度并且保留全局感受野和动态权重的模型架构—Vmamba。

      VMamba旨在结合卷积神经网络(CNNs)的线性复杂度和视觉变换器(ViTs)的全局感受野和动态权重的优势,同时提高计算效率。

      VMamba在有效降低注意力复杂度方面的关键概念继承自选择性扫描空间状态序列模型(SelectiveScan Space State Sequential Model,s6)。使一维数组(例如文本序列)中的每个元素通过压缩隐藏状态与先前扫描的任何样本进行交互,有效地将二次复杂度降为线性。然而,由于视觉数据的非因果性质,直接将这种策略应用于补丁化和展平的图像将不可避免地导致受限的感受野,因为无法估计相对于未扫描的补丁的关系。作者将这个问题称为“方向敏感”问题,并提出通过新引入的交叉扫描模块(Cross-Scan Module,CSM)来解决它。CSM 不是以单向模式(列向或行向)遍历图像特征映射的空间域,而是采用四向扫描策略,即从特征映射的四个角到相对位置。这种策略确保特征映射中的每个元素从不同方向的所有其他位置集成信息,从而产生全局感受野,而不增加线性计算复杂性。

CSM模块

如图我们选择将图像块沿行和列展开成序列(扫描展开),然后沿着四个不同的方向继续扫描:从左上到右下、从右下到左上、从右上到左下、从左下到右上。通过这种方式,任何像素(如图2中的中心像素)都集成了来自不同方向的所有其他像素的信息。

然后,我们将每个序列重新塑造为单个图像,并将所有序列合并为一个新的图像,如图3所示(扫描合并)。整体流程就是:我们首先使用CSM(扫描扩展)扫描一个图像。然后通过S6块分别处理四个结果特征,并将四个输出特征合并(扫描合并),以构建最终的2D特征图。

架构

VMamba将几个VSS块堆叠,处理特征图上,保持相同的维数,构成Stage 1。VMamba中的层次表示是通过patch合并操作对“Stage 1”中的特征图进行下采样来构建的。随后,涉及到更多的VSS块,输出分辨率为H/8 ×W/8,形成“Stage 2”。重复此过程以创建“阶段3”和“阶段4”,其分辨率分别为H/16×W/16和H/32×W/32。所有这些阶段共同构建了类似于流行的CNN模型和一些ViTs的层次表示。最终的体系结构可以作为实际应用程序中具有类似需求的其他视觉模型的通用替代。

实验

• VMamba 在 ImageNet-1K 图像分类任务上展示了优越或至少与基准模型相竞争的性能。 • 在 COCO 目标检测任务和实例分割任务上, VMamba 在不同训练计划下均保持了优越的框 / 掩码平均精度( AP )。 • 在 ADE20K 语义分割任务上,无论是单尺度测试还是多尺度测试, VMamba 同样展现了优越的准确性。

总结

1.提出了VMamba,这是一种具有全局感受野和动态权重的视觉状态空间模型。

2.引入了CSM,使得S6能够适应视觉数据,而不影响接收场。

3.证明了VMamba在各种视觉任务中的潜力,特别是在图像分辨率提高时,其性能优势更加明显。

论文强调,VMamba不仅在各种视觉任务中表现出色,而且随着输入图像尺寸的增加,其性能提升更为显著,这表明了VMamba作为强大视觉基础模型的潜力。

标签:CSM,视觉,VMamba,模型,扫描,笔记,图像,文献
From: https://blog.csdn.net/qq_46460379/article/details/143746804

相关文章

  • UDP 协议 - 学习笔记
    摘要:本文原创,转载请注明地址https://www.cnblogs.com/baokang/p/18543885一、UDP是什么UDP(UserDatagramProtocol)用户数据报协议是运输层协议的一种,是一种无连接的数据传输协议二、UDP协议的特点(1)UDP是无连接的,发送数据前不需要建立连接,因此减少的发生数据量和发送数据......
  • 拒绝平铺直叙,阿里最新SpringBoot进阶笔记真香
    相信从事Java开发的朋友都听说过SSM框架,老点的甚至经历过SSH,说起来有点恐怖,比如我就是经历过SSH那个时代未流。当然无论是SSM还是SSH都不是今天的重点,今天要说的是SpringBoot,一个令人眼前一亮的框架,从大的说,SpringBoot是取代了SSM中的SS的角色。但值得一说的是,SpringBoot这......
  • 计算机网络 - 运输层 - 学习笔记
    摘要:本文原创,转载请注明地址https://www.cnblogs.com/baokang/p/185432591、运输层是什么,起什么作用定义:运输层是计算机网络体系结构中关键层次之一,它属于面向通信部分的最高层,同时也是用户功能中的最低层。只有主机的协议栈中才有运输层,而网络核心部分中的路由器在转发分组......
  • GDB 学习笔记
    GDB学习笔记在使用gdb进行调试时,编译时需要加上-g参数,以确保生成包含调试信息的可执行文件。常用命令程序控制run(r)[arg1arg2...]从头开始运行程序直到结束或遇到断点,后面可以添加命令行参数。continue(c)从当前位置开始继续执行,直到下一个断点或程序结束。nex......
  • Kruskal 重构树学习笔记+杂题
    图论系列:前言:相关题单:戳我一.最小瓶颈路唉,前面4个题单里其实有不少题是最小瓶颈路的做法啊。讲解摘自wiki。1.定义无向图\(G\)中\(x\)到\(y\)的最小瓶颈路是这样的一类简单路径,满足这条路径上的最大的边权在所有\(x\)到\(y\)的简单路径中是最小的。(对于下面这张......
  • 工作学习笔记(七)Java的接口
    今天复习一下Java的基础知识,之前对于接口只有一个比较笼统的概念,经过一晚上的梳理,整理如下:它一种抽象类型,用于定义一组方法和常量。是Java多态性的重要体现。定义接口使用 interface 关键字来定义,例如 publicinterfaceMyInterface{} 。接口中的成员变量默认是 public......
  • C++黑马程序员网课:我的学习心得与笔记(更新中)
    前言:笔记来源于C++黑马程序员网课视频:https://www.bilibili.com/video/BV1et411b73Z在此发布笔记,只是为方便学习,不做其他用途,原作者为黑马程序员。1.C++基础1.1用VisualStudio写C++程序输出HelloWorld1.1.1下载并配置VisualStudio环境1.1.2用VisualStudio写C......
  • Linux多进程学习笔记(六)Socket
    网络套接字socket跨主机传输要注意的问题1字节序问题大端:低地址处放高字节小端:低地址处放低字节主机字节序:host网络字节序:network解决:_to__:htons,htonl,ntohs,ntohl字节序问题(ByteOrderIssue),也称为端序问题(EndiannessIssue),是指在不同计算机系统中数据的字节......
  • 一口气了解大模型相关通识,基础笔记!
    一、大模型生态有哪些语言类大模型:GPT-3、GPT-3.5、GPT-4系列模型。并且,OpenAl在训练GPT-3的同时训练了参数不同、复杂度各不相同的A、B、C、D四项大模型(基座模型),用于不同场景的应用;前排提示,文末有大模型AGI-CSDN独家资料包哦!其中,A、B、C、D模型的全称分别是ada、b......
  • 点云学习笔记16——提取点云的边界,填充边界
    #include<iostream>#include<algorithm>#include<pcl/io/pcd_io.h>#include<pcl/point_types.h>#include<pcl/visualization/pcl_visualizer.h>voidBoundaryExtraction(pcl::PointCloud<pcl::PointXYZ>::Ptrcloud,pcl::Poi......