一种基于伴随方法的物理信息神经网络预处理框架
A matrix preconditioning framework for physics-informed neural networks based on the adjoint method
宋家豪,曹文博,张伟伟*
引用格式:
J. Song, W. Cao, W. Zhang, A matrix preconditioning framework for physics-informed neural networks based on the adjoint method, Physics of Fluids, 37 (2025).
编者按
----------
物理信息神经网络(PINNs)在正问题中的病态仍是限制其迈入复杂工程问题的一大局限。该工作设计了一种针对损失函数的预处理框架,通过降低PDE系统的条件数实现了对PINNs病态的缓解,在目前PINNs相对棘手的问题中取得了好的表现。
一、研究背景
物理信息神经网络(Physics-informed neural networks, PINNs)近年来日益受到偏微分方程(Partial differential equations, PDEs)求解领域的关注。自其提出以来,学者们发展了大量改进方法提升PINNs的表现,使其在流体力学、热传导和电磁学等领域得到了广泛应用。然而,受限于PDE损失函数的病态,PINNs在某些问题上难以获得令人满意的结果[1-3]。
在之前的研究[1]中,我们验证了PINNs的病态与PDE的Jacobian矩阵的紧密联系。具体地, PINNs的收敛随着Jacobian矩阵的条件数增加而变得困难甚至得到错误的结果。因此,本文提出了一种基于伴随方法的PINNs预处理框架,通过降低Jacobian矩阵的条件数来缓解PINNs的病态。
二、研究方法
考虑定义在的定常PDE,
其中表示PDE的解,
表示通用微分算子,
表示边界条件算子。对上式进行有限差分离散,
被一个离散系统
代替(
表示神经网络预测解)。对于线性PDE,
为线性系统。
其中A为Jacobian矩阵J
对于非线性PDE,在经过适当线化后,它也可以表示为线性系统。基于此,PINNs的PDE损失变为
在之前的研究[1]中,我们验证了PINNs的病态与Jacobian矩阵的联系,具体地,PINNs的收敛随着J条件数的增加而变得困难甚至得到错误的结果。因此,本文对PDE离散得到的线性系统做左预处理,假设预处理子为M,线性系统变为
上式表示的线性系统的Jacobian矩阵为,根据预处理理论,
(
表示矩阵的条件数)。因此,基于预处理后的线性系统构建损失函数可以改善PINNs的收敛性和精度。修正后的损失函数为
一个关键问题是获取预处理子M,它通常通过对J进行因子分解得到,例如本文使用的不完全LU分解。因此,我们首先结合自动微分和矩阵染色计算J。对于小规模问题,直接计算是可接受的。然而,对于大规模问题,计算
需要极大的计算和存储成本。因此,在实际中,
通常被求解
替代。例如,本文基于不完全LU分解
将
转化为依次求解
和
。凭借L和U的三角属性,两个线性方程组通过一次代入便可完成求解,成本很低。然而,因为代入过程不支持自动微分,得到的
被从计算图中分离(
表示变量从计算图中分离),这导致无法计算损失函数关于网络参数的梯度,梯度下降无法进行。本文通过引入伴随方法来解决这个问题。
考虑约束优化问题
为将上式转化为无约束优化问题,建立拉格朗日函数
其中λ为拉格朗日乘子,它的必要最优性条件为
其中自然满足,因为
是通过求解
得到。
容易通过
得到。因此,可以获得
关于
的偏导数
。因为
没有显式计算,本文使用计算
的方法类似地计算
。之后,建立新的损失函数,
该损失的数值与其关于网络参数的梯度与原始损失完全相同,并且它更加普适。因此,本文使用它作为预处理方法的损失函数。
三、结果与分析
A.二维Poisson方程
本文首先通过求解二维Poisson方程来验证所提方法的有效性,这个方程被广泛作为PINNs相关研究中的数值实验。
其中源项,解析解为
。我们设置k=15,根据Basir and Senocak的研究[4],PINNs在这个条件下失效。
图1展示了使用PINNs和所提方法求解此问题的收敛历程。可以观察到尽管两种方法的损失下降了相同数量级,但预处理方法的误差比PINNs低一个数量级以上。类似的现象可以在[1, 2]中观察到,根据现有研究,由于PDE损失的病态,PINNs损失的下降并不意味着解精度的提升,它可能陷入错误的局部最优。
B.Navier-Stokes equations
本文进一步在Navier-Stokes方程上进行了测试,考虑顶盖驱动方腔流动。我们分别在雷诺数400和3200的条件下进行了流场求解,图3与图4分别展示了两种状态下PINNs与预处理方法的收敛历程。可以观察到,当Re=400时,PINNs经过1000个epoch误差降至5%,而引入预处理后仅需50个epoch便可将误差降至1%。而当Re=3200时,PINNs的误差始终维持在100%附近,尽管它的损失在不断下降。而引入预处理后可以将误差降至3%,图4展示了两种方法获得的速度幅值。
结论
本文提出了一种预处理方法以缓解PINNs的病态并提升其收敛性。结合矩阵染色和自动微分,我们首先设计了一种高效方法来计算Jacobian矩阵。之后,预处理子通过对Jacobian矩阵进行不完全LU分解获得。为了以低成本实现预处理,关于预处理子的解析求逆被基于不完全LU分解的三角求解代替,同时伴随方法被引入以解决网络参数梯度缺失的问题。通过求解多尺度和高雷诺数问题,验证了所提方法的有效性。
参考文献
[1] W. Cao, W. Zhang, An analysis and solution of ill-conditioning in physics-informed neural networks, Journal of Computational Physics, 520 (2025) 113494.
JCP|西工大曹文博、张伟伟:物理信息神经网络的病态分析与病态解决方案
[2] P. Rathore, W. Lei, Z. Frangella, L. Lu, M. Udell, Challenges in training PINNs: A loss landscape perspective, arXiv preprint arXiv:2402.01868, (2024).
[3] A. Krishnapriyan, A. Gholami, S. Zhe, R. Kirby, M.W. Mahoney, Characterizing possible failure modes in physics-informed neural networks, Advances in Neural Information Processing Systems, 34 (2021) 26548-26560.
[4] S. Basir, I. Senocak, Critical investigation of failure modes in physics-informed neural networks, in:AIAA SCITECH 2022 Forum, 2022, pp. 2353.
公众号原文链接(文末附论文资源):
POF | 西北工业大学宋家豪、张伟伟等:一种基于伴随方法的物理信息神经网络预处理框架
注:文章由作者原创供稿,并获得作者授权发布。