PINN模型相关原理
PINN模型相关原理
目录
- PINN模型相关原理
- 原本的物理界的利用神经网络的参数估计
- PINN 的原理介绍
- 一、基本思想
- 二、PINN 的损失函数
- 三、自动微分(Autodiff)
- 四、PINN 的优势与挑战
原本的物理界的利用神经网络的参数估计
- 原本物理界需要确定一个三维流体,其中包含三个速度分量(u,v,w)和一个与三维空间坐标及时间相关的压力(p)。
- 常用的做法:
- 利用大量的特征输入,这里输入的是位置特征(x,y,z)和时间特征(t),利用庞大的神经网络去构建或者说是拟合其特征和三个变量的函数关系。
- 这些作者在这篇现在经典的论文中扩展了这种幼稚的神经网络模型。
- 原本是只需要几个对应输入的损失函数,去衡量预测值和对应真实值的差距。
∑ D a t a ∥ u ^ ( x j ) − u ( x j ) ∥ 2 2 \sum_{Data}{\left\| \hat{u}\left( x_j \right) -u\left( x_j \right) \right\| _{2}^{2}} Data∑∥u^(xj)−u(xj)∥22
- 提出的扩展做法:
- 他们通过计算这些输出变量关于输入的空间(x,y,z)和时间变量(t)的偏导数来扩展了这类概念。
- 右边虽然是扩展的,实际是是没有其链接的,网络结构仍然没变,输入仍然是微分方程的输入变量,输出仍然是我们需要的输出,相对于原本的神经网络拟合,PINN就是多了几项物理原理约束而已。
- 物理原理的约束:无论是在物理领域,还是在控制或者是电气领域,他们都需要满足一定的微分方程形式的式子。比如电路中的需要满足的电压电流的条件,一般是以微分等式的形式展现,而该等式的各个项的组成就是输出和输入的偏导,导数等等,而导数由于神经网络自动微分时候都可以求取,因此只需要将其放进损失函数中即可,这样就可以在满足输入输出拟合的情况下,也满足对应的各类原理的约束。
- 优势:在满足这样的物理条件的前提,我们只需要非常少量的数据,就可以训练这个神经网络,因为相当于减少非常多的需要探索的方向。
PINN 的原理介绍
Physics-Informed Neural Networks(PINNs) 是一种将神经网络与**偏微分方程(PDE)**结合的数值求解方法。其核心思想是:利用神经网络来逼近物理问题的解函数,同时将物理定律(如偏微分方程、边界条件等)作为损失函数的一部分进行监督。
一、基本思想
传统神经网络通过样本的标签监督学习(如图像分类中的真实标签),而 PINN 通过物理规律来监督网络的训练过程。
例如,对于一个满足如下 PDE 的物理系统:
其中 N \mathcal{N} N 表示偏微分算子, u ( x , t ) u(x,t) u(x,t) 是待求解函数。
PINN 的做法是:构造一个神经网络 u θ ( x , t ) u_\theta(x,t) uθ(x,t) 来逼近真实解 u ( x , t ) u(x,t) u(x,t),并将PDE 残差作为损失项加入训练目标中。
二、PINN 的损失函数
损失函数通常由三部分组成:
- 初始条件损失 L I C L_{IC} LIC:使得神经网络在初始时刻满足已知解;
- 边界条件损失 L B C L_{BC} LBC:保证网络在边界上满足边界条件;
- 物理残差损失 L P D E L_{PDE} LPDE:计算神经网络预测的 u θ ( x , t ) u_\theta(x,t) uθ(x,t) 放入 PDE 中是否满足物理规律。
所以总损失为:
L(θ)=LIC+LBC+LPDEL(\theta) = L_{IC} + L_{BC} + L_{PDE}L(θ)=LIC+LBC+LPDE
其中:
- L I C = 1 N I C ∑ i = 1 N I C ∣ u θ ( x i , 0 ) − u 0 ( x i ) ∣ 2 L_{IC} = \frac{1}{N_{IC}} \sum_{i=1}^{N_{IC}} |u_\theta(x_i,0) - u_0(x_i)|^2 LIC=NIC1∑i=1NIC∣uθ(xi,0)−u0(xi)∣2
- L B C = 1 N B C ∑ i = 1 N B C ∣ u θ ( x i , t i ) − g ( x i , t i ) ∣ 2 L_{BC} = \frac{1}{N_{BC}} \sum_{i=1}^{N_{BC}} |u_\theta(x_i,t_i) - g(x_i,t_i)|^2 LBC=NBC1∑i=1NBC∣uθ(xi,ti)−g(xi,ti)∣2
- L P D E = 1 N f ∑ i = 1 N f ∣ N [ u θ ] ( x i , t i ) ∣ 2 L_{PDE} = \frac{1}{N_{f}} \sum_{i=1}^{N_{f}} |\mathcal{N}[u_\theta](x_i, t_i)|^2 LPDE=Nf1∑i=1Nf∣N[uθ](xi,ti)∣2
其中 N I C , N B C , N f N_{IC}, N_{BC}, N_f NIC,NBC,Nf 分别是初始、边界、PDE 点的数量。
三、自动微分(Autodiff)
PINN 依赖于 自动微分(如 TensorFlow 或 PyTorch 提供的功能),可以精确计算神经网络输出对输入的导数,从而无需离散化即可得到 PDE 中的导数项。
四、PINN 的优势与挑战
优势
- 能用于求解高维 PDE(传统网格法易受“维数灾难”限制);
- 直接满足物理约束,更容易推广到无标签或少标签数据;
- 可扩展到反问题(如参数识别、边界反推等)。
挑战
- 收敛速度较慢,对网络结构和训练策略较敏感;
- 在复杂区域或多尺度问题中,残差学习不易收敛;
问题(如参数识别、边界反推等)。
挑战
- 收敛速度较慢,对网络结构和训练策略较敏感;
- 在复杂区域或多尺度问题中,残差学习不易收敛;
- 数值稳定性和物理精度仍不如某些传统方法(如有限差分或有限元)稳定。