[论文解读] AdjointNet: Constraining machine learning models with physics-based codes
AdjointNet 是一种物理约束的机器学习框架,可将现有的基于物理的模拟代码(如 PFLOTRAN 和纳维-斯托克斯求解器)直接嵌入神经网络训练中,以在整个计算域内强制执行守恒定律(例如质量、动量)。通过利用物理代码中的伴随敏感度,它能够在数据有限、稀疏或嘈杂的情况下实现高精度的材料参数反演,且无需重新离散化偏微分方程(PDE)。
Physics-informed Machine Learning has recently become attractive for learning physical parameters and features from simulation and observation data. However, most existing methods do not ensure that the physics, such as balance laws (e.g., mass, momentum, energy conservation), are constrained. Some recent works (e.g., physics-informed neural networks) softly enforce physics constraints by including partial differential equation (PDE)-based loss functions but need re-discretization of the PDEs using auto-differentiation. Training these neural nets on observational data showed that one could solve forward and inverse problems in one shot. They evaluate the state variables and the parameters in a PDE. This re-discretization of PDEs is not necessarily an attractive option for domain scientists that work with physics-based codes that have been developed for decades with sophisticated discretization techniques to solve complex process models and advanced equations of state. This paper proposes a physics constrained machine learning framework, AdjointNet, allowing domain scientists to embed their physics code in neural network training workflows. This embedding ensures that physics is constrained everywhere in the domain. Additionally, the mathematical properties such as consistency, stability, and convergence vital to the numerical solution of a PDE are still satisfied. We show that the proposed AdjointNet framework can be used for parameter estimation (and uncertainty quantification by extension) and experimental design using active learning. The applicability of our framework is demonstrated for four flow cases. Results show that AdjointNet-based inversion can estimate process model parameters with reasonable accuracy. These examples demonstrate the applicability of using existing software with no changes in source code to perform accurate and reliable inversion of model parameters.
研究动机与目标
- 解决现有物理信息机器学习方法通过自动微分和重新离散化软性强制满足 PDE 约束的局限性,这些方法会破坏已有的物理代码。
- 使领域科学家能够使用成熟且经过验证的基于物理的模拟器(无需修改)作为机器学习训练工作流的核心。
- 确保在整个计算域内严格满足质量、动量和能量守恒等物理约束,以保持数值稳定性和收敛性。
- 通过直接将实时观测数据整合到训练循环中,支持反问题求解、不确定性量化和主动学习。
- 展示该框架在多种物理系统中的适用性,包括多孔介质流动和不可压缩纳维-斯托克斯流动。
提出的方法
- AdjointNet 将基于物理的模拟器(例如 PFLOTRAN、纳维-斯托克斯求解器)作为可微分层嵌入神经网络中,使梯度能够通过模拟器反向传播。
- 利用伴随方法计算状态变量(例如压力、速度)相对于模型参数(例如渗透率、黏度)的伴随敏感度,确保梯度计算的准确性。
- 损失函数结合了数据拟合项与物理残差项,其梯度通过伴随敏感度计算,从而在保持原始代码数值特性的前提下实现端到端训练。
- 该框架支持正向问题和反向问题,包括参数估计和通过主动学习进行实验设计。
- 通过重用物理代码中已有的、经过验证的数值离散化方法,避免了 PDE 的重新实现,从而确保了一致性、稳定性和收敛性。
- 该方法适用于任何能够计算状态变量及其伴随敏感度的物理代码,因此在科学领域具有广泛适用性。
实验结果
研究问题
- RQ1是否可以无需修改代码,直接将基于物理的模拟代码集成到机器学习训练中,同时保持其数值特性?
- RQ2是否可以利用现有物理代码中的伴随敏感度来训练神经网络,同时严格强制执行守恒定律?
- RQ3AdjointNet 是否能够在数据有限、稀疏或嘈杂的观测条件下实现高精度的参数反演?
- RQ4AdjointNet 在涉及异质多孔介质和由纳维-斯托克斯方程控制的不可压缩流动的反问题中表现如何?
- RQ5该框架是否能够在不从头开始重新训练的情况下,支持实时数据同化和主动学习?
主要发现
- AdjointNet 在一个顶盖驱动腔流中成功估计了运动黏度,真实值为 0.1000,估计值为 0.1021,展示了在参数反演中的高精度。
- 该方法在约 200 个周期内收敛,最终损失值低于 10^-8,表明训练过程稳定且高效。
- 在均质多孔介质中,AdjointNet 仅使用 1,681 个压力数据点即准确反演了渗透率,显示出对稀疏数据的鲁棒性。
- 在异质多孔介质中,AdjointNet 有效反演了空间变化的渗透率场,同时在整个域内保持了物理一致性。
- 该框架通过将实时观测数据直接整合到训练过程中,实现了数据同化,避免了因新模拟数据而重新训练的需要。
- AdjointNet 通过继承底层物理代码的离散化特性,保持了数值稳定性和收敛性,而 PINNs 则需要重新离散化。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。