状态空间模型 (SSM) 是通过微分方程建模系统内部状态随时间演变的机器学习算法,用于预测动态系统行为。SSM 起源于控制系统工程领域,具有显著灵活性,可适配绝大多数序列建模任务。基于 SSM 的神经网络架构 Mamba,在语言建模性能上可与 Transformer 模型匹敌。
状态空间模型起源于 1960 年代控制系统工程,在阿波罗计划的导航计算中发挥关键作用。1该模型同样广泛应用于电气工程领域,成为信号处理、控制理论和机器人技术的基石。SSM 的核心价值在于其通用性——尤其擅长处理多输入多输出系统。
SSM 由两个基础方程构成:一个描述系统不可直接观测的内部动态特性,另一个刻画内部动态与可观测结果的关联机制。这种简洁灵活的数学框架,对多元时间序列数据具有极强的适应能力。
在经济学领域,SSM 可建模趋势与季节性因素对股价的影响机制。在神经科学领域,能建立可测量脑信号(如 fMRI)与潜在神经活动的映射关系。在生态学领域,SSM 适用于种群动态、动物迁徙轨迹及标记重捕数据的建模。2SSM 同样应用于气象预报及其他时间序列分析场景。
近年来状态空间模型研究聚焦深度学习应用,将神经网络作为 SSM 方程参数集成到模型中。最新突破性成果是推出面向大型语言模型 (LLM) 的 Mamba 架构,其性能表现比肩 Transformer 模型,同时具备更优的速度与能效。
系统在任意时刻的状态由若干系统变量的特定取值决定。有效建模状态空间的目标是识别能完整描述系统的最小系统变量子集。该子集称为状态变量。状态空间是以状态变量为坐标轴(维度)的 n 维空间,包含 n 个状态变量的所有可能取值。
每个状态变量必须满足线性独立:即任一状态变量不能是其他状态变量的加减组合。
系统在任意时刻的特定状态可表示为状态向量,其每个元素对应一个状态变量的取值。状态向量维度与状态空间维度相同。特定状态向量可理解为状态空间中的一组“坐标”。
假设玩具车在直线轨道匀速行驶。其状态空间可用 2 个状态变量建模——位置(距起点距离)和速度。因此,系统在时刻 t 的状态可表示为二维向量 [位置 t,速度 t ]。在此系统中,若已知玩具车在特定时刻的精确位置与速度(即当前状态),即可预测其下一时刻位置。
速度本身整合了速率与方向两个系统变量:因车辆沿直线轨道运动,可将反向运动表示为负速度,正向运动表示为正速度。由于汽车沿直线轨道移动,因此可以简单地将向后移动表示为负速度,将向前移动表示为正速度。虽效率较低,亦可用速率和方向两个状态变量替代单一速度变量。
若玩具车在开放场地运动(非直线轨道),状态空间将扩展至四维——因位置与运动各需至少两个维度才能完整描述。
在实践中,状态空间的“维度”通常与物理世界的直观维度无关。例如,井字棋棋盘。我们可将 9 个方格视为状态变量(空白 = 0,X = 1,O = 2),构成 9 维状态空间。任何棋盘布局均可表示为 9 维状态向量。
状态空间模型通过预测系统输入如何影响输出,以及系统状态如何随时间演化和响应输入实现建模。
在每个时间点 t,SSM 接收输入序列 x(t),并将其映射至当前状态 h(t) 及输出序列 y(t)。状态 h(t) 称为潜状态,因为与系统输出不同,它无法被直接观测,也就是说,它是潜在的(隐藏的)。
系统状态空间表示通过两个一阶微分方程计算:
SSM 关键参数 A、B、C、D 通常为矩阵形式。每个矩阵元素表征状态变量相对于其他变量(外部输入变量/其他状态变量/自身)的关系——以一阶导数形式表达。矩阵化使状态空间方法成为强大且可扩展的工具,能以紧凑标准化格式表征复杂多输入多输出 (MIMO) 系统。
控制理论中常直接定义矩阵:表征既定系统动态特性,SSM 用于寻找能产生理想输出 y 或最优状态 h 的输入 x。现代 SSM 概念中,这些矩阵本身成为可通过机器学习优化的参数,以最佳反映训练数据集模式。深度学习模型中,该“参数化”由神经网络可学习权重实现。
状态空间方程(简称状态方程)通过 A 矩阵与 B 矩阵调控系统状态。其中 h(0) 为系统初始状态,h(t) 为时刻 t 的隐状态,h'(t)(h(t) 的一阶微分方程)表征状态在时刻 t 的变化率。
为具象化微分方程与矩阵的抽象概念,可通过已知参数 A、B、C、D 的简化生态系统示例阐释。
例如,假设某孤岛存在两类生物:作为猎物的鱼类种群,以及捕食它们的鹈鹕种群。该系统用两个状态变量表征: (鱼群数量)和 (鹈鹕数量)。目标定义函数 描述状态 ,表示为状态向量 ,在时刻 t 的变化。
转移矩阵 A 描述两状态变量表征的生态系统自然演化规律。具体表征当前状态 h 对后续状态的影响机制。
假设鱼群与鹈鹕种群动态关系恒定且简单:
现用方程表征动态关系,并转化为 n×n 矩阵,其中 = 状态变量数。2×2 矩阵 A 的每列代表一个状态变量,每行表征该变量相对于各状态变量的变化率(一阶导数)。为清晰起见补充斜体注释。
因简化场景中种群变化率恒定,矩阵 A 元素为常数。实际场景常含更多状态变量及复杂数学关系,但其在状态转移矩阵 A 中的表征逻辑不变。
若无外部影响, h'(t)=A*h(t) 即足矣描述岛屿生态系统状态演变。
解析该方程需计算矩阵 A 的特征值和特征向量,此内容超出本文范畴。但可推知:若无干预,该生态系统不可持续——鱼群与鹈鹕种群将陷入日益极端的繁荣萧条循环,最终导致灾难性崩溃。
若存在外部影响因素?输入矩阵 B 构成状态方程另一半,描述给定输入对各状态变量的影响。其维度为 n × m(n = 状态变量数,m = 外部输入变量数)。控制理论核心在于确定能使系统达到理想状态的输入 x (t)。
扩展岛屿生态系统示例:新增输入变量为时刻 t 的空投鱼粮 x(单位:吨)。假设每吨鱼粮可使鱼群额外增长 30%,对鹈鹕数量无影响。
因含 2 个状态变量与 1 个输入变量,需构建 2×1 输入矩阵。矩阵 B 的首行对应状态变量 F(与矩阵 A 结构一致)。
现通过完整状态方程建模岛屿生态系统在时刻 t 的状态:
目标在于确定最优控制规则——通常表示为状态变量函数的矩阵——当鱼群崩溃时注入输入 x(t) 以稳定生态系统。
如前所述,状态方程描述不可直接观测的“隐藏状态” h。SSM 假设存在可观测的真实状态反射(虽含噪声或不完整),并通过输出方程(亦称观测方程)建模。
简化生态系统同理:实际无法精确统计孤岛所有生物。相反,生态研究可采用无人机与水底摄像机观测部分鱼类和鹈鹕种群,进而推断其与真实生态状态的关联。
输出矩阵 C 决定内部状态变量与输出 y 的关系。输出本身为向量,其元素对应各输出变量的观测值。本例新增 4 个输出变量:2 台水底摄像机观测鱼群,2 架无人机观测鹈鹕。
这些输出变量可用 p × n 矩阵 C 表征(n = 状态变量数,p = 待测输出信号数)。为了与我们之前的矩阵保持一致,左列对应各输出变量与状态变量的映射关系 而右列对应各输出变量与状态变量的映射关系 .
系统输出 y 在时刻 t 可建模为
理论上可通过状态方程与输出方程从观测值 y 反推真实状态 h。
现实中观测值与真实状态的精确关系通常不可知,且观测本身存在缺陷与含噪波动。例如无人机 1 不可能精确观测岛上 25% 鹈鹕。Kalman 滤波技术 常用于基于含噪输出计算最大似然状态估计。
矩阵 D 描述输入对系统输出的直接影响。该矩阵常被 SSM 图示讨论忽略——因其完全绕开核心“模型”,与状态本身无直接关联。
例如生态模型中:若岛屿水域洋流导致空投鱼粮聚集于摄像机 2 附近,则系统输入增加时将导致:摄像机 2 记录鱼群比例高于常态;摄像机 1 捕获比例低于常态。p x m 矩阵 D 即用于量化此类输出变量扰动效应。
某些情况下输入与输出不存在直接映射关系,此时矩阵 D 直接从模型中省略。
近年深度学习渐成学习 SSM 参数的常用方法。此类方法将 A、B、C 矩阵表示为神经网络权重。迭代过程如下:
监督学习(或自监督学习)使模型隐式掌握状态空间系统的动态特性。此方法虽为学习最优 SSM 参数的稳健通用手段,但需海量训练数据。
与传统 SSM 不同,基于神经网络的 SSM 不具备可解释性:其矩阵值不再直观对应状态变量间关系(如生态示例)。此非深度 SSM 独有缺陷,实为深度学习模型的普遍共性。
传统 SSM 是连续时间模型,适用于建模连续序列(如电信号/运动轨迹)。但现代深度学习处理的文本、分子结构、用户行为或时序数据等多为离散序列。利用 SSM 建模离散序列时,需将其特定时间步表示为连续信号的一部分。
离散化本质是对连续函数在特定时刻进行“快照采样”。这需要引入新参数——步长 ∆,决定离散时间步 t 的采样值保持时长。调整 ∆ 类似于改变数据分辨率(时序数据)或帧率(视频数据)。常用离散化方法包括双线性法、欧拉法及现代 SSM 变体(含 Mamba)采用的零阶保持法 (ZOH)。
连续时间 SSM 映射函数 x(t) 至函数 y(t),离散时间 SSM 则为序列到序列模型。数学层面,离散化 SSM 等价于循环神经网络 (RNN)——系统隐状态对应 RNN 的“隐藏状态”。
尽管 SSM 方程中表示输入与状态的字母存在差异(输入有时记作 u,状态记作 x),但正是这种与 RNN 的关联性促使机器学习领域普遍采用 h 表示状态。与 RNN 的关联性催生了 Mamba 等现代 SSM 架构的发展。
离散化 SSM 的参数方程通常采用 RNN 典型的下标标记法重写,以区别于连续时间形式。在这种符号中,ht 表示模型将生成的新状态空间,ht-1 表示前一时刻状态(即当前状态空间)。参数 A、B、C 的标记法亦相应调整以体现其离散化形式。
在此离散时间形式下,系统状态于每个时间步 t 后更新(通过状态方程实现),更新后的状态随即输入后续时间步的输出方程。
尽管优势显著,标准离散 SSM 与 RNN 存在共性缺陷。Albert Gu 团队 2021 年提出的结构化状态空间序列模型(S4 模型)针对性解决两大核心问题:长序列建模能力不足及模型训练效率低下。
前者处理问题通过独特的训练前 SSM 参数初始化策略实现优化。后者则基于 SSM 与卷积神经网络 (CNN) 的重要关联性发现实现突破。
传统离散 SSM 与标准 RNN 同样存在长距离依赖建模缺陷。具体表现为难以捕捉序列中远端步骤的关联性(如段落首尾词语关系),因而整体长序列建模能力薄弱(典型如文本数据)。
为解决此问题,Gu 团队提出采用 HiPPO 技术(高阶多项式投影算子)定义矩阵 A、B 的行为机制。
多项式函数组合一个或多个 项。每项含系数与某变量的基底函数。 例如 3x2 的系数为 3,基底为 x2。多项式阶数由其最高次项决定(如 3x2 + 5x 为二阶多项式)。阶数越高曲线拟合能力越强。
正交多项式函数是特殊的多项式函数族,其跨阶次分布且各多项式数学独立,确保函数间无冗余重叠或信息依赖。它们对舍入误差鲁棒性强,适用于逼近复杂函数。正交多项式族由三阶递推公式生成。HiPPO 方法即基于此公式构建矩阵 A 与 B。
本质上,每当状态方程更新状态 ht 时 ,状态向量 ht 的元素作为正交多项式系数,实现对历史输入的压缩表征。历史输入由低阶多项式逼近(捕获低频/长期特征),近期输入由高阶多项式逼近(捕获高频/短期细节)。因采用正交多项式,信息无冗余重复。本质上,该结构通过将输入历史高效压缩为固定尺寸系数向量,实现状态空间对完整输入的“记忆”。
S4 论文指出:“仅将 SSM 的随机矩阵 A 替换为 HiPPO 矩阵,其在序列 MNIST 基准测试中的性能即从 60% 提升至 98%”,彻底解决 SSM 长期记忆问题。后续结构化 SSM 变体(如 DSS/S5/Mamba)采用更简化的矩阵 A、B 初始化方案,但仍遵循 HiPPO 核心原理。
与传统 RNN 相同,其离散 SSM 版本在自回归推理中速度极快。该等效性的弊端在于 RNN 训练速度极慢。
所幸离散化 SSM 具备一项区别于其他 RNN 的关键特性:专有线性关系建模能力。换句话说,仅使用基础乘法与加法运算。正如 S4 论文所示,这些简单、重复且互依的线性递归展开为一维卷积核 ,实现单步输入 x 到输出 y 的映射: 。该过程可通过快速傅里叶变换高效计算。
唯一局限在于:此方法需要预知完整输入序列的所有步骤。推理阶段无法满足此条件——因推理的核心目标是迭代预测未知的下一步序列。但在训练过程中,当模型输入样本序列并优化预测精度时,完整序列是已知的。
这使得结构化 SSM 能兼顾双重优势:训练时以 CNN 形态高效运行;推理时以 RNN 形态高效执行。
Mamba 是基于结构化 SSM 变体——选择性状态空间模型构建的神经网络架构。在自回归语言建模等任务中,Mamba 模型在多数学术基准测试中性能比肩或超越 Transformer 模型,且训练推理速度更快、内存效率更高。
传统 SSM 显式依赖完整输入历史实现输入-输出映射。虽适用于部分序列建模任务,却成为高级语言建模的显著缺陷。选择性状态空间模型赋予 Mamba 关键能力(此前仅 Transformer 自注意力机制具备):基于当前相关性选择聚焦或忽略历史输入的特定部分。
早期 SSM 设计中,A/B/C/D/∆ 参数固定不变——训练优化后对所有输入保持一致。而选择性 SSM 的参数具有输入相关性:通过输入向量与模型权重层的投影运算动态生成,该权重层本身在训练中优化。
然而,选择性 SSM 非线性时不变系统 (LTI),训练阶段无法以 CNN 形态运行。Mamba 团队通过硬件感知并行扫描算法突破此限制:该算法优化 GPU 内存层级中的计算处理方式,最大化速度与计算效率。
深入了解 watsonx 组合中基础模型库,从容自信地为您的业务扩展生成式 AI。
借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。
通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。
1.《阿波罗11号登陆月球 —— 航天器设计的过去与现在》,MathWorks,2019 年
2.《A guide to state–space modeling of ecological time series》,Econological Society of America,2021 年 6 月 14 日