【NeuIPS‘2023】《Hypernetwork-based Meta-Learning for Low-Rank Physics-Informed Neural Networks》

前置知识

1)微分算子、微分方程
\quad 参考:线性微分方程的利器-微分算子法微分方程(1)-基本概念及分类
\quad 先来看一看什么是函数,如下图,进去一个数,经过某种处理变成另外一个数。进去的数为自变量,出来的数为因变量,而中间的某种处理就是对应法则。用数学表达就是: y=f(x) ,这就是函数。
在这里插入图片描述
\quad 那么现在变一下,如果进去的是函数,出来的也是函数呢?如下图:
在这里插入图片描述
\quad 可见,函数 f 经过某种操作就变成了函数 g ,而算子,就可以理解为使得函数改变的操作进去一个函数,经过某种处理变成另外一个函数。
\quad 微分算子又是什么呢? 函数 y 经过处理变成了 y’,这种处理就是微分算子。如果用D表示,如下图。
在这里插入图片描述
\quad 微分算子有一些不错的性质,常用来求解微分方程。

2)微分方程、常微分方程、偏微分方程
\quad 微分方程是一种数学方程,用来描述某一类函数与其导数之间的关系,即,含有未知函数及其导数的方程
\quad 常微分方程(Ordinary Differential Equation,ODE)指的是:仅含有一个独立变量的微分方程。如果微分方程中的未知函数包含两个或两个以上的独立变量,则该微分方程为偏微分方程(Partial Differential Equations,PDE)。
\quad 在下面式子中,(1)(2)(3) 就是常微分方程,因为因为只包含一个独立变量 x ;而例子 (4) 中包含两个自变量 t 和 x ,所以是偏微分方程
在这里插入图片描述
\quad 特解指的是满足微分方程的某一个解;通解指的是满足微分方程的一组解。一些微分方程有无穷多解,而有的微分方程无解,有的微分方程则仅有有限个解。

\quad 微分方程的阶数取决于方程中出现的最高次导数阶数。

\quad 初值问题和边界值问题
\quad 在给微分方程添加附加条件时,如果附加条件中未知函数及其导数的独立变量取值相同,则为初值问题;如果附加条件中未知函数及其导数的独立变量取值不同,则为边界值问题

\quad 例如,例子(5)是初值问题;例子(6)为边界值问题。
在这里插入图片描述
\quad 一个初值问题或边界值问题的解 y(x) 不仅要满足微分方程,还要满足所有附加条件。

3)偏微分方程和常微分方程的关系:

\quad 区别

  • ODEs(常微分方程):
    • 描述一个变量关于一个单独的独立变量的导数。
    • 通常用于描述只涉及一个自变量(通常是时间)的系统。
  • PDEs(偏微分方程)
    • 描述一个多变量函数关于两个或多个独立变量的偏导数。
    • 通常用于描述涉及多个自变量(可能是空间坐标和时间)的系统(就是说,有多个自变量)

\quad 关系

  • ODEs 是 PDEs 的一种特殊情况
    • 当 PDE 中的函数只依赖于一个变量时,PDE 就退化成 ODE。
  • 相互转化:
    • 通过适当的变量选择,可以将某些 PDEs 转化为 ODEs 或相反。
  • 应用领域:
    • ODEs 更常见于描述动力学系统、生态学模型等,其中只涉及一个自变量(通常是时间)。
    • PDEs 更常见于描述波动、传热、流体力学等,其中系统的行为涉及多个自变量。

\quad 总体而言,ODEs 和 PDEs 都是数学工具,用于建模和理解系统的演化。选择使用哪一种通常取决于问题的性质和系统的特征。

4)parameterized partial differential equations(PPDEs)与partial differential equations(PDE)的区别

\quad 形式上的区别

  • 通常用来描述未知函数及其关于两个或多个独立变量的偏导数之间的关系
  • 在PPDEs中,除了包含自变量和未知函数外,还包含参数,这些参数可以是常数、函数或其他变量。

\quad 应用上的区别

  • PDEs: 主要用于描述空间和时间中的变化,涉及到多个独立变量的关系,例如热传导、流体力学等。
  • PPDEs: 更常见于模拟具有参数变化的现象。这些参数可能表示材料属性、边界条件、初始条件等,可以通过调整参数来研究系统的响应。

\quad 求解上的区别

  • PDEs: 求解PDEs通常涉及到找到未知函数 u 使得方程成立,可以使用分析方法或数值方法。
  • PPDEs: 在求解PPDEs时,除了找到 u ,还需要确定参数的值。这可能需要使用优化或拟合等方法。

个人理解:PPDE可能就是一类PDE,比如人脸。PDE表示不同的人脸。

5)PDE与深度学习的关系
\quad PDEs(Partial Differential Equations,偏微分方程)和深度学习之间存在一些有趣的关系,尤其是在科学计算、物理建模和工程领域。下面是一些关系的重要方面:

  • 物理建模和数据驱动方法: PDEs通常用于描述物理系统的行为。在一些情况下,我们可能无法找到系统的解析解,或者解析解非常复杂。深度学习提供了一种数据驱动的方法,可以通过学习大量实验或模拟数据来近似解决这些方程,而不需要显式地解方程。
  • 基于物理的约束: 在深度学习中,特别是在物理学问题中,可以利用PDEs中包含的物理知识作为额外的约束。这可以通过将PDEs的信息嵌入到神经网络的架构或损失函数中,使得网络更好地适应物理规律,这类方法有时被称为"Physics-informed neural networks"(PINNs)。
  • 数据 assimilation: 在某些科学应用中,我们可能有一些观测数据,但是物理系统的完整模型是未知的。深度学习可以用于融合观测数据和物理方程,以估计系统的状态或参数。
  • 解决高维和复杂问题: 一些PDEs描述的问题可能涉及到高维空间或者具有复杂的几何结构。传统的数值方法在这些情况下可能变得非常昂贵或困难。深度学习方法具有一定的灵活性,可以在高维空间中进行学习,并能够适应较为复杂的数据结构。
  • 非线性建模: 深度学习是一种强大的非线性建模工具,而许多自然界的现象可以用非线性的PDEs进行建模。深度学习方法可以更自然地处理这些非线性关系。

总体而言,PDEs和深度学习可以相互补充,尤其在处理复杂、高维度或缺乏解析解的问题时,它们的结合可能提供了一种强大的工具。

6)Physics-informed neural networks(PINN)
\quad "Physics-informed neural networks"是一种结合了物理模型和神经网络的方法,用于解决科学和工程领域中的问题。这个方法的核心思想是将已知的物理方程嵌入到神经网络的训练过程中,以提高神经网络对系统行为的理解和预测能力。
\quad 在传统的数据驱动机器学习方法中,神经网络通常是通过对大量观测数据进行训练来学习模型。然而,在许多科学和工程问题中,我们通常已经了解到一些关于系统行为的基本物理规律,例如方程或约束条件。PINN 就是基于这一观点,试图将这些先验的物理知识整合到神经网络中。
\quad PINN 的基本思路是构建一个神经网络,它不仅仅学习从输入到输出的映射关系,还能够满足已知的物理方程。通过将物理方程嵌入到神经网络的损失函数中,训练过程不仅要求网络适应观测数据,还要求网络满足物理方程。这有助于提高模型的泛化能力,尤其是在有限的数据情况下,因为物理方程提供了对系统行为的额外约束。
\quad 这种方法在涉及到物理学的问题,如流体力学、热传导等方面,通常能够更好地利用已知的物理规律,提高模型的准确性和可解释性。

7)PINN与AI
要实现用神经网络来逼近PDE的解,只有用初边值条件和方程即可约束神经网络,也就是说需要在损失函数上花心思,毕竟损失函数决定了神经网络训练的方向。

PINNs的损失函数分为两块,一块是初始条件和边界条件,一块是方程。但是,我们还需要选择内部的点进行训练和约束。因此另一类训练集的输入需要是内部点的坐标,因为内部点是没有标签的(即真值),只受方程约束,因此只能计算方程的Loss。

使用初边界条件做约束,可以看作在深度学习中使用训练集(这些点都可以看作是初始/边界点?)中的数据做监督学习。总结一下,该损失函数的设计思路就是,在定义域中选择一定数量的坐标点用作训练集的输入,来对神经网络进行约束。边界(初始条件也可视作时间上的边界)上的点也被方程和标签同时约束,内部的点只受方程约束。

PINN最有意思的是损失函数中的方程约束项。就像有些NeRF方法中除了MSE损失外,还引入了几何损失等,以物理的规则设计一个方程约束项。

8)算子学习
\quad 算子学习的目标是解决一类问题,获得更好的泛化能力。如果能有一个训练好的模型,那么在理想情况下,改变参数、初边界条件或改变强迫项,理论上也应该是适用的。也就是说,算子学习是在学习a family of PDEs。


Author: Yonsei University,Arizona State University

1)动机

\quad Physics-informed neural networks (PINNs)是一类特殊的coordinate-based MLPs,也称为隐式神经表示(INRs),用于偏微分方程(PDE)的数值近似解。也就是说,PINNs以时空坐标(x, t)为输入,然后预测这一坐标下的PDE解,并在初始和边界条件下通过最小化(隐式)PED残差损失和数据匹配损失进行训练。
\quad PINNs与coordinate-based MLPs(或者叫INRs)一样,有着同样的弱点。对于一个新的data instance(a new PDE for PINNs 或 a new image for INRs),需要重新训练一个神经网络。因此,使用PINNs来求解PDE(特别是在parameterized PDE中)通常需要很大计算量。这种负担排除了PINNs应用于涉及许多查询的重要场景,因为这些场景需要参数化PDE模型模拟数千次(例如,设计优化、不确定性传播),即,需要许多PDE解。
\quad 为了解决上述的问题,这篇文章提出了:1)一种PINNs的low-rank结构的神经网络架构,叫做 low-rank PINNs (LR-PINNs);2)一种有效的rank-revealing训练算法,它自适应地调整LR-PINNs的秩以适应不同的PDE输入;3)一个两阶段的程序(offline training/online testing)用来处理 many-query 场景。
\quad 这个研究启发于numerical PDE solvers研究中的观察,它们表明:parameteric PDEs的数值解通常可以近似为低秩矩阵或张量格式,以减少计算/内存需求(那meta-learning中的initialization weight是否也可以作为这种形式?)。具体地,所提出的方法采用了reduced-order modeling (ROM)中使用的计算形式,这是在求解parameteric PDEs时的主要方法。

2)方法

\quad LR-PINNs是一类PINNs,有着hidden fully-connected layers(low-rank weight matrix)。将每一个中间层denote为LR-FC,第l个隐藏层可以被定义如下:
在这里插入图片描述
\quad 其中,U,V是满列秩矩阵,包含了一组正交基向量。
[图片]

\quad 挑战是:表示隐藏层本身的权值是很简单的,而且确实已经在深度学习的许多不同领域中得到了积极的研究,比如NLP中。这篇文章与之前的方法不同,试图在训练进行时揭示中间层的秩,这带来了独特的挑战。这些挑战可以用一些研究问题来总结:
\quad 1)我们应该让所有的参数都变为可学习的么?(即,U、V、∑);
\quad 2)我们如何分别确定每一层的rank,并自适应于不同的µ?;
\quad 3)我们能否利用低秩结构来避免对每一个新的µ实例进行昂贵和重复的PINN训练?
\quad 下面,我们将通过提出一种新的神经网络结构来解决这些问题。
\quad 整体结构如下图所示,PDE参数u可以理解为INR中的图像,将u输入至hypernetwork中为中间层的MLP生成权重矩阵。然而,这些方法通常假设存在预训练的模型,并通过运行truncated SVD algorithm来近似模型的权重。下面的这条支流是LR-PINN,上面的是Hypernetwork。
在这里插入图片描述
\quad 对于上面的这个网络,训练分为两个阶段。第一个阶段,学习基向量和超网络。第二个阶段,为一组特定的test PDE parameters进行fine-tuning。下面显示了在每个阶段训练的模型参数集。
在这里插入图片描述

3)实验部分

\quad 下图描述了用MAML、Reptile和本文方法进行的元学习的训练损失和测试误差。与基于优化的元学习算法相比,这篇文章的基于超网络的方法同时减少了每个任务的元初始权重,从而学习对随机抽样训练任务的“平均”表现良好。
在这里插入图片描述
Rank structure:下表展示了几种方法的 trainable model parameters。在本文的模型中,每个隐藏层有着不同的Rank structure,参数量最小。(本文的这种方法或许是一种可行性的小模型方式)
在这里插入图片描述
\quad 三个问题的回答:

\quad Ablation on fixed or learnable basis vectors:{U, V}是否是可训练的,作者发现,固定的{U, V}要比可训练的{U, V}产生高一个数量级的预测准确率和收敛速度。(证明,一部分参数是固定的,可能是有益的)
在这里插入图片描述

4)相关工作

\quad Meta-learning of PINNs and INRs。HyperPINNs同样使用hypernetwork生成模型的参数,但是只能生成full-rank权重,没有处理参数化偏微分方程的能力。在INRs领域,通过MAML、Reptile这种元学习方法来获得INRs的初始权重的方法在《Learned initializations for optimizing coordinate-based neural representations》中被探索,《Meta-learning sparse implicit neural representations》、《Meta-learning sparse compression networks》对获取INRs的稀疏表征进行了探索。

\quad Low-rank formats in neural networks。在自然语言处理中,所使用的模型(例如,Bert)通常有数亿个模型参数,因此,在推理过程中提高计算效率是迫在眉睫的问题之一。作为一种方法,通过截断的 truncated SVD来近似层为low-rank已经被探索。一般研究了MLPs《Initialization and regularization of factorized neural layers》和卷积神经网络结构《Speeding up convolutional neural networks with low-rank expansions》的低秩层建模。在PINN或INR的背景下,没有研究过低秩格式。最接近我们工作的工作是SVD-PINNs,它以分解形式表示隐藏层,但总是full-rank。

本文与先前工作不一样的点就是,以低秩形式建模中间层的参数。

猜你喜欢

转载自blog.csdn.net/DUDUDUTU/article/details/134374146
今日推荐