1. 引言
Burgers方程是流体力学中描述高速流体运动的一类非线性扩散类型的重要偏微分方程(Partial Differential Equation, PDE),已广泛应用于流体力学,空气动力学,交通流动力学等领域[1]。Burgers方程传统的数值解法在迭代求解大型方程组时计算成本高昂,网格的划分精度需要频繁的人机交互进行不断优化[2]。在实际工程应用中,由于测量设备的限制、环境因素和其他外部干扰,数据集不可避免的包含一定程度的弱噪声,导致数值解法在逼近微分方程的导数值时产生不可忽视的偏差,影响最终的求解精度。
深度学习在工程技术,流体力学,计算力学等领域的研究具有重要的理论指导意义与工程应用价值[3]。随着计算机数据分析能力的提高,神经网络开始应用于PDE的研究。作为传统数值求解器的替代方法,神经网络能够从高维非线性空间中学到潜在的规则和特征,拟合得到输入与输出之间的函数映射关系[4]。
韩忠华[5]提出的基于Kriging模型的代理优化算法,可以有效应用于具有光滑、连续设计空间的任意优化问题。孙斌等[6]提出高斯过程回归方法对风速时间序列进行预测,模型达到较好的稳定性。Roska等[7]提出卷积神经网络(Convolutional Neural Network, CNN),将非线性偏微分方程的离散表达式抽象为特定的CNN网络模型。Long等[8][9]提出偏微分方程网络(Partial Differential Equation-Net, PDE-Net)和偏微分方程网络2.0 (Partial Differential Equation-Net2.0, PDE-Net2.0),从观测的动态数据中发现偏微分方程的先验知识。Regazzoni等[10]使用人工神经网络(Artificial Neural Network, ANN)对可用输入输出对的误差进行最小化,以此选择最优模型。
然而上述神经网络大多基于纯数据驱动的深度学习模型,在处理偏微分方程时依赖整个系统的输入输出,需要大量的数据集用于训练。若数据集携带噪声,神经网络往往会将训练集中的噪声标签一起学习,大大降低模型训练过程中的准确性和泛化能力。
为了减轻数据集携带噪声带来的影响,Schaeffer与Mccalla[11]采用微分方程的积分形式处理有噪声的数据,但只能在一定程度上减轻噪声数据的干扰。陈庆强等[12]以数据分布为中心,根据数据集自身的分布特点对标签噪声进行特殊处理。陈倩等[13]提出一类基于重要性重加权的半监督分类算法,但仅能用于解决数据集标签含有噪声的二分类问题。2019年Raissi等[14]提出的物理信息神经网络(Physics-Informed Neural Networks, PINNs)在噪声数据下对偏微分方程的正问题和反问题进行求解。然而PINNs在解决实际问题时的预测精度难以达到任务要求,即使增加用于训练的配置点数量,最终网络的输出精度也有限,误差值难以收敛到较小量级[15]。唐明健与唐和生[16]利用PINNs框架求解矩形薄板中的力学方程,结果表明PINNs模型可以显著减小所需数据的范围,但是模型最终的精度有限。Cai[17]等结合物理学习、无缝集成数据和数学模型,验证了PINNs在超音速流和生物医学流等相关流体力学逆问题中的有效性。Majid等[18]运用PINNs求解声波波动方程,将PINNs作为地球物理反演求解器,探索PINNs处理不同程度地理结构复杂性的能力,结果表明PINNs在全波形地震反演具备优秀的反演结果。尽管上述研究表明PINNs在相关偏微分方程的反演或逆问题的应用中表现出了较高的性能,但目前尚未有研究对PINNs正向求解相关偏微分方程的高精度数值结果进行探讨分析。
本文提出基于PINNs的梯度增强的物理信息神经网络(Gradient-enhanced Physics-Informed Neural Networks, G-PINNs),引入方程导数的残差并在训练过程中不断学习方程及其导数形式,同时探究G-PINNs各项损失的权重配比,增强对偏微分方程梯度的约束以提高预测结果的精度并优化网络架构。采用PINNs与G-PINNs模型对一维Burgers方程的数值结果进行正向预测求解,对比PINNs和G-PINNs在无噪声与弱噪声下求解一维Burgers方程的相对误差,理论分析其网络架构在噪声环境下稳健性和求解性能的提升,同时为数据集稀缺情况下偏微分方程的求解提供了理论参考和实验依据。
2. Burgers方程
Burgers方程又称粘性Burgers方程,展示了流体运动中对流项和扩散项的耦合,是流体力学领域中的基础非线性偏微分方程之一。选取单一空间维度的Burgers方程,其一般形式如下[19]:
(1)
式中,u表示速度,
表示介质的粘度,t表示时间,x表示空间坐标,
为非稳态项,
为对流项,
为扩散项。
本文中选定计算域
,使用的Burgers方程为:
(2)
初始条件为:
(3)
选择Dirichelet边界条件
(4)
20世纪50年代,Hopf[20]提出了一种精确求解Burgers方程的方法,即Hopf-Cole变换,该方法允许在任意初始条件下获得Burgers方程的解。在
内等间隔取256个点,
内等间隔取100个点,构成25,600个时空坐标点作为空间离散化的基准。利用Hopf-Cole变换和有限元法得到高精度的数值解,该数值解被视作本次实验的参考真值。为保证训练集的多样性与代表性,从坐标点随机选取配置点构成网络训练所用的数据集,确保神经网络模型能够对广泛的输入条件进行准确预测。
3. 算法比较
本小节将PINNs与G-PINNs进行详细阐述并比较,对PINNs和G-PINNs的原理从数学角度进行理论性的推导分析,侧重探讨两种网络架构的损失函数以及改进前后对方程形式的约束,研究G-PINNs引入的改进机制的有效性,更全面的证明G-PINNs架构相较于原PINNs性能提升这一优势。
3.1. PINNs
PINNs的基本思想是将经过自动微分计算后的PDE残余项作为一种软约束嵌入到特定问题的损失函数中,利用神经网络来近似训练出方程的解,并在此过程中保持对物理方程的满足[21]。PINNs引入方程的约束可以极大降低假设空间的复杂度,以便模型在学习数据的同时也保持对物理定律的遵循,因此PINNs的网络输出能够较好的近似表示PDE的解结构[22]。
以Burgers方程为例,定义如下函数:
(5)
式中:
,
,
,u表示速度,t表示时间,x表示空间坐标。
PINNs训练过程中通过最小化均方误差(Mean Squared Error, MSE)损失函数来逐步调整参数,使预测值与真实值之间的差异最小化。在PINNs中,损失函数是一个多项式组合,包括数据拟合项和物理约束项。数据拟合项衡量了网络预测值与真实标签值之间的差异,而物理约束项则强制要求网络输出满足给定的物理方程。定义PINNs的损失函数如下:
(6)
式中:
为数据拟合损失,衡量了模型对预测解和真值之间的拟合程度;
为方程的残差,用来确保模型满足所描述的物理方程。数据拟合损失
是预测值与真值间的均方误差,定义如下:
(7)
式中:
为用来训练预测值与真值之间均方误差的配置点个数,
为PINNs在对应坐标点深度神经网络的预测值,
为该坐标点对应的真值。
PINNs计算出预测值对应的导数,当其满足方程时,式(5)应等于0,由此计算方程的残差来量化模型是否满足方程所描述的物理定律。方程的残差:
(8)
式中:
为用于计算方程残差的配置点个数,
为PINNs将对应预测值及其导数表达式代入式
(5)之后的函数值。
PINNs在训练过程中计算两种损失,共同指导神经网络参数的迭代更新,但是并非所有的训练点均需计算两种损失函数。训练集中的数据点分为两类,第一类是初边值点计算
和
两种损失;第二类是内部的点,这类点只受方程约束,只需计算方程的残差
。方程的残差
旨在衡量神经网络的预测解是否满足给定的偏微分方程,确保求解结果符合方程的物理规律,增强预测解的物理一致性。即使在缺乏真实解的情况下,PINNs在训练过程中仍可以最小化方程的残差来调整网络参数,尽可能的让f趋近于0,实现非监督学习的策略。
3.2. G-PINNs
PINNs算法对方程的求解形式与解析解非常相似,但是在实际训练过程中最终的逼近精度往往难以达到较高水准。此外,从数据集中抽样选取的配置点数量较为庞大,真实的流体力学工程涉及到众多变量和条件,需要通过精密的测量和实时监测才能获得准确的数据,从中筛选得到满足训练条件的可靠数据集更是具有挑战性。针对此局限性,需要在现有PINNs模型的基础上进行改进,使得改进后的PINNs可以在更少配置点训练的基础上得到更加精确的解,以确保模型在实际复杂场景中表现出色。
PINNs算法引入PDE的残差作为训练过程中的软约束,在此基础上可以推论出既然PDE的残差指导网络训练的效果良好,那么PDE导数的残差同样可以对训练过程进行有效约束。如果PDE的残差为零,显然PDE残差的梯度也应为零。改进后的网络G-PINNs强制PDE导数的残差为零,在网络收敛的过程中加强梯度的约束,增强网络对PDE导数信息的学习能力,从而在训练过程中实现对方程形式的更强约束。增强梯度的限制能够有效提升网络架构在训练过程中对方程形式的约束能力,使其能够更充分地学习梯度信息和物理先验知识,提升模型在预测方程解时的逼近能力以及对复杂物理系统的适应性,降低流体力学工程环境下获取精确数据集的难度,并提高数值模拟的效率和可靠性。
以Burgers方程为例,对f进行求导后得到如下函数:
(9)
(10)
式中
为f对t求导后的导数表达式,
为f对x求导后的导数表达式。
G-PINNs在训练过程中不仅约束式(5)为0,同时约束式(5)的导数也为0。迭代优化过程中持续进行梯度更新,寻求最接近真值且同时满足方程及其导数的预测解,提高模型对物理系统行为的建模能力。G-PINNs方程导数的残差计算沿用PINNs中的均方误差函数,引入方程导数的残差后,G-PINNs的损失函数也随之做出相应的调整:
(11)
式中:w为不同损失的权重配比,
是预测值与真值间的均方误差,
为方程的残差,
为方程对t求导后导数的残差,
为方程对x求导后导数的残差。方程导数残差的表达式如下:
(12)
式中:
为G-PINNs在坐标点
将对应预测值及其导数表达式代入式(9)后的函数值,
为G-PINNs在坐标点
将对应预测值及其导数表达式代入式(10)后的函数值,
为用于计算
对t求导后导数残差的配置点个数,
为用于计算
对x求导后导数残差的配置点个数。
图1所示为求解Burgers方程时G-PINNs模型示意图,G-PINNs包含深度神经网络和梯度增强两部分,训练过程中不断迭代优化以更好的满足各项损失,从而使模型收敛到更为精确的预测解。
数据预处理阶段将位移x和时间t构成的25600个时空坐标点
和每个点对应的真值构成数据集,采用拉丁超立方抽样(Latin Hypercube Sampling, LHS)对坐标点进行随机选取,LHS对参数空间进行等概率划分,能够很好的覆盖到每个参数空间,进而可以通过较少次迭代产生更加准确的概率估计。LHS选取的坐标点包含初边值点和内部点,构成G-PINNs的训练样本集。
DNN网络输入是坐标点
,经由全连接层组成的隐藏层,对输入数据进行非线性变换,学习复杂的特征和表示。隐藏层应用双曲正切(Tanh)激活函数,引入非线性和稀疏激活性,学习更加高级的非线性映射关系及有效的抽象特征,提高网络的表达能力。Tanh函数对输入的微小变化更为敏感,提升了模型的抗干扰能力,能够更有效地传播梯度并促进权重的更新。
G-PINNs将DNN输出的预测解
作为网络输入,利用自动微分技术对其进行求导,精确计算输入变量的导数,使得方程及其导数项能够在区域内的配置点上进行准确计算,由此得到方程的残差和方程导数的残差[23]。综合考虑预测解与真值间的误差,为各项损失分配相应的权重,构成最终的损失函数。G-PINNs模型强调对方程导数的准确建模,因此训练过程中优化算法的全局收敛性至关重要。
本文选取机器学习算法中的“L-BFGS”优化算法对损失函数进行优化。L-BFGS优化算法在每一步迭代中,计算目标函数的梯度,利用近似Hessian矩阵的逆对梯度进行修正,而不需要显式地存储整个矩阵,可以极大的提升内存效率,在处理高维参数空间和大规模数据时具有良好的收敛性和计算效率,能够更有效地在搜索空间内找到物理约束下的全局最优解。结合G-PINNs模型求解Burgers方程过程中数据集规模及非线性目标函数,综合考虑后选择该算法。图1中
是允许的最小误差,n.Iter为迭代的最大步骤,两者作为循环的条件,神经网络不断迭代更新,直至满足
或达到n.Iter的设定条件之一,跳出循环结束训练,输出最终的预测解
。
Figure 1.Schematic diagram of G-PINNs model
图1.G-PINNs模型示意图
G-PINNs不仅将物理信息和数学方程嵌入到损失函数,更在优化过程中强调对方程导数的约束,不断的训练求解,获得神经网络的最佳参数和近似描述该力学系统的通用逼近算法。数据集中的内部点不被真值约束,即没有标签,只需计算方程及其导数的残差,降低了对数据集的需求,有效节约数据资源和实际应用时采集数据的成本。引入梯度增强后的网络能提高最终预测解的精度和可解释性,在少量训练配置点的基础上也能取得更为显著的训练效果。结合实际流体力学场景中数据资源有限且存在噪声的情况,G-PINNs模型提供了应对复杂系统行为更优秀的建模能力。
4. 数值实验
本节研究针对有噪声与无噪声两种情景,对比分析PINNs和G-PINNs两种网络架构在相同网络配置下求解Burgers方程的效果。实验使用Inter(R) Core(TM) i9-10980XE(CPU)和NVIDIA T600(GPU)作为测试平台,基于Python3.10和Pytorch1.12.1搭建实验环境。PINNs与G-PINNs架构均构建6层隐藏层,每层20个神经元的深度神经网络,网络的初始学习率设置为1.0,选用L-BFGS优化器进行迭代优化。
G-PINNs模型的训练是一个多任务学习,其损失函数为网络训练过程中多项损失的复合函数[24]。如果将不同学习任务的损失项直接相加可能会导致训练过程被其中某个任务所主导,因此需要对G-PINNs损失之间的权重配比进行讨论分析。此处主要讨论方程导数残差的权重配比,即
和
(本次实验中
)。评估各项损失权重的过程中使用神经网络输出的预测解与真值之间的L2范数相对误差
来衡量模型性能。定义相对误差
如下:
(13)
式中:
为网络模型在坐标点
对应解的预测值,
为坐标点
对应的真值。
图2展示了不同w取值下,G-PINNs经过3000、6000、9000和12,000次迭代后获得的预测解的相对误差对比情况。由图2可以观察到在w= 1.0与w= 0.01时,G-PINNs相对误差较大;w= 0.1与w= 0.001时,相对误差远小于前两者,且可以明显观察到w= 0.001时整个训练过程相较于w= 0.1时的误差降低速度更快,最终稳定在一个较小范围附近。故实验将G-PINNs模型PDE导数残差的静态权重设置为0.001,此权重下G-PINNs模型在训练过程中能够合理考虑方程导数残差的影响,达到最佳的预测效果。
Figure 2.Relative error of G-PINNs when PDE derivative residuals weight ratio is different
图2.PDE导数残差的权重配比不同时G-PINNs的相对误差
4.1. 无噪声下PINNs与G-PINNs对Burgers方程的求解结果
PINNs和G-PINNs均在计算域内采用LHS选取100个边界点与10,000个内部点进行训练,将两种网络架构的预测解以及最终误差在整个计算域内进行对比分析。为了细化结果,实验选取t= 0.5时刻PINNs和G-PINNs的预测解及误差进行单独的分析,由此涵盖整个计算域和特定时刻两方面的综合比较。这一分析方法旨在全面评估两种网络架构的性能表现以及在时间维度上的稳定性和精确性,为后续实验结果的解释提供有力支持。实验选取绝对误差作为衡量模型性能的评估指标。绝对误差直接反映模型的预测值与真实值之间的距离,对于数据集中可能存在的极端值具有较强的稳健性,在真实的复杂环境中具有较强的适用性,可以提供清晰、客观的评估结果。绝对误差
计算如下:
(14)
式中:
为网络模型在坐标点
对应解的预测值,
为坐标点
对应的真值。
图3为PINNs训练10,000次后对Burgers方程计算域内各坐标点的真值、预测解及绝对误差值,图4为G-PINNs训练10,000次后对Burgers方程计算域内各坐标点的真值、预测解及绝对误差值。如图3所示,PINNs求解Burgers方程最终预测解与真值间的绝对误差的峰值约在6*10−3左右,而图4中G-PINNs最终绝对误差的峰值约1.4*10−3左右。将全域内预测值与真实值之间进行误差归一化后,G-PINNs对方程解的预测精度相较于PINNs提升了近76.7%,在处理Burgers方程时显现出更强的精度和预测能力。
Figure 3.Training results of PINNs
图3.PINNs的训练结果图
Figure 4.Training results of G-PINNs
图4.G-PINNs的训练结果图
为全面评估PINNs与G-PINNs在不同训练集规模下的表现,实验选择在不同数据配置条件下比较二者的性能。表1列出了不同数据配置条件下PINNs与G-PINNs迭代3000、6000、9000次后的绝对误差。通过考察模型在不同数据情况下的性能表现,可以评估模型对于数据量变化的鲁棒性及泛化能力。
Table 1.Absolute error of PINNs and G-PINNs when network configuration points are different
表1.网络配置点不同时PINNs与G-PINNs训练的绝对误差值
|
3000 (Iters) |
6000 (Iters) |
9000 (Iters) |
Error of PINNs (Nu= 100,Nf= 5000) |
8.917022*10−2 |
5.132573*10−2 |
1.855752*10−2 |
Error of G-PINNs (Nu= 100,Nf= 5000) |
3.272040*10−2 |
2.645900*10−2 |
7.259635*10−3 |
Error of PINNs (Nu= 100,Nf= 10,000) |
7.268971*10−2 |
3.792699*10−2 |
6.582435*10−3 |
Error of G-PINNs (Nu= 100,Nf= 10,000) |
6.970254*10−2 |
1.925936*10−2 |
1.265518*10−3 |
表1的实验结果表明G-PINNs在相同数据配置点情况下的绝对误差相较于PINNs降低了约36%~63%。进一步减少一半配置点后,PINNs与G-PINNs的训练误差均呈现出一定程度的增加。然而G-PINNs在使用一半配置点训练时的误差比PINNs不减少配置点时的误差更小,该结果表明PINNs模型在处理PDE时其性能在很大程度上依赖于物理信息的准确性和完整性,在数据集数量减少的情况下PINNs的模型性能也随之降低并且求解精度存在局限性。G-PINNs通过增强对方程梯度的约束提升了模型物理拟合的能力以及方程建模的准确性,其表现力显著优于PINNs模型。对于数据集数量有限或者方程的解难以求得的复杂流体扩散场景,G-PINNs能够以相对较少的配置点实现更为精准的预测,表现出更佳的网络逼近能力。在资源有限的情况下,G-PINNs权衡时间效益与预测精度,为工程领域的问题求解提供了一种高效、精确的选择。
通过考察PINNs与G-PINNs模型在不同数据情况下的性能表现,可以评估二者对于数据量变化的鲁棒性及泛化能力。此外,不同的数据配置条件涉及到实际应用中不同的数据采集成本、时间成本和人力资源投入,此比较研究有助于做出合理的资源分配和成本考量,为实际应用提供了更可靠的求解策略以及更全面的评估框架。
4.2. 弱噪声下PINNs与G-PINNs对Burgers方程的求解结果
实验对PINNs与G-PINNs添加5%服从标准正态分布的噪声,模拟实际应用中各种随机因素对数据产生的噪声干扰,如测量误差、环境干扰等,使实验结果更贴近真实情况[25]。在
的计算域内采用LHS选取100个边界点与10,000个内部点训练至收敛,在整个计算域内对PINNs与G-PINNs的预测结果和绝对误差进行比较分析。通过对比两种网络架构在实际弱噪声干扰情况下的表现,评估噪声引入后模型的稳健性及其在噪声环境下的性能[26]。为了更详细的了解结果,仍选取t= 0.5时刻PINNs和G-PINNs的预测结果和误差值进行单独的展示分析,得到的PINNs和G-PINNs的训练结果如图5和图6所示。
Figure 5.Training results of PINNs with 5% noise
图5.添加5%弱噪声后PINNs的训练结果图
结果显示,与无噪声训练相比,PINNs和G-PINNs模型在包含噪声的训练条件下最终预测解误差均呈现出一定程度的增加,该现象反映了噪声对模型预测精度的不利影响。但是G-PINNs模型在相同条件下的误差相对于PINNs模型在全域范围内以及t= 0.5时刻均显著降低了近20%。这一结果表明,在5%噪声率的情况下G-PINNs模型在处理噪声数据方面具有更强的鲁棒性,能够更有效地抑制噪声带来的不利影响,从而在噪声存在的条件下提供更为准确的预测结果。
[-rId167-]
Figure 6.Training results of G-PINNs with 5% noise
图6.添加5%弱噪声后G-PINNs的训练结果图
表2列出了添加5%弱噪声后,PINNs与G-PINNs在不同数据配置条件下迭代3000、6000、9000次后绝对误差值。表2中的误差结果表明,在受到弱噪声干扰的情况下,G-PINNs模型寻找最优解的能力仍然优于PINNs模型。由表2数据可看出PINNs处理噪声数据时表现出较低的稳定性和准确度,而G-PINNs引入方程导数的残差增强了模型对物理过程的拟合精度,提高了模型在面对噪声数据时的鲁棒性。
Table 2.Absolute error of PINNs and G-PINNs when network configuration points are different (with 5% noise)
表2.网络配置点不同时PINNs与G-PINNs训练的绝对误差值(5%噪声)
|
3000 (Iters) |
6000 (Iters) |
9000 (Iters) |
Error of PINNs (Nu= 100,Nf= 5000) |
1.869648*10−1 |
5.516061*10−2 |
4.288181*10−2 |
Error of G-PINNs (Nu= 100,Nf= 5000) |
5.468906*10−2 |
4.320308*10−2 |
3.192474*10−2 |
Error of PINNs (Nu= 100,Nf= 10,000) |
1.015703*10−1 |
4.789887*10−2 |
3.911240*10−2 |
Error of G-PINNs Nu= 100,Nf= 10,000) |
3.728751*10−2 |
2.218031*10−2 |
1.591892*10−2 |
实际流体力学场景复杂,难以获取完备且充分的数据集,数据集的准确度及质量也较难达到高水平。综合考虑数据集引入噪声后G-PINNs的表现可以得出,G-PINNs投入更多的计算成本换取模型在不确定性噪声环境下的稳健性和卓越性能,其模型对数据噪声的容忍度高于PINNs。G-PINNs模型的优良表现可大幅减少对数据集的依赖,降低实际数据采集过程中的成本及难度,为复杂流体力学场景的应用提供强有力的理论支持,而且在真实应用环境中也具有显著的求解潜力。
本实验中对数据集分别引入1%、3%和5%服从标准正态分布的噪声,模拟PINNs与G-PINNs在不同噪声情况下的逼近能力。计算域内选取100个边界点与10,000个内部点进行弱噪声下的实验,并记录网络输出的预测解的误差值,结果如图7所示。
Figure7.Error of PINNs and G-PINNs with different noises
图7.不同噪声下PINNs与G-PINNs的误差
针对Burgers方程数值求解的过程,以跳出循环后最终的相对误差值作为评估PINNs与G-PINNs两种网络架构表现力的依据。由图7可观察出在无噪声情况下PINNs与G-PINNs最终的相对误差存在显著差异,表明两者在求解精度上具有较大的性能差距。当引入数据噪声后,PINNs和G-PINNs预测解的误差均随着噪声强度的增加而增加,但在弱噪声环境下G-PINNs的误差始终保持在较低水平且明显优于PINNs。G-PINNs通过引入导数的残差加强对梯度的约束,使得网络在训练过程中不仅关注函数值的准确性,还考虑到导数信息的准确性,可以有效减少数值解在导数上的震荡,从而提高整体解的平滑度和精确度。传统PINNs缺乏对梯度的强约束从而导致求解精度的局限性,而G-PINNs则能够更好地捕捉解的物理特性,为数值求解偏微分方程提供了一种更为有效和鲁棒的方法。
然而对于神经网络来说,在算力和算法都基本已经确定的前提下,数据的数量与质量是决定深度学习任务最终效果的关键因素。数据集噪声过多直接降低了数据的质量,对网络训练不利,最终的效果也随之不理想。当数据集中的噪声增大到一定程度时,两种网络结构的训练效果均变得不理想,最终误差都显著增加,性能差距也逐渐减小。因此,在数据集中噪声过多的情况下,网络能力的对比不再具有明显的实质性意义。
5. 结论