当前位置:   article > 正文

一文通透mamba2:力证Transformer are SSM——从SSM、半可分矩阵、SSD到mamba2

一文通透mamba2

前言

实话说,过去一两月一直忙着我司两大类项目的推进

  1. 一类是正在逐一上线基于大模型的论文翻译、论文审稿、论文对话、论文修订/润色、论文idea提炼等等
  2. 一类是正在抓紧做面向一个个工厂的具身智能机器人的解决方案,且很快会分别在我司在各地的办公室(南京、长沙、武汉、北京)一一摆上一两台干活的具身机器人

所以虽然说mamba2已发布一月有余,但实在是没有一块完整的时间来对其做详尽而细致的解读,而最终促使我来写的最大的动力还是来源于我半年前对mamba1的解读,实在是太受欢迎了且影响力巨大(截止到24年7月初,半年下来阅读量10万,2千余次收藏,在同样发表半年内文章中的表现很突出)

加之之前就有读者在我对上面mamba1做解读的文章下留言,什么时候出mamba2的解读,让我好几次跃跃欲试想开写

然,在我下定决心写本文之前,内心还是有过一阵小纠结的

  • 一方面,怕没有一大块完整的时间(回想过去,23年上半年因为ChatGPT,公司重新焕发生机,个人也前所未有的沉迷于技术,又因23年下半年做大模型项目延续至今,今后因为业务的增长 大量的各种会议 可能难以再像过去一年半百分百沉迷于技术了)
  • 二方面,mamba2的论文特别长,即《Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality》一文长达52页,全是各种概念、公式,故为了更好的理解mamba2,建议先熟练mamba1
    当然,mamba2的核心主要解决两个问题:1 打通SSM与transformer之间的联系,2 将mamba2表述为矩阵乘法以加速训练

不过还是因为过去十多年写博客的经验,使得自己在面对再难啃的算法都有足够的自信与底气,坚信都可以一步步拆解、一步步抽丝剥茧并清晰易懂的写出来(读者在看本文时,也不用急,一步步来,可以慢慢看懂的,且未来一两月 我也会不断修订本文以让之不断更加通俗易懂),故本文最终还是来了

第一部分 背景回顾:从SSM、结构化矩阵到结构化状态空间对偶SSD

1.1 结构化状态空间模型Structured State Space Model

1.1.1 离散化、循环结构表示、卷积结构表示

虽然在之前对mamba1的讲解中已经讲过了很多背景,但为本文的完整性起见,还是把一系列背景知识按照mamba2论文的思路,再度逐一梳理下

首先,结构化状态空间序列模型S4是受到的特定连续系统的启发(如下述公式1所示,是结构化SSM的一般离散形式),该系统将一维序列x \in \mathbb{R}^{\top} \mapsto y \in \mathbb{R}^{\top}通过隐式潜在状态h \in \mathbb{R}^{(\mathrm{T}, \mathrm{N})} 做映射(相当于将SSM简单地写成矩阵乘法)

  1. 其中x_ty_t均是标量,h_t则被视为具有N维的向量,且A \in \mathbb{R}^{(\mathbb{N}, \mathrm{N})}, B \in \mathbb{R}^{(\mathbb{N}, 1)}, C \in \mathbb{R}^{(\mathbb{N}, 1)}
  2. 其中的A 矩阵 控制时间动态,从而必须是结构化的(结构化SSM也因此得名),以便能够足够高效地计算这种序列到序列的转换,从而在深度神经网络中使用

梳理一下结构化SSM的发展历史

  • 最初的结构化SSM起源于函数x(t) \in \mathbb{R} \mapsto \quad y(t) \in \mathbb{R}的连续时间映射,而不是直接对序列进行操作
    在连续时间视角中,在公式(1a)中,矩阵 (
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/926708
推荐阅读
相关标签