CN114385969A - 用于求解微分方程的神经网络方法 - Google Patents
用于求解微分方程的神经网络方法 Download PDFInfo
- Publication number
- CN114385969A CN114385969A CN202210030481.5A CN202210030481A CN114385969A CN 114385969 A CN114385969 A CN 114385969A CN 202210030481 A CN202210030481 A CN 202210030481A CN 114385969 A CN114385969 A CN 114385969A
- Authority
- CN
- China
- Prior art keywords
- data
- training
- network
- neural network
- solving
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
- G06F17/13—Differential equations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种用于求解微分方程的神经网络方法,包括以下步骤:步骤(1),对定义域内每个维度的数据进行采样,获得训练的总体数据集;步骤(2),每个轮次中的训练数据进行自动调整,得到每次轮次的训练数据;步骤(3),根据微分方程的条件,构建物理信息神经网络,求解微分方程;神经网络求解微分方程中对于网络的参数进行多次的回归计算,将每一次的回归计算称为一个轮次。上述技术方案,该方法通过正态分布累计密度函数进行的分层数据采样方式,取得的数据点在定义域范围内的分布更具有特征性,跨定义域边界点的采样不仅有助于网络边界附近数据点的训练,在周期边界等条件中也具备更好的求解精度,有效的提高了网络整体的训练精度。
Description
技术领域
本发明涉及求解偏微分方程技术领域,具体涉及一种用于求解微分方程的神经网络方法。
背景技术
在物理、工程、医疗等诸多领域中,经常使用微分方程进行建模分析具体问题。根据问题的多样性与复杂性,微分方程的维度逐渐加深,求解的难度也逐渐加深。这类微分方程的解析解难以计算,通常使用有限差分法、有限元法等数值方法求解微分方程的数值解。但是这些方法都具备较强的针对性,且构建复杂,不方便移植。
随着神经网络结构的万能逼近性被证明,科学家开始尝试使用浅层神经网络作为微分方程的近似解,与经典的离散化网格法相比,神经网络在求解偏微分方程等领域表现出良好的灵活性与鲁棒性,具有更加灵活的编辑方式。
传统的数值解法严重依托于网格点的选取,网格生成是整个计算分析过程中的首要部分,根据网格点的采样方式分成了分区结构网络、非结构网络和笛卡尔网格等三个不同方向的网格点选取方式。同时,网格选取的不合适将导致准确性降低。科学的数据集在使用神经网络处理图像识别的计算机视觉等领域中的重要性不亚于网络模型的构建。在使用神经网络求解偏微分方程的过程中,数据点的选取同样具有重要地位。我们将对模型的关注转移到对训练数据的关注。
在训练神经网络的过程中,由于数据集的不合理会导致网络的训练存在过拟合与欠拟合问题。而在使用神经网络求解微分方程的过程中,并不存在过拟合现象。理论上参与训练的数据点有无穷多个,即在任意一段区间内,数据都是可以被划分为无穷多个的。因此在训练的过程中,受限于有限数据点的选取,网络往往会表现出欠拟合现象,这在数据集数量较低的时候更为明显。
对于一些未被训练到的数据点,神经网络表现出网络难以训练,训练效果与真实数值解有较大误差等现象。尤其是对于微分方程的边界条件问题,处于边界的数据点被取得的概率较低,因此往往存在较大的误差。诸如PINNS等基于神经网络的微分方程求解方法,存在网络不可优化、损失函数难以收敛、求解过程存在梯度消失等问题的现象。导致网络无法找到微分方程的解。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种用于求解微分方程的神经网络方法,该方法通过正态分布累计密度函数进行的分层数据采样方式,取得的数据点在定义域范围内的分布更具有特征性,且具有跨定义域边界数据采样的特性。其中,跨定义域边界点的采样不仅有助于网络边界附近数据点的训练,同时在周期边界等条件中也具备更好的求解精度。
同时,网络训练中对于定义域中部的数据往往没有硬性的约束条件,因此网络的精度存在一定的缺陷。而通过该步骤生成的总体训练数据集分布以中心数据点为主,只有少部分定义域外的数据参与训练。在保证网络中心位置精度更高的同时,也保证了边界数据点的求解精度,从而有效的提高了网络整体的训练精度。
如果对于一组相同的数据进行多次的反复训练,往往会带来局部最小值等其他干扰因素,这将会导致网络收敛速度变得极为缓慢,甚至是难以收敛的,也就是网络无法找到微分方程的隐式解u(r,t)。在步骤二中提出的训练数据动态调整方案,可以从一定程度上解决这类问题。
同时,每个训练轮次中的数据量个数将影响网络整体的收敛。如果将每次生成的所有数据集一次性全部带入网络参与计算,虽然在梯度更新时可以近似代表整个定义域的整体梯度方向,保证网络的优化方向是正确的。但在网络优化的中后期时,因为数据量过于庞大,数据间相互影响的问题将会显著的表现出来,进而导致网络的参数难以得到更新。而使用小批量的数据参与网络的训练中时,有助于突破局部最小值等干扰因素,提高求解的精度,但是网络的整体更新速度较慢,在前期无法表征网络整体的梯度下降方向。本方法通过判断每次反向传播时的梯度大小,设置了自适应训练数据抽取方式,来选择每次参与训练的数据量个数。有助于突破局部最小值等干扰因素,加快网络的收敛,提高求解的精度。
通过神经网络求解微分方程,不仅对于微分方程形式的表征具有较高的简洁性与普适性,而且损失函数的构建相比于差分方程更为简单。在面对高维数据时,神经网络具有较好的效率,避免了传统数值解的维度爆炸问题。
为实现上述目的,本发明提供了如下技术方案:一种用于求解微分方程的神经网络方法,包括以下步骤:
步骤(1),对定义域内每个维度的数据进行采样,获得训练的总体数据集;
步骤(2),每个轮次中的训练数据进行自动调整,得到每次轮次的训练数据;
步骤(3),根据微分方程的条件,构建物理信息神经网络,求解微分方程;
步骤(3.1),对于一般形式的偏微分方程
其中,r表示空间变量,且定义域为Ω,r是任意维度的空间变量,t表示时间变量,定义域在[0,T]的范围内;u(r,t)表示微分方程的隐式解,ut表示u(r,t)对时间t求偏导,为作用在函数u(r,t)上的非线性算符子集。
作为优选的,还包括步骤(3.2),神经网络求解微分方程中对于网络的参数进行多次的回归计算,将每一次的回归计算称为一个轮次。
作为优选的,先根据步骤(1)生成总体的训练数据集,送入神经网络进行训练,得到当前轮次下的损失函数Jepoch(θ),随后对损失函数进行反向传播求解网络的梯度,按照步骤(2)的方式选择当前轮次下的训练数据个数,随后在步骤(1)生成的总体训练数据集中随机抽取指定个数的数据,使用Adam优化器对网络的参数进行调整;训练的轮次达到epochs次时,结束网络的训练。
作为优选的,步骤(1)是基于正态分布累计密度函数的分层数据采样方式。显然正态分布函数的定义域是全空间内的,也就是基于跨定义域范围的数据采样方式。
作为优选的,为了保持网络的求解精确度,每个轮次中参与训练的数据选择不同的数据,通过判断每次反向传播时的梯度大小,自动选择线性退化函数,进而确定每次参与训练的数据量个数。
本发明的优点是:在步骤(1)中,通过正态分布累计密度函数进行的分层数据采样方式,取得的数据点在定义域范围内的分布更具有特征性,且具有跨定义域边界数据采样的特性。其中,跨定义域边界点的采样不仅有助于网络边界附近数据点的训练,同时在周期边界等条件中也具备更好的求解精度。
同时,网络训练中对于定义域中部的数据往往没有硬性的约束条件,因此,网络的精度存在一定的缺陷。而通过该步骤生成的总体训练数据集分布以中心数据点为主,只有少部分定义域外的数据参与训练。在保证网络中心位置精度更高的同时,也保证了边界数据点的求解精度,从而有效的提高了网络整体的训练精度。
如果对于一组相同的数据进行多次的反复训练,往往会带来局部最小值等其他干扰因素,这将会导致网络收敛速度变得极为缓慢,甚至是难以收敛的,也就是网络无法找到微分方程的隐式解u(r,t)。在步骤(2)中提出的训练数据动态调整方案,可以从一定程度上解决这类问题。
同时,每个训练轮次中的数据量个数将影响网络整体的收敛。如果将每次生成的所有数据集一次性全部带入网络参与计算,虽然在梯度更新时可以近似代表整个定义域的整体梯度方向,保证网络的优化方向是正确的。但在网络优化的中后期时,因为数据量过于庞大,数据间相互影响的问题将会显著的表现出来,进而导致网络的参数难以得到更新。而使用小批量的数据参与网络的训练中时,有助于突破局部最小值等干扰因素,提高求解的精度,但是网络的整体更新速度较慢,在前期无法表征网络整体的梯度下降方向。通过判断每次反向传播时的梯度大小,设置了自适应训练数据抽取方式,来选择每次参与训练的数据量个数。有助于突破局部最小值等干扰因素,加快网络的收敛,提高求解的精度。
通过神经网络求解微分方程,不仅对于微分方程形式的表征具有较高的简洁性与普适性,而且损失函数的构建相比于差分方程更为简单。在面对高维数据时,神经网络具有较好的效率,避免了传统数值解的维度爆炸问题。
下面结合说明书附图和具体实施例对本发明作进一步说明。
附图说明
图1为本发明实施例基于正态分布累计密度函数的分层数据采样方式示意图;
图2为本发明实施例总体训练数据集采样流程示意图;
图3为本发明实施例三种退化函数比较示意图;
图4为本发明实施例神经网络训练方式流程图。
具体实施方式
在本实施例的描述中,需要说明的是,如出现术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”、“前”、“后”等,其所指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此,不能理解为对本发明的限制。此外,如出现术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
参见图1、图2、图3和图4,本发明公开的一种用于求解微分方程的神经网络方法,包括以下步骤:
步骤(1),对定义域内每个维度的数据进行采样,获得训练的总体数据集;
步骤(2),每个轮次中的训练数据进行自动调整,得到每次轮次的训练数据;
步骤(3),根据微分方程的条件,构建物理信息神经网络,求解微分方程;
步骤(3.1),对于一般形式的偏微分方程
其中,r表示空间变量,且定义域为Ω,r是任意维度的空间变量,t表示时间变量,定义域在[0,T]的范围内;u(r,t)表示微分方程的隐式解,ut表示u(r,t)对时间t求偏导,为作用在函数u(r,t)上的非线性算符子集。
作为优选的,还包括步骤(3.2),神经网络求解微分方程中对于网络的参数进行多次的回归计算,将每一次的回归计算称为一个轮次。
作为优选的,先根据步骤(1)生成总体的训练数据集,送入神经网络进行训练,得到当前轮次下的损失函数Jepoch(θ),随后对损失函数进行反向传播求解网络的梯度,按照步骤(2)的方式选择当前轮次下的训练数据个数,随后在步骤(1)生成的总体训练数据集中随机抽取指定个数的数据,使用Adam优化器对网络的参数进行调整;训练的轮次达到epochs次时,结束网络的训练。
作为优选的,步骤(1)是基于正态分布累计密度函数的分层数据采样方式。显然正态分布函数的定义域是全空间内的,也就是基于跨定义域范围的数据采样方式。
具体方案如下:
对于整体的变量r,t,先构造每一个维度中的非线性跨边界累计密度函数,在这以正态分布累计密度函数为例。参与训练的数据大都分布与定义域范围内,仅少部分数据在定义域范围外。对于其中的一个维度x∈[X1,X2],根据正态分布的概率密度性质,保证x∈[X1,X2]=[μ-2σ,μ+2σ],也就是正态分布的具体参数满足:
构建上述正态分布的累计概率密度函数,就可以保证随机抽取的数据点有95.45%落在定义域范围内,其中有68.27%的数据位于[μ-σ,μ+σ]之内,即对于中央部分的数据也有保证了拥有较多的采样。同时对于[μ-3σ,μ+3σ]范围内的数据有99.73%的概率。
假设期望采样n个数据点,则将正态分布的累计密度函数,在[0,1]的范围内等分成n+1层。随后在这n+1层间进行随机采样n个数据点,获得累计密度函数所对应的变量x值。接下来就是对每个维度上抽取的数据进行随机混合,得到最终参与网络训练的所有数据点。
作为优选的,为了保持网络的求解精确度,每个轮次中参与训练的数据选择不同的数据,通过判断每次反向传播时的梯度大小,自动选择线性退化函数,进而确定每次参与训练的数据量个数。
具体实施方案如下:
规定epoch为网络训练的当前轮次,定义域范围为:[1,epochs],其中epochs是人为规定的总体网络训练轮次。sizeall表示训练的总体数据个数,由步骤一的方案生成。size表示当前参与网络训练的实际数据个数。设计以下三种退化函数:
牛顿冷却退化函数:size=sizealle-0.0014epoch;
1、如果网络反向传播的梯度大于10-2时,表面网络收敛速度快,还在向全局最小值靠拢,因此优先使用线性的退化方式。
2、如果网络反向传播的梯度小于10-2但大于10-5时,此时网络的训练速度变慢,可能以及落入全局最小值,网络出现难已收敛的现象,此时使用牛顿冷却的退化方式,逐渐减少每次参与训练的数据,通过小数据批次的收敛带动网络的优化,走出局部最小值。
3、如果网络反向传播的梯度小于10-5时,此时网络梯度太小,基本处于不可训练状态,此时应使用阻尼振荡的退化方式,也就是当前轮次中参与训练的数据量以震荡的形式变动,通过整体与局部的数据情况促进网络的收敛。
通过将当前轮次带入上述三种退化函数的公式,我们可以知道当前轮次下参与网络训练的具体数据个数size。随后在步骤一抽取的总体训练数据集中随机抽取size个数据,组成当前轮次下参与网络训练的具体数据。
作为优选的,步骤(3),先构建一个输入变量为n个,输出变量为1的神经网络。其中n由r,t整体的个数确定,如果空间变量r为一维变量,则整体变量个数为2个;如果空间变量r为三维变量,则整体变量个数为4个。定义网络接收输入的变量r,t后,输出为F(r,t),网络的参数为θ。
对于一般形式的偏微分方程,往往还带有微分方程的其他初始条件或边界条件。假定这些确定微分方程解的所有条件为:
H[u(r,t)]=0,Ψ[u(r,t)]=0
H[u(r,t)]与Ψ[u(r,t)]表示作用在函数u(r,t)上的不同非线性算符子集。
根据以上微分方程形式,构建损失函数为:
其中,Jepoch(θ)为训练轮次为epoch下的损失函数,Fi(ri,ti)表示网络对于第i组变量ri,ti的输出结果。size为每个训练轮次中参与训练的数据个数。
实际应用时,在步骤(1)中,通过正态分布累计密度函数进行的分层数据采样方式,取得的数据点在定义域范围内的分布更具有特征性,且具有跨定义域边界数据采样的特性。其中,跨定义域边界点的采样不仅有助于网络边界附近数据点的训练,同时在周期边界等条件中也具备更好的求解精度。
同时,网络训练中对于定义域中部的数据往往没有硬性的约束条件,因此,网络的精度存在一定的缺陷。而通过该步骤生成的总体训练数据集分布以中心数据点为主,只有少部分定义域外的数据参与训练。在保证网络中心位置精度更高的同时,也保证了边界数据点的求解精度,从而有效的提高了网络整体的训练精度。
如果对于一组相同的数据进行多次的反复训练,往往会带来局部最小值等其他干扰因素,这将会导致网络收敛速度变得极为缓慢,甚至是难以收敛的,也就是网络无法找到微分方程的隐式解u(r,t)。在步骤(2)中提出的训练数据动态调整方案,可以从一定程度上解决这类问题。
同时,每个训练轮次中的数据量个数将影响网络整体的收敛。如果将每次生成的所有数据集一次性全部带入网络参与计算,虽然在梯度更新时可以近似代表整个定义域的整体梯度方向,保证网络的优化方向是正确的。但在网络优化的中后期时,因为数据量过于庞大,数据间相互影响的问题将会显著的表现出来,进而导致网络的参数难以得到更新。而使用小批量的数据参与网络的训练中时,有助于突破局部最小值等干扰因素,提高求解的精度,但是网络的整体更新速度较慢,在前期无法表征网络整体的梯度下降方向。通过判断每次反向传播时的梯度大小,设置了自适应训练数据抽取方式,来选择每次参与训练的数据量个数。有助于突破局部最小值等干扰因素,加快网络的收敛,提高求解的精度。
通过神经网络求解微分方程,不仅对于微分方程形式的表征具有较高的简洁性与普适性,而且损失函数的构建相比于差分方程更为简单。在面对高维数据时,神经网络具有较好的效率,避免了传统数值解的维度爆炸问题。
Claims (5)
2.根据权利要求1所述的一种用于求解微分方程的神经网络方法,其特征在于:还包括步骤(3.2),神经网络求解微分方程中对于网络的参数进行多次的回归计算,将每一次的回归计算称为一个轮次。
3.根据权利要求2所述的一种用于求解微分方程的神经网络方法,其特征在于:先根据步骤(1)生成总体的训练数据集,送入神经网络进行训练,得到当前轮次下的损失函数Jepoch(θ),随后对损失函数进行反向传播求解网络的梯度,按照步骤(2)的方式选择当前轮次下的训练数据个数,随后在步骤(1)生成的总体训练数据集中随机抽取指定个数的数据,使用Adam优化器对网络的参数进行调整;训练的轮次达到epochs次时,结束网络的训练。
4.根据权利要求1或3所述的一种用于求解微分方程的神经网络方法,其特征在于:步骤(1)是基于正态分布累计密度函数的分层数据采样方式。
5.根据权利要求4所述的一种用于求解微分方程的神经网络方法,其特征在于:为了保持网络的求解精确度,每个轮次中参与训练的数据选择不同的数据,通过判断每次反向传播时的梯度大小,自动选择线性退化函数,进而确定每次参与训练的数据量个数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210030481.5A CN114385969A (zh) | 2022-01-12 | 2022-01-12 | 用于求解微分方程的神经网络方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210030481.5A CN114385969A (zh) | 2022-01-12 | 2022-01-12 | 用于求解微分方程的神经网络方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114385969A true CN114385969A (zh) | 2022-04-22 |
Family
ID=81202531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210030481.5A Pending CN114385969A (zh) | 2022-01-12 | 2022-01-12 | 用于求解微分方程的神经网络方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114385969A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687859A (zh) * | 2022-09-09 | 2023-02-03 | 郑州航空工业管理学院 | 一种偏微分方程数值求解系统 |
WO2023151201A1 (zh) * | 2022-02-10 | 2023-08-17 | 中山大学 | 一种快速灵活全纯嵌入式神经网络广域寻优训练方法 |
-
2022
- 2022-01-12 CN CN202210030481.5A patent/CN114385969A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023151201A1 (zh) * | 2022-02-10 | 2023-08-17 | 中山大学 | 一种快速灵活全纯嵌入式神经网络广域寻优训练方法 |
CN115687859A (zh) * | 2022-09-09 | 2023-02-03 | 郑州航空工业管理学院 | 一种偏微分方程数值求解系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114385969A (zh) | 用于求解微分方程的神经网络方法 | |
Farmer et al. | Predicting chaotic time series | |
Ancel | A quantitative model of the Simpson–Baldwin effect | |
Mangal et al. | Applied machine learning to predict stress hotspots II: Hexagonal close packed materials | |
CN112052936B (zh) | 基于生成对抗机制的强化学习探索方法及装置 | |
Kpotufe et al. | A tree-based regressor that adapts to intrinsic dimension | |
CN112801281A (zh) | 基于量子化生成模型和神经网络的对抗生成网络构建方法 | |
CN110991621A (zh) | 一种基于通道数搜索卷积神经网络的方法 | |
CN111242268A (zh) | 一种搜索卷积神经网络的方法 | |
Valdez et al. | A framework for interactive structural design exploration | |
CN117290721A (zh) | 数字孪生建模方法、装置、设备及介质 | |
Xin et al. | Exploration entropy for reinforcement learning | |
CN111260056B (zh) | 一种网络模型蒸馏方法及装置 | |
CN111353525A (zh) | 一种不均衡不完整数据集的建模及缺失值填补方法 | |
CN115540832A (zh) | 基于VGGNet的卫星测高海底地形校正方法及系统 | |
CN114861917A (zh) | 贝叶斯小样本学习的知识图谱推理模型、系统及推理方法 | |
Someya | Theoretical analysis of phenotypic diversity in real-valued evolutionary algorithms with more-than-one-element replacement | |
Davarynejad et al. | Accelerating convergence towards the optimal pareto front | |
Yang et al. | Unsupervised learning grouping-based resampling for particle filters | |
JP2010257344A (ja) | 視線位置推定方法、視線位置推定装置、プログラム、及び記録媒体 | |
CN112036979A (zh) | 评分预测方法、推荐方法、处理装置及存储介质 | |
Lam et al. | Improved Batching Strategy For Irregular Time-Series ODE | |
CN114925190B (zh) | 一种基于规则推理与gru神经网络推理的混合推理方法 | |
CN118013207A (zh) | 一种勘探作业数据采集和质检的管理方法及系统 | |
WO2023233931A1 (ja) | 設計支援装置及び設計支援方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |