物理信息神经网络及其在物理信息机器学习中相关模型的数值分析
摘要
物理信息神经网络(PINNs)及其变体在最近几年中非常流行,作为用于偏微分方程正问题和逆问题数值模拟的算法。本文旨在全面回顾目前关于PINNs及相关模型的数值分析结果,这些模型构成了物理信息机器学习的核心。我们提供了一个统一的框架,有效分析PINNs在近似PDE(偏微分方程)过程中所产生的各类误差。我们详细回顾了现有的关于近似误差、泛化误差和训练误差的研究结果,并分析了它们相对于PDE类型和基础域维度的表现。特别是,我们阐明了解的正则性及其对扰动的稳定性在误差分析中的作用。还通过数值结果来说明这些理论。我们指出,训练误差是一个关键瓶颈,可能会对物理信息机器学习中各种模型的整体性能产生不利影响。
1. 引言
机器学习,特别是深度学习(Goodfellow、Bengio 和 Courville 2016),已经渗透到现代科学、技术和社会的各个角落,无论是在计算机视觉、自然语言理解、机器人与自动化、图像与文本生成,还是在蛋白质折叠和预测中。近年来,深度学习在计算科学与工程,特别是(偏)微分方程的数值求解方面,取得了巨大的进展。其中一个重要的应用方向是监督学习框架,即通过深度学习模型从大量关于偏微分方程(PDE)解的数据中近似求解PDE。相关的例子包括高维抛物型PDE(Han、Jentzen 和 E 2018 等),参数化椭圆型PDE(Schwab 和 Zech 2019,Kutyniok 等 2022),双曲型PDE(De Ryck 和 Mishra 2023,Lye 等 2020),以及直接从数据中学习解算符(Chen 和 Chen 1995,Lu 等 2021b,Li 等 2021,Raonić 等 2023)。
然而,生成和获取关于PDE解的大量数据需要依赖数值方法或实验数据,这两者都可能成本高昂。因此,急需一种只需少量数据的无监督或半监督学习方法。
在这种背景下,直接从基础物理(控制方程)而无需获取PDE解的数据来求解PDE是非常有用的。这种方法可以被宽泛地称为物理信息机器学习。最具代表性的物理信息机器学习模型是物理信息神经网络(PINNs)。PINNs的基本思想非常简单:由于神经网络是各种函数类(甚至是可测函数)的通用逼近器,因此我们考虑PDE残差的强形式,并在神经网络的假设空间中通过(随机)梯度下降最小化这个残差,从而获得近似PDE解的神经网络。这一框架早在20世纪90年代就已经被提出,参考Dissanayake 和 Phan-Thien(1994),Lagaris 等(1998),Lagaris 和 Papageorgiou(2000)。然而,现代版本的PINNs在Raissi 和 Karniadakis(2018)以及 Raissi 等(2019)中被引入并命名。从那时起,关于PINNs的文献呈爆炸式增长,并且它们已被广泛应用于PDE正问题和逆问题的求解(包括SDE、SPDE等)。参见Karniadakis 等(2021)和 Cuomo 等(2022)的广泛综述。
除了PINNs,物理信息机器学习框架中还有其他模型,例如基于变分形式的VPINNs(Kharazmi 等 2019),基于弱形式的wPINNs(De Ryck 等 2024c),或通过最小化能量的DeepRitz方法(E 和 Yu 2018)。同样,也可以使用高斯过程(Rasmussen 2003),DeepONets(Lu 等 2021b)或神经算子(Kovachki 等 2023)作为假设空间来实现物理信息机器学习的替代模型。
鉴于关于PINNs及其相关模型的文献呈指数增长,关键问题是:这些方法是否具有严格的数学保证?是否可以像对传统数值方法(如有限差分、有限元、有限体积和谱方法)的分析一样,分析这些方法?尽管目前的研究重点主要集中在PINNs及其变体在科学和工程领域的广泛应用上,但近年来也涌现出大量对PINNs进行严格分析的论文。本文旨在回顾物理信息机器学习中与PINNs相关的数值分析文献,并对这些方法进行深入评估,确定它们的适用条件及其局限性。
我们将在第2节中介绍物理信息机器学习的基本公式,包括PDE的不同残差形式及其假设空间。在第3节中,我们概述了物理信息机器学习中的误差来源,第4至7节分别分析了结果的逼近误差、稳定性、泛化误差和训练误差。
2. 物理信息机器学习
在本节中,我们为本文的讨论奠定基础。在第2.1节中,我们引入了抽象PDE设定,并考虑了一些将在数值分析中使用的重要PDE示例。接下来,在第2.2节中,我们介绍了不同的模型类别。在第2.3节中,我们基于不同的PDE公式介绍了物理信息学习的变体,这些变体的残差将构成物理信息损失函数,并在第2.4节中进行离散化处理,在第2.5节中进行优化。最后,第2.6节对整个方法进行了总结。
2.1 PDE设定
在本文中,我们考虑如下设定。设为可分的Banach空间,分别带有范数和。类似地,设为闭子空间,并带有范数。典型的空间例子包括空间和Sobolev空间。我们考虑抽象形式的PDE:
其中,是微分算子,为输入或源函数。边界条件由边界算子以及边界数据给出。我们假设对于所有,存在唯一的使得方程成立。最后,我们假设对于所有和,我们有:
我们将的定义域记作,其中用于时间无关的PDE,或用于时间相关的PDE。
接下来的章节将讨论正问题(forward problems)和参数化PDE的相关细节,并深入分析物理信息神经网络及其相关模型在这些问题中的表现和误差分析。
例子 2.1 (半线性热方程)
首先,我们考虑半线性热方程的设置。设为一个带有连续可微边界的连通有界开放集。半线性抛物方程定义如下:
这里, 是初始数据, 是经典解, 是非线性源项(反应项)。我们假设非线性项是全局Lipschitz的,即存在常数使得对所有,有
特别地,当时,这是齐次线性热方程,当时,这是线性源项的例子。具有全局Lipschitz非线性的半线性热方程在生物学和金融模型中有所应用(Beck 等人 2021)。像(2.6)这样的Lipschitz非线性半线性抛物方程的存在性、唯一性和正则性可以参考经典教材,如Friedman (1964)。
例子 2.2 (Navier-Stokes 方程)
我们接下来考虑著名的不可压Navier-Stokes方程(参考Temam 2001及其中引用的文献):
这里,表示流体速度,表示压力,是初始流体速度。粘度由表示。在本文余下的部分中,我们考虑定义在维环面上的Navier-Stokes方程,边界条件为周期性。
例子 2.3 (粘性和无粘性标量守恒律)
我们考虑粘性标量守恒律的一维版本,作为拟线性、对流主导扩散方程的模型问题:
这里,,是初始数据,我们考虑零Dirichlet边界条件。注意,是粘性系数。通量函数由表示。根据Godlewski和Raviart(1991)的标准教材,可以得出当时,粘性标量守恒律(2.9)存在一个经典解。
在某些情况下,设置并考虑无粘性标量守恒律:
在这种情况下,解可能不再是连续的,甚至对于光滑的初始数据,也可能会形成激波(参考Holden和Risebro 2015)。
例子 2.4 (Poisson 方程)
最后,我们考虑一个典型的椭圆PDE。设为一个满足外球条件的有界开放集,且。那么,存在满足Poisson方程:
此外,如果是光滑的,则在内也是光滑的。
2.1.2 逆问题
接下来,我们考虑在输入信息不完全的情况下解决PDE(2.1)的设定(例如初始数据、边界条件和参数系数)。因此,正问题不能唯一地被解决。然而,当我们可以访问(噪声)数据时,可以尝试基于PDE解的可观测量来确定未知输入,从而求得PDE的解。这类问题被称为逆问题。
我们将主要考虑一种逆问题,即唯一延续问题(对于时间相关问题,也称为数据同化问题)。回顾抽象PDE 在域上的设定。此外,我们采用该小节引言中的假设(2.2)。与正问题的区别在于,我们现在对边界条件的信息不完整。因此,PDE不存在唯一解。相反,我们假设可以访问某种可观测量的(可能带有噪声的)测量数据:
其中,为观测域,为测量数据,且,为某个Banach空间。我们假设:
如果包含的边界,意味着我们可以在边界上进行测量,那么可以使用正问题的标准框架来解决该问题。然而,这种情况通常不可行。例如,在热传导问题中,最大温度通常出现在边界处,因此在边界附近放置传感器可能太过危险,而只能在离边界较远的地方进行测量。幸运的是,我们可以调整物理信息框架,基于和来获得的近似解。
类似于正问题中的算子学习,我们也可以尝试完全学习逆算子:
其中,可以是边界条件、参数函数或输入/源函数。
例子 2.5 (热方程)
我们重新审视热方程,边界条件为零Dirichlet且,其中。假设
在弱意义下解热方程。热方程在指定初始条件时是适定的。数据同化问题的目标是根据一些关于解随时间变化的测量数据推断初始条件和整个解场。为此,我们考虑如下可观测量:
其中是一个开放的、连通的观测域,。因此,解决热方程的数据同化问题相当于给定观测子域上的数据,求解整个时空域上的热方程解。
例子 2.6 (Poisson 方程)
我们重新审视Poisson方程(例子2.4),但现在我们考虑域的子域上的数据:
在这种情况下,引入的可观测量是单位算子。
例子 2.7 (Stokes 方程)
最后,我们考虑Navier-Stokes方程的简化版本,即定常Stokes方程。设为一个光滑边界的开放、有界、连通集。Stokes方程模型描述了定常高粘度流体:
这里,是速度场,是压力,和是源项。注意,Stokes方程(2.17)是非适定的,因为没有提供任何边界条件。在相应的数据同化问题中(参考Burman和Hansbo 2018及其中引用的文献),我们提供如下数据:
其中是一个开放的、连通的子集。因此,Stokes方程的数据同化逆问题相当于在给定和的条件下,推断速度场(以及压力)。
2.2. 假设空间
本节概述了用于逼近PDE(2.1)真解的不同类别的参数化函数集合。我们设定参数空间是实数空间的一个子集,其中是参数的数量。
2.2.1 线性模型
我们首先考虑线性依赖于参数的模型,即一个固定函数集的线性组合。对于任何,参数化的线性模型定义为
该通用模型类构成了许多现有数值方法的基础,用于逼近PDE解。我们在下文概述这些方法。
首先,谱方法使用全局定义的光滑函数,即支持在上的大部分区域,且通常构成正交集;参见例如Hesthaven、Gottlieb 和 Gottlieb(2007)。函数的具体选择通常取决于问题的几何形状和边界条件:周期性区域上默认使用三角多项式(傅里叶基函数),而在非周期性区域上,Chebyshev和Legendre多项式可能更为适用。最佳参数向量通过求解线性方程组来确定。如果算子是线性的,则此方程组由以下公式给出:
其中(Galerkin方法),或且(配点法),或者和是不同的(也不是狄拉克δ函数),这称为Petrov-Galerkin方法。在配点法中,所谓的配点的选择取决于函数。边界条件通过选择函数或通过向上述线性系统添加更多方程来实现。
与谱方法的全局基函数形成鲜明对比的是有限元法(FEM),在这里我们考虑局部定义的多项式。更精确地说,我们首先将划分为重叠子域(一维情况下为子区间),每个子域的直径不超过,然后在每个上考虑分段定义的多项式,其次数不超过,并且在之外为零。类似于谱Galerkin方法,我们可以定义一个如公式(2.20)所示的线性方程组,以求解最佳参数向量。由于在上非光滑,我们需要通过分部积分重写。与谱方法的另一个关键区别在于,由于函数的局部支持,我们需要求解的线性系统将是稀疏的,并具有与网格和多项式选择相关的结构特性。通过减小(-FEM)、增加(-FEM),或同时减小和增加(-FEM)可以提高逼近的精度。或者,有限元法也可以与平方损失结合使用,得到最小二乘有限元法(Bochev 和 Gunzburger 2009)。有限元法在科学计算中广泛应用,且有许多变体。
另一个函数的选择是径向基函数(RBFs);参见例如Buhmann(2000)。RBFs的关键要素是径向函数,它满足以下两个条件:(i) 对于任何节点集合,函数是线性独立的;(ii) 矩阵的元素是非奇异的。径向函数可以是全局支持的(例如高斯、多次谐波样条)或紧支持的(例如凸函数)。最佳参数可以通过Galerkin法、配点法或最小二乘法确定。由于RBFs是无网格方法,它们在处理复杂几何形状时非常有利,且在高维场景中也很方便使用,因为可以使用随机生成的节点,而不是基于网格的节点。
最后,带有随机生成节点的RBFs可以视为随机特征模型(RFM)的一种例子,其中函数是从函数空间的选定分布中随机抽取的(例如,参见Rahimi和Recht 2008)。在实际操作中,我们通常选择参数化的函数空间,使得生成归结为随机抽取有限向量并设定。当网络很大时,这种模型通常称为极限学习机(ELM)(Huang、Zhu和Siew 2006)。
2.2.2 非线性模型
神经网络。首先且最核心的非线性依赖于其参数的模型是神经网络。最简单的神经网络形式是多层感知器(MLP)。MLP之所以得名,是因为它由仿射映射和激活函数的级联定义。由于这种结构,MLP的计算图是按层组织的。在第层,激活函数逐个组件应用于值:
其中是网络的输入,,,且是一个仿射映射。具有层、激活函数、输出函数、输入维度和输出维度的多层感知器(MLP)是一个函数,其形式为:
其中逐元素应用,。每一层的维度也称为该层的宽度。MLP的宽度定义为。此外,矩阵称为MLP的权重,向量称为MLP的偏置。它们构成了MLP的(可训练)参数,表示为。最后,输出函数可以用来增加输出的可解释性,但在函数逼近的设置中通常等于恒等函数。
Remark 2.8. 在某些文本中,层数表示的是中仿射映射的数量。在这层中,前层称为隐藏层。在这种定义下的层网络对应于我们定义中的层网络。
神经网络的许多性质取决于激活函数的选择。我们讨论一些最常见的激活函数:
Heaviside函数 是McC
ulloch-Pitts神经元中使用的激活函数,定义为:
由于该函数的梯度在其存在的地方为零,因此无法使用基于梯度的方法来训练网络。因此,Heaviside函数已不再使用。
Logistic函数 定义为:
它可以看作是Heaviside函数的光滑近似,因为当时对几乎所有成立。这是一个所谓的S型函数,这意味着该函数是光滑的、单调的,并且在时具有水平渐近线。许多早期的逼近理论结果是针对带有S型激活函数的神经网络给出的。
双曲正切函数(tanh) 定义为:
它是另一个光滑的、S型的激活函数,与Logistic函数不同的是,它是对称的。tanh函数的一个问题(以及所有其他S型函数的问题)是其梯度在远离零的地方消失,这可能会在使用基于梯度的优化方法时带来问题。
整流线性单元(ReLU),又称为整流器函数,定义为:
它是一个非常流行的激活函数。ReLU易于计算,具有尺度不变性,并且减少了S型函数的消失梯度问题。ReLU网络的一个常见问题是“死亡神经元”,这是因为ReLU的梯度在时为零。然而,通过使用Leaky ReLU函数可以克服这个问题:
其中较小。其他(光滑的)改进版本包括高斯误差线性单元、Sigmoid线性单元、指数线性单元和Softplus函数。
神经算子。为了逼近算子,我们需要允许学习架构的输入和输出是无限维的。一种可能的方法是使用深度算子网络(DeepONets),由Chen 和 Chen(1995)以及Lu等人(2021a)提出。给定个固定的传感器位置及其对应的传感器值作为输入,DeepONet可以通过两个(深度)神经网络来表示:分支网络和干网络。然后将分支和干网络结合起来,近似底层的非线性算子,如下所示:
另一种允许我们在无限维空间之间学习映射的方法是神经算子(Li等人 2020)。
你给出的段落内容是关于神经算子(Neural Operators)的介绍。现在,我将完整地翻译这段内容:
神经算子的灵感来源于这样的事实:在某些一般条件下,偏微分方程(PDE)的解 可以表示为如下形式:
其中 是格林函数(Green's function)。Li等人(2020年)基于这个核表示,提出将标准神经网络隐藏层的公式替换为以下算子:
其中, 和 是从数据中学习到的, 是一个核, 是对于每个 的Borel测度。Li等人(2020年)将核 建模为神经网络。更广泛地说,神经算子是形式如下的映射(Li等,2020;Kovachki, Lanthaler和Mishra,2021年):
对于某个深度 ,其中 ,,是一个局部作用的提升算子,形式为:
且 是局部投影算子,形式为:
类似于经典的有限维神经网络,层 是非线性算子层,,,我们假设其形式为:
这里,权重矩阵 和偏置 定义了一个仿射逐点映射 。我们通过声明 是逐点应用的非线性激活函数,并且 是非局部线性算子,形式为:
它将输入场 和参数集 中的一个参数 映射到有界线性算子 。当我们通过积分核定义线性算子 时,那么(2.34)式就会简化为(2.30)式。傅里叶神经算子(FNOs)(Li等人,2021年)是这种一般神经算子的特例,其中这个积分核对应于一个卷积核,在周期域 上会导致如下形式的非线性层 :
然而,实际上这个定义是不能直接使用的,因为傅里叶变换的评估需要对积分进行精确计算。傅里叶神经算子的实际实现(即离散化)从有限维映射到最多阶数为 的三角多项式空间 ,并且可以识别为仿射映射和非线性层的组合,形式为:
其中 是通过离散傅里叶变换 定义一个非局部卷积算子的系数;参见Kovachki等人(2021年)。
已经观察到,上述提出的算子学习模型在计算机上实现时可能无法作为算子行为,这质疑了算子学习的本质。Bartolucci等人(2023年)主张,除了在连续层面上定义算子之外,一些形式的连续–离散等价性是必要的,以确保架构真正学习基础算子,而不仅仅是其离散化。为此,他们引入了称为表示等价神经算子(ReNOs)的统一数学框架,以确保在连续和离散层面的操作是等价的。缺乏这种等价性可以通过别名误差来量化。
高斯过程。深度神经网络及其算子版本仅仅是PDE真解的非线性代理模型中的一种。另一种流行的非线性模型类是高斯过程回归(Gaussian Process Regression, GPR)(Rasmussen,2003),它属于更广泛的所谓贝叶斯模型类。高斯过程回归假设 是从适当的函数空间上的高斯测度中抽取的,形式为:
其中 是均值,基本的协方差函数由 给出。
在(2.38)式中的常用协方差函数有平方指数核(它是径向函数,类似于RBFs)和Matérn协方差函数:
这里 表示标准的欧几里得范数, 是第二类修正贝塞尔函数, 是特征长度,描述了点 和 之间的相关性长度尺度。参数向量包括 和 的超参数,如 和 。
2.3. 基于物理的残差和损失函数
在确定了模型类后,物理驱动学习的关键是找到一个独立于 的物理驱动损失泛函 ,当在模型类 上最小化该泛函时,最小化器 是PDE解 的良好近似。换句话说,我们必须找到一个泛函 ,使得 ,最小化器 是 的良好近似。我们讨论了PDE的三种替代表述,即如何定义PDE的解,每种定义都对应不同的泛函及其相应的损失函数:
经典表述,如公式(2.1)中所示,给出了关于函数及其导数的逐点条件; 弱表述,它是比经典表述更广泛的条件,通常通过将经典表述乘以一个光滑的测试函数并进行分部积分得到; 变分表述,PDE的解可以定义为一个泛函的最小化器。
请注意,不是所有的PDE都能使用这些表述。
2.3.1. 经典表述
物理驱动学习基于一个基本观察,即对于PDE的真实解 ,满足 和 。因此,如果模型 满足 和 ,那么我们期望 。为此,引入了几个残差。首先,也是最重要的,PDE残差(或内部残差)衡量模型 满足PDE的程度:
其中我们回忆到 ,对于时间独立的PDE,,而对于时间相关的PDE,,。在第一种情况下,边界算子 在公式(2.1)中唯一地指代空间边界条件,因此 对应于 。相应的空间边界残差表示为:
对于时间相关的PDE,边界算子 通常也规定了初始条件,即对于给定的函数 ,满足 。这个条件引发了时间边界残差:
因此,物理驱动学习框架规定我们应同时最小化残差 和 ,对于时间相关的PDE,还应最小化 。这通常转换为如下的最小化问题:
对于时间独立的PDE,物理驱动损失 表示为:
其中 是一个加权超参数。对于时间相关的PDE, 表示为:
其中 是加权超参数。由于边界条件(和初始条件)是通过损失函数中的额外项来强加的,
因此我们允许最终的模型只能近似满足边界条件。这通常称为软边界条件。另一方面,如果我们选择模型类,使得所有的 都精确地满足边界条件(即 ),则我们实施了硬边界条件。
备注 2.9:上面定义的残差和损失函数可以很容易地扩展到PDE系统以及更复杂的边界条件。如果PDE系统由 给出,则可以很容易地定义多个PDE残差 ,并考虑物理驱动损失中的平方PDE残差积分的和 。更复杂的边界条件(包括分段定义的边界条件)的推广与此完全类似。
基于物理的最小化问题(2.44)仅基于物理驱动损失函数(2.45)和(2.46)定义,这是物理驱动学习的最基本版本,并且可以通过在(2.44)中添加额外项来扩展。例如,在某些情况下,可能可以访问关于子域 的测量值 ,其中 是所谓的可观察量。这种情况在逆问题中尤其重要(见第2.1.2节)。在这种情况下,添加数据项到优化目标是合理的,这通过数据残差 来定义:
请注意,边界残差可以看作数据残差的特例,其中 并且 。此外,在实践中,我们可能会向损失函数中添加参数正则化项,通常是参数 的 范数,目的是帮助最小化过程或改善最终模型的(泛化)属性。因此,物理驱动最小化问题(2.44)的推广可以是:
2.3.2. 弱表述
在前一小节中,我们考虑了基于PDE强表述的残差和物理驱动损失函数。然而,对于某些类别的PDE,可能不存在满足 在每个 的光滑经典解。幸运的是,有时可以精确地推广“PDE解”的定义,以便有一些函数满足这种推广定义。这些函数称为弱解。它们被认为满足PDE的弱表述,通常通过将PDE强表述(2.1)乘以一个光滑且紧支撑的测试函数 ,然后进行分部积分得到:
其中 是 的(形式)伴随算子(如果存在)。因此,函数 若满足该式对于某个预定义的测试函数集中的所有 ,则被称为弱解。请注意, 不再需要是可微的,而仅需是可积的。
像(2.49)这样的弱表述构成了许多经典数值方法的基础,特别是有限元法(FEM:见2.2.1节)。通常,实际上并不需要通过分部积分将 完全从导数中解放出来。在有限元法(FEM)中,对于二阶椭圆方程的弱表述,通常只进行一次分部积分。对于拉普拉斯算子 ,我们有:
(在给定合适的边界条件下),这是一种在实践中具有许多有用性质的表述。
除了使用谱方法(如第2.2.1节所述)外,现在可以通过不同的途径来获得基于(2.49)的弱物理驱动损失函数。第一种方法借鉴了Petrov–Galerkin方法(第2.2.1节),并考虑了一组有限的 个测试函数 ,这些测试函数必须满足(2.49)。相应的损失函数定义为:
其中可以添加额外的项来处理任何边界条件。
该方法首次应用于神经网络,并以变分PINNs(VPINNs)的名义引入(Kharazmi等,2019年),并使用正弦和余弦函数或多项式作为测试函数。类似于 -FEM,该方法后来被调整为使用局部化的测试函数,发展为 -VPINNs(Kharazmi, Zhang 和 Karniadakis,2021年)。在这种情况下,模型 的正则性有限,并且可能不足以使得 良好定义。
第二种基于弱物理驱动损失函数的变体可以通过将 替换为参数化模型 来获得。特别地,我们选择 作为使得平方弱残差最大的函数,损失函数定义为:
同样可以添加额外的项来处理任何边界条件。
与 相比,使用 的优势在于我们不需要测试函数 的基,这在高维设置和复杂几何设置中可能不方便。另一方面,最小化 对应于解决一个极小极大优化问题,其中最大值和最小值分别针对神经网络的训练参数,这比单纯的最小化问题要复杂得多。
弱物理驱动损失 最初是为了使用神经网络近似标量守恒律而提出的,并以弱PINNs(wPINNs)的名义介绍(De Ryck等,2024年)。由于给定的标量守恒律可能有无限多的弱解,我们需要施加进一步的要求,除了(2.49)之外,还要确保标量守恒律有唯一解。这个额外的挑战将在下一个例子中讨论。
示例 2.10(用于标量守恒律的 wPINNs)
我们回顾示例 2.3,并回忆标量守恒律的弱解不一定是唯一的(Holden 和 Risebro,2015)。为了恢复唯一性,我们需要在熵条件的形式上施加额外的可接受性准则。为此,我们考虑所谓的 Kruzkhov 熵函数,定义为 ,对于任何 ,以及由此产生的熵通量函数
然后,我们说一个函数 是(2.10)方程的熵解,且初始数据 ,当且仅当 是(2.10)的弱解,并且满足
在分布意义上,更精确地说
对于所有 , 且 。熵解是唯一的并且在时间上是连续的。关于双曲偏微分方程的经典解、弱解和熵解的更多细节,请参阅 LeVeque (2002) 和 Holden 和 Risebro (2015)。
这种定义启发了 De Ryck 等人(2024c)定义 Kruzkhov 熵残差:
基于此,定义了以下的弱物理驱动损失:
其中需要添加额外的项来处理初始条件和边界条件(De Ryck 等人,2024c,第2.4节)。
2.3.3. 变分表述
最后,我们讨论可以为变分问题制定的第三种物理驱动损失函数。变分问题是(2.1)形式的偏微分方程,其中微分算子(至少在形式上)可以表示为能量泛函 的导数,即:
变分法允许我们将求解 PDE(2.1)的问题替换为寻找泛函 的最小值,这可能更容易(Evans,2022)。该观察的第一个实例被称为狄利克雷原理。
示例 2.11(狄利克雷原理)
设 是一个开且有界的区域,定义 。如果我们考虑泛函 ,那么对于 我们有:
换句话说, 在 上最小化泛函 ,当且仅当 是满足 Dirichlet 边界条件 的拉普拉斯方程的解。
狄利克雷原理可以推广到如下形式的泛函 :
其是所谓的拉格朗日函数 的积分:
其中 是一个满足某些规定边界条件的光滑函数。然后可以验证,任何光滑的 最小化解 必须满足非线性 PDE:
这个方程是能量泛函 (见公式2.59)对应的欧拉-拉格朗日方程。回顾示例 2.11,可以验证拉普拉斯方程是基于拉格朗日函数 的能量泛函对应的欧拉-拉格朗日方程。狄利克雷原理还可以进一步推广。
示例 2.12(广义狄利克雷原理)
设 是对称函数,即 ,考虑椭圆 PDE:
上述 PDE 是形式(2.59)的泛函对应的欧拉-拉格朗日方程,拉格朗日函数为:
更多关于何时 存在(唯一)最小解的示例和条件可以在 Evans(2022)中找到。
通过最小化其关联的能量泛函来求解变分问题类的偏微分方程在文献中被称为 Ritz(Galerkin)方法,或对于特征值问题被称为 Rayleigh-Ritz 方法。最近,E 和 Yu(2018)提出了深度 Ritz 方法,其旨在最小化深度神经网络集上的能量泛函:
其中第二项是由于神经网络无法自动满足 PDE(2.1)的边界条件而添加的。
2.4. 数值积分方法
在前面几节中讨论的所有损失函数都以模型 的积分形式进行表述。通常情况下,准确地计算这些积分在计算上是不切实际的。相反,我们可以离散化积分,并使用求和来近似。我们回顾一些关于积分近似的数值积分方法的基本结果。
对于映射 ,其中 ,我们感兴趣的是近似以下积分:
其中 表示 上的勒贝格测度。为了通过数值积分规则来近似该积分,我们需要选取积分点 ,,并且确定权重 。那么,数值积分的定义为:
其中 为权重, 为积分点。根据权重和积分点的选择,以及 的正则性,积分误差有以下界限:
其中 , 取决于 及其性质。
作为一个基本示例,我们提到中点法。对于 ,我们将 分为 个边长为 的立方体,并且将这些立方体的中点记为 。中点法 的公式和精度为:
其中 。
只要区域 的维度较低,即 ,我们可以使用中点法和更一般的标准(复合)高斯积分法在一个基础网格上进行积分。在这种情况下,积分点和权重取决于积分法的阶数(Stoer 和 Bulirsch,2002),并且速率 取决于底层被积函数的正则性。另一方面,这些基于网格的积分方法不适用于高维区域。对于中等高维情况,即 ,我们可以使用低差异序列(如 Sobol 和 Halton 序列)作为积分点。只要被积函数 的 Hardy-Krause 变差是有界的,误差在式 (2.66) 中以速率 收敛(Longo, Mishra, Rusch 和 Schwab,2021)。对于维度非常高的情况,即 ,蒙特卡洛积分法是首选的数值积分方法。在这种情况下,积分点是独立同分布随机选取的(关于缩放后的勒贝格测度)。
作为一个例子,我们讨论如何将基于时间相关 PDE 经典表述的物理驱动损失函数 (2.46) 进行离散化。由于损失函数 (2.46) 包含三个不同区域(, 和 )的积分,我们必须考虑三种不同的积分方法。我们考虑权重是积分点数量倒数的积分法,如中点法或蒙特卡洛积分,并将积分点分别记为 ,,。根据机器学习的术语,我们将所有积分点的集合 称为训练集。最终的损失函数 现在不仅依赖于 ,还依赖于 ,并表示为:
对于第2.3节中定义的其他损失函数,也可以进行类似的离散化。实际上,物理驱动学习即为求解以下最小化问题:
最终优化或训练的模型表示为 。
2.5. 优化
由于 是高维的,并且映射 通常是非凸的,求解最小化问题 (2.69) 可能非常具有挑战性。幸运的是,损失函数 几乎处处可微,因此可以使用基于梯度的迭代优化方法。
最简单的算法示例是梯度下降法。通过从初始猜测 开始,在参数空间 中沿着损失函数最陡下降方向迈出一小步,以获得新的猜测 。需要注意的是,这实际上就是在 处的梯度方向的相反方向上迈出一小步。重复该过程,得到以下迭代公式:
其中学习率 控制步长,通常非常小。
2.5. 优化
梯度下降公式生成的参数序列在一般条件下收敛到损失函数的局部最小值。由于损失函数的非凸性,无法确保其收敛到全局最小值。另一个问题在于梯度的计算。根据正则化项,梯度的定义可以重写为:
这表明我们实际上需要计算个梯度。因此,对于大型训练数据集,计算完整梯度将非常缓慢且占用大量内存。
随机梯度下降法(SGD) 通过仅计算一个数据点的梯度而不是整个训练数据集的梯度来克服这个问题。更具体地说,对于每个,随机选择一个索引,其中,对应的更新公式为:
与梯度下降类似,SGD也可以证明在一般条件下收敛到损失函数的局部最小值,尽管收敛速度会较慢。特别是,收敛过程会更加噪声化,并且不能保证每个都有。然而,由于每次迭代的计算成本远低于梯度下降,使用SGD在许多情况下仍然是有意义的。
小批量梯度下降法(Mini-batch Gradient Descent) 尝试结合梯度下降和SGD的优点,在每次迭代中对损失函数的梯度进行子集S的评估(与梯度下降使用完整训练集和SGD仅使用一个样本不同)。更具体地说,对于每个,选择一个大小为的子集。这些子集称为小批量,其大小为小批量大小。与SGD不同,这些子集实际上并不是完全随机选择的。相反,我们将训练集随机划分为个小批量,这些小批量将在连续的中依次使用。这样的一个循环称为一个周期。每个周期后,小批量会重新洗牌,意味着会重新划分训练集。这样,每个训练样本在每个周期中都会被使用一次。相应的更新公式为:
通过设置(即全批量梯度下降)或(即SGD),可以分别得到梯度下降和SGD。因此,梯度下降也常被称为全批量梯度下降。
ADAM优化器 是一种非常受欢迎的小批量梯度下降改进方法(Kingma和Ba,2015)。ADAM(自适应矩估计的缩写)在每个处计算小批量梯度的一阶和二阶矩的移动平均:
其中和接近1。为了修正这些移动平均的偏差,可以通过以下公式进行修正:
然后,通过替换小批量梯度下降的梯度为移动平均,并设置,其中为小常数,接近机器精度,ADAM的更新公式为:
与小批量梯度下降相比,ADAM的收敛过程噪声较少。
牛顿法及其变种 最近也受到越来越多的关注。牛顿法的更新公式为:
其中表示损失函数的海森矩阵。在实际中,我们经常使用近似的准牛顿法(例如L-BFGS算法)来计算海森矩阵的近似逆。
2.5.1. 参数初始化
所有的迭代优化算法都需要初始猜测值。参数初始化对于优化过程非常重要,因为不良的初始化可能导致爆炸梯度或消失梯度的问题。常见的初始化方法包括Xavier初始化,它根据网络的输入输出大小设置权重的初始方差,以避免梯度问题。
2.6. 算法总结
物理驱动学习算法的步骤如下:
选择模型类。 基于PDE的经典、弱或变分形式选择损失函数。 基于合适的数值积分生成训练集。 初始化模型参数并运行优化算法,直到达到局部最小值。
3. 分析
尽管第2.6节中所述的物理驱动学习框架看似直观,但事先并没有太多理论保证它能实际运行良好。因此,接下来的章节旨在对物理驱动的机器学习进行理论分析,并概述可用的数学保证。
一个核心内容是为物理驱动的机器学习发展误差估计。相关的误差概念是将(2.1)中的解通过模型进行近似所产生的误差:
一般情况下,我们选择。需要注意的是,训练过程中无法计算。另一方面,我们可以监控所谓的训练误差,它由以下公式给出:
其中是第2.4节中定义的损失函数,即第2.3节中的(积分形式)损失函数的离散版本。因此,训练完成后可以从损失函数中直接计算训练误差。
我们还将物理驱动损失函数的积分形式称为泛化误差 ,定义如下:
因为它衡量模型的性能从训练集S到整个域的传递或泛化效果。
根据这些定义,立即出现了一些基本的理论问题:
问题 1:存在性
是否存在一个假设类中的模型,其泛化误差很小?更准确地说,给定一个错误容忍度,是否存在一个假设类中的模型使得对应的泛化误差满足?由于最小化泛化误差(即物理驱动损失)是物理驱动学习的关键支柱,因此获得这个问题的肯定回答极为重要。此外,理想情况下,我们希望将参数空间(或假设类)的大小与精度关联起来。例如,对于线性模型(参见第2.2.1节),我们希望知道需要多少函数来确保存在使得。同样,对于神经网络,我们希望估计出神经网络应该有多大(就深度、宽度和权重的模数而言)才能保证这一点。我们将在第4节通过考虑模型类的逼近误差来回答这个问题。
问题 2:稳定性
假设模型的泛化误差很小,那么相应的总误差是否也会很小?换句话说,是否存在一个函数使得当时,,并且蕴含对于任何成立?实际上,我们希望找到与无关的常数,使得:
这是一个至关重要的要素,因为仅仅获得较小的泛化误差是没有意义的,我们真正关心的是总误差。这个问题的答案首先取决于底层PDE的性质,而不是模型类。我们将在第5节讨论这个问题。
问题 3:泛化
如果训练误差很小,并且训练集S足够大,那么相应的泛化误差是否也会很小?这个问题不仅仅与物理驱动的机器学习有关,还与所选数值积分规则的精度紧密相关(参见第2.4节)。我们将在第6节使用标准方法来回答这个问题。
问题 4:优化
是否可以将与足够接近?这个问题承认了一个事实:即使是近似地解决最小化问题(2.69)也可能非常困难。特别是对于物理驱动的神经网络,关于在某些设置下优化问题难以解决或甚至不可行,以及如何潜在地克服这些训练问题,已经有越来越多的文献研究。我们将在第7节理论分析这些现象。
上述问题具有根本的重要性,因为这些问题的肯定回答能够证明,最小化优化问题(2.69)的模型是的良好近似,意味着误差很小。我们将首先通过证明泛化误差的误差分解来展示这一点,这需要以下辅助结果。
引理 3.1
对于任意 和训练集 ,有以下不等式成立:
证明: 令 固定,并生成一个随机训练集 。证明过程通过反复加减项进行推导。首先有:
假设我们可以肯定地回答问题Q1,那么我们可以取和(如问题Q1中的假设)。此外,如果我们也能肯定地回答问题Q2,或者更强地,我们能找到常数使得(3.4)式成立,那么我们可以得到以下误差分解:
误差分解说明:
总误差现在被分解为三个误差来源:
逼近误差 :通过回答问题Q1可以证明它是很小的。 泛化差距:第二项量化了训练误差与泛化误差之间的差距,涉及到问题Q3。 优化误差:由于优化过程基于有限训练数据集,因此产生的误差。如果,则优化误差消失。这个误差来源涉及问题Q4。
因此,问题Q1–Q4的肯定回答将导致总误差较小。
我们将给出回答问题Q1–Q4的一般结果,并将其应用于以下典型示例,以进一步强调有趣的现象:
Navier–Stokes方程(示例2.2):作为一个具有挑战性但低维度的PDE示例。 热方程(示例2.1):作为一个可能具有非常高维度的PDE原型示例。我们将研究是否可以通过物理驱动学习来克服该方程及相关PDE的维数灾难。 无粘性标量守恒律(示例2.3, 取):作为一个PDE的示例,其解可能不光滑甚至不连续。因此需要使用第2.3.2节中的弱残差。 Poisson方程(示例2.4):作为使用第2.3.3节中变分形式的示例。
8 结论
在本文中,我们对物理驱动机器学习模型(如PINNs及其变体)在求解大类PDE的正问题和逆问题中的数值分析理论成果进行了详细回顾。我们将物理驱动机器学习表述为在适当的参数函数Anstaz空间的子空间内,最小化PDE残差的合适形式(强形式、弱形式、变分形式)。PINNs是这一广义表述的一个特例,具体表现为PDE残差的强形式以及使用神经网络作为Ansatz空间。残差通过(随机)梯度下降算法的变体进行最小化。
我们的分析表明,只要PDE的解在适当的意义上是稳定的,总体误差(即精确PDE解与物理驱动机器学习模型经过训练后的近似解之间的偏差)可以根据以下几部分进行估计:(i) 近似误差,衡量PDE残差在Ansatz空间(或假设类)内的大小;(ii) 泛化差距,衡量积分误差;(iii) 优化误差,量化优化问题的解程度。我们对每个误差分量进行了详细分析,无论是在广义层面还是对多种典型PDE进行了例证。
尽管许多分析是PDE特定的,但我们可以识别出许多跨越PDE和模型共享的特征,概括如下:
基础PDE的(弱)稳定性 在分析中起到了关键作用,这可能是PDE特定的。一般而言,误差估计取决于PDE解在受到扰动时的变化程度。这与传统数值方法的分析是一致的。 分析中通常要求基础PDE解具有足够的正则性,尽管通过改变PDE形式可以降低这一正则性要求。 物理驱动机器学习的主要瓶颈 来自于模型难以有效训练。一般来说,训练PINNs及其变体可能较为困难,因为这依赖于基础微分算子Hermitian平方的谱性质,尽管合适的预处理可能会缓解训练问题。
最后,理论为实践者提供了一些指导,说明何时以及如何使用PINNs及其变体。简言之,正则性决定了形式选择(强形式与弱形式),物理驱动的机器学习模型预计在高维问题上(例如Mishra和Molinaro在2021年的研究)或复杂几何问题上表现优于传统方法,因为这些问题中的网格生成成本极高,或在数据补充物理的逆问题中具有优势。当与操作符学习模型(如神经操作符)结合时,物理驱动机器学习将特别具有吸引力,因为基础空间是无限维的。因此,物理驱动操作符学习模型的进一步研究非常值得进行。
💙整理不易,希望各位道友能够多多支持宝库,支持邪云宝库!你的一个点赞、一次转发、 随手分享,都是宝库前进的最大动力~
💛2024,不忘初心,宝库会给大家带来更好的内容,让我们2024,一起暴富!