论文阅读笔记:Mamba in Vision: A Comprehensive Survey of Techniques and Applications

论文阅读笔记:Mamba in Vision: A Comprehensive Survey of Techniques and Applications

  • [1 介绍](#1 介绍)
  • [2 Mamba模型的分类](#2 Mamba模型的分类)
  • [3 Mamba模型概述](#3 Mamba模型概述)
    • [3.1 Mamba模型的基础原理](#3.1 Mamba模型的基础原理)
      • [3.1.1 状态空间模型](#3.1.1 状态空间模型)
    • [3.1.2 选择状态空间模型](#3.1.2 选择状态空间模型)
    • [3.2 Mamba扫描方法](#3.2 Mamba扫描方法)
  • [4 Mamba在计算机视觉中的应用](#4 Mamba在计算机视觉中的应用)
  • [5 与传统框架的比较分析](#5 与传统框架的比较分析)
  • [6 潜在的局限性和未来的展望](#6 潜在的局限性和未来的展望)
    • [6.1 有限泛化性:域特异性偏差和隐藏状态累积](#6.1 有限泛化性:域特异性偏差和隐藏状态累积)
    • [6.2 选择有效扫描机制的挑战](#6.2 选择有效扫描机制的挑战)
    • [6.3 有限的预训练模型可获得性和社区支持](#6.3 有限的预训练模型可获得性和社区支持)
    • [6.4 可解译性和可解释性:解开黑匣子](#6.4 可解译性和可解释性:解开黑匣子)
    • [6.5 安全性和对抗鲁棒性](#6.5 安全性和对抗鲁棒性)

论文阅读笔记

1 介绍

深度学习的发展极大地促进了计算机视觉的发展,其中卷积神经网络发挥了关键作用。卷积神经网络(CNNs)通过卷积层捕获了多个尺度的特征并构建了空间层次,使机器学习能够直接从像素数据中学习复杂的模式,从而使该领域发生了革命性的变化。尽管CNNs取得了成功,但由于其局部化的感受野,CNNs在捕获长距离依赖方面遇到了固有挑战。解决这些挑战往往需要更深,更复杂的架构,这增加了计算成本,降低了效率。

为了提高序列建模和全局上下文理解,循环神经网络(RNNs)被提出,随后Transformers的引入带来的深度学习的重大突破。循环神经网络,特别是具有长短期记忆(LSTM)单元的循环神经网络,提高了捕捉序列数据中时间依赖关系的能力。然而,他们的顺序特性限制了并行处理,从而减慢了速度,降低了可扩展性。Transformers利用其自注意力机制,通过允许模型对输入数据的不同部分进行动态优先级排序,克服了这一限制。视觉转换器(ViTs)将图像视为块的序列,更有效地捕获全局依赖关系。然而,尽管它们在各种计算机视觉任务重表现出强大的性能,但由于其注意力机制的二次复杂性,ViTs面临计算效率的挑战,特别是在高分辨率和实时应用中。

混合模型通过整合CNN、RNN和Transformer在计算机视觉任务中的优势来解决传统架构的局限性,例如,卷积LSTMs通过在LSTM单元内集成卷积操作来增强模型捕获时空关系的能力。类似地,Mobile ViT将卷积神经网络的局部特征提取与Transformer的全局上下文建模相融合。混合架构旨在平衡高性能和计算效率,但由于组件优化需求而增加了复杂性。

近年来,状态空间模型(SSMs)作为一种很有前途的替代方案得到了关注,特别是在处理序列数据时,有效地管理长距离依赖关系至关重要。结构化状态空间序列(S4)模型是该领域的一个值得注意的方向。他利用状态空间表示来实现线性计算复杂度。因此,可以在不影响精度的情况下有效的处理长序列。S4模型通过集成循环和卷积操作来实现,这有助于减少通常与序列建模相关的计算需求。

基于SSMs的基本原理,Mamba模型代表了序列建模的一个巨大飞跃。Mamba将状态空间理论与深度学习技术相结合,采用基于输入数据动态调整的选择性状态表示。这种选择性状态机制过滤掉不太重要的信息,以专注于输入序列中最相关的部分,从而减少计算开销,提高效率。Mamba架构使用了一种硬件感知的,基于扫描的,针对GPU优化的算法,避免了传统的基于卷积的SSM的低效率,这导致更快的训练和推理,从而有效的处理视觉数据,为计算机视觉同一种变革性的方法。

Mamba模型特别适用于视频处理等长时序序列处理任务,大型空间的遥感数据集以及需要高效精确的高分辨率数据处理的医学图像等。由于高计算需求,CNN和Transformer面临可扩展性问题,而Mamba模型通过提供随序列长度的线性可扩展性克服了这一问题,使其非常适合实时和大规模应用。它们将状态空间原理与选择性注意机制相结合,为处理复杂的视觉任务提供了一种健壮的方法,从而实现了更有效和可扩展的计算机视觉解决方案。图1(a)定性的比较了CNN,Transformer和Mamba框架,图1(b)是在ImageNet-1K数据集上基于各种度量指标的定量比较。

虽然最近的调查论文探讨了Mamba模型的各个方面(如SSMs)在计算机视觉和医学图像分析中的应用,但本文提供了一个独特的视角在模型类别,扫描方法,应用领域,与CNN和Transformers的比较以及未来的方向等方面进行了区分。如表1所示。

本文的主要贡献如下:

  • 对计算机视觉中的Mamba模型进行了全面的概述,突出了它们的特点,并与CNNs和Transformers进行了比较分析;

  • 提出了一种新的分类方法,将Mamba模型按计算机视觉的应用领域进行分类,指导研究人员根据其特定需求选择合适的模型;

  • 展示了Mamba模型的核心组件、扫描方法及其具体用例的优势和劣势;

  • 概述了Mamba模型中的关键挑战,并提出了未来的研究方向,以进一步改进其在计算机视觉中的应用。

2 Mamba模型的分类

Mamba对视觉任务的适应开始与2024年初,模型有VMamba和Vision Mamba(Vim)。这些初始模型推动了视觉处理的边界,为复杂的挑战提供了有效的解决方案。为了方便以后的研究,本文制定了一个全面的分类,如图2所示。这种分类突出了基于Mamba的模型在九个类别中的不同应用,对医学图像分析具有重大的贡献。

3 Mamba模型概述

这一部分提供了基于Mamba的视觉模型的基本流程,如图3所示。该流程对输入图像进行分块,然后进行一系列的扫描操作以提取多尺度特征。然后将图像块通过Mamba块,该块由线性投影,卷积层,SiLU激活和SSM操作组成,以优化提取特征。根据具体任务的不同,许多模型接着集成CNN和Transformer模块以增强性能。

3.1 Mamba模型的基础原理

3.1.1 状态空间模型

SSMs是序列数据深度学习中的一类基本模型。这些模型旨在将存在于实向量空间 R L R^L RL 中的一维输入序列 x ( t ) x(t) x(t),通过一个位于 R N R^N RN 中的中间隐状态 h ( t ) h(t) h(t) 映射到该空间中的输出序列 y ( t ) y(t) y(t)。这些模型由一组线性变换控制,状态方程如下:

其中, A ∈ R N × N A∈R^{N×N} A∈RN×N, B ∈ R N × 1 B∈R^{N×1} B∈RN×1 和 C ∈ N × 1 C∈^{N×1} C∈N×1 是适当维度的系统矩阵,分别决定了状态转移,输入和输出映射。

状态空间摸中的一些概念:

状态方程:描述系统状态随时间的演变。数学上,状态方程可以表示为:

x ˙ ( t ) = A ( t ) x ( t ) + B ( t ) u ( t ) \dot{x}(t)=A(t)x(t)+B(t)u(t) x˙(t)=A(t)x(t)+B(t)u(t)

其中 x ( t ) x(t) x(t) 是在时间步 t t t 的系统状态, x ˙ ( t ) \dot{x}(t) x˙(t) 是状态向量 x ( t ) x(t) x(t) 的导数, u ( t ) u(t) u(t) 是在时间步 t t t 的输入, A ( t ) A(t) A(t) 是状态转移矩阵, B ( t ) B(t) B(t) 是输入矩阵。

观测方程:描述系统输出与状态之间的关系。数学上,观测方程可以表示为:

y ( t ) = C ( t ) x ( t ) + D ( t ) u ( t ) y(t)=C(t)x(t)+D(t)u(t) y(t)=C(t)x(t)+D(t)u(t)

其中 y ( t ) y(t) y(t) 是时间步 t t t 的系统输出, C ( t ) C(t) C(t) 是观测矩阵, D ( t ) D(t) D(t) 是前馈矩阵。

为了实际应用,需要将连续时间模型转换为离散时间模型,以便在数字系统中实现。这种离散化通常使用零阶保持假设来实现,其中连续时间系统参数 A A A 和 B B B 在采样时间尺度 Δ \Delta Δ 上转化为其离散对应参数, Δ \Delta Δ 是一个正实数。离散化后的系统表示为:

零阶保持:零阶保持假设在每个离散时间间隔内输入保持不变。通过这种方法,式中的 Δ \Delta Δ 就是离散化的时间步长。

推导过程可参考:https://zhuanlan.zhihu.com/p/680534665

由此得到的离散模型方程为:

为了提高计算效率,整个序列的输出可以通过一个全局卷积操作来同时计算,增强了可扩展性和处理速度,公式如下:

其中,⊛表示卷积操作, L L L 表示序列的长度, K K K 是由SSM派生出来的核,专门用来高效处理序列。

SSMs通过递归来高效处理序列:

y L − 1 = C h L − 1 = C ( A ‾ h L − 2 + B ‾ x l − 2 ) = C ( A ‾ ( A ‾ h L − 3 + B ‾ x l − 3 ) + B ‾ x L − 2 ) = . . . = C ( A ‾ L − 1 B ‾ x 0 + A ‾ L − 2 B ‾ x 1 + . . . + A ‾ 0 B ‾ x L − 2 ) = ( C B ‾ , C A ‾ B ‾ , . . . , C A ‾ L − 1 B ‾ ) ( x L − 2 , x L − 3 , . . . , x 0 ) T = K ‾ x y_{L-1}\\=Ch_{L-1}\\=C(\overline{A}h_{L-2}+\overline{B}x_{l-2})\\=C(\overline{A}(\overline{A}h_{L-3}+\overline{B}x_{l-3})+\overline{B}x_{L-2})\\=...\\=C(\overline{A}^{L-1}\overline{B}x_0+\overline{A}^{L-2}\overline{B}x_{1}+...+\overline{A}^0\overline{B}x_{L-2})\\=(C\overline{B},C\overline{A}\overline{B},...,C\overline{A}^{L-1}\overline{B})(x_{L-2},x_{L-3},...,x_0)^T\\=\overline{K}x yL−1=ChL−1=C(AhL−2+Bxl−2)=C(A(AhL−3+Bxl−3)+BxL−2)=...=C(AL−1Bx0+AL−2Bx1+...+A0BxL−2)=(CB,CAB,...,CAL−1B)(xL−2,xL−3,...,x0)T=Kx

通过固定数值的 K ‾ \overline{K} K 矩阵作为卷积核,就可以并行计算。

3.1.2 选择状态空间模型

在传统的SSM框架的基础上,选择性SSM引入了一种动态的,自适应的机制来管理顺序状态之间的交互。与传统的SSM使用固定的转移参数A和B不同,Mamba模型具有依赖输入的参数,可以实现更灵活和上下文感知的参数化。

在Mamba模型中,参数B和C不再是静态的,而是根据输入序列 x x x 来计算的。这种动态计算使得模型可以根据输入序列的具体情况来调整其行为,从而提供对序列数据更细致的理解和处理。这些参数的维度分别为 B ∈ R B × L × N B∈R^{B×L×N} B∈RB×L×N 和 C ∈ R B × L × N C∈R^{B×L×N} C∈RB×L×N,其中 B , L B,L B,L 和 N N N 分别表示批次大小,序列长度和状态数。Mamba模型保证了序列长度的线性可伸缩性,并且在不同的领域,特别是计算机视觉任务重表现出文件的性能。

参考论文《Mamba: Linear-Time Sequence Modeling with Selective State Spaces》,选择性SSM流程如下:

VMamba和Vision Mamba(Vim)开创性的将Mamba应用于视觉任务,通过将图像转换为2D图像块,并在通过Mamba块处理之前采用不同的扫描技术。VMamba使用交叉扫描,沿水平和垂直方向处理图像块,而Vim将图像视为flatten后的二维图像块序列,并使用带位置嵌入的双向SSM。

原本的transformer扫描方法可以看做如下方式,时间复杂度为 O ( N 2 ) O(N^2) O(N2):

VMamba的扫描方式如下,时间复杂度为 O ( N ) O(N) O(N):

3.2 Mamba扫描方法

扫描室Mamba中的一个关键步骤,将2D视觉数据转换为1D序列以实现更高效的模型处理,各种方法不断涌现,以在不影响精度的情况下平衡空间完整性和计算效率。

在Mamba模型中,不同的扫描技术具有不同的用途。例如,局部扫描将图像分割成更小的窗口并对每个窗口进行独立的处理,这种方法保留了局部细节,但可能无法捕获图像更广泛的上下文。相比之下,全局扫描在一次扫描中处理整个图像,可以捕获更广泛的模式,但可能会丢失更精细的细节。多头扫描将图像块划分成多个子空间,允许模型在管理计算资源的同时捕获复杂模式。另一方面,双向扫描同时处理水平和垂直两个方向的图像,像这种方法有效地捕获了空间信息,但需要更多的计算能力。

为了说明各种遍历路径,图4提供了扫描技术的整理概述,如顺序、锯齿、螺旋、径向和希尔伯特曲线扫描。

  • 顺序扫描不管是水平的还是垂直的都是直接的,但可能难以捕获长距离的依赖关系。

  • 锯齿扫描通过在每一行或每一列后交替遍历方向来平衡局部和全局信息。

  • 螺旋和放射性扫描强调全面覆盖,从中心向外或边缘向内移动。它们在医学成像和遥感等应用中非常有效,其中详细的空间分析至关重要。

这些多样化的遍历路径使得Mamba模型能够适应不同数据集的特点和各种任务的要求。这些基本方法可以组合成更复杂的扫描方式,如图5所示。例如,我们可以通过结合顺序扫描 (图4A) 的第一、第二、第五和第七列和锯齿扫描(图4C) 的第三、第二、第八和第五列推导出全方位选择性扫描(图5f) 。

扫描技术可以通过将不同的遍历方向(局部,全局或空洞)与连续或不连续的模式相结合来增加。这种自适应性优化了对局部和全局特征的捕获,例如,空洞扫描(也称为高效扫描或跳过扫描)使用跳过机制来捕获细粒度的细节,同时保持计算效率。当与其他扫描技术相结合时,如顺序扫描或锯齿扫描,他们提供了更好的空间理解。

图5表示在Mamba模型中已经实现的几种扫描方法,每种扫描方法都设计了独特的权衡。Vision Mamba、VL-Mamba和Montion Mamba采用双向扫描(图5a),在水平和垂直方向上遍历图像块。这种方法有效捕获了全局上下文,尽管他们具有更高的计算成本。类似地,Vivim使用了空间选择性扫描,通过引入时间维度扩展了3D双向扫描(如图5b)。这种方法捕获了视频处理的控件和时间特征,但它也是高度计算密集的。VL-Mmamba使用交叉扫描(图5C)捕捉多样的空间特征。VMamba和VMRNN使用了类似的技术,称为2D选择性扫描(SS2D),从四个方向向中心扫描。

其他方法侧重于更有效地平衡局部和全局上下文。LocalMamba和FreqMamba使用局部扫描(图5d),也称为窗口选择扫描。该方法将图像划分成为小窗口,捕获了局部依赖关系,但潜在地缺失了全局上下文。ZigMa使用锯齿扫描,以锯齿模式进行扫描,以捕获不同的空间特征。然而这种方法在融合特征时计算量大切复杂。VmambaIR和RS-Mamba采用全方位选择性扫描(图5f),全方位扫描以获取全面的空间信息。虽然这种方法捕获了更广泛的特征,但它具有很高的计算成本。PlainMamba实现了连续的2D扫描(图5g),通过对相邻标记的排序时间空间连续性。然而,这种方法可能会忽略细粒度的细节。Motion Mamba使用分层扫描(图5h),在多个层次捕获特征。该方法在增强特征提取的同时,也增加了模型的复杂度。最后,EfficientVMamba使用了高效二维扫描(ES2D),也称为空洞选择性扫描(图5i)。该方法采用跳跃样本来平衡全局和局部特征提取,在性能和计算成本上同时达到最优。

扫描方法的有效性依赖于具体的任务和数据集。例如,一项关于遥感图像语义分割的研究发现,在没有额外计算开销的情况下,更简单的扫描策略与更复杂的扫描策略具有相似性能。这一发现表明,虽然先进的扫描技术可以捕获更丰富的时空关系,但并不总是能够带来显著的性能增益。因此,选择合适的扫描机制需要自己考虑任务需求、数据特征和可用的计算资源。如表2所示,本文提供了现有扫描方法的独特特点,优势,劣势和潜在用例。未来的研究可以探索基于图像内容动态调整的自适应扫描方法,整合训练过程中优化的学习模式。该方向具有提高Mamba模式在各种计算机视觉应用中的效率和准确性的潜能。

4 Mamba在计算机视觉中的应用

本部分展示了Mamba模型在不同计算机视觉任务中的共性和通用性。图6展示了Mamba模型的分布,这突出了他们在各种计算机视觉任务中的使用。

这里原文分析了通用框架、图像分类、目标检测、分割、图像增强、生成和重建、3D点云、视频处理、遥感、医学图像分析和多模态模型多个方向的应用,具体见原文。

5 与传统框架的比较分析

本节对Mamba(M)、CNN(C)和Transformer(T)模型进行了广泛的比较。本文终点关注关键指标,如参数数量(百万,M)、浮点运算(每秒千兆次浮点运算,G),Top-1准确率(%),平均交并比(mIoU),特定IoU预知下的平均精度(APx),可扩展性以及在核心计算机视觉任务重的性能,包括图像分类,目标检测,语义分割,视频行为分类和遥感。模型大小按Tiny(T),Small(S),Base(B),Medium(M),Large(L)和Huge(H)以确保不同尺度之间的公平比较。通过评估,本文强调了他们的优缺点,以及了解他们对这些任务的适用性,在深度到特定任务的比较之前,本文概述了CNN,Transformer和Mamba框架之间的基本区别,如表15所总结。

这里原文对图像分类,目标检测,语义分割,视频行为分类和遥感这几个方向进行了比较,最终结论如表15。

6 潜在的局限性和未来的展望

尽管Mamba模型具有显著的进步和良好的性能,但一些局限性阻碍了其更广泛的适应性和最佳性能。本部分钙素了这些潜在的限制和未来的前景,以确保Mamba模型能够实现其全部潜力。

6.1 有限泛化性:域特异性偏差和隐藏状态累积

尽管Mamba具有全局感受野,但它往往难以在不同域进行推广。这种局限性源于两个关键因素。

  • 首先,选择性扫描过程捕获隐藏状态中的特定域信息,创建偏向于训练数据的压缩表示,这限制了模型对新域的适应性。

  • 其次,双向扫描等方法往往会加强特定领域的偏差。例如,在自然图像上训练的模型可能优先考虑纹理模式,而在医学扫描上训练的模型可能侧重于解剖形状,从而限制了学习领域无关的特征。

为了解决隐藏状态的积累,dropout层或权重归一化可以直接应用于Mamba架构中的隐藏状态。这些技术在训练过程中引入受控噪声或约束,以帮助模型学习更通用的表示。此外,开发新的扫描机制以避免捕获特定领域的偏置是至关重要的。域自适应扫描,根据输入进行调整,或结合可学习的掩码选择性地关注特征,可以提高泛化能力。

6.2 选择有效扫描机制的挑战

Mamba最初是为一维序列数据设计的,当他们的选择性扫描方法适用于多维视觉数据时面临重大选择。其中一个主要的挑战是准确地捕获图像复杂的空间依赖关系和层次结构。传统的扫描技术,如线状或栅格扫描,往往无法保留图像细节分析所需的复杂空间关系。这种局限性源于Mamba的1D序列处理域视觉信息固有的多维特征之间的不匹配。此外,多方向扫描的冗余增加了计算需求,进一步增加了对视觉数据的适应性。

为了提高Mamba在视觉方面的有效性,已经探索了几种有前途的策略。开发多维选择性SSMs可以在保留Mamba计算优势的同时,使可视化数据处理更加高效。引入受人类视觉处理启发的分层扫描模式或使用注意力引导的扫描机制可以增强模型处理复杂视觉数据的能力。此外,稀疏扫描技术只专注于处理一幅图像中最具信息的块。它优化了大规模视觉任务的计算效率和性能。对不同扫描技术的实验研究为这些策略提供了有价值的见解。

6.3 有限的预训练模型可获得性和社区支持

深度学习架构的适配严重依赖于预训练模型的可用性。目前,与Transformers等较为成熟的架构相比,Mamba对预训练模型的选择有限。尽管存在一个值得注意的2.8 B参数Mamba模型,但总体上预训练模型的种类和数量仍然有限。这种稀缺性限制了它们对各种下游任务的适用性。此外,Mamba研究社区相对较新,积极为其发展做出贡献的研究者较少。这种情况放缓了创新的步伐,限制了开发人员可利用的资源。

为了扩大预训练模型的可用性,需要在不同的数据集上进行大规模的预训练。这些预训练的模型可以针对特定的任务进行微调,以减少训练时间,提高整体性能。此外,促进Mamba研究社区内部的合作和知识共享至关重要。组织工作坊、开发开源库、创建论坛讨论等举措可以促进增长、加强知识交流、加速架构的发展。

6.4 可解译性和可解释性:解开黑匣子

Mamba在各种计算机视觉任务上表现出令人印象深刻的性能,然而它在可解译性和可解释性方面存在困难。Mamba的SSM的复杂顺序特性,加上非线性激活和选择性状态更新,使得跟踪模型的决策过程或识别哪些特征最影响其预测变得更加复杂。Mamba中的选择性扫描机制本质上是非线性的,这使得确定导致特定预测的精确计算序列具有挑战性。此外,隐藏状态捕获了处理数据的复杂的、压缩的表示,使得解释这些高维空间中编码的特定特征和关系具有挑战性。

6.5 安全性和对抗鲁棒性

VMamba面临着显著的安全挑战,特别是它对对抗攻击的脆弱性。最近的研究表明,VMamba易受整幅图像和块特异性对抗操作的影响,从而改变模型的预测。但是,VMamba比Transformer架构表现出更强的对抗鲁棒性,特别是在较小的模型中。

先前的工作已经确定了SSM块中的参数B和C是关键的漏洞点,而Δ参数提供了对白盒攻击的一些防御。为了增强鲁棒性,未来的工作应该集中在减少对B和C的依赖,加强Δ的防御作用,以及开发针对VMamba的对抗训练技术。此外,解决VMamba的可扩展性问题- -因为它的鲁棒性随着模型复杂度的增加而降低- -对于确保更大规模应用程序的安全性至关重要。

相关推荐
hour_go18 小时前
Linux Shell 实验一:数据采集与脚本调试错误总结
linux·笔记·bash·shell·实验报告·错误排查
励志成为美貌才华为一体的女子18 小时前
本地用docling实现pdf转markdown操作笔记
笔记·pdf
患得患失94918 小时前
【Turborepo】【Next】 Turborepo + Next.js 前后端精简搭建笔记(带官网)
开发语言·javascript·笔记
阿部多瑞 ABU19 小时前
技术报告:高仿真虚构内容对主流大模型的现实感幻觉测试
人工智能·经验分享·笔记·学习·ai写作
songyuc19 小时前
Eureka: Human-Level Reward Design via Coding Large Language Models 译读笔记
笔记·语言模型·eureka
能不能别报错20 小时前
K8s学习笔记(十八) HPA控制器
笔记·学习·kubernetes
红苕稀饭66621 小时前
LongVU论文阅读
论文阅读
XiangrongZ21 小时前
江协科技STM32课程笔记(四)—定时器TIM(输入捕获)
笔记·科技·stm32
koo36421 小时前
李宏毅机器学习笔记24
人工智能·笔记·机器学习
老虎06271 天前
黑马点评学习笔记02(Mabatis—plus)
笔记·学习