物理信息神經(jīng)網(wǎng)絡(luò) (PINN) 是一種神經(jīng)網(wǎng)絡(luò),它將微分方程描述的物理定律納入其損失函數(shù)中,以引導(dǎo)學(xué)習(xí)過程得出更符合基本物理定律的解。
PINN 可用于:
逼近偏微分方程 (PDE) 和常微分方程 (ODE) 的解。
求解逆問題,例如基于有限的數(shù)據(jù)估計(jì)模型參數(shù)。
使用 Deep Learning Toolbox,您可以構(gòu)建和訓(xùn)練 PINN,從而實(shí)現(xiàn)快速預(yù)測(cè)性分析。您可以將 PINN 與 MATLAB 和 Simulink 相集成,以進(jìn)行系統(tǒng)級(jí)仿真、控制設(shè)計(jì)和設(shè)計(jì)優(yōu)化。
物理信息神經(jīng)網(wǎng)絡(luò) (PINN) 在深度學(xué)習(xí)模型的訓(xùn)練中包含支配現(xiàn)實(shí)的物理定律,從而能夠?qū)?fù)雜現(xiàn)象進(jìn)行預(yù)測(cè)和建模,同時(shí)遵守基本物理原理。
PINN 的優(yōu)點(diǎn)
PINN 是一類物理信息機(jī)器學(xué)習(xí)方法,可將物理知識(shí)與數(shù)據(jù)無縫集成。在求解涉及 PDE 和 ODE 的問題時(shí),通常會(huì)將 PINN 與純數(shù)據(jù)驅(qū)動(dòng)方法和傳統(tǒng)數(shù)值方法進(jìn)行比較。
純粹數(shù)據(jù)驅(qū)動(dòng)方法僅從輸入和輸出數(shù)據(jù)中學(xué)習(xí)數(shù)學(xué)關(guān)系,而 PINN 與之不同:
使用先驗(yàn)物理知識(shí)。
在訓(xùn)練數(shù)據(jù)集之外作出更準(zhǔn)確的預(yù)測(cè)。
在訓(xùn)練數(shù)據(jù)有限或含噪的情況下更有效。
與求解微分方程的傳統(tǒng)數(shù)值方法(如用于 PDE 的有限元分析)不同,PINN 具有以下特點(diǎn):
無網(wǎng)格。
能逼近高維 PDE 解。
可求解缺失模型參數(shù),如未知的 PDE 或 ODE 系數(shù)。
可求解沒有邊界數(shù)據(jù)的不適定問題。
可輕松納入稀疏或含噪測(cè)量。
雖然 PINN 與純粹數(shù)據(jù)驅(qū)動(dòng)方法和傳統(tǒng)數(shù)值方法相比具有潛在優(yōu)點(diǎn),但也存在一些限制和挑戰(zhàn),其中包括:
有限收斂理論
缺乏統(tǒng)一的訓(xùn)練策略
計(jì)算高階導(dǎo)數(shù)的計(jì)算成本
難以學(xué)習(xí) PDE 解的高頻和多尺度分量
然而,PINN 是充滿活力的研究領(lǐng)域,并且在不斷進(jìn)步,有望解決和克服當(dāng)前面臨的上述挑戰(zhàn)和限制。
如何在 PINN、數(shù)據(jù)驅(qū)動(dòng)方法和傳統(tǒng)數(shù)值方法之間作出選擇,取決于您的具體應(yīng)用。下表總結(jié)了每種方法的優(yōu)點(diǎn)和限制。
特征比較:PINN、純數(shù)據(jù)驅(qū)動(dòng)方法(僅從輸入-輸出數(shù)據(jù)中學(xué)習(xí)數(shù)學(xué)關(guān)系)和傳統(tǒng)數(shù)值方法(如用于逼近 PDE 解的有限元分析)。
PINN 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的區(qū)別
與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的不同之處在于,PINN 能夠以微分方程形式納入有關(guān)問題的先驗(yàn)專業(yè)知識(shí)。這些附加信息使 PINN 能夠在給定的測(cè)量數(shù)據(jù)之外作出更準(zhǔn)確的預(yù)測(cè)。此外,額外的物理知識(shí)還能在存在含噪測(cè)量數(shù)據(jù)的情況下對(duì)預(yù)測(cè)解進(jìn)行正則化處理,從而使 PINN 能夠基于真正的基本信號(hào)進(jìn)行學(xué)習(xí),而不是對(duì)含噪數(shù)據(jù)過擬合。
例如,假設(shè)已收集某系統(tǒng)的含噪測(cè)量值 θ_{meas},目標(biāo)是用前饋人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)系統(tǒng)的將來值 θ_{pred}。該網(wǎng)絡(luò)使用現(xiàn)有測(cè)量值進(jìn)行訓(xùn)練,并將用于預(yù)測(cè)未知的將來值。訓(xùn)練回歸神經(jīng)網(wǎng)絡(luò)通常需要盡量減小神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值與所提供測(cè)量值之間的均方誤差。
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)會(huì)調(diào)整參數(shù),以盡量減小網(wǎng)絡(luò)預(yù)測(cè)值與觀測(cè)的測(cè)量之間的誤差。
神經(jīng)網(wǎng)絡(luò)很難準(zhǔn)確預(yù)測(cè)訓(xùn)練數(shù)據(jù)之外的系統(tǒng)值。
使用 Deep Learning Toolbox 中的 trainnet 函數(shù)訓(xùn)練的原始神經(jīng)網(wǎng)絡(luò)會(huì)過擬合含噪測(cè)量值,在 t 超出可用范圍時(shí)表現(xiàn)不佳。
獲取更多數(shù)據(jù)可以提高預(yù)測(cè)效果,但這種方法可能成本過高,或?qū)υS多應(yīng)用來說根本不適用。然而,領(lǐng)域?qū)<彝鶎?duì)控制所研究系統(tǒng)的基本物理過程有更深入的了解。具體來說,在這里,測(cè)量值表示的是起重機(jī)上擺動(dòng)的有效負(fù)載相對(duì)于垂直線的位移角度。此過程可以簡(jiǎn)單地用阻尼擺來表示,對(duì)于小角度來說,可以用線性二階微分方程來近似建模:
θ^{''}(t)+2βθ^{′}(t)+ω^{2}_{0}θ(t)=0
PINN 并沒有忽略這些知識(shí),而是將微分方程作為附加的物理信息項(xiàng)納入損失函數(shù)中。PINN 在域中的其他點(diǎn)上計(jì)算微分方程的殘差,這為 PINN 提供了更多信息,而無需更多測(cè)量值。此簡(jiǎn)單示例當(dāng)然可以通過解析方式求解,但它旨在說明 PINN 背后的概念。
Deep Learning Toolbox 中提供的 PINN 可調(diào)整其參數(shù),以平衡網(wǎng)絡(luò)的預(yù)測(cè)值與觀測(cè)的測(cè)量值之間的誤差最小化和物理?yè)p失。
在訓(xùn)練過程中,PINN 會(huì)在擬合給定測(cè)量值和基本物理過程之間找到平衡點(diǎn)。
與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相比,使用 Deep Learning Toolbox 創(chuàng)建和訓(xùn)練的 PINN 能在測(cè)量數(shù)據(jù)之外作出更好的預(yù)測(cè),抗噪的穩(wěn)定性也更強(qiáng)。(請(qǐng)參閱 MATLAB 代碼。)
通過納入額外的物理?yè)p失項(xiàng),PINN 在存在含噪測(cè)量值和無測(cè)量數(shù)據(jù)情況下的預(yù)測(cè)效果優(yōu)于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)。
PINN 的工作原理
PINN 使用優(yōu)化算法以迭代方式更新神經(jīng)網(wǎng)絡(luò)參數(shù),直到指定的物理信息損失函數(shù)值降至可接受的水平,從而推動(dòng)網(wǎng)絡(luò)趨向微分方程的解。
在針對(duì)擺方程這樣的 ODE 訓(xùn)練 PINN 時(shí),優(yōu)化算法會(huì)調(diào)整神經(jīng)網(wǎng)絡(luò)的參數(shù),以將損失函數(shù)(包括自動(dòng)微分 (AD) 的微分方程殘差、邊界和初始條件,以及可選的其他標(biāo)注數(shù)據(jù))降至可接受的水平。
PINN 包括損失函數(shù) L,由以下幾個(gè)項(xiàng)組成:物理信息損失項(xiàng) L_{Physics};計(jì)算網(wǎng)絡(luò)預(yù)測(cè)的值與初始和/或邊界數(shù)據(jù)規(guī)定的值之間誤差的可選項(xiàng) L_{Conds};以及其他額外的測(cè)量值 L_{Data}。物理信息損失項(xiàng)使用自動(dòng)微分 (AD) 或其他數(shù)值微分法計(jì)算微分方程在域中各點(diǎn)的殘差。由于物理信息項(xiàng)并不計(jì)算預(yù)測(cè)值與目標(biāo)值之間的誤差,因此可以將此項(xiàng)視為無監(jiān)督損失項(xiàng),也就是說,可以使用域中的任何點(diǎn)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,即使沒有在這些點(diǎn)上的測(cè)量值也是如此。
PINN 于 2017 年首次推出,現(xiàn)在有許多變體,其中包括:
貝葉斯 PINN (BPINN),它們使用貝葉斯框架支持不確定性量化
變分 PINN (VPINN),它們將 PDE 的弱形式納入損失函數(shù)中
一階公式化 PINN (FO-PINN),它們?cè)谇蠼飧唠A PDE 時(shí)比標(biāo)準(zhǔn) PINN 更快、更準(zhǔn)確
此外,PINN 還可與不同神經(jīng)網(wǎng)絡(luò)架構(gòu)結(jié)合使用,如圖神經(jīng)網(wǎng)絡(luò) (GNN)、傅里葉神經(jīng)算子 (FNO)、深度算子網(wǎng)絡(luò) (DeepONet) 等,從而產(chǎn)生了出這些架構(gòu)的所謂物理信息版本。
MATLAB 和 Deep Learning Toolbox 全面支持 PINN 的開發(fā),從創(chuàng)建或?qū)氩煌窠?jīng)網(wǎng)絡(luò)架構(gòu),到使用 AD 定義自定義物理信息損失函數(shù),再到使用 ADAM 或 L-BFGS 等基于梯度的優(yōu)化算法進(jìn)行訓(xùn)練,最后到使用高級(jí) MATLAB 圖形可視化解。
PINN 的應(yīng)用
PINN 可充分利用深度學(xué)習(xí)的強(qiáng)大功能,同時(shí)改進(jìn)對(duì)物理定律的遵從,這使其成為一種多功能工具,適用于完全或部分已知物理定律的應(yīng)用,例如具有未知系數(shù)的 PDE 或 ODE。PINN 的應(yīng)用包括:
熱傳遞,專門用于熱分布和傳遞過程建模。PINN 可以將用于材料和系統(tǒng)熱過程建模的控制方程(如熱方程)嵌入損失函數(shù)中。這種方法可確保解符合這些物理定律,從而得出在物理上合理的預(yù)測(cè)。此外,PINN 還能取代高成本的數(shù)值仿真,在設(shè)計(jì)優(yōu)化應(yīng)用中快速逼近參數(shù)化的幾何形狀上的溫度分布。而且,PINN 還可用于逆問題以確定未知的材料屬性,如熱導(dǎo)率。
計(jì)算流體動(dòng)力學(xué) (CFD),特別是通過在損失函數(shù)中納入納維-斯托克斯方程來逼近流體的速度、壓力和溫度場(chǎng)。PINN 可用于無網(wǎng)格正仿真以準(zhǔn)確預(yù)測(cè)這些量;也可用于逆問題,目的是從觀測(cè)的數(shù)據(jù)推斷未知參數(shù)或輸入,如邊界條件、源項(xiàng)或流體屬性。
結(jié)構(gòu)力學(xué),通過將彈性方程和結(jié)構(gòu)動(dòng)力學(xué)方程等控制物理定律直接嵌入損失函數(shù)中,求解正逆問題。這種集成使 PINN 能夠準(zhǔn)確預(yù)測(cè)各種負(fù)載和條件下的變形、應(yīng)力和應(yīng)變等結(jié)構(gòu)響應(yīng),以及根據(jù)觀測(cè)的數(shù)據(jù)識(shí)別未知的材料屬性或外部負(fù)載。PINN 利用物理原理指導(dǎo)學(xué)習(xí)過程,可減少對(duì)大量數(shù)據(jù)集的依賴,在傳統(tǒng)解析解不可行或數(shù)據(jù)匱乏的情況下尤其有用。PINN 的靈活性使其能夠處理復(fù)雜的問題,包括非線性材料行為和多物理建模。
在使用 Deep Learning Toolbox 創(chuàng)建和訓(xùn)練 PINN 后,PINN 可與 Optimization Toolbox 無縫集成以用于設(shè)計(jì)優(yōu)化、與 Simulink 連接以用于系統(tǒng)級(jí)仿真,還可用于其他各種應(yīng)用。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4771瀏覽量
100712 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4327瀏覽量
62569 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8406瀏覽量
132561
原文標(biāo)題:什么是物理信息神經(jīng)網(wǎng)絡(luò) (PINN)?
文章出處:【微信號(hào):MATLAB,微信公眾號(hào):MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論