摘要
偏微分方程在科学和工程领域扮演着重要作用,而寻找偏微分方程的解一直是富有挑战性的问题,需要复杂的数值求解技巧。由于在描述非欧氏系统时的高度适用性,图神经网络给偏微分方程的求解提供了新的有趣思路。本文介绍了两种具体方法,一种使用图神经网络描述偏微分方程中关键的时间求导项,另一种则直接利用图中的结点描述离散化后系统中的粒子。由于二者间的密切关联,偏微分方程也能对图神经网络的设计进行指导和帮助,相关内容将在最后的部分呈现。
背景介绍
偏微分方程(partial differential equations, or PDEs)在科学和工程领域扮演着重要作用,因为大部分自然和人造复杂系统中的控制方程(governing equation)都是偏微分方程。但绝大部分偏微分方程的求解一直是一个富有挑战的问题,这往往涉及复杂的数值求解技巧,且相当耗时,尤其是当方程参数或是边界、初始条件部分未知的时候。
人工智能近年来在科研领域取得了巨大的成功,其中深度学习的发展更是对科研和人们的日常生活产生了深远影响。除了归功于计算资源(例如GPU)的快速发展、海量数据的采集等,深度学习的各种方法,包括典型的卷积神经网络(CNN)对于欧氏数据如图像、文本或视频等在提取其特征时的有效性也是其成功的原因之一。
尽管深度学习在欧氏空间中取得了很大的成功,但越来越多数据呈现出非欧氏结构,这些数据需要使用图(Graph)来描述,它包含顶点和边两个要素。在典型的在电子商务领域,图可以描述用户和产品、用户和用户等之间的关联,并对用户的行为做出预测或推荐。
在偏微分方程所在的科学领域中,我们也可以利用图对非欧氏数据或形态的描述能力使用基于图的深度学习方法来学习并解决一些问题。
用图神经网络表征时间导数项解法
一个典型的偏微分方程可以写为
它表示一个系统关于空间坐标x和时间t的状态u随时间的变化依赖其自身以及它关于空间坐标x的一阶或更高阶的导数。这一类偏微分方程是一大类科学问题的基础,它在具有传播特征的系统如声波、流体、热扩散甚至疾病发展中都有十分广泛的应用。
在[1]中,作者希望利用图神经网络来描述方程中u关于坐标导数的函数F。首先利用线方法(method of lines, or MOL)将原方程进行离散化,选取方程描述的系统域Ω中的N个位置结点并将F在这些空间节点上进行离散化。将这些空间结点排列成一个观测向量
F则可以近似表达为只在某个离散点上的
原方程(1)也相应改写为如下的常微分方程组(ordinary differential equations, or ODEs):
值得注意的是,
表示坐标
处的系统状态,而
是坐标
周围的一系列领域点的下标集合。这表明为了描述坐标
处的系统状态变化函数
,我们不仅需要此处的系统状态,还需要与之相邻的一些离散坐标处的系统状态,这体现了系统本身对于相邻坐标间的状态的交流与作用的依赖。这一依赖当然是符合自然规律本身的,而它也正好符合图结点之间的邻域依赖特征。不仅如此,
中的邻域相关结点数量无法预知,且对每个离散结点来说也未必相同,因而
需要对任意数量的相关结点都适用,并且与它们的排列顺序无关。
图神经网络(graph neural networks, or GNN)正好具备这些性质,因而可以采用基于信息传递(message passing)机制的GNN来描述这一离散
函数:
这一网络与绝对坐标不再有关,以此构建的模型也具有空间的平移或旋转变换的不变性,因而对于有不同结点位置的的系统有很好的可扩展性。
这一信息传递机制具体为:
其中
表示GNN中第k+1层的结点i的状态,
表示它的邻域传递来的信息和,即每个节点基于自身信息和邻域中的结点信息之和来计算自己在下一层中的状态。我们可以用所定义的GNN中最后的第K层结点状态来替代
:
而最终关于每个离散结点上的常微分方程的解则容易求得:
中的参数θ为信息传递机制中的
函数中参数的集合,具体训练时,将观测状态
网络对应输出状态的均值差作为代价函数即可。
这一方法的优点在于,虽然学习的是离散时刻的系统状态,但是可以预测连续时间的状态,与基于纯离散时间的模型相比当数据的时间间隔较大时更有优势。
上述方法是使用GNN表达PDE中的时间微分函数,那么能否基于图的本身结构来直接表达原先由PDE描述的系统并学习和预测系统随时间的演化呢?DeepMind的一个工作很好地展示了这一思路[2]。
图神经网络直接表达离散化粒子系统
我们知道流体的运动遵循著名的Navier-Stokes方程:
该方程的非线性特性使得它异常难解,而这也是复杂的湍流现象产生的原因。人们借助各种数值计算方法来模拟流体的行为,常见的有基于网格离散化的物质点方法(material point method, or MPM)和光滑粒子流体动力学(smooth particle hydrodynamics, or SPH). 但这些方法对算力都有着巨大的需求,运算成本很高,如图1中截取的某机翼上的复杂湍流模拟需要消耗3500万核心小时的计算资源与75TB的巨大存储。
图1. 某机翼上的复杂湍流模拟[7]
这些数值计算方法本质是将流体离散化,比如SPH方法将流体处理成了一组粒子离散元素,这些粒子具有空间位置,携带了其所在位置的流体信息如质量、速度、密度、能量等。这些粒子之间的作用显然具有很强的邻域相关性,借助这些特点,可以构造一种图神经网络,使得网络中的每个结点代表该处的离散流体粒子,如图2中最左侧图所示,再基于一定的邻域半径定义相邻结点和连接相邻结点的边,而粒子(结点)与边的信息采用多层感知机进行编码至隐空间。
图2. 用图神经网络表达离散粒子系统[2]
该GNN也遵循信息传递机制进行演化。在之前所述的例子中,GNN包含了多层的结点和边的信息,每进行一次信息传递这些信息就传递至网络中的下一层,每层之间的信息传递的参数是不同的,需要整体进行学习。而这里GNN在每次信息传递时采用的参数相同,每进行一次信息传递的过程代表了一次特定时间间隔的系统状态演化。可以这样做的原因是这里的流体系统的离散化粒子间的作用对于时间具有不变性,即任何一次信息传递对应的相同时间间隔前后的系统演化都遵循统一的物理规律,因此我们可以用相同的信息传递参数来表征这一规律。这样做的另一个好处是不需要将演化过程中每一次信息传递的状态都进行存储。
对经过了信息传递后的网络再进行解码至结点对应粒子的物理状态,就获得了若干时间步后的离散化后的流体系统状态,将这个状态与采用经典数值方法(例如SPH等)计算的基准结果进行比较就可以定义该任务的代价函数。作者展示的例子中学习好一个典型的流体系统演化所需的时间步数量为几百到一千左右。有意思的是,虽然利用SPH等经典数值方法求得的系统状态演化是随时间逐渐进行的,作者在使用上述GNN学习该过程的时候却将已求得的离散时间间隔的一系列系统状态预先打乱,这样可以进一步增强模型对于任意时刻系统状态的下一步状态的预测能力,使得该预测能力更具有一般性。
图3是该模型预测的流体和其他粒子系统(如沙粒)的运动结果,更精确的对比表明该模型比之前基于卷积神经网络等深度学习方法[3]在此任务上的预测结果更接近参考值,同时相对于产生参考值的传统数值方法有10倍到100倍的提速。
图3. 该模型预测的流体和沙粒的运动结果[2]
偏微分方程对图神经网络的启示
另一个有趣的问题是,PDE能否对图神经网络做出启示和指导呢?
图卷积网络(GCN)中相比于卷积神经网络(CNN)往往是浅层的,而随着网络的层数增多容易产生过平滑的问题,也就是图上的结点和边的值趋向于一致而不可分辨,使得网络失去了相应的功能。另外GCN在其指定的应用中调优后,若迁移至别的应用往往表现不佳。表1的例子中,效果出色的点云分类网络DGCNN在另一个引用图结点分类问题Cora中表现就很差。
表1.DCGNN在不同任务下的表现[6]
近期已经有很多工作指出了PDEs和CNNs的潜在关联[4,5],即可以将CNNs等深度神经网络本身看成由PDE指导的动力系统,而CNNs中的每一层即是PDE离散化后的一步时间演进。这是因为CNNs中的卷积核可以看成多个线性求导算子的组合,例如下方的3X3卷积核可以展开成后面9个子核的线性组合,而每个子核则对应一种离散的网格求导算子,即
CNNs作用在图像上,而图像可以看成是一个特殊的图,图上的每个结点与其相邻的结点相连接,由于CNNs中卷积核的权重是不变的,因而CNNs可以看成是所有边都不变的特殊的图神经网络。
类似地[6],在图神经网络中我们可以定义求导算子G
其中f是定义在图上的函数,
是结点离散化后第i个结点上的f值。W是图中边的连接权重矩阵。通过G我们可以进一步定义诸如图上的Laplacian算子
常用的还有边上求平均算子
等。有了这些基本算子就可以定义后续的PDE到图神经网络的映射,通常这足以构建很多问题所需的PDEs在图上的表达,如热扩散PDE
或是双曲型波动PDE
亦或是两者结合的具有扩散性的波动PDE
而这些方程右边的项来自于图的能量项
对于U的梯度
基于Leapfrog方法可以很容易地将上述方程离散化,上述(18)式基于图的离散化表达则为
自然地,由于热扩散方程的解随着时间推移本身就会变得在空间上越来越平滑,与之结构对应的图卷积网络随着层数增多容易产生的过平滑问题也就很好解释了。图像分类任务中由此造成的过平滑是无关紧要的,因为我们不关注单个结点的值,更多关注整体的一种平均。当我们需要关注结点之间的差异信息时,过平滑就会使得网络性能很差。这时候如果仍然坚持既有的与扩散型PDE相似的GCN就不再合适了,而与双曲型波动PDE相似的GCN则可以更好地完成任务。如果应用如(19)式的同时包含两者特性的GCN网络,则可以大大提升网络在不同应用中的可扩展性。
作者提供的模型应用了(19)式的混合扩散与波动型PDEs的GCN,并将α也作为一个需要学习的参数,则该网络在两种完全不同类型的任务中都能取得SOTA的表现。在图4中左侧的结点分类任务中,α随着训练自动退缩回接近0的状态,表明了此问题中扩散现象占据的绝对主导,而由此带来图上特征的过平滑也自然不会影像网络的性能。右侧的例子中随着训练的进行α则增长到了接近1,这是由于此在FAUST数据集上的形态对应问题中波动现象又占据了绝对主导。
图4. 不同任务中不同类型图神经网络的自动区分和匹配[6]
小结
我们看到,使用图神经网络可以帮助求解偏微分方程,而不同形式的偏微分方程又能指导图神经网络的设计。这些方法之所以可行,在于这些场景下它们分别描述的是同一类系统,系统遵循相似的内在演化机制。偏微分方程对演化机制有精确的数学描述,图神经网络则将这些机制抽象成了结点(或边)之间的信息传递。由于图对自然界和人类社会中广泛存在的非欧氏数据或系统的描述有着天然的结构适用性,我们期待图神经网络对科学研究和社会经济等的进一步推动。
参考文献
[1] Valerii Iakovlev, et. al., “Learning Continuous-time PDEs From Sparse Data with Graph Neural Networks”, arXiv:2006.08956.
[2] Alvaro Sanchez-Gonzalez, et. al., “Learning to Simulate Complex Physics with Graph Networks”, 2020 International Conference on Machine Learning Volume: 1, pp 8459-8468.
[3] Ummenhofer, et. al., “Lagrangian Fluid Simulation with Continuous Convolutions”, In International Conference on Learning Representations, 2020.
[4] Eldad Haber and Lars Ruthotto, “Stable architectures for deep neural networks”, Inverse Problems, 34 (1), 2017.
[5] Bo Chang, et. al., “Reversible architectures for arbitrarily deep residual neural networks”, Thirty-Second AAAI Conference on Artificial Intelligence, 2018.
[6] Moshe Eliasof and Eldad Haber, “PDE-GCN: Novel Architectures for Graph Neural Networks Motivated by Partial Differential Equations”, arXiv: 2108.01938.
[7] Hosseini S M, Vinuesa R, Schlatter P, et al. "Direct numerical simulation of the flow around a wing section at moderate Reynolds number[J]", International Journal of Heat and Fluid Flow, 2016, 61: 117-128.
关于壁仞科技研究院
壁仞科技研究院作为壁仞科技的前沿研究部门,旨在研究新型智能计算系统的关键技术,重点关注新型架构,先进编译技术和设计方法学,并将逐渐拓展研究方向,探索未来智能系统的各种可能。壁仞科技研究院秉持开放的原则,将积极投入各类产学研合作并参与开源社区的建设,为相关领域的技术进步做出自己的贡献。
扫码关注我们
继续阅读
阅读原文