差异建模(Discrepancy Modeling):结合先验物理知识与机器学习建模动力系统
与端到端学习相比,更现实的做法是从包含部分物理知识的非理想模型出发,将机器学习专用于建模该模型与真实数据之间的差异(discrepancy),从而兼顾第一性原理的归纳偏置与数据驱动的拟合能力。
核心要点
- 差异建模(Discrepancy Modeling) 是指在已知理想化模型(如 Hamiltonian、Lagrangian)的基础上,不重新从头学习全部动力学,而是用机器学习捕捉并建模理想化模型未涵盖的那部分残余动力学。
- 该方法动机在于:绝大多数真实自动化/机器人系统场景中,我们并非一无所知,而是已经掌握了大量先验物理知识;但受限于轴承摩擦、风阻等难以从第一性原理推导的复杂效应,纯理论模型往往与实际系统存在偏差。
- 有两条分析轴:建模扰动/未知物理的难度与将已知物理集成进模型的难度。机器学习擅长前者,而第一性原理擅长后者;差异建模处在两类模型能力的帕累托最优曲线上。
- 差异模型可以是任意数据驱动模型,包括深度神经网络(DNN)、动态模式分解(DMD)、稀疏非线性动力学识别(SINDy)、高斯过程(GP)回归等。
- 历史案例(托勒密地心模型 vs. 开普勒日心模型;亚里士多德的落体理论 vs. 伽利略的理想化落体定律)反复提出一个教训:**原始数据在存在未被建模的差异
物理时,表面更可能支持"错误"的唯象模型**;差异建模的核心挑战在于如何设计约束,让学习算法产出理想化正确且泛化能力强的物理模型。
详细解析
一、为什么不能总是采用端到端学习
- 用机器学习方法演示建模能力时,常常选择"假装什么都不知道"的数据端到端学习策略,直接从零估计系统的演化规律。
- 端到端学习对于证明算法可以解决复杂问题(如湍流流体)是有价值的,但真实工程场景中,我们几乎总是具备大量的系统的部分知识。
- 常见可用先验信息包括:
- 已知的物理结构(如双摆或自动驾驶车辆的 Hamiltonian 或 Lagrangian);
- 必须满足的约束条件;
- 对称性守恒律(如能量守恒)。
- 在这些场景下,放弃先验知识重新从零学习是低效、不现实的。更合理的做法是:从非完美模型出发,把机器学习资源集中在学习模型和实际数据之间的"差异"上。
- 在无人机与机器人需要快速在线学习或需要持续自适应更新的场景中,这种策略尤为贴合实际。
二、什么是"差异"?以双摆摆起与镇定为例
2.1 问题背景与实验装置
- 实验人员:Kadir Dan Kahan(华盛顿大学机械工程系博士生,和 Nathan Kutz 合作)、Ben Strom(初代实验室装置的构建者)。
- 装置:一套双倒立摆系统(double inverted pendulum),目标是将双摆从下垂状态摆起并稳定在倒立位置。
- 从解析角度,系统非常"简单":纸面上就可以写出 Lagrangian、Hamiltonian,进而得到完整的运动方程。
- 但在控制设计时,基于理想模型的控制器会面临很大的实际困难:由于各种未建模的扰动,摆起并镇定很难做到精确、高通量。
2.2 理想模型没有涵盖的误差来源
- 关节处的非线性轴承振动/咔哒声(bearing chatter);
- 风阻(wind resistance)。
上述效应都很难用教科书式的解析第一性原理去建模,而且对于成功控制至关重要。
2.3 差异建模的作用
- 先用实验采集数据,对比理想化模型预测与实际测量的差异,再将机器学习模型加入来捕捉这些"subtle effects";
- 加入了差异模型后,系统能够完成令人瞩目的控制任务(摆起并镇定双摆),这是纯理想模型难以达到的。
- 实验室当前已升级为三摆新装置,其造价昂贵(讲者幽默地表示比他的汽车还贵)。
三、"两条轴"的坐标系框架(重要)
- 讲者提出一个二维框架,以说明为什么纯机器学习或纯第一性原理都不是最优:
X 轴:建模"扰动/未知物理"的困难程度
- 例如轴承振动、风阻等;这些扰动虽然可以写成数学表达式,但通常非常复杂、难分难解。
- 机器学习恰恰擅长此类任务:通过大量数据学习风阻、摩擦等非线性效应。
Y 轴:将"已知物理"集成到模型中的困难程度
- 例如双摆系统要求系统位于旋转坐标(θ₁、θ₂)构成的环形/环状位形空间(torus),而不是直角坐标;
- 例如 Hamiltonian 能量必须被全局守恒;
- 这类全局结构约束和对称性是对机器学习来说非常难以学习的,因为需要从有限数据中"发现"这类抽象数学规律。
- 但第一性原理框架天然内置了这些约束。
总结:帕累托前沿
- 存在一个"甜蜜点(sweet spot)":尽可能用第一性原理承载守恒律与对称性,再用数据驱动模型补足第一性原理难以表达的那部分残余物理,即从部分物理+部分机器学习的混合模型中获得最优效果。
- 差异建模的适用对象不限于神经网络,也适用于 DMD、SINDy、GP 回归等数据密集方法。
四、扩展应用:设备老化和数字孪生
- 华盛顿大学波音先进研究中心(Boeing Advanced Research Center,BARK)中的机械臂案例:
- 随着系统服役时间变长,关节运动特性和驱动器状态都会随老化改变;
- 原始模型可能在新设备上是准确的,但几年后会产生偏差;
- 差异建模让模型能够随数据在线追踪老化趋势,是构建高保真数字孪生(digital twin)的重要环节。
五、历史哲学视角:两个警示案例
讲者指出,我们作为"学习动力系统的工程师",可以从科学史中吸取如何选择合适的模型目标,以及其中风险的经验。
5.1 托勒密(Ptolemaic)地心体系 vs. 开普勒(Kepler)日心体系
- 通过可视化(Moen Christophersen 制作的动画)对比地心与日心两种不同世界观的轨道视图。
- 地心体系轨道极其复杂,难以用简洁模型描述;而换成以太阳为中心的坐标系后,轨道变得非常简单、可被优雅地建模。
- 令人深刻的史实:
- 就预测精度而言,托勒密的地心本轮体系长期比物理上更正确的开普勒日心模型拟合得更好。
-原因是当时存在开普勒尚未观测到的行星、未测量的变量和未能预测的力,即所谓"差异项"。
- 讲者的论点:托勒密体系本质上是对太阳系数据的一个巨大的傅里叶展开(Fourier transform)——它是在错误坐标下的唯象拟合,却被数据的拟合优度所支持。
结论:在拟合数据时,如果目标不明确,最容易得到的是"托勒密式"的复杂拟合模型,而非真正的基础物理模型。
5.2 伽利略的落球实验
- 伽利略的著名演示,宣称不同密度的球以相同的速度落下并同时触地,揭示"一个普适重力加速度g"这一理想定律。
- 但是假如工程师实际去收集数据(沙滩球、篮球、棒球、高尔夫球、威浮球同时从高处释放),观测结果大概率不会支持伽利略的结论:
- 除重力外还存在流体力(阻力和湍流拖曳);
- 阻力的大小取决于实际速度、物体形状、密度等参数,且不同速度下阻力机制会发生分岔/流动转变;
- 在真实数据拟合中,"下落速度与物体质量或密度成正比依赖"(亚里士多德模型)反而显得与实验一致——这也是亚里士多德模型统治一千多年的直接经验原因。
- 伽利略研究的意义不在于简单理解"扔球",将扰动与核心物理机制人为分离/剔除才是关键。
- 伽利略的具体做法就是有意识地控制这些额外效应:
- 在可控静止环境下观察钟摆振荡极其精确的运动;
- 让球在不同的斜面坡度上滚下;通过上述实验设计,他系统控制了空气阻力和湍流等额外影响。
- 只有剥离了这些"差异效应",才能发现常数重力加速度。
六、实际数据实验:Bryan de Silva 的屋顶落球实验
- 讲者报告了与Bryan de Silva(当时是博士生)、Nathan Kutz 及合作者共同开展的实验系列。
- 实验设置:
- 将各类球(高尔夫球、网球、棒球、威浮球、篮球)从五层楼高的停车库屋顶自由释放;
- 以频闪摄影(stroboscopic)方式追踪落下全程的高度变化。
- 观测结果:
- 所有球下落轨迹确实不同,符合质量/密度相关的预测;
- 绘图数据显示各种球具有不同降落轨迹,而非同时落地。
- 与几条模型对比:
- 理想无摩擦自由落体模型(虚线);
- 引入不同阻力项(与速度相关)的模型(白色、黄色虚线);
- 数据整体既不支持单一理想模型,也不简单地集中在某个阻力模型上,而是高度分散在候选模型之间(在同一对数图中显示分散)。
- 使用 SINDy(Sparse Identification of Nonlinear Dynamics) 进行回归识别实验:
- 对每个球分别多次做单变量识别会让许多虚假项(如位置x、v 平方等)随机出现或消失——如果单次识别,你未必会得到
dv/dt = g - bv形式,而可能给出一堆杂项; - 该方法的候选库中并无普适结构;若不加约束就拟合数据,"推理"结论倾向于非伽利略式、依赖密度的动力学。
- 群稀疏(group sparsity)正则化加入后的变化:约束"所有球、所有降落中的物理必须由同样一组项描述";这样虚假项被排除,才得到一致的结论:加速度 = 常数g(重力)+ 与速度成正比的耗散项(线性拖动模型)。
结论:
- 不加先验约束的/单目标的识别容易发现虚假物理;
- 如果我们要得到的是"普适、可解释的理想物理",必须对学习模型施加如群稀疏约束之类的"人为偏见"。
七、问题“该学什么模型”:自由选择与原则性冲突
- 讲者将讨论推向一个根本选择问题:我们到底想要学哪一种模型?
- 伽利略的理想化普适模型:理论上更简洁、易于分析和推导,在环境扰动被剥离时具有很好的推广性;但不真实描述"威浮球在真实空气中坠落"等实际细节。
- 亚里士多德式的“真实数据拟合模型”:复杂度更高,包含了密度、湍流拖曳等对每个具体对象敏感的物理机制;能精确反映真实物体的行为,却不易概括为一般规律。
- 更准确说,这两类模型服务于不同目的,适用不同场景:
- 需要理论分析和可泛化能力的设计取舍,会优先选择理想化模型;
- 需要预测和拟合具体物理过程(如真实球体下落的全过程)时,则会选择含有差异项的精准模型。
限制与待确认问题
- 文中哪些参数与方法的细节未完整披露(不能补充但需说明):
- 讲座未明确给出“理想化模型 + 差异项”在双摆控制中具体的数学结合方式,例如差异模型是作为外力项叠加到 Lagrangian 还是其它形式。
- 落球实验的具体高度/球的数量等实验参数非常简略;只提到“五层高车库”和数种球。
- 数据中揭示的阻力的具体形式(如究竟是线性项、平方项还是湍流高阶效应)需要通过 SINDy 的代码与实验报告进一步查询。
- 讲者可能有意使用了“误差项/扰动项不能被解释为物理的确定性效应”的设定,但展开不足。
- 差别建模的适用范围和常见陷阱没有在讲座中详述,但以下几点可以视为隐含限制:
- 当差异模型与理想化模型之间的边界模糊,容易导致整体模型建模失败;
- 若数据来自单一情境(如一种球、一种风速),无法保证学到的差异项能够外推到其它环境下。
行动清单 / 实践要点
- 初始方案设计
- 不要直接放弃所有先验知识进行端到端学习;梳理出已知的物理约束(对称性、守恒律、状态空间限制、运动方程框架),并确定可以使用哪些解析模型作为初始化基础。
- 识别差异项
- 对比真实物理系统的数据与理想化模型仿真,分离出系统中的各项未被建模力;
- 归类哪些无法用第一性原理建模(摩擦、轴承振动、高雷诺数阻力等)。
- 选择适当的差异学习器
- 根据数据规模与期望数学表达选择合理基函数/回归框架(SINDy 适合稀疏方程,DMD 适合线性近似,GP 适合不确定性建模,深度网络适合大规模强非线性)。
- 小心设计约束条件
- 若要获得普适的动力学规律,需要显式引入群稀疏或其它正则化来排除虚假项;
- 单次数据拟合很可能挖掘出如“速度与质量相关”等局部相关(亚里士多德式)模型;仅适合精确数据预测,而不适合基础发现。
- 明确模型的适用目标——“模型学给谁用、什么目的”:
- 是用于理论研究,还是为了工程控制?
- 是需要高度可解释、可泛化的物理规律,还是需要最优拟合特定被控对象的真实行为?
- 两种目标应引导不同的建模决策,防止以错误标准评判模型好坏。
总结
- 差异建模的核心思想是:利用第一性原理模型的可靠部分,用数据弥补模型的误差(残余误差或扰动)。
- 在精度和控制层面,这种思想已经在双摆摆起与镇定、机械臂老化建模和数字孪生等方面展现卓越效果。
- 但在将差异建模作为表达范式的过程中,必须注意到:
- 历史地看,基于错误坐标系/错误物理框架却带大量数据拟合项的模型(托勒密体系)很多时候会比正确简洁的物理模型(开普勒)在拟合精度上更胜一筹;
- 科学家在建立新物理学的过程中需要像伽利略那样有意识地隔离余项,从而发现理想化规律——机器学习的落点往往是"亚里士多德式模型"而非"伽利略式模型";
- 在算法训练中,只有引入群稀疏等恰当的先验结构约束,神经网络或方程学习算法才能从根本上跳出对大量数据中"假相关"的忠实近拟合,提取客观且可推广的物理内核;
- 选择“伽利略”还是“亚里士多德”最终取决于模型设计目标与现实需求的权衡。没有一种建模总是唯一正确的。
核心金句(原话):"You want one model you can analyze and learn from, that generalizes well, or do you want one that brute-force fits your data more accurately? Do you want Galileo or do you want Aristotle?"