MambaOut: 是否真的需要视觉mamba?

论文标题:MambaOut: Do We Really Need Mamba for Vision?
论文地址:https://arxiv.org/pdf/2405.07992

摘要

Mamba 这种基于状态空间模型(SSM)的架构,虽然可以解决自注意力机制的平方复杂度问题,但在视觉任务中的表现并不如顶尖的卷积或注意力机制的模型。

Mamba 更适合具有长序列和自回归特性的任务,但图像分类不符合这两点,所以 Mamba 对于图像分类并不必要。

然而,检测和分割任务符合长序列特性,虽然不是自回归的,因此仍然有探索 Mamba 在这些任务中潜力的价值。

MambaOut 系列模型通过去掉核心的 SSM 模块,验证了 Mamba 在图像分类任务中的不必要性,但对于检测和分割任务,Mamba 仍然表现出较强的潜力

提出假设

Mamba 是否适合视觉任务?文章分析了 Mamba 的机制,指出其适合具有长序列和自回归特性的任务。图像分类任务既不具有长序列特性,也不自回归;检测和分割任务虽然符合长序列特性,但不是自回归的。

本文提出两种假设:

  • 假设1:SSM 对于图像分类并不必要,因为它不符合长序列和自回归特性。
  • 假设2:SSM 可能对目标检测和分割任务有帮助,因为它们符合长序列特性,尽管不是自回归的。

通过实验表明假设都是正确的。

mamba 适合什么任务?

长序列且自回归的任务。

类似于RNN的SSM的本质是因果注意力模型,隐藏状态h可以被视为一个固定大小的记忆卡,存储历史信息,通过更新记忆来更新记忆卡,卡的大小是恒定的。所以可以说SSM本质上记忆是有损的,相比于Transformer,短序列上表现的并不好,但是在长序列上的表现要优于Transformer。

上图(a)展示的是因果注意力模型,每一步都会保存历史的k和v,随着序列变成,计算复杂度也会增加。

(b)展示的是类RNN的模型(SSM),将过去状态压缩到固定大小的hidden state中,记忆大小固定,所以记忆会丢失,计算复杂度不变,更适合长序列。

觉图片识别任务上,并不需要非常长的序列。

在这个分析中,输入的大小为 X ∈ R L × D X \in \mathbb{R}^{L \times D} X∈RL×D,其中 L L L 是 token 长度(即序列长度), D D D 是通道或嵌入的维度。根据这个设定,FLOPs 可以计算为:
F L O P s = 24 D 2 L + 4 D L 2 \mathrm{FLOPs} = 24D^2L + 4DL^2 FLOPs=24D2L+4DL2

这里,第一项表示线性复杂度,第二项是与 L L L 的二次复杂度。

为了比较二次项和线性项的计算负担,引入了一个比率 r L r_L rL: r L = 4 D L 2 24 D 2 L = L 6 D r_L = \frac{4DL^2}{24D^2L} = \frac{L}{6D} rL=24D2L4DL2=6DL

当 L > 6 D L > 6D L>6D 时,二次复杂度的计算负担将超过线性复杂度,这意味着该任务具有长序列特征。

举例来说:

对于 ViT-Small(ViT-S),通道数 D = 384 D = 384 D=384,因此阈值为:
τ small = 6 × 384 = 2304 \tau_{\text{small}} = 6 \times 384 = 2304 τsmall=6×384=2304

对于 ViT-Base(ViT-B),通道数 D = 768 D = 768 D=768,因此阈值为:
τ base = 6 × 768 = 4608 \tau_{\text{base}} = 6 \times 768 = 4608 τbase=6×768=4608

对于 ImageNet 上的图像分类任务,典型的输入图像大小为 22 4 2 224^2 2242,这意味着每个图像分割为 1 6 2 16^2 162 的 patch 后生成 1 4 2 = 196 14^2 = 196 142=196 个 token。显然,196 远小于 τ small \tau_{\text{small}} τsmall 和 τ base \tau_{\text{base}} τbase,这表明 ImageNet 上的图像分类任务并不符合长序列任务的特征。

对于 COCO 数据集上的目标检测和实例分割任务,推理图像的大小为 800 × 1280 800 \times 1280 800×1280,而 ADE20K 数据集上的语义分割推理图像的大小为 512 × 2048 512 \times 2048 512×2048。这些情况下,token 数量大约为 4K。由于 4 K > τ small 4K > \tau_{\text{small}} 4K>τsmall 且 4 K ≈ τ base 4K \approx \tau_{\text{base}} 4K≈τbase,因此这两个任务可以被视为长序列任务。

总的来说,这一分析表明,图像分类任务通常不是长序列任务,而目标检测和语义分割等任务由于图像的高分辨率,具有长序列的特征。

全可见与因果模式的适用性: 在视觉识别任务中,全可见模式允许模型一次性访问所有输入信息,因此对理解任务(如图像分类、物体检测和语义分割)更为合适。而因果模式限制了每个 token 只能访问之前的 token,因此更适合自回归任务(如语言生成)。

因果限制对视觉任务的影响: 对视觉任务施加因果限制会导致性能下降,尤其是对于像 Vision Transformers 这样依赖全局信息的模型。视觉任务不需要因果 token 混合,因为它们并不具有自回归特性。

实验证明

本文设计了实验来佐证假设:

根据图 1(a) 所示,Mamba 模块是基于 Gated CNN 模块构建的。Gated CNN 和 Mamba 的元架构可以看作是 MetaFormer 的 token mixer 和 MLP 的简化集成,类似于 MetaNeXt 。给定输入 X ∈ R N × D X \in \mathbb{R}^{N \times D} X∈RN×D,其元架构公式如下:

X ′ = N o r m ( X ) , Y = ( T o k e n M i x e r ( X ′ W 1 ) ⊙ σ ( X ′ W 2 ) ) W 3 + X , X' = \mathrm{Norm}(X), \\ Y = (\mathrm{TokenMixer}(X'W_1) \odot \sigma(X'W_2))W_3 + X, X′=Norm(X),Y=(TokenMixer(X′W1)⊙σ(X′W2))W3+X,

其中, N o r m ( ⋅ ) \mathrm{Norm}(\cdot) Norm(⋅) 表示归一化操作, T o k e n M i x e r ( ⋅ ) \mathrm{TokenMixer}(\cdot) TokenMixer(⋅) 是用于进行 token 混合的模块, W 1 ∈ R D × r D W_1 \in \mathbb{R}^{D \times rD} W1∈RD×rD, W 2 ∈ R D × r D W_2 \in \mathbb{R}^{D \times rD} W2∈RD×rD 和 W 3 ∈ R r D × D W_3 \in \mathbb{R}^{rD \times D} W3∈RrD×D 是带有 MLP 扩展比 r r r 的可学习参数, σ \sigma σ 是激活函数。Gated CNN 和 Mamba 的 token mixer 分别为:

T o k e n M i x e r G a t e d   C N N ( Z ) = C o n v ( Z ) , T o k e n M i x e r M a m b a ( Z ) = S S M ( σ ( C o n v ( Z ) ) ) . \mathrm{TokenMixer}{\mathrm{Gated\,CNN}}(Z) = \mathrm{Conv}(Z), \\ \mathrm{TokenMixer}{\mathrm{Mamba}}(Z) = \mathrm{SSM}(\sigma(\mathrm{Conv}(Z))). TokenMixerGatedCNN(Z)=Conv(Z),TokenMixerMamba(Z)=SSM(σ(Conv(Z))).

通过比较公式,以及参考图 1(a),Gated CNN 和 Mamba 模块 之间的主要区别在于是否包含 SSM。因此,本文开发了一系列名为 MambaOut 的模型,它基于 Gated CNN 模块而没有使用 SSM。MambaOut 评估 Mamba 在视觉识别任务中的必要性。

具体而言,我们将 Gated CNN 的 token mixer 指定为 7 × 7 核大小的 depthwise 卷积 ,参考 ConvNeXt。此外,为了提高实际速度,我们仅在部分通道上执行 depthwise 卷积 ,参考 InceptionNeXt。如算法 1 所示

Gated CNN 模块的实现既简单又优雅。类似于 ResNet,我们通过在每个阶段堆叠 Gated CNN 模块构建了 MambaOut,如图 4 所示。

每个模型尺寸的配置细节显示在附录中的表 4。

实验结果

1. 图像分类 (ImageNet)

MambaOut在ImageNet图像分类任务中表现优异,超过了包含SSM的Mamba模型。具体结果如下:

MambaOut-Small 模型的Top-1准确率为 84.1%,比 LocalVMamba-S 提高了 0.4%,同时只需要 79% 的MACs计算量。

实验结果表明,MambaOut模型在没有SSM的情况下,仍然能够在ImageNet上取得优异的分类性能,验证了假设1:在ImageNet图像分类任务中,引入SSM是不必要的。

2. 目标检测和实例分割 (COCO)

在COCO数据集上,MambaOut作为Mask R-CNN的骨干网络进行目标检测和实例分割任务。结果表明:

MambaOut-Tiny 在目标检测任务中比 VMamba-T 落后了 1.4 APb 和 1.1 APm,表明在长序列视觉任务中,Mamba的优势仍然存在。

虽然MambaOut在某些情况下超过了部分Mamba模型,但在与最先进的视觉Mamba模型(如 VMamba 和 LocalVMamba)的对比中,仍有性能差距。这验证了假设2:尽管Mamba在图像分类任务中表现不佳,但在长序列视觉任务(如目标检测和分割)中仍然值得进一步探索。

3. 语义分割 (ADE20K)

在ADE20K语义分割任务中,MambaOut与现有的Mamba模型进行对比:

MambaOut-Tiny 模型在单尺度 (SS) 和多尺度 (MS) 评估中的mIoU值比 LocalVMamba-T 分别低了 0.5。

结果表明,MambaOut虽然在某些情况下超越了一些Mamba模型,但在最先进的Mamba模型上,MambaOut依然表现稍逊,验证了Mamba在长序列建模方面的潜力。

总结:

MambaOut在ImageNet分类任务中,成功验证了SSM并不必要,且能有效超越现有的视觉Mamba模型。

在目标检测和语义分割等长序列任务中,Mamba仍然具有优势,MambaOut无法完全达到最先进的Mamba模型的性能。

相关推荐
lynn-fish2 分钟前
机器人对人工智能未来发展的影响
人工智能·机器人
旗晟机器人4 分钟前
A4-C四驱高防变电站巡检机器人
大数据·人工智能·安全·机器人
weixi_kelaile5208 分钟前
ai智能语音电销机器人可以做哪些事情?
java·linux·服务器·人工智能·机器人·云计算·腾讯云
雪兽软件5 小时前
人工智能和大数据如何改变企业?
大数据·人工智能
UMS攸信技术7 小时前
汽车电子行业数字化转型的实践与探索——以盈趣汽车电子为例
人工智能·汽车
ws2019077 小时前
聚焦汽车智能化与电动化︱AUTO TECH 2025 华南展,以展带会,已全面启动,与您相约11月广州!
大数据·人工智能·汽车
堇舟8 小时前
斯皮尔曼相关(Spearman correlation)系数
人工智能·算法·机器学习
爱写代码的小朋友8 小时前
使用 OpenCV 进行人脸检测
人工智能·opencv·计算机视觉
Cici_ovo9 小时前
摄像头点击器常见问题——摄像头视窗打开慢
人工智能·单片机·嵌入式硬件·物联网·计算机视觉·硬件工程