第二十六周機器學習筆記:PINN求正反解求PDE文獻閱讀——正問題

第二十六周周報

  • 摘要
  • Abstract
  • 文獻閱讀《Physics-informed neural networks: A deep learning framework for solving forward and inverse problems involving nonlinear partial differential equations》
    • 1. 引言
    • 2. 問題的設置
    • 3.偏微分方程的數據驅動解
      • 3.1 連續時間模型
        • 3.1.1 Example:Schr?dinger方程(薛定諤方程)
      • 3.2 離散型時間模型
        • 3.2.1 Example:Allen-Cahn方程
  • 總結

摘要

本周周報主要詳細分析了一篇PINN求正反解的經典文獻,文獻主要講述了作者是如何利用PINN正反解求PDE的。之前的深度神經網絡在缺乏數據的情況下很容易發生過擬合現象且缺乏魯棒性。相比較之下,PINN的優勢在處理這些問題時,就只需要少量的訓練數據就可以訓練出一個精確度較高的預測模型。其中,PINN的核心思想是通過在損失函數中構造物理規律的殘差項,來對網絡的預測值進行限制,然后再通過自動微分、反向傳播技術使其不斷優化模型,最終使得深度神經網絡的預測的值即有精度的同時又符合當下的物理規律。PINN模型它不僅能夠進行傳統意義上的監督學習任務,還能夠在訓練過程中強制遵守物理定律,特別是由一般非線性偏微分方程(PDEs)描述的物理定律。同時作者也提出了PINN可能會遇到的問題即,處理高維問題中可能會有點吃力,雖然這對一個或兩個空間維度的問題沒有造成重大問題,但它可能會在高維問題中引入嚴重的瓶頸,因為在高維空間的情況下,偏微分方程所需的搭配點總數將呈指數增長。

Abstract

The weekly report this week provided a detailed analysis of a classic literature on PINN for both forward and inverse solutions. The literature primarily discusses how the authors utilized PINN to solve PDE. Traditional deep neural networks are prone to overfitting and lack robustness in the absence of data. In contrast, PINN offer significant advantages in handling these issues, requiring only a small amount of training data to train a highly accurate predictive model. The core idea of PINN is to construct residual terms of physical laws in the loss function to constrain the network’s predictions, and then to continuously optimize the model through automatic differentiation and backpropagation techniques, ultimately ensuring that the deep neural network’s predictions are not only accurate but also comply with the prevailing physical laws. PINN models are not only capable of performing traditional supervised learning tasks but also enforce adherence to physical laws during training, especially those described by general nonlinear partial differential equations (PDE).

文獻閱讀《Physics-informed neural networks: A deep learning framework for solving forward and inverse problems involving nonlinear partial differential equations》

在摘要中,這篇文章首先介紹了Physics-Informed Neural Networks (PINNs) 是一種特殊的神經網絡,它不僅能夠進行傳統意義上的監督學習任務,還能夠在訓練過程中強制遵守物理定律,特別是由一般非線性偏微分方程(PDEs)描述的物理定律。
論文解決了兩類問題:

  1. 數據驅動的偏微分方程(PDEs)求解(已知模型和條件,目的是求解模型)
  2. 數據驅動的偏微分方程發現(不確定模型和條件,目的是確認模型)

為了解決這兩類問題,根據數據的特性提出了兩種算法(連續型和離散型),每個算法都有其自身的應用場景和優勢

最后通過一系列經典問題來對框架的有效性進行驗證。
在這里插入圖片描述

1. 引言

隨著深度學習和機器學習的發展,計算所需的資源和訓練所需的數據集數量都得到了極大的提升。
但是在研究一些復雜的物理問題、生物工程問題中或者是一些冷門的問題上,可獲取的數據實在難得,想要獲取數據就要付出高昂的成本,對于研究來說是非常耗時耗力的。

在這種小數據體制下,多數機器學習技(深度學習、卷積神經網絡等) ,模型在缺乏數據的情況下很容易發生過擬合現象,缺乏魯棒性。

在這種情況下訓練一個機器學習的模型,效果肯定是不好的。但是對于一些物理和生物工程問題,我們有大量的已經驗證過的知識目前還沒有被機器學習實踐所利用。(例如一些物理公式)
這些先驗信息都可以作為正則化代理(regularization agent),將可接受的解空間限制在可管理的大小。

PINN的核心思想其實就是把一種將物理定律和約束整合到神經網絡訓練過程的損失函數中。
這種方法通過在損失函數中加入物理方程的約束,使得神經網絡的預測不僅依賴于數據,還受到物理規律的約束。

例如,在流體動力學問題中,可以通過加入這樣的約束去過濾掉違反質量守恒原理的且流動解。將這種結構化信息編碼到學習算法中,可以放大算法所看到的數據的信息內容,使其能夠快速地將自己導向正確的解決方案,所以即使數據量稀少,也能夠很好地進行泛化。
在這里插入圖片描述
在這里作者提到了利用結構化先驗信息來構建數據高效且物理信息豐富的學習器,解決線性問題時的表現非常出色,例如,作者使用了高斯過程回歸來設計針對特定線性算子的函數表示,并且能夠準確推斷解決方案并為數學物理中的幾個原型問題提供不確定的估算。
但是其如果應用在在非線性問題中存在著一些問題:

  1. 第一個問題是作者在對時間上非線性項進行線性化,這限制了所提方法的應用范圍到離散時間領域,且強非線性情況下不利于預測的準確性。
  2. 第二個問題是高斯過程回歸的貝葉斯特性要自己設置先驗概率,這可能會限制模型的表示能力,并在非線性問題會降低模型的魯棒性。

拓展:
剛剛提到了到正則代理,就想起了正則化,正則化知識的復習:
正則化,是用于防止模型過擬合,提高模型的泛化能力。PINN看似跟正則化很像實際上卻不是正則化。
正則化通過在模型的訓練過程中(通常在損失函數/代價函數中)添加一個懲罰項來實現,這個懲罰項通常與模型的復雜度相關。

比如在線性回歸問題,增加了懲罰項的代價函數如下:
J ( θ ) = 1 2 m [ ∑ i = 1 m ( h θ ( x ( i ) ) ? y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 ] J(\theta)=\frac{1}{2 m}\left[\sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}+\lambda \sum_{j=1}^{n} \theta_{j}^{2}\right] J(θ)=2m1?[i=1m?(hθ?(x(i))?y(i))2+λj=1n?θj2?]

λ ∑ j = 1 n θ j 2 就是懲罰項 \lambda \sum_{j=1}^{n} \theta_{j}^{2}就是懲罰項 λj=1n?θj2?就是懲罰項

以下線性回歸和邏輯回歸的正則化:
在這里插入圖片描述

2. 問題的設置

  • 為了解決上述非線性而產生的問題,作者使用了深度神經網絡(DNN),因為其通過不斷的疊加能夠擬合出任何復雜的非線性模型,所以其能夠很好的解決非線性的問題,而且其不需要事先做出線性化或假設出局部時間步進。
    在這里插入圖片描述
  • 此外,作者還使用自動微分技術(反向傳播)對神經網絡對輸入坐標和模型參數進行微分,從而創建出物理信息神經網絡(PINNs),至于PINN的特性這里就不再贅述了。
    在這里插入圖片描述
    作者的目標是為建模和計算建立一個新的模型,將深度學習與數學物理的發展相結合。
    作者使用了相對簡單的前饋神經網絡架構,其具有雙曲正切激活函數,且損失函數沒有額外的正則化(例如L1/L2懲罰、dropout等)。
    所以,作者將將論文分為兩部分:
  1. 介紹他們在數據驅動的偏微分方程解(即求模型的解) 的工作。
  2. 介紹他們數據驅動的偏微分方程發現(即如何確認模型) 的工作。
    在這里插入圖片描述
    作者提出的是一般形式的偏微分方程,這個方程涵蓋了包括守恒定律、擴散過程、平流-擴散-反應系統和動力學方程在內的數學物理中的廣泛問題。
    方程如下:在這里插入圖片描述
    其中,作者使用一維Burgers方程來舉例
    在這里插入圖片描述
    什么是一維Burgers方程呢?
    在這里插入圖片描述
    所以當一維Burgers方程對應于作者提出的一般形式的偏微分方程有如下關系:
    U t + N [ u ; λ ] = U t + λ 1 u u x ? λ 2 u x x ,下標表示時間或空間的偏導數。 U_{t}+N[u;\lambda] = U_{t}+\lambda_1 u u_x - \lambda_2 u_{xx} ,下標表示時間或空間的偏導數。 Ut?+N[u;λ]=Ut?+λ1?uux??λ2?uxx?,下標表示時間或空間的偏導數。
    當 λ 1 = 1 和 λ 2 = ν 時, U t + N [ μ , λ ] = 0 就變回了標準的一維 B u r g e r s 方程。 當 λ _1 =1 和 λ _2=ν 時,U_{t}+\mathcal{N}[\mu, \lambda]=0就變回了標準的一維Burgers方程。 λ1?=1λ2?=ν時,Ut?+N[μ,λ]=0就變回了標準的一維Burgers方程。

對于測量出系統的噪聲值,作者對此提出了兩個問題。

  1. 第一個問題是偏微分方程的數據驅動解法
    即正問題:方程和定解條件均已知是求解模型,除初始/邊界外,解u未知,目的是求解模型
  2. 第二個問題是偏微分方程的數據驅動發現
    即反問題:方程或定解條件中存有目的是確定模型未知因素,通常有內點處u的信息,目的是確定模型

3.偏微分方程的數據驅動解

3.1 連續時間模型

作者通過上面提到的一般形式的偏微分方程,并通過例子來解釋方程的適用性

u t + N [ u ] = 0 , x ∈ Ω , t ∈ [ 0 , T ] u_{t}+\mathcal{N}[u]=0, x \in \Omega, t \in[0, T] ut?+N[u]=0,xΩ,t[0,T]

然后作者定義f(t, x)(一般叫做殘差項) 建立了一個等式為: f : = u t + N [ u ] f:=u_{t}+\mathcal{N}[u] f:=ut?+N[u]
深度神經網絡逼近u(t, x)這個假設與方程f(t,x)一起得到了一個物理信息神經網絡
該網絡可以通過使用自動微分(反向傳播)對函數組成進行微分的鏈式法則推導出來,其參數與表示u(t, x)的網絡相同。
盡管由于微分算子n的作用而具有不同的激活函數,但神經網絡u(t, x)和f(t, x)之間的共享參數可以通過最小化均方誤差損失來學習

作者給出了其損失函數的方程,可以看到作者將其將算是函數分為了兩部分:

  1. 計算真實值與網絡預測值的誤差項MESu(對應于初始數據和邊界數據)
  2. 計算預測值與物理規律的誤差項MESf(在有限的一組搭配點所施加的結構)
    Loss? = M S E u + M S E f = 1 N u ∑ i = 1 N u ∣ u ^ ( t u i , x u i ) ? u i ∣ 2 + 1 N f ∑ i = 1 N f ∣ f ( t f i , x f i ) ∣ 2 \color{red} \text { Loss }={M S E_{u}+M S E_{f}}=\frac{1}{N_{u}} \sum_{i=1}^{N_{u}}\left|\hat{u}\left(t_{u}^{i}, \mathbf{x}_{u}^{i}\right)-u^{i}\right|^{2}+\frac{1}{N_{f}} \sum_{i=1}^{N_{f}}\left|f\left(t_{f}^{i}, \mathbf{x}_{f}^{i}\right)\right|^{2} ?Loss?=MSEu?+MSEf?=Nu?1?i=1Nu?? ?u^(tui?,xui?)?ui ?2+Nf?1?i=1Nf?? ?f(tfi?,xfi?) ?2
    在這里插入圖片描述
    其中參數的含義解釋如下:
    { t u i , x u i , u i } i = 1 N u \left\{t_{u}^{i}, x_{u}^{i}, u^{i}\right\}_{i=1}^{N_{u}} {tui?,xui?,ui}i=1Nu??表示初始和邊界訓練數據。
    在這里插入圖片描述
    ( t f i , x f i ) (t_{f}^{i}, \mathbf{x}_{f}^{i}) (tfi?,xfi?)表示的是用于強制執行物理規律的配置點。
    在這里插入圖片描述
    配置點是什么?
    如論文中所提到的, ( t f i , x f i ) (t_{f}^{i}, \mathbf{x}_{f}^{i}) (tfi?,xfi?)被稱為配置點。一開始看到配置點這個概念,我十分的困惑,于是便去探究這個概念是什么?
    配置點:配置點是指那些網絡需要在這些點上進行預測的特定時間和空間位置,用于確保網絡的預測在這些點上滿足物理方程,而不是基于實際觀測數據。
    簡單來說,就是在變量定義域內(如x∈[-1,1],t∈[0,Π/2]),我們就需要在定義域內采樣變量,作為配置點。
    配置點的采樣也是需要具體問題進行具體分析,比如一些問題中,某些點(如:邊界條件上的點)的影響比較大,我們就需要對這些點進行采樣作為配置點,來驗證.

從論文給出的損失函數中有這么一項: 1 N f ∑ i = 1 N f ∣ f ( t f i , x f i ) ∣ 2 \frac{1}{N_{f}} \sum_{i=1}^{N_{f}}\left|f\left(t_{f}^{i}, \mathbf{x}_{f}^{i}\right)\right|^{2} Nf?1?i=1Nf?? ?f(tfi?,xfi?) ?2,其被稱為殘差項,這也是PINN的核心所在,殘差項要盡可能的趨于0。
其解釋如下:
在這里插入圖片描述
補充拓展:
什么是初始條件和邊界條件?
剛剛在Loss function中,提到了MSEu中的數據是表示初始和邊界訓練數據,那到底初始和邊界的概念是什么呢?
在這里插入圖片描述
初始條件和邊界條件提供了問題約束,使得DNN的預測結果不僅滿足物理方程,而且符合問題的實際情況。如果沒有初始條件和邊界條件,PDE的解將不唯一,網絡的預測也將失去意義。

復習:
說到殘差項,我想起了之前學習深度學習時候,提到的一個殘差結構(其用于防止梯度爆炸和梯度消失),我就想這兩個概念是不是有聯系,但其實它們之間是屬于兩個概念,區別如下:
在這里插入圖片描述

3.1.1 Example:Schr?dinger方程(薛定諤方程)

作者通過利用Schr?dinger方程(薛定諤方程)例子,來突出作者方法處理周期邊界條件、復值解以及控制偏微分方程中不同類型非線性的能力。

非線性薛定諤方程是一個經典的場方程,用于研究量子力學系統
其包括光纖和/或波導中的非線性波傳播、玻色-愛因斯坦凝聚態和等離子體波。
在光學中,非線性項來自于給定材料的折射率對強度的依賴。
對于玻色-愛因斯坦凝聚態,非線性項是相互作用的N體系統的平均場相互作用的結果。

1. Schr?dinger方程(薛定諤方程)方程,初始條件、邊界條件如下:
i h t + 0.5 h x x + ∣ h ∣ 2 h = 0 , x ∈ [ ? 5 , 5 ] , t ∈ [ 0 , π / 2 ] , 其中 h ( t , x ) 是復值解。 周期性邊界條件為: h ( 0 , x ) = 2 sech ? ( x ) , h ( t , ? 5 ) = h ( t , 5 ) , h x ( t , ? 5 ) = h x ( t , 5 ) , \begin {array}{l}i h_{t}+0.5 h_{x x}+|h|^{2} h=0, \quad x \in[-5,5], \quad t \in[0, \pi / 2],其中 h(t,x) 是復值解。 \\周期性邊界條件為: \\h(0, x)=2 \operatorname{sech}(x), \\h(t,-5)=h(t, 5), \\h_{x}(t,-5)=h_{x}(t, 5), \end{array} iht?+0.5hxx?+h2h=0,x[?5,5],t[0,π/2],其中h(t,x)是復值解。周期性邊界條件為:h(0,x)=2sech(x),h(t,?5)=h(t,5),hx?(t,?5)=hx?(t,5),?
補充:什么是復值解?
在這里插入圖片描述
2. 作者將殘差項定義 f ( t , x ) f(t, x) f(t,x)為:
f : = i ? ? h ? t + 0.5 ? 2 h ? x 2 + ∣ h ∣ 2 h f := i\hbar \frac{\partial h}{\partial t} + 0.5 \frac{\partial^2 h}{\partial x^2} + |h|^2 h f:=i??t?h?+0.5?x2?2h?+h2h
作者在 h(t, x)上放置一個復值神經網絡先驗。如果 u 表示 h 的實部,v 表示虛部,那么在 h ( t , x ) = [ u ( t , x ) v ( t , x ) ] h(t, x) =[u(t, x) \quad v(t, x)] h(t,x)=[u(t,x)v(t,x)] 上放置一個多輸出神經網絡先驗。
(由于復值解h(t,x) 被分解為實部和虛部,作者設計了一個神經網絡,它有兩個輸出:一個用于實部 u(t,x),另一個用于虛部 v(t,x)。這種網絡被稱為多輸出神經網絡。)

3. 作者將損失函數定義如下:
M S E = M S E 0 + M S E b + M S E f M S E 0 是初始數據的損失 ; M S E b 強制執行周期性邊界條件的損失 M S E f 網絡預測值中采樣配置點在薛定諤方程的損失 M S E 0 = 1 N 0 ∑ i = 1 N 0 ∣ h ( 0 , x 0 i ) ? h 0 i ∣ 2 , M S E b = 1 N b ∑ i = 1 N b ( ∣ h i ( t b i , ? 5 ) ? h i ( t b i , 5 ) ∣ 2 + ∣ h x i ( t b i , ? 5 ) ? h x i ( t b i , 5 ) ∣ 2 ) , M S E f = 1 N f ∑ i = 1 N f ∣ f ( t f i , x f i ) ∣ 2 MSE=MSE_{0}+MSE_{b}+MSE_{f} \\ MSE_0 是初始數據的損失; \\ MSE_b強制執行周期性邊界條件的損失 \\ MSE_f網絡預測值中采樣配置點在薛定諤方程的損失 \\ \begin{array} {l}MSE_{0}=\frac{1}{N_{0}} \sum_{i=1}^{N_{0}}\left|h\left(0, x_{0}^{i}\right)-h_{0}^{i}\right|^{2}, \\ MSE_{b}=\frac{1}{N_{b}} \sum_{i=1}^{N_{b}}\left(\left|h^{i}\left(t_{b}^{i},-5\right)-h^{i}\left(t_{b}^{i}, 5\right)\right|^{2}+\left|h_{x}^{i}\left(t_{b}^{i},-5\right)-h_{x}^{i}\left(t_{b}^{i}, 5\right)\right|^{2}\right), \\ MSE_{f}=\frac{1}{N_{f}} \sum_{i=1}^{N_{f}}\left|f\left(t_{f}^{i}, x_{f}^{i}\right)\right|^{2} \end{array} MSE=MSE0?+MSEb?+MSEf?MSE0?是初始數據的損失;MSEb?強制執行周期性邊界條件的損失MSEf?網絡預測值中采樣配置點在薛定諤方程的損失MSE0?=N0?1?i=1N0?? ?h(0,x0i?)?h0i? ?2,MSEb?=Nb?1?i=1Nb??( ?hi(tbi?,?5)?hi(tbi?,5) ?2+ ?hxi?(tbi?,?5)?hxi?(tbi?,5) ?2),MSEf?=Nf?1?i=1Nf?? ?f(tfi?,xfi?) ?2?

  1. 為了驗證PINN方法的精度,作者使用傳統的譜方法模擬了薛定諤方程,創建了一個高分辨率的數據集。
    作者從初始狀態 h ( 0 , x ) = 2 sech ( x ) h(0, x) = 2 \text{sech}(x) h(0,x)=2sech(x)開始,假設周期性邊界條件 h ( t , ? 5 ) = h ( t , 5 ) h(t, -5) = h(t, 5) h(t,?5)=h(t,5) h x ( t , ? 5 ) = h x ( t , 5 ) h_x(t, -5) = h_x(t, 5) hx?(t,?5)=hx?(t,5),使用Chebfun軟件包,通過256模式的譜傅里葉離散化和Fourth-order explicit Runge–Kutta temporal integrator?,時間步長為 Δ t = π / 2 × 1 0 ? 6 \Delta t = \pi/2 \times 10^{-6} Δt=π/2×10?6,積分到最終時間 t = π / 2 t = \pi/2 t=π/2

     離散傅里葉變換(Discrete Fourier Transform,DFT)傅里葉分析方法是信號分析的最基本方法傅里葉變換是傅里葉分析的核心,通過它把信號從時間域變換到頻率域,進而研究信號的頻譜結構和變化規律。Fourth-order explicit Runge–Kutta temporal integrator?是一種常用的數值方法用于求解常微分方程(ODEs)的近似解。該方法通過迭代計算來逼近真實解,具有較高的精度和較好的穩定性。
    

在數據的設置方面,作者所觀察到的都是 { x 0 i , h 0 i } i = 1 N 0 \{x_0^i, h_0^i\}_{i=1}^{N_0} {x0i?,h0i?}i=1N0??在時間t = 0時潛在函數h(t, x)的測量值。在配置點采樣中,作者設置 N f = 20 , 000 N_f =20,000 Nf?=20,000 個隨機采樣的配置點用于在解的域內強制執行方程: f : = i ? ? h ? t + 0.5 ? 2 h ? x 2 + ∣ h ∣ 2 h f := i\hbar \frac{\partial h}{\partial t} + 0.5 \frac{\partial^2 h}{\partial x^2} + |h|^2 h f:=i??t?h?+0.5?x2?2h?+h2h

這些點是通過空間填充拉丁超立方抽樣策略生成的,這是一種確保采樣點在空間中均勻分布的方法

?拉丁超立方抽樣(Latin Hypercube Sampling,簡稱LHS)
是一種從多元參數分布中近似隨機抽樣的方法,屬于分層抽樣技術?。

在數據集的設置中,訓練集由 N 0 = 50 N_0=50 N0?=50 個從高分辨率數據集中隨機抽取的數據點和 N b = 50 N_b=50 Nb?=50 個用于強制執行周期性邊界條件的配置點組成。

在神經網絡結構上,作者使用一個5層深的神經網絡,每層有100個神經元,激活函數為雙曲正切函數,來聯合表示潛在函數 h ( t , x ) = [ u ( t , x ) v ( t , x ) ] h(t, x) = [u(t, x) \ v(t, x)] h(t,x)=[u(t,x)?v(t,x)]

實驗結果解讀如下:

  1. 圖中的顏色代表了函數 ∣h(t,x)∣ 的幅度,顏色條(color bar)顯示了幅度值的范圍,從0.5到3.5。顏色從淺黃色到深藍色,表示幅度從小到大。
  2. 橫軸表示空間空間x的范圍,從-5到5。
  3. 縱軸表示時間時間t的范圍,從0到1.4。
  4. 圖中的黑色叉號×表示用于訓練物理信息神經網絡(PINN)的150個數據點。
    這些數據點是初始狀態 h(0,x) 的測量值。
  5. 圖中的虛線可能表示了特定的時間點,這些時間點可能是用于評估或比較預測解與精確解的時間點。

圖中的顏色變化顯示了PINN預測的薛定諤方程解隨時間和空間的演變。
從圖中可以看出,預測的解在 x=0 附近有一個明顯的幅度變化,這是薛定諤方程的波函數在該區域的干涉或相位變化。且波形在 x 軸中心附近較為集中,隨著時間的推移,波形可能會發生擴散或干涉現象,這是量子力學中波函數的典型行為。
在這里插入圖片描述
此外,作者給出了不同時刻t = 0.59, 0.79, 0.98的精確解和預測解之間的比較。僅使用少量初始數據,物理信息的神經網絡就可以準確地捕獲Schr?dinger方程的復雜非線性行為。
在這里插入圖片描述

作者隨后提出了PINN可能會遇到的問題即,處理高維問題中可能會有點吃力,雖然這對一個或兩個空間維度的問題沒有造成重大問題,但它可能會在高維問題中引入嚴重的瓶頸,因為全局執行物理通知約束**(即,在我們的情況下是偏微分方程)所需的搭配點總數將呈指數增長。)**
此外,我還去搜索了一下PINN解PDE會遇到的困難:

3.2 離散型時間模型

此外,作者還針對離散型數據提出了一般形式的模型:
在這里插入圖片描述
在離散型的時間模型中作者使用了Runge-Kutta方法

Runge-Kutta方法:是一種用于求解常微分方程的數值方法
它通過在每個時間步長內進行多個中間步驟(或階段)來提高求解的精度。
作者提到的是具有 q 階的一般形式的Runge-Kutta方法。

u n + c i = u n ? Δ t ∑ j = 1 q a i j N [ u n + c j ] , i = 1 , … , q u n + 1 = u n ? Δ t ∑ j = 1 q b j N [ u n + c j ] \begin{array}{l}u^{n+c_i} = u^n - \Delta t \sum_{j=1}^{q} a_{ij} \mathcal{N}[u^{n+c_j}], \quad i = 1, \ldots, q \\ u^{n+1} = u^n - \Delta t \sum_{j=1}^{q} b_j \mathcal{N}[u^{n+c_j}] \end{array} un+ci?=un?Δtj=1q?aij?N[un+cj?],i=1,,qun+1=un?Δtj=1q?bj?N[un+cj?]?
這是作者提出Runge-Kutta方法的一般形式,其用于數值求解常微分方程。
其中 u n u^n un 表示在時間步 n n n 的解, Δ t \Delta t Δt 是時間步長, q q q 是階段數, a i j a_{ij} aij? b j b_j bj? 是方法的權重系數, N \mathcal{N} N 表示微分方程的非線性部分。

其可以等價的表示為: u n = u i n , i = 1 , … , q , u n = u q + 1 n \begin{array}{l}u^{n}=u_{i}^{n}, \quad i=1, \ldots, q, \\u^{n}=u_{q+1}^{n}\end{array} un=uin?,i=1,,q,un=uq+1n??

作者說明了在Runge-Kutta方法中,當前時間步的解 u n u^n un 可以由前一個時間步的解 u n + c j u^{n+c_j} un+cj?通過加權和的方式計算得出。
其中 u i n : = u n + c i + Δ t ∑ j = 1 q a i j N [ u n + c j ] , i = 1 , … , q , u q + 1 n : = u n + 1 + Δ t ∑ j = 1 q b j N [ u n + c j ] . \begin{array}{l}u_{i}^{n}:=u^{n+c_{i}}+\Delta t \sum_{j=1}^{q} a_{i j} \mathcal{N}\left[u^{n+c_{j}}\right], \quad i=1, \ldots, q, \\u_{q+1}^{n}:=u^{n+1}+\Delta t \sum_{j=1}^{q} b_{j} \mathcal{N}\left[u^{n+c_{j}}\right] .\end{array} uin?:=un+ci?+Δtj=1q?aij?N[un+cj?],i=1,,q,uq+1n?:=un+1+Δtj=1q?bj?N[un+cj?].?

然后作者使用一個多輸出神經網絡來預測 u n + c 1 ( x ) u^{n+c_1}(x) un+c1?(x) u n + 1 ( x ) u^{n+1}(x) un+1(x) 的值,又通過將神經網絡的預測結果與方程 u i n : = u n + c i + Δ t ∑ j = 1 q a i j N [ u n + c j ] , i = 1 , … , q u q + 1 n : = u n + 1 + Δ t ∑ j = 1 q b j N [ u n + c j ] . \begin{array}{l}u_{i}^{n}:=u^{n+c_{i}}+\Delta t \sum_{j=1}^{q} a_{i j} \mathcal{N}\left[u^{n+c_{j}}\right], \quad i=1, \ldots, q\\u_{q+1}^{n}:=u^{n+1}+\Delta t \sum_{j=1}^{q} b_{j} \mathcal{N}\left[u^{n+c_{j}}\right] .\end{array} uin?:=un+ci?+Δtj=1q?aij?N[un+cj?],i=1,,quq+1n?:=un+1+Δtj=1q?bj?N[un+cj?].?結合,得到一個物理信息神經網絡,這個網絡以變量 x x x 作為輸入,并輸出 u 1 n ( x ) u_1^n(x) u1n?(x) u q + 1 n ( x ) u_{q+1}^n(x) uq+1n?(x)

3.2.1 Example:Allen-Cahn方程

作者通過引用Allen-Cahn方程,強調提出的離散時間模型處理控制偏微分方程中不同類型非線性的能力。Allen-Cahn方程是一個在反應擴散系統中描述多組分合金系統中相分離過程的偏微分方程。用于描述相分離過程,包括有序-無序轉變。方程如下:
u t ? 0.0001 u x x + 5 u 3 ? 5 u = 0 , x ∈ [ ? 1 , 1 ] , t ∈ [ 0 , 1 ] u_t - 0.0001 u_{xx} + 5u^3 - 5u = 0, \quad x \in [-1, 1], \quad t \in [0, 1] ut??0.0001uxx?+5u3?5u=0,x[?1,1],t[0,1]

初始條件為: u ( 0 , x ) = x 2 cos ? ( π x ) u(0, x) = x^2 \cos(\pi x) u(0,x)=x2cos(πx)
周期性邊界條件為: u ( t , ? 1 ) = u ( t , 1 ) u x ( t , ? 1 ) = u x ( t , 1 ) \begin{array}{l}u(t,-1)=u(t, 1) \\u_{x}(t,-1)=u_{x}(t, 1)\end{array} u(t,?1)=u(t,1)ux?(t,?1)=ux?(t,1)?

在網絡模型的設計中,作者使用了一個具有4個隱藏層和每層200個神經元的離散時間物理信息神經網絡。網絡的輸出層預測了101個作者感興趣的量,對應于100個Runge-Kutta階段 u n + c i ( x ) u^{n+c_i}(x) un+ci?(x)和最終時間的解 u n + 1 ( x ) u^{n+1}(x) un+1(x)

實驗結果如下:
從 $ = 0.1$的平滑初始數據開始,可以在單步時間步長內預測 t = 0.9 t = 0.9 t=0.9 的幾乎不連續解,相對 L 2 L_2 L2?誤差為 6.99 × 1 0 ? 3 6.99 \times 10^{-3} 6.99×10?3
在這里插入圖片描述
在這里插入圖片描述
作者表示通過使用PINN和Runge-Kutta方法,可以在保持穩定性和高預測精度的同時,使用大時間步長來解決復雜的時空問題。

總結

在本周的周報中,我精讀了一篇關于物理信息神經網絡(PINNs)的經典文獻,文獻講述了PINN在求解正反問題中涉及非線性偏微分方程(PDEs)的應用。PINNs作為一種特殊的深度學習框架優勢在于,即使在數據稀缺的情況下,也能通過物理規律配合少量訓練數據訓練出高精度的預測模型,從而避免了傳統深度神經網絡在數據不足時容易發生的過擬合現象和缺乏魯棒性的問題。
文獻中提出的PINNs核心思想是在損失函數中加入物理規律的殘差項,通過自動微分和反向傳播技術不斷優化模型,使得網絡預測的值既準確又符合物理規律。這種方法將物理定律和約束整合到神經網絡訓練過程中,使得神經網絡的預測不僅依賴于數據,還受到物理規律的約束,從而提高了模型的預測精準度和魯棒性。作者通過一系列經典問題驗證了PINNs框架的有效性,并提出了兩種算法(連續型和離散型)來解決數據驅動的PDEs求解和發現問題,每種算法都有其特定的應用場景和優勢。同時作者也在各種例子中,展示了如何構建通過初始條件、周期性邊界條件、物理方程來構建PINN的loss function,特別是在Schr?dinger方程和Allen-Cahn方程的應用中,PINN展現了求解方程解u的能力。
這一周大致把PINN的正問題弄懂了,主要物理基礎比較薄弱,看公式的時候需要不斷地進行課外學習科普,下一周計劃繼續閱讀文獻把文獻的如何確認模型的部分(PINN求反問題)弄懂的然后再對實驗的內容進行復現,理解論文中PINN的代碼部分,從而更深入的理解PINN。之后打算結合水文方向的論文一起看,學習一下PINN在水文方面的預測應用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/64088.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/64088.shtml
英文地址,請注明出處:http://en.pswp.cn/web/64088.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【安全編碼】Web平臺如何設計防止重放攻擊

我們先來做一道關于防重放的題,答案在文末 防止重放攻擊最有效的方法是( )。 A.對用戶密碼進行加密存儲使用 B.使用一次一密的加密方式 C.強制用戶經常修改用戶密碼 D.強制用戶設置復雜度高的密碼 如果這道題目自己拿不準,或者…

中關村科金智能客服機器人如何解決客戶個性化需求與標準化服務之間的矛盾?

客戶服務的個性化和標準化之間的矛盾一直是一個挑戰。一方面,企業需要提供標準化的服務以保持運營效率和成本控制;另一方面,為了提升客戶滿意度和忠誠度,企業又必須滿足客戶的個性化需求。為此,中關村科金推出了智能客…

OPPO Android面試題及參考答案 (上)

性能優化方面,講一下圖片內存占用計算,以及如何避免持有不必要的引用。 在 Android 中,計算圖片內存占用主要與圖片的尺寸和像素格式有關。對于一張位圖(Bitmap),其內存占用大小可以通過以下方式估算:內存占用 = 圖片寬度 圖片高度 每個像素占用字節數。例如,常見的 …

Agent 案例分析:金融場景中的智能體-螞蟻金服案例(10/30)

Agent 案例分析:金融場景中的智能體 —螞蟻金服案例 一、引言 在當今數字化時代,金融行業正經歷著深刻的變革。隨著人工智能技術的飛速發展,智能體(Agent)在金融場景中的應用越來越廣泛。螞蟻金服作為金融科技領域的…

ElasticSearch 的工作原理

理解 ElasticSearch 的工作原理需要從索引、搜索、以及其背后的核心機制幾個方面來探討。 1. ElasticSearch 是什么? ElasticSearch 是一個分布式搜索和分析引擎,適用于各種類型的數據,例如文本、數值、地理位置、結構化或非結構化數據。它基…

STM32F407 | Embedded IDE01 - vscode搭建Embedded IDE開發環境(支持JLINK、STLINK、DAPLINK)

導言 Embedded IDE官網:https://em-ide.com/docs/intro 我猜肯定有部分人使用SI Keil開發STM32項目,也有vscode Keil開發STM32程序。SI或vscode編寫代碼,然后切換Keil編譯、下載、調試程序。有一段時間,我也是這么干的。但是,程…

光譜相機的工作原理

光譜相機的工作原理主要基于不同物質對不同波長光的吸收、反射和透射特性存在差異,以下是其具體工作過程: 一、光的收集 目標物體在光源照射下,其表面會對光產生吸收、反射和透射等相互作用。光譜相機的光學系統(如透鏡、反射鏡…

ThinkPHP接入PayPal支付

ThinkPHP 5接入PayPal 支付,PayPal的流程是服務器請求Paypal的接口下單(需要傳訂單id/支付成功的重定向地址/支付失敗的重定向地址),接會返回一個支付地址,項目服務器把地址返給用戶,用戶打開鏈接登錄Paypa…

stream流的toMap

假設有這么一個類: import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors;public class Student {private int id;private String name;public Student(int id, String name) {this.id id;…

html + css 淘寶網實戰

之前有小伙伴說,淘寶那么牛逼你會寫代碼,能幫我做一個一樣的淘寶網站嗎,好呀,看我接下來如何給你做一個淘寶首頁。hahh,開個玩笑。。。學習而已。 在進行html css編寫之前 先了解下網頁的組成和網頁元素的尺寸吧 1.網頁的組成 …

神經網絡、深度學習、卷積神經網絡

好的!我會盡量詳細且易懂地為你解釋這些概念,并在最后用簡單直白的語言總結一下。 1. 神經網絡思想 神經網絡是靈感來自于生物大腦神經元的工作原理,是一種模仿人類大腦處理信息的方式來設計的數學模型。我們的大腦由億萬個神經元組成&…

設計模式01:創建型設計模式之單例、簡單工廠的使用情景及其基礎Demo

一、單例模式 1.情景 連接字符串管理 2.好處 代碼簡潔:可全局訪問連接字符串。性能優化:一個程序一個連接實例,避免反復創建對象(連接)和銷毀對象(連接)。線程安全:連接對象不會…

【不太正常的題】LeetCode.232:用棧的函數接口實現隊列

🎁個人主頁:我們的五年 🔍系列專欄:初階數據結構刷題 🎉歡迎大家點贊👍評論📝收藏?文章 🚗 1.問題描述: 題目中說了只能使用兩個棧實現隊列,并且只能使用…

Linux搭建text-generation-webui框架,安裝通義千問大模型,開放對外api,voxta測試對話圖文教程

目錄 text-generation-webui部分 開放對外API 通義千問部分 遠程API對話測試部分 text-generation-webui部分 本來不想發這個文章的,但是自己部署的時候看了挺多人的帖子,很多發的不全面,要么就是跟著他們流程走有些小問題啥的&#xff…

QT程序發布后,mysql在其它電腦設備無法連接數據庫

QT程序發布后,mysql在其它電腦設備無法連接數據庫 D:\mysql-5.7.24-winx64\lib, mysql-5.7.24-winx64是一個壓縮包,用于啟動mysql服務,創建數據庫 壓縮包 解決方法: 拷貝庫到exe的相同目錄,libmysql.dll,libmysql.li…

ElasticSearch 的核心功能

要深入理解 ElasticSearch 的核心功能,需要全面掌握其 全文搜索、分析、聚合 和 索引生命周期管理(ILM) 的設計原理和實際應用。 1. 全文搜索 ElasticSearch 的全文搜索是其核心功能之一,依賴于倒排索引和強大的分詞、相關性評分…

在Nginx部署Web應用,如何保障后端API的安全

1. 使用HTTPS和http2.0 參考:Nginx配置HTTP2.0_nginx 支持 2.0-CSDN博客 2. 設置嚴格的CORS策略 通過add_header指令設置CORS頭。 只允許來自https://frontend.yourdomain.com的請求訪問API location /api/ {if ($http_origin ~* (https://frontend\.yourdomai…

Nginx單向鏈表 ngx_list_t

目錄 基本概述 數據結構 接口描述 具體實現 ngx_list_create ngx_list_init ngx_list_push 使用案例 整理自 nginx 1.9.2 源碼 和 《深入理解 Nginx:模塊開發與架構解析》 基本概述 Nginx 中的 ngx_list_t 是一個單向鏈表容器,鏈表中的每一個節…

es快速掃描

介紹 Elasticsearch簡稱es,一款開源的分布式全文檢索引擎 可組建一套上百臺的服務器集群,處理PB級別數據 可滿足近實時的存儲和檢索 倒排索引 跟正排索引相對,正排索引是根據id進行索引,所以查詢效率非常高,但是模糊…

軟件需求建模方法

軟件需求建模是一個涉及多個學科的領域,其研究方向廣泛且多樣。以下是一些主要的研究方向: 1. 需求工程方法:研究如何更有效地收集、分析、規格化和驗證軟件需求。這包括新的需求工程方法論和工具的開發。 2. 需求管理:關注需求…