《Linear Algebra and its Applications》:A Low-complexity Structured Neural Network to Realize States of Dynamical Systems
编辑推荐:
摘要线性代数作为数据驱动学习中的数学支柱。数据驱动学习正在快速发展,为实现状态空间动力系统提供了一种新的视角。然而,源于非线性常微分方程(ODEs)的动力系统在计算效率方面存在局限性。为解决这一问题,我们从结构化矩阵理论出发,提出了一种结构化神经网络(StNN),该网络依赖于
摘要
线性代数作为数据驱动学习中的数学支柱。数据驱动学习正在快速发展,为实现状态空间动力系统提供了一种新的视角。然而,源于非线性常微分方程(ODEs)的动力系统在计算效率方面存在局限性。为解决这一问题,我们从结构化矩阵理论出发,提出了一种结构化神经网络(StNN),该网络依赖于从时间延迟测量中导出的 Hankel 算子来求解动力系统。具体来说,StNN 利用具有 Hankel 矩阵结构的 Hankel 算子来识别最优表示,为现有的数据驱动方法提供了一种更具计算效率的替代方案。我们证明,与常规神经网络以及经典的数据驱动技术(如动态模式分解(DMD)、稀疏非线性动力学识别(SINDy)和 Hankel 对 Koopman 的替代视角(HAVOK,通常称为延迟-DMD 或 Hankel-DMD))相比,所提出的 StNN 提供了一个针对推理时间、参数量和计算复杂性需求的优化解决方案。此外,我们展示了基于结构化矩阵理论和 Hankel 算子利用 StNN 求解动力系统的数值模拟。我们的数值模拟从基本的 Lotka-Volterra 模型开始,在其中我们将 StNN 与 LEarning Across Dynamical Systems (LEADS) 进行了比较。接下来,我们将模拟扩展到高度非线性和混沌的 Lorenz 系统,将 StNN 与常规神经网络、DMD、SINDy 和 HAVOK 进行了比较。最后,我们展示了 StNN 在处理非线性系统(如阻尼摆、无强迫 Duffing 振子和有强迫 Duffing 振子)时的良好效果,其中我们将 StNN 与 Neural ODE 和常规神经网络进行了比较。因此,我们表明 StNN 中的结构化矩阵理论和 Hankel 算子为使用低复杂度学习算法实现状态空间动力系统铺平了道路,使得能够预测和理解未来状态。
引言
数学模型可用于持续分析系统状态的动力学,提供了一种独特的工具来表示动力系统。这些模型通过一组规则制定,通常表示为微分或差分方程,规定了状态变量在连续或离散设置中如何随时间演化。描述状态变量随时间的演化是求解动力系统的一个关键方面。根据系统的复杂性和连续性,可以通过解析求解系统来实现这一点。可以使用各种方法分析连续动力系统的解。这些包括对简单系统进行变量分离,对非线性系统进行线性化近似,谱分析,采用相平面,以及利用拉普拉斯或傅里叶变换获得高效解 [1], [2], [3], [4], [5]。这些技术提供对动力系统行为和特性的全面理解。另一方面,欧拉法、龙格 - 库塔法、有限差分、有限元法和谱分析是众所周知的应用迭代公式求解动力系统的数值技术 [6], [7]。
数据科学的指数增长为实现状态空间动力系统提供了通过数据驱动方法的新视角 [8], [9]。鉴于此,动态模式分解(DMD)和扩展 DMD 被用于通过结合 SVD 进行降维来识别高维数据的时空结构 [10]。DMD 提供了一种模态分解,其中每个模态由在时间上表现出相同线性行为的空间相关结构组成。因此,DMD 不仅通过使用更小的模态集来降维,还提供了这些模态随时间演化的模型,并可用于获得最佳拟合线性模型 [11], [12]。由于分析结构的组合可能性,从数据中识别动力模型的非线性结构和参数可能成本高昂。幸运的是,稀疏非线性动力学识别(SINDy)算法提供了一种绕过昂贵搜索的方法,通过探索系统中函数变量的依赖性 [13]。另一方面,Koopman 算子理论提供了一种关于测量值演化的动力系统替代视角,因为可以在希尔伯特空间上用作用于状态系统的测量函数的无限维线性算子来表示非线性动力系统 [14], [15]。基于这种替代方案,Hankel 矩阵与 Koopman 算子之间的联系以及线性回归模型被确立为 Hankel 对 Koopman 的替代视角(HAVOK)框架 [16]。
机器学习(ML)和深度学习(DL)算法已成为建模、预测和控制动力系统的强大工具,在处理非线性、高维度和不确定性方面相较于经典方法具有显著优势。神经网络、卷积神经网络(CNN)和循环神经网络(RNN)的最新进展表明,它们在捕获动力系统中的时间依赖性和混沌行为方面取得了出色成功 [8], [17]。Lusch 等人 [18] 使用基于自编码器的深度学习框架从数据中发现 Koopman 特征函数,从而实现了非线性动力学在低维流形上的全局线性表示。此外,[19] 提出了一种基于 Hopfield 神经网络的方法用于系统识别中的在线参数估计,具有时变权重和偏置以处理动态目标函数。模拟显示其性能优于经典梯度方法,实现了更低的误差。[20] 提出了一种基于卷积自编码器和多时间尺度循环神经网络的方法,用于机器人基于点吸引子动力系统的灵活行为组合,结合指令信号和阶段将任务划分为子任务。此外,[21] 提出了一种基于反向传播的动力系统向量场的前馈网络,然后将其转换为连续时间 RNN,并通过数值例子证明了其有效性。物理信息神经网络(PINNs)近年来引起了广泛关注,[22] 引入了用于控制的物理信息神经网络,这是一种扩展传统 PINNs 的新框架,纳入了初始条件和控制信号。它利用自回归自反馈方法提供准确和可适应的模拟,如在 Van der Pol 振子等非线性系统上证明的那样,推理更快。
上述数据驱动技术 DMD、SINDy 和 Koopman 算子理论为建模动力系统提供了互补的视角。特别是,Koopman 算子理论提供了一个坚固的框架,通过作用于状态空间系统测量函数的线性算子来表示非线性动力学。HAVOK 在此基础上构建,从时间序列数据构建延迟嵌入的 Hankel 矩阵,作为 Koopman 算子的有限维近似。同时,SINDy 直接识别数据中控制方程的稀疏结构,从而绕过了完整算子表示的需要。另需注意的是,上述 ML 技术,用于时空建模的 CNNs 和 RNNs、用于发现 Koopman 特征函数的自编码器、用于系统识别的 Hopfield 网络以及用于物理约束模拟的 PINNs,已推动了动力系统的数据驱动建模。然而,这些 ML 方法通常需要大量参数、广泛的训练或显式的控制方程知识,这促使我们使用 Hankel 算子作为一种结构化、低复杂度的替代方案,直接将时间延迟动力学编码到网络架构中,而无需依赖预定义定律或高维学习表示。此外,我们提出的结构化神经网络(StNN)框架连接了数据驱动和 ML 方法:它嵌入了 Hankel 算子的代数结构,该结构是 DMS、延迟-DMD 或 HAVOK 的核心,并且 Hankel 算子的分解是通过 StNN 的权重和子权重矩阵直接学习的。这种设计使 StNN 能够继承结构化算子表示的理论优势,同时利用神经网络的学习能力,从而促使我们在数值实验中与数据驱动和机器学习技术进行比较。此外,本文提出了一种低复杂度 StNN,旨在利用从状态测量的时间延迟序列导出的 Hankel 算子来学习状态空间系统的动力学并预测未来状态。我们强调 Hankel 矩阵具有独特的结构,可以有效地利用低复杂度算法求解线性方程组 [23], [24], [25], [26], [27], [28]。Hankel 矩阵已被用于谱分析、谱分解、线性与混沌随机动力学的评估以及状态空间系统的实现 [1], [29], [30]。此外,现代 Koopman 算子理论提供了一种引人注目的方法,通过采用基于延迟嵌入的 Hankel 矩阵作为建模动力系统的准确计算工具,这通常被称为 Hankel-DMD 或 HAVOK [12], [16], [31]。
本文组织如下。我们在第 2 节中提出了一种简单的结构化算子,称为 Hankel 算子,并利用其通过高效计算求解非线性 ODE 系统。在同一节中,我们提出优化 Hankel 算子并获取 Hankel 算子的高度稀疏分解以求解非线性系统。在第 3 节中,我们介绍了旨在有效表示动力系统中状态的 StNN。本节详细介绍了网络架构,突出了其相对于常规神经网络的优势。此外,我们在同一节中提供了对所提议网络与传统神经网络相对于浮点运算次数(flops)和参数数量的分析。在随后的第 4 节中,我们利用 StNN 通过 Lotka-Volterra 模型和高度混沌且广泛研究的 Lorenz 系统求解 ODE 系统。本节还将展示数值结果,演示我们提出的网络相对于常规神经网络和其他数据驱动技术的准确性和精度。为此,我们将进行所提出 StNN 的短期和长期预测,将其性能与常规神经网络预测以及 DMD、SINDy 和 HAVOK(即延迟-DMD 或 Hankel-DMD 方法)进行比较。最后,我们在第 5 节总结全文。
章节片段
预备知识与分解:学习与实现动力系统状态
我们提出通过学习实值 Hankel 结构化算子来探索动力系统的混沌行为。在此我们注意到,结构强制算子是提出低复杂度学习的关键。因此,我们将利用数据驱动学习来理解动力系统,同时提出一种称为 StNN 的低复杂度神经网络。让我们从介绍本文中经常使用的符号开始本节。
一种用于动力系统的结构化神经网络(StNN)
在本节中,我们展示了 Hankel 算子能够有效地预测动力系统的超前时间轨迹,使用低复杂度神经网络,遵循系统动力学的高效学习和更新。因此,我们引入了 StNN,展示了其在训练、学习和更新动力系统方面的效率,特别是与常规前馈神经网络相比。StNN 层是使用 Hankel 算子(2)的矩阵分解设计的,
数值模拟:学习、更新和预测状态
在本节中,我们首先学习、更新并预测 Lotka-Volterra 模型的轨迹,随后是混沌的 Lorenz 系统和非多项式系统。接下来,我们比较基于 StNN 和 LEADS 的 Lotka-Volterra 模型数值模拟,Lorenz 系统的 StNN、FFNN、SINDy 和 HAVOK,以及非线性系统(如阻尼摆、无强迫 Duffing 振子和有强迫 Duffing 振子)的 StNN、Neural ODE 和 FFNN。
结论
在本文中,我们从结构化矩阵理论的角度出发,提出了一种用于建模和预测动力系统演化的低复杂度结构化神经网络(StNN)。我们的方法使用 Hankel 算子提供了相对于常规神经网络和 LEADs、DMD、SINDy 和 HAVOK 等数据驱动技术的结构化和计算高效的替代方案。根据基于 Lotka-Volterra 模型和 Lorenz 系统的数值模拟,该
Hansaka Aluvihare|Levi Lingsch|Xianqi Li|Sirani M. Perera