【摘要】 基于物理信息的神经网络(Physics-informed Neural Network, 简称PINN),是一类用于解决有监督学习任务的神经网络,它不仅能够像传统神经网络一样学习到训练数据样本的分布规律,而且能够学习到数学方程描述的物理定律。与纯数据驱动的神经网络学习相比,PINN在训练过程中施加了物理信息约束,因而能用更少的数据样本学习到更具泛化能力的模型。本文主要解析这种神经网络以及相关应用
1. 论文简介
Physics-informed neural networks: A deep learning framework for solving forward and inverse problems involving nonlinear partial differential equations 。
https://www.sciencedirect.com/science/article/pii/S0021999118307125
2019年,来自布朗大学应用数学的研究团队提出了一种用物理方程作为运算限制的“物理激发的神经网络” (PINN) 并发表在了计算物理学领域权威杂志《计算物理学期刊》(Journal of Computational Physics) 上。这篇论文一经发表就获得了大量关注。这篇论文因为代码体系的完整性使得开发人员们很容易上手把相关的学习框架应用到不同领域上去。所以在发表不久之后,一系列不同的PINN也被其他研究者开发出来。甚至可以不夸张的说,PINN是目前AI物理领域论文中最常见到的框架和词汇之一。
2. 算法描述
而所谓的物理神经网络,其实就是把物理方程作为限制加入神经网络中使训练的结果满足物理规律。而这个所谓的限制是怎么实现的?其实就是通过把物理方程的迭代前后的差值加到神经网络的损失函数里面去,让物理方程也“参与”到了训练过程。这样,神经网络在训练迭代时候优化的不仅仅是网络自己的损失函数,还有物理方程每次迭代的差,使得最后训练出来的结果就满足物理规律了。
给定一个非线性PDE :
其中 u 是要求的解, N 是非线性偏微分算子,lambda 是需要待定的参数。 用一个具体的例子(Burgers方程)来说明主要的想法和步骤
利用 Neural Networks 来逼近 。定义损失函数为
其中
我们来分析一下损失函数。如果神经网络能很好地求解出PDE的解, 那么对于来自初边值的任一个点, 其值MSEu趋于零;对于内部的配置点, 因为很好地拟合了微分方程, MSEf趋于零,也就是说, 损失函数的值为 0 时, 我们便可以说在训练集上每个点都有神经网络的值趋于真实值 。这样问题便转化为如何优化损失函数。利用神经网络的反向传播机制和L-BFGS便可以求解。
3. 论文结果
PINN学习得到的N-S方程的解用于压力预测
相关应用论文
低分辨率图像重构到高分辨率图像
Physics-Informed Neural Network Super Resolution for Advection-Diffusion Models(https://arxiv.org/abs/2011.02519)
电力系统动力学求解
Physics-Informed Neural Networks for Power Systems(https://ieeexplore.ieee.org/abstract/document/9282004/)
金属表面声波裂缝检测
PHYSICS-INFORMED NEURAL NETWORK FOR ULTRASOUND NONDESTRUCTIVE QUANTIFICATION OF SURFACE BREAKING CRACKS(https://link.springer.com/article/10.1007/s10921-020-00705-1)