本文首先初步介绍了状态空间模型(SSM)的工作原理。然后,从多个方面回顾SSM的相关工作,包括SSM的起源和变化、自然语言处理、计算机视觉、图、多模态处理、多模态和多媒体、点云/事件流数据、时间序列数据等领域的相关工作。
此外,作者在多个下游任务中进行了广泛的实验,以验证SSM的有效性。下游的任务包括单/多标签分类、视觉目标跟踪、像素级分割、图像到文本的生成和人/车辆的重识别。最后,提出了SSM的在理论和应用上的一些可能的研究方向,并对本文作出了总结。
论文:https://arxiv.org/abs/2404.09516
作者单位:安徽大学、哈尔滨工业大学、北京大学
更多相关工作将在以下GitHub上不断更新
https://github.com/Event-AHU/Mamba_State_Space_Model_Paper_List
论文列表:
技术原理
状态空间模型(SSM)起源于经典卡尔曼滤波
采用[零阶保持器(ZOH)](https://en.wikipedia.org/wiki/Zero-order hold)进行离散化,得到
然而,与RNN模型类似,我们面临着计算不能并行化的困境。通过简单地展开上面的公式,我们有
写成卷积的形式:
状态空间模型是用一组一阶微分方程(连续时间系统)或差分方程描述动态系统行为的数学模型
(离散时间系统)来表示系统内部状态的演化,而另一组方程来描述状态与系统输出之间的关系。
这些方程可以用矩阵和向量的形式来表示,以处理多变量系统。随后,Gu等人[34]引入了线性状态空间层
(LSSL),它结合了循环神经网络(rnn)、时间卷积网络和神经微分方程(NDEs)的优点,同时解决了它们在模型能力和计算效率方面的缺点。
这种新的序列模型受到控制系统的启发,并通过线性状态空间层(LSSL)实现。
与rnn类似,SSM在建模较长的序列时也会遇到梯度消失/爆炸的问题。为了解决这个问题,HiPPO[36]模型结合了递归记忆和最优多项式投影的概念,可以显著提高递归记忆的性能,这种机制对于SSM处理长序列和长期依赖关系非常有帮助
基于上述理论基础,Gu等[29]提出了结构化状态空间序列模型(S4),这是一种基于vanilla状态空间模型(SSM)的新的参数化方法。此外,Gu等人[40]引入了一种新的方法来训练状态空间模型,以捕获序列中的远程依赖关系,特别是通过结构化状态空间序列模型展示。通过设计HiPPO框架的广义解释,并采用各种基函数,如勒让德多项式和傅立叶变换,该研究显著提高了S4的性能,揭示了其理论基础和在机器学习任务中的实际应用。
Gu等人[122]也探讨了如何参数化和初始化对角状态空间模型(Diagonal State Space Models, DSSM),并系统地研究了如何参数化和初始化这些对角状态空间模型,证明了初始化对性能的重要性。此外,Gupta等人[38]提出了结构化状态空间(S4)模型的一个令人信服的替代方案,该模型进一步证明,即使没有低秩修正,对角线状态空间也可以获得相当的性能。对角状态空间(DSS)模型提供了简单的制定和实现,同时保持了捕获各种模式之间的远程依赖关系的有效性,使其成为机器学习任务中实际应用的有前途的途径。
Mamba[12]是通过将以前的SSM架构设计与Transformer的MLP块相结合来简化架构来实现的。Mamba在结构化状态空间模型中引入了一种选择机制。除了这些模型之外,一些作品也可以被视为SSM,如RWKV[125]、Vision-RWKV、RetNet [127], Mega [128], H3 [129].
NLP
对于语言建模任务,[41]主要研究了门控状态空间在远程语言建模方向上的应用,并引入了一种新的方法GSS (gated state Space)。它可以用于