赞
踩
点击下方卡片,关注“CVer”公众号
AI/CV重磅干货,第一时间送达
扫码加入CVer学术星球,可以获得最新顶会/顶刊上的论文idea和CV从入门到精通资料,以及最前沿项目和应用!发论文搞科研,强烈推荐!
转载自:机器之心 | 编辑:陈萍、泽南
Vision Mamba 不是个普通模型。
号称「全面包围 Transformer」的 Mamba,推出不到两个月就有了高性能的视觉版。
本周四,来自华中科技大学、地平线、智源人工智能研究院等机构的研究者提出了 Vision Mamba(Vim)。
论文地址:https://arxiv.org/pdf/2401.09417.pdf
项目地址:https://github.com/hustvl/Vim
论文标题:Vision Mamba: Efficient Visual Representation Learning with Bidirectional State Space Model
效果如何呢?在 ImageNet 分类任务、COCO 对象检测任务和 ADE20k 语义分割任务上,与 DeiT 等成熟的视觉 Transformers 相比,Vim 实现了更高的性能,同时还显著提高了计算和内存效率。例如,在对分辨率为 1248×1248 的图像进行批量推理提取特征时,Vim 比 DeiT 快 2.8 倍,并节省 86.8% 的 GPU 内存。结果表明,Vim 能够克服对高分辨率图像执行 Transformer 式理解时的计算和内存限制,并且具有成为视觉基础模型的下一代骨干的巨大潜力。
接下来我们看看论文内容。
Mamba 的提出带动了研究者对状态空间模型(state space model,SSM)兴趣的增加,不同于 Transformer 中自注意力机制的计算量会随着上下文长度的增加呈平方级增长,由于 SSM 擅长捕捉远程依赖关系,因而开始受到大家追捧。
在此期间,一些基于 SSM 的方法如线性状态空间层(LSSL)、结构化状态空间序列模型(S4)、对角状态空间(DSS)和 S4D 都被研究者提出来,用于处理各种序列数据,特别是在建模远程依赖关系方面。
Mamba 将时变参数纳入 SSM 中,并提出了一种硬件感知算法来实现高效的训练和推理。Mamba 卓越的扩展性能表明它在语言建模方面是 Transformer 有前途的替代品。
然而,到目前为止,研究者还尚未在视觉任务中探索出通用的基于纯 SSM 的骨干网络。
受 Mamba 在语言建模方面成功的激励,研究者开始设想能否将这种成功从语言转移到视觉,即用先进的 SSM 方法设计通用且高效的视觉主干。然而,由于 Mamba 特有的架构,需要解决两个挑战,即单向建模和缺乏位置感知。
为了应对这些问题,研究者提出了 Vision Mamba (Vim) 块,它结合了用于数据依赖的全局视觉上下文建模的双向 SSM 和用于位置感知视觉识别的位置嵌入。
与其他基于 SSM 的视觉任务模型相比,Vim 是一种基于纯 SSM 的方法,并以序列方式对图像进行建模。与基于 Transformer 的 DeiT 相比,Vim 在 ImageNet 分类上取得了优越的性能。此外,Vim 在 GPU 内存和高分辨率图像的推理时间方面更加高效。
方法介绍
Vision Mamba (Vim) 的目标是将先进的状态空间模型 (SSM),即 Mamba 引入到计算机视觉。
Vim 的概述如图 2 所示,标准的 Mamba 是为 1-D 序列设计的。为了处理视觉任务,首先需要将二维图像转换成展开的 2-D patch 。式中 (H, W) 为输入图像的大小,C 为通道数,P 为图像 patch 的大小。接下来,需要将 x_p 线性投影到大小为 D 的向量上,并添加位置嵌入得到如下公式:
Vim 块
原始的 Mamba 块是为一维序列设计的,不适合需要空间感知理解的视觉任务。Vim 块集成了用于视觉任务的双向序列建模,Vim 块如上图 2 所示。
Vim 块的操作算法如下所示。
架构细节
架构的超参数如下:
L:块数
D:隐藏状态维度
E:扩展状态维度
N:SSM 维度
遵循 ViT 和 DeiT,该研究首先采用 16×16 内核大小的投影层来获得非重叠 patch 嵌入的一维序列。随后直接堆叠 L 个 Vim 块。默认情况下块数 L 设置为 24,SSM 维度 N 设置为 16。为了与 DeiT 系列模型大小保持一致,该研究将小( tiny)尺寸变体的隐藏状态维度 D 设置为 192,将扩展状态维度 E 设置为 384。对于小(small)尺寸变体,该研究将 D 设置为 384,将 E 设置为 768。
实验
该研究在 ImageNet-1K 数据集上对 Vim 进行了基准测试。
图像分类
表 1 将 Vim 与基于 ConvNet、基于 Transformer 和基于 SSM 的骨干网络进行了比较。与基于 ConvNet 的 ResNet 相比,Vim 表现出更优越的性能。例如,当参数大致相似时,Vim-Small 的 top-1 准确率达到 80.3,比 ResNet50 高 4.1 个百分点。与传统的基于自注意力的 ViT 相比,Vim 在参数数量和分类准确率方面都有相当大的优势。与高度优化的 ViT 变体(即 DeiT )相比,VimTiny 比 DeiT-Tiny 高 0.9 个点,Vim-Small 比 DeiT 高 0.5 个点。与基于 SSM 的 S4ND-ViTB 相比,Vim 以减少 3 倍的参数实现了类似的 top-1 准确率。
图 1 (b) 和 (c) 比较了小型 Vim 和 DeiT 的 FPS 和 GPU 内存。随着图像分辨率的提高,Vim 在速度和内存方面表现出更好的效率。具体来说,当图像大小为 512 时,Vim 实现了与 DeiT 相似的 FPS 和内存。当图像大小增长到 1248 时,Vim 比 DeiT 快 2.8 倍,并节省 86.8% 的 GPU 内存。Vim 在序列长度上的线性扩展的显著优势使其为高分辨率下游视觉应用和长序列多模态应用做好了准备。
语义分割
如表 2 所示,Vim 在不同尺度上始终优于 DeiT:Vim-Ti 比 DeiT-Ti 高 1.0 mIoU,Vim-S 比 DeiT-S 高 0.9 mIoU。与 ResNet-101 主干网络相比,Vim-S 以减少近 2 倍的参数实现了相同的分割性能。
为了进一步评估研究方法在下游任务上(即分割、检测和实例分割)的效率,本文将骨干网与常用的特征金字塔网络(FPN)模块结合起来,并对其 FPS 和 GPU 内存进行基准测试。
如图 3 和图 4 所示,尽管该研究在主干网上附加了一个 heavy FPN,但效率曲线与纯主干网(图 1)的比较结果相似。
目标检测和实例分割
表 3 使用 Cascade Mask R-CNN 框架对 Vim-Ti 和 DeiT-Ti 进行了比较。Vim-Ti 超过 DeiT-Ti 1.3 box AP 和 1.1 mask AP。
下图为可视化结果:本文方法可以捕获图像中非常大的物体,这是 DeiT-Ti 等无法做到的。
了解更多内容,请参考原论文。
在CVer微信公众号后台回复:论文,即可下载论文pdf和代码链接!快学起来!
计算机视觉技术交流群成立
- 扫描下方二维码,或者添加微信:CVer444,即可添加CVer小助手微信,便可申请加入CVer-计算机视觉微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer、NeRF等。
- 一定要备注:研究方向+地点+学校/公司+昵称(如目标检测+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
- ▲扫码或加微信号: CVer444,进交流群
- CVer计算机视觉(知识星球)来了!想要了解最新最快最好的CV/DL/AI论文速递、优质实战项目、AI行业前沿、从入门到精通学习教程等资料,欢迎扫描下方二维码,加入CVer计算机视觉(知识星球),已汇集近万人!
-
- ▲扫码加入星球学习
- ▲点击上方卡片,关注CVer公众号
- 整理不易,请点赞和在看
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。