在过去几年里,人工智能成功的秘诀看似简单得具有欺骗性: 采用 Transformer 架构,喂给它海量数据,然后看着它学习。这种“Attention is All You Need” (注意力即一切) 的范式不仅统治了自然语言处理 (NLP) ,也统治了计算机视觉领域。

然而,Transformer 有一个众所周知的阿喀琉斯之踵: 计算复杂度 。 随着输入序列长度的增加,计算成本呈二次方增长 (\(O(N^2)\)) 。对于视觉语言模型 (VLMs) 来说,这极其令人头疼,因为高分辨率图像会产生数千个“视觉 token”,导致长序列会拖慢训练和推理速度。

这时 Mamba 登场了,它是基于结构化状态空间模型 (SSMs) 的新竞争者。Mamba 承诺了大家梦寐以求的目标: 拥有与 Transformer 相当的性能,但具备 线性扩展能力 (\(O(N)\)) 。

但是,Mamba 真的能处理多模态数据的复杂性吗?我们能否直接把 VLM 中的 Transformer 换成 Mamba 并指望它能“看”懂世界?

在这篇文章中,我们将深入探讨一篇引人入胜的研究论文 “Shaking Up VLMs” , 该论文在 Mamba 和 Transformer 之间进行了一场严格的、受控的正面交锋。结果令人惊讶,揭示了这两种架构在“个性”上的显著差异——一个是总结大师,另一个则是细节大师。

问题所在: 二次复杂度瓶颈

要理解这项研究的重要性,我们首先需要了解现代 VLM 是如何工作的。通常,一个 VLM 包含三个部分:

  1. 视觉编码器 (Vision Encoder) : 将图像转换为特征块 (token) 的网格。
  2. 连接器 (Connector) : 将这些视觉 token 投影到语言模型的嵌入空间中。
  3. 大语言模型 (LLM) : 处理视觉 token 和文本 token 以生成答案。

大多数现代 VLM (如 LLaVA 或 GPT-4V) 都使用 Transformer 作为 LLM 的骨干。因为 Transformer 使用一种称为 自注意力 (Self-Attention) 的机制,每个 token 都会关注其他每一个 token。如果你将图像分辨率翻倍,所需的内存和计算量就会翻四倍。这限制了模型能够“看到”多少细节。

另一方面,Mamba 是一个 循环 (Recurrent) 模型。它逐个处理 token,并更新一个固定大小的隐藏状态。它不需要在每一步都回顾整个历史;它只是将相关信息传递下去。这使得它极其高效。

方法论: 公平对决

比较不同的架构是出了名的困难。如果模型 A 击败了模型 B,是因为架构更好,还是因为模型 A 看了更好的训练数据?

为了解决这个问题,研究人员设计了一个完全受控的实验。他们构建了两种截然不同的 VLM 架构:

  1. Pythia-VL: 使用标准的 Transformer (Pythia) 骨干网络。
  2. Mamba-VL: 使用 Mamba 骨干网络。

关键在于, 其他所有条件都完全相同 。 他们使用了相同的视觉编码器、相同的连接器、完全相同的训练数据 (混合了 620 万个图像-文本对) ,以及相同的训练顺序。这种隔离确保了性能上的任何差异都归因于架构本身。

Mamba-VL 的架构

用 Mamba 构建 VLM 并不是简单的即插即用。Mamba 将数据作为一维流处理,但图像本质上是二维空间结构。

Mamba-VL 架构概览,展示了图像输入、分词器、视觉连接器以及生成描述的 Mamba 语言模型。

Figure 1 所示,研究人员利用 EVA-02 视觉编码器来创建视觉嵌入。这些嵌入通过一个简单的 MLP 连接器传输。

由于 Mamba 不像 Transformer 那样天生理解二维网格或“位置” (Transformer 使用位置嵌入) ,研究人员必须另辟蹊径。他们引入了 特殊分隔符 token :

  • ## : 标记图像的开始和结束。
  • && : 标记扁平化图像序列中像素“行”的结束。

这种结构有助于顺序处理的 Mamba 模型理解图像的空间布局。

引擎盖下: 状态空间方程

为什么 Mamba 如此高效?它本质上是一个复杂的循环神经网络 (RNN) 。简单来说,它通过隐藏状态 \(h(t)\) 将序列 \(x(t)\) 映射到输出 \(y(t)\)。

连续时间状态空间方程。

在 Transformer 中,“历史”通过将所有之前的 token 保存在内存中 (KV 缓存) 来保存。在像 Mamba 这样的 SSM 中,历史被压缩进隐藏状态 \(h_t\) 中。

状态空间模型的离散递归方程。

Mamba 的决定性特征在于参数 \(B\) 和 \(C\) 是 输入依赖 (input-dependent) 的。这使得模型能够具有“选择性”——它可以选择在每个时间步记住相关信息并遗忘无关的噪声。

实验: 总结 vs. 检索

研究人员在广泛的任务上评估了这些模型。为了理解结果,将这些任务分为两类很有帮助 (如 Figure 2 所示) :

  1. 粗粒度任务: 这些任务需要对图像有一个整体的理解 (例如,图像描述、视觉问答) 。模型需要总结场景的“主旨”。
  2. 细粒度任务: 这些任务需要精确定位具体的细节或位置 (例如,视觉定位、寻找物体的坐标) 。

VLM 任务分类,包括图像描述、VQA 和视觉定位。

结果 1: Mamba 是个出色的叙述者

当涉及到需要推理、总结或回答一般性问题的任务时, Mamba-VL 实际上表现优于 Transformer。

结果表格显示 Mamba-VL 在图像描述和通用 VQA 任务上优于 Pythia-VL。

观察 Table 1 , 在不同的模型规模 (790M, 1.4B, 2.8B) 下,Mamba 在以下方面始终小胜 Pythia:

  • 图像描述 (Image Captioning) : 描述场景。
  • 视觉问答 (VQA) : 回答“这只狗拿着什么?”
  • 阅读理解: 读取图像中的文本。

这表明 Mamba 的“选择性”状态非常擅长将视觉信息压缩成语义摘要。它比同等规模的 Transformer 能更好地捕捉图像的“氛围”和叙事。

结果 2: 定位差距

然而,当我们观察 视觉定位 (Visual Grounding) ——即模型必须输出物体具体边界框坐标的任务 (例如,“蓝色烧瓶在哪里?”) 时,剧情发生了戏剧性的反转。

在这里, Transformer 始终获胜 , 而且随着模型规模的增大,差距进一步 拉大。虽然 Mamba 可以描述烧瓶,但它难以精确地指出它的位置。

即使研究人员试图通过提高图像分辨率 (这通常会提高性能) 来帮助模型,差距依然存在。

微调后的模型在高分辨率下的比较。Pythia 在定位任务中受益明显更多。

Figure 3 (中间图表) 所示,将分辨率提高到 \(480 \times 480\) 显著提升了 Pythia 的定位性能,而 Mamba 的提升幅度则小得多。

为什么 Mamba 在定位任务上表现挣扎?

研究人员并没有止步于报告分数;他们调查了 为什么 会出现这种分歧。他们提出了两个假设。

假设 1: “任务无关”问题

Mamba 顺序处理数据: [图像 token] -> [文本指令] -> [响应]。 因为它逐步更新隐藏状态,当它读到文本指令 (例如,“找到红色的杯子”) 时,它已经处理并压缩了图像。

如果模型在处理图像时不知道 要找什么,它可能已经把“红色杯子”的空间位置当作无关噪声丢弃了。Transformer 没有这个问题,因为它们可以在读取指令 之后 利用注意力机制回顾图像 token。

为了测试这一点,研究人员反转了输入顺序: [文本指令] -> [图像 token]。这被称为 任务感知编码 (Task-Aware Encoding)

展示使用任务感知编码后的相对性能差异图表。

结果 (Figure 4) : 这对 Mamba 有一点帮助 (在 RefCOCO 上平均提升 +1.53%) ,但这并不是灵丹妙药。Pythia 的表现仍然更好。严格的数据顺序并不是唯一的罪魁祸首。

假设 2: “检索”问题

这引出了论文的核心洞察: 视觉定位实际上是一个检索任务。

为了提供物体的坐标,模型实际上需要将特定的 patch 信息从输入序列“复制”到输出。Transformer 天生擅长这一点——注意力机制就像查字典一样。你查询“蓝色杯子”,注意力机制就会从图像序列中检索出确切的向量。

然而,Mamba 必须将所有内容压缩到一个固定大小的状态中。

为了证明这一点,作者设计了一个 合成定位任务 (Synthetic Grounding Task) 。 他们创建了一系列随机的唯一 token,并要求模型识别特定查询 token 的位置。这是对神经网络进行的“大海捞针”测试。

合成视觉定位任务概览。

结果对 Mamba 来说是毁灭性的。

性能曲线显示 Pythia 学习合成任务的速度比 Mamba 快得多。

Figure 6 所示,Pythia (Transformer) 几乎瞬间学会了解决这个检索任务 (红线立即飙升至 100% 准确率) 。Mamba (蓝线) 则非常吃力,需要更长的时间来学习,而且当序列长度增加时,有时甚至无法收敛。

这证实了一个根本性的局限: 状态空间模型难以从其上下文历史中执行精确的“复制粘贴”式检索。 它们擅长压缩摘要,但不擅长保留每一个具体细节的完美存档。

热图与学习模式

研究人员进行了更深入的研究,可视化了模型在序列的 哪些位置 成功检索到了信息。

热图比较位置准确率。Pythia 分布均匀;Mamba 在中间的 token 上表现挣扎。

Figure 7 揭示了学习动态:

  • Pythia (上图) : 颜色均匀明亮。它在训练早期就能同样好地从序列中的 任何位置 检索信息。
  • Mamba (下图) : 它表现得很挣扎。它首先学会检索序列最末端 (最近的记忆) 的项目。然后它学会了开头。它在中间部分最为吃力。

这种“中间混乱”是循环模型试图管理压缩记忆状态时的典型症状。

结论: 特性还是缺陷?

这篇名为“Shaking Up VLMs”的论文对多模态 AI 的未来得出了一个微妙的结论。

  1. Mamba 是有力的竞争者: 对于需要高级推理、描述和聊天的任务,Mamba 不仅是 Transformer 的可行替代品——它往往更好且更高效。
  2. 检索瓶颈: 对于需要精确空间定位或“指向”特定历史的任务,SSM 的压缩机制与 Transformer 的“照相式记忆”相比是一个劣势。

启示

这项研究表明,未来可能不是“Transformer vs. Mamba”的对决,而是两者的混合。我们可能会看到这样的架构: 使用 Mamba 层进行高效的高级推理和海量上下文处理,并在其中穿插 Attention 层以处理检索和定位任务。

对于学生和研究人员来说,这突显了深度学习中至关重要的一课: 架构即命运。 我们构建到模型中的归纳偏置——无论是 Transformer 的全局注意力还是 SSM 的顺序压缩——从根本上决定了它们能感知什么,以及不能感知什么。