Vision Mamba: 使用双向状态空间模型实现高效视觉表示学习.

0. TL;DR

本文提出了Vision Mamba(Vim),一种基于双向状态空间模型(SSM)的新型视觉骨干网络。Vim通过引入位置嵌入和双向SSM块,实现了对视觉数据的全局上下文建模,同时克服了传统SSM模型在视觉任务中的局限性。实验结果表明,VimImageNet分类、COCO目标检测和ADE20K语义分割等任务上均优于现有的视觉Transformer模型(如DeiT),并且在处理高分辨率图像时具有显著的计算和内存效率优势。

1. 背景介绍

近年来,状态空间模型(SSMs)在序列建模领域逐渐崭露头角,成为Transformer架构的有力竞争者。SSMs的优势在于其线性时间推理、高度并行化的训练以及在长序列处理任务中的强大性能。Mamba作为一种基于SSM的模型,通过其选择性机制和硬件感知设计,实现了令人印象深刻的性能,成为挑战注意力机制的Transformer架构的有力候选者。

与此同时,视觉Transformer(ViTs)在视觉表示学习领域取得了巨大成功,特别是在大规模自监督预训练和下游任务的高性能方面。然而,Transformer的自注意力机制在处理长距离视觉依赖时,例如高分辨率图像,会带来速度和内存使用方面的挑战。

为了将Mamba的成功从语言建模领域转移到视觉领域,本文提出了Vim,一种基于纯SSM的通用视觉骨干网络。Vim通过引入双向SSM块和位置嵌入,实现了对视觉数据的全局上下文建模,同时保持了SSM的高效性。

2. Vim 模型

Vim模型结合了双向SSM,用于数据依赖的全局视觉上下文建模;并通过位置嵌入实现位置感知的视觉识别。

为了使用Mamba处理视觉任务,作者设计了如下数据处理流程:

原始的Mamba模块是为一维序列设计的,不适合需要空间感知理解的视觉任务。故Vim Block结合了双向序列建模以用于视觉任务。

3. 实验分析

作者对Vim的双向设计进行了消融实验,结果表明,使用双向SSM,并且在 SSM 之前添加一个Conv1d的效果最好。

对于图像分类任务,VimImageNet-1K数据集上的表现优于现有的卷积网络、Transformer网络和SSM网络。具体来说,Vim-TiTop-1准确率为76.1%,高于DeiT-Ti72.2%Vim-STop-1准确率为80.3%,高于DeiT-S79.8%。此外,Vim在处理高分辨率图像时具有显著的速度和内存优势。

对于语义分割任务,VimADE20K数据集上的表现也优于DeiT。具体来说,Vim-TimIoU41.0%,高于DeiT-Ti39.2%Vim-SmIoU44.9%,高于DeiT-S44.0%

对于目标检测和实例分割,VimCOCO 2017数据集上的表现也优于DeiT。具体来说,Vim-Ti的目标检测AP45.7%,高于DeiT-Ti44.4%。实例分割的AP39.2%,高于DeiT-Ti38.1%