Mamba:挑战 Transformer 的状态空间模型
为什么 Mamba 值得关注
过去几年,Transformer 几乎支撑了人工智能领域的主要突破:从自然语言生成、代码生成,到蛋白质结构预测,注意力机制已经成为基础模型的核心组件。
但 Transformer 也有一个结构性问题:当序列变长时,注意力机制需要让每个 token 与此前所有 token 交互。训练中的时间复杂度通常随序列长度呈二次增长,自回归生成时,每生成一个新 token 也要处理越来越长的上下文。同时,KV cache 需要随上下文长度线性增长,占用大量显存。
Mamba 的提出,正是为了应对这一长序列瓶颈。它属于状态空间模型(State Space Models,SSMs)的一类,用另一种方式完成 token 之间的信息传递。
Transformer 的核心瓶颈
在 Transformer 中,一个基础模块通常包含两类能力:
- 通信:不同 token 之间交换信息,主要由注意力机制完成。
- 计算:对单个 token 表示进行变换,通常由 MLP 完成。
注意力机制的优势是表达能力强,任意 token 都可以访问前文信息。但代价也很明显:上下文越长,计算越慢,显存压力越大。
一些工程优化可以缓解这个问题,例如滑动窗口注意力、FlashAttention 等。但对于百万级 token 的超长上下文,仅靠优化注意力机制本身可能不够。因此,Mamba 尝试替换 Transformer 中负责“通信”的部分。
Mamba 的基本思路
Mamba 使用受控制理论启发的状态空间模型来处理序列信息。直观地说,它不让每个 token 都直接查看所有历史 token,而是维护一个压缩后的“状态”。这个状态用于概括过去的信息,并随着新输入不断更新。
可以把状态理解为“对过去的压缩记忆”。如果这个状态足够好,那么模型不必保存完整历史,也能根据当前输入和已有状态预测下一步输出。
在连续时间表述中,状态空间模型通常包含类似这样的关系:
h'(t) = Ah(t) + Bx(t)
y(t) = Ch(t) + Dx(t)
其中,h 表示隐藏状态,x 是当前输入,y 是输出,矩阵参数决定状态如何随输入演化。实际机器学习任务中,输入是离散 token,因此模型还需要将连续系统离散化,以适应序列建模。
一个直观类比:只更新必要信息
可以想象一个跑酷游戏智能体。它不必每一帧重新理解整个画面,而是维护一个关于当前位置、速度、障碍物位置等信息的状态。新画面只带来增量信息,智能体根据已有状态和新观察就能决定下一步动作。
Mamba 的思路类似:模型不必让当前 token 显式访问全部历史 token,而是通过状态更新保留关键历史信息。这种方式有望在长序列上更高效。
与 Transformer 的差异
Mamba 仍然保留类似 MLP 的计算结构,但用状态空间模型替代注意力机制承担跨 token 通信任务。
这种设计带来几个重要特征:
- 序列长度线性扩展:相比注意力机制的二次瓶颈,Mamba 在长序列上更容易扩展。
- 推理速度更快:相关论文中称,Mamba 具有快速推理能力,并可在某些场景下明显快于 Transformer。
- 适合长上下文:模型设计目标之一是处理百万级长度序列。
- 跨模态潜力:Mamba 被用于语言、音频、基因组等序列建模任务。
在语言建模实验中,Mamba 作者称 3B 参数规模的 Mamba 模型可以超过同等规模 Transformer,并接近两倍规模 Transformer 的表现。这一说法来自模型论文中的实验结果,仍需结合具体任务、训练数据和评测设置理解。
状态压缩的代价
Mamba 的优势来自“压缩过去”。但压缩也意味着取舍:如果某些历史细节没有进入状态,它们可能无法被后续步骤直接访问。
Transformer 的注意力机制虽然昂贵,但它允许模型在生成时回看细粒度历史信息。Mamba 则更依赖状态更新机制能否保留足够关键的信息。因此,它并不是简单地“全面替代 Transformer”,而是在长序列效率和信息访问方式之间选择了不同权衡。
对可解释性和安全性的影响
如果基础模型从注意力结构转向状态空间结构,可解释性研究也会受到影响。许多针对 Transformer 的分析方法依赖注意力头、残差流、MLP 激活等结构特征;Mamba 的内部信息流不同,可能需要新的分析工具。
安全性方面,长上下文能力本身具有双重含义:它可能让模型更好地处理长文档、长期对话和复杂任务,也可能让模型在更长输入中积累更复杂的行为模式。因此,对这类模型的评估不能只看困惑度或基准分数,还需要关注长上下文稳定性、记忆行为和异常输入下的鲁棒性。
小结
Mamba 的核心价值不在于提出一个更酷的模型名称,而在于它重新审视了基础模型中的“通信机制”。Transformer 依赖注意力在 token 之间传递信息,而 Mamba 通过状态空间模型压缩和更新历史信息。
如果这种路线继续验证有效,未来的基础模型可能不再只有 Transformer 一种主干结构。对于需要超长上下文、低延迟推理或跨模态序列建模的应用,Mamba 提供了一个值得关注的方向。
