1. 引言
随着问题复杂性的增加,数值计算模型在处理时间和硬件资源上的消耗日益显著。这些问题通常以偏微分方程(PDEs)的形式出现,作为模拟物理、生物学等领域现象的控制方程。尽管数值求解器是求解这些PDEs的便捷工具,但其对计算资源的高要求促使人们寻求替代模型以降低成本。机器学习(ML),尤其是深度神经网络(DNN),得益于Python编程语言中流行ML库的进步,已成为代理建模的重要选择。DNN作为一种机器学习模型,经过适当训练后,可作为数学问题的参数化解决方案。然而,DNN训练通常需要庞大的数据样本集,这在代理建模中意味着需要收集被代理模型模拟驱动的数据。当模型计算成本高昂时,生成足够的数据变得不切实际。因此,能够在较少数据下实现收敛的DNN模型备受关注,其中物理信息神经网络(PINN)便是一种有效方法[1]。PINN本质上是DNN,但其损失函数采用了不同的表达方式,通过软约束将PDE作为唯一解,而非依赖大数据来确定关系。PINN能够在更短时间内构建网络解决PDEs问题,且所需数据量少于标准DNN。这一优势已在多个基准问题上得到验证,如Burger方程[2]、Schrödinger方程[3]、非线性扩散率方程和Biot方程等[4]。PINN的变体,即生物信息神经网络(BINN) [5],也被用于模拟来自从头开始分析实验的稀疏真实世界数据的反应–扩散方程。通过利用智能数据和针对基准测试问题的最新应用,PINN有潜力缓解数值求解PDE时的计算需求。
本文在普通物理信息神经网络的基础上,创新性地加入自适应损失加权法[6],自适应损失加权法在每次训练迭代开始时动态调整单个损失项的相对重要性,确保在没有单个损失分量占主导地位的情况下实现平衡的优化。这种方法促进了收敛速度的提高和模型准确性的提高。
文章第二节简要叙述了热力学方程;第三节给出PINN的一般模型、基于数值PINN的自适应损失物理信息神经网络(SalPINN)的基本原理;第四节展开数值实验,使用两种算法分别对一个一维瞬态热传导方程进行求解,并进行比较,以验证方法的有效性;第五节总结了方法的优缺点,并提出了潜在的应用前景。
2. 热力学方程
在本文中,我们主要考虑以下一维瞬态热传导方程:
(1)
式(1)中,
是热扩散系数,与材料的热传导系数和比热容有关,
表示温度,描述了热量在一维物体中如何随时间和空间变化而传播,
代表热源项,它表示单位时间内单位体积内产生的热量,
表示空间坐标的左边界,
表示空间坐标的右边界,
是初始时刻。在本文中,
定义为:
(2)
式(2)中,
为已知的函数。我们主要考虑第一类边界条件Dirichlet边界条件:
(3)
式(3)中,
和
均为已知函数,
表示空间坐标边界。
3. 算法基本原理
3.1. 物理信息神经网络
物理信息神经网络作为一种数据驱动的方法已被广泛应用于求解一般非线性偏微分方程,如Burgers方程、泊松方程和薛定谔方程。本文使用PINN来研究热传导问题,为了解决式(1)~(3)中的热传导方程,我们构建了多层前馈神经网络,用以分别逼近目标解。在其最简单的形式中,我们考虑深度为
的前馈全连接神经网络,它们的输入为训练点的坐标
,假设第
层的输出为
,神经网络可以定义为:
(4)
式(4)中,
为激活函数[7],包括sigmoid、relu和tanh [8]。
和
分别表示第
层的权重和偏差。所有的权重矩阵和偏置向量都可以用一个参数集合
表示。
在本文的PINN框架中,训练点的坐标由三部分组成:计算区域内部训练点
、初始训练点
、边界训练点
,
、
和
分别是计算区域内部训练点、初始训练点和边界训练点的个数。在下面的方程中,所有偏导数都是通过自动微分(AD) [9]得到的。PINN将物理的先验知识集成到损失函数中,以增强数据的信息量,在本文中,损失函数被定义为:
(5)
式(5)中,
表示偏微分方程的损失,
表示初始条件的损失,
表示边界条件的损失,考虑Dirichlet边界条件[10],假设神经网络输出的近似解为
,则式(5)中的子损失可表示为:
(6)
(7)
(8)
由于自动微分技术能高效计算方程残差,上述损失函数在训练过程中无需额外标签数据,实现了无监督学习。该设计融合了监督与无监督学习,确保损失函数既能最小化已知数据误差,又能满足偏微分方程蕴含的物理约束。在输入必要的时空数据后,我们采用全连接神经网络逼近解函数,并利用自动微分技术计算残差以构建损失函数。通过梯度下降等优化算法调整神经网络权重,最终训练出符合偏微分方程的神经网络参数,实现对解函数的逼近。算法1总结了普通PINNs算法的参数限定和运行步骤。
算法1 普通物理信息神经网络(PINN) |
参数限定:迭代次数
,学习率
。 |
目标:找出参数
的最佳模型。 |
开始 |
步骤1:设置一个具有初始参数
的物理信息神经网络
。 |
步骤2:指定训练点
。 |
步骤3:使用梯度下降算法在
次迭代中将参数
更新为: |
循环 从
到
|
(a) 根据式(6)~(8)定义损失函数
(5)。 |
(b) 通过Adam更新参数
: |
|
结束 |
3.2. 自适应损失物理信息神经网络
我们的想法受到一篇论文的启发,该论文提出了一种原则策略来权衡场景几何中的多个损失函数,以及语义多任务深度学习问题[5]。损失函数是基于均匀不确定性的高斯似然最大化来定义的。对于求解热传导方程的回归任务,似然定义为高斯分布,其均值由代理模型输出给出:
(9)
考虑输出服从高斯分布。作为神经网络权值衰减的一部分,式(9)中噪声标量
通常是固定的,
为神经网络的输出解。为了捕获依赖数据的任意不确定性,我们将根据最大似然推理调整观测噪声参数。基于最小化目标,模型的负对数似然为:
(10)
式(10)中,
表示输出变量的损失,我们将(6)~(8)中的损失项代入,则可以得到:
(11)
式(11)中,
表示每个损耗项的噪声参数,我们的目标是通过使用基于梯度的优化器,如随机梯度下降(SGD)、Adam和L-BFGS [11]最小化损失
来找到最佳模型权重
和噪声标量
。本文的自适应损失神经网络框架如图1所示。算法2总结了PINN的自适应损失平衡算法的运行流程和步骤。
Figure 1. Self-adaptive loss physical information neural network (SalPINN) framework
图1. 自适应物理信息神经网络(SalPINN)框架
算法2 自适应物理信息神经网络(SalPINN) |
参数限定:迭代次数
,学习率
,初始化噪声项
。 |
目标:找出参数为
和噪声标量
的最佳模型。 |
开始 |
步骤1:设置一个具有初始参数
的物理信息神经网络
。 |
步骤2:指定训练点
。 |
步骤3:构造一个高斯概率模型,其均值由PINNs的输出和噪声集合
给出。 |
步骤4:使用梯度下降算法在
次迭代中将参数
和
更新为: |
循环 从
到
|
(a) 根据极大似然估计(10)定义加权损失函数
(11)。 |
(b) 通过Adam调整噪声参数
,满足约束的概率最大化: |
|
(c) 通过Adam更新参数
: |
|
结束 |
4. 数值实验
在本节中,为了验证上述方法的可行性,设计了一个数值实验算例对算法1和算法2的性能进行验证,并且本文算法1和算法2的基础网络框架是相同的。
热传导方程是一个描述热量在物体内部或区域内的传播规律以及温度如何随时间变化的物理模型,本节实验我们对一维瞬态热传导方程进行求解,该偏微分方程为:
(12)
式(12)中,
,
,
,精确解为
。实验中的物理信息神经网络和自适应损失物理信息神经网络的拓扑结构均为全连接网络,输入层有2个神经元,输出层有1个神经元,隐藏层有6层,每层40个神经元,隐藏层间以双曲正切函数tanh为激活函数。神经网络使用Adam优化器以0.001为学习率迭代7500次,训练点设置为
,
,
。所有实验均在GPU-GTX4060上进行,编程语言采用Python。本文判断热传导方程的误差定义为:
(13)
Figure 2. (a) Exact solution; (b) Numerical solution of algorithm 1; (c) Numerical solution of algorithm 2
图2. (a) 精确解;(b) 算法1的数值解;(c) 算法2的数值解
图2展示了算法1 (PINN)与算法2 (SalPINN)在一维瞬态热传导方程求解中的结果。总体而言,两种算法均能模拟热传导过程的基本特性,清晰展现温度随时间的变化。图2(a)呈现了方程(12)的精确解,而图2(b)和图2(c)则分别展示了算法1和算法2的数值解。通过对比发现,算法1在
区域内的数值解与精确解存在较大偏差,而算法2在整个区域内的数值解则与精确解基本一致。
Figure 3. (a) L2 error of algorithm 1; (b) L2 error of algorithm 2
图3. (a) 算法1的L2误差;(b) 算法2的L2误差
经过深入对比,图3展示了算法1与算法2在时空区域内测试点的L2误差。结果显示,算法1的误差整体较大,而算法2在引入自适应损失平衡机制后,其L2误差更为稳定,最高误差值介于0.10至0.15之间,表明算法2的性能显著提升,稳定性增强。
Figure 4. Numerical solution of algorithm 2 in
when: (a)
; (b)
; (c)
.
图4. 算法2在
时某一时刻的数值解:(a)
;(b)
;(c)
为了进一步测试算法2的计算性能,图4分别展示了热传导方程在
、
和
时刻的温度状态,图中蓝色实线为精确解,红色虚线为算法2的数值解,从图像我们可以看出算法2的预测结果基本与精确解一致,这说明算法2能够精确计算该问题。
5. 总结
在本文中,我们研究了一维瞬态热传导方程背景下,普通物理信息神经网络(PINN)与自适应损失物理信息神经网络(SalPINN)的性能。PINN的性能与收敛性易受损失权重选择的影响,因此自适应地分配适当权重以组合PINN中的多个损失函数至关重要。我们提出了一种基于最大化高斯似然及可扩展不确定性参数的自适应损失平衡方法,旨在同时学习PINN中的竞争损失项,以提高热传导方程的计算精度。
我们通过数值实验验证了其有效性,将其应用于一维瞬态热传导方程的求解,数值实验结果表明,与传统固定权重PINN相比,SalPINN在热传导方程求解中降低了误差,在空间区域内的解与精确解吻合度显著提高,提升了稳定性。然而,当前方法在计算效率上尚有不足,这将是未来研究的方向。我们计划将SalPINN方法拓展至高维度偏微分方程的计算,并通过优化参数选择及结合其他优化策略,克服现有局限,推动该方法在更广泛领域的应用。