方程就是二叉樹森林?從數據中直接發現未知控制方程和物理機理
研究者們希望通過機器學習方法,直接從高維非線性數據中自動挖掘最有價值和最重要的內在規律(即挖掘出問題背后以 PDE 為主的控制方程),實現自動知識發現。
近日,東方理工、華盛頓大學、瑞萊智慧和北京大學等機構的研究團隊提出了一種基于符號數學的遺傳算法 SGA-PDE,構建了開放的候選集,可以從數據中直接挖掘任意形式的控制方程。
實驗表明,SGA-PDE 不但可以從數據中挖掘到 Burgers 方程(具有交互項),Korteweg–de Vries 方程(KdV,具有高階導數項),和 Chafee-Infante 方程(具有指數項和導數項),而且還成功挖掘到粘性重力流問題中的具有復合函數的控制方程,以及具有分式結構的方程,而后兩者是此前方法難以發現的。SGA-PDE 不依賴關于方程形式的先驗知識,填補了復雜結構控制方程挖掘問題的空白。該模型無需提前給定方程候選集,利于自動知識發現算法在未知科學問題中的實際應用。
該研究以《Symbolic genetic algorithm for discovering open-form partial differential equations (SGA-PDE)》為題,于 6 月 1 日發表在 Physical Review Research 上。
目前常見的知識發現思路是利用稀疏回歸,即預先給定一個封閉的候選集,然后從中選擇方程項,并組合出控制方程,如 SINDy 和 PDE-FIND。但是此類方法要求使用者預先確定方程的大致形式,再將所有對應的微分算子作為候選集中的函數項提前給出,無法從數據中找到候選集中不存在的函數項。最新的一些研究嘗試利用遺傳算法擴充候選集,但是基因的重組和變異存在較大局限性,依然無法產生復雜結構的函數項(如分式結構和復合函數)
從數據中直接挖掘開放形式控制方程的關鍵在于以一種易于計算的方式生成并表示任意形式的控制方程,并通過衡量生成的方程與觀測數據的符合程度,來評估方程形式的準確性,進而對挖掘的方程進行迭代優化。因此,自動知識發現的核心問題是表示與優化。
表 1. 自動控制方程挖掘方法對比表
表示問題的挑戰在于:1. 如何利用有限的基礎單元來表示無限的復雜結構控制方程(即開放候選集);2. 如何構建易于計算的控制方程表示方法。為了能夠自由表示任意結構的方程,研究人員將 SGA-PDE 的基本表示單元弱化到了運算元和運算符,并通過符號數學的方法,利用二叉樹構建了開放候選集。
優化問題的挑戰在于:1. 方程形式與方程評估指標之間的梯度難以計算;2. 開放候選集的可行域是無窮大的,優化過程很難有效兼顧探索(exploration)與利用(exploitation)。為了能夠對開放候選集問題高效尋優,研究人員利用一種針對樹結構特殊設計的遺傳算法實現方程形式的優化。
圖 1:自動知識發現問題和 SGA-PDE 示意圖
研究人員首先通過細化算法中方程的基本表示單元來表示開放形式的偏微分方程,將方程的表示尺度從獨立的函數項層面轉化為更基礎的運算符和運算元層面。
SGA-PDE 將控制方程中的運算符分為雙運算符(如 +、-)與單運算符(如 sin、cos),然后將所有潛在變量定義為運算元(如 x、t、u)。研究人員采用二叉樹的結構將運算符與運算元組合起來,對不同的方程進行編碼。二叉樹中所有的終端節點(度為 0 的葉子節點)對應于運算元,所有的非終端節點對應于運算符,其中雙運算符對應于度為 2 的節點,單運算符對應度為 1 的節點。
如圖 2 所示,通過一種可計算字符串作為連接,任何一個函數項都可以轉化為一顆二叉樹,同時,滿足一定數學規則的二叉樹也可以轉化為函數項。進而一個具有多個函數項的控制方程等價于一個由多棵二叉樹組成的森林。SGA-PDE 通過符號數學的方式,表示任何開放形式的偏微分控制方程。此外,論文中也提出了一種隨機生成具有數學含義的二叉樹的方法,可以保證生成的二叉樹不違背數學原理。
圖 2:二叉樹與函數項之間的表示和轉化方法
由于圖 2 所示表示方法能夠將函數空間中的樣本和二叉樹空間的樣本一一對應。這意味著基于符號數學的表示方法是有效且非冗余的,可以作為遺傳算法中編碼過程。研究者提出了一種針對樹結構的遺傳算法(圖 3),從實驗數據中自動挖掘符合觀測數據的控制方程。這種針對樹結構的遺傳算法可以實現在不同層面的優化。
重組環節是在森林(方程)層面優化,以找到二叉樹(函數項)的最優組合方式。這一環節與當前常見的稀疏回歸類方法類似,是在封閉候選集內的尋優。
變異環節是在二叉樹(函數項)層面優化,通過隨機產生不同的節點屬性,找到在給定的二叉樹結構下,最優的節點屬性組合,本質上是對當前結構的利用(exploitation)。
替換環節同樣是在二叉樹(函數項)層面優化,但是會產生新的二叉樹結構,是對樹結構的探索(exploration),實現了完全開放候選集中的優化。
SGA-PDE 通過多層級的優化,可以兼顧二叉樹拓撲結構的利用與探索,有利于高效找到最優的方程形式。
圖 3:針對樹結構的遺傳算法
實驗數據如圖 4 所示,其中第 2 列展示了物理場觀測值,是 SGA-PDE 的唯一輸入信息。第 3 列和第 4 列中的基礎一階導數可以通過對物理場觀測值差分獲得。第 1 列為正確的方程形式。實驗中 SGA-PDE 采用了相同的預置運算元和運算符,不需要針對具體問題進行調整,以便驗證算法的通用性。
最終,SGA-PDE 成功從數據中挖掘到 Burgers 方程,KdV 方程,Chafee-Infante 方程,具有復合函數求導的粘性重力流控制方程,以及具有分式結構的方程。上述方程具有指數項、高階導數項、交互項、復合函數和嵌套結構等多種復雜形式。
表 2 對比了多種已有算法在上述 5 種算例中的計算結果,可見 SGA-PDE 填補了挖掘復雜結構控制方程的空白
圖 4:實驗數據圖
表 2 自動知識發現算法在不同控制方程挖掘問題中的實驗結果
為了更充分地理解 SGA-PDE 的尋優過程,圖 5 展示了挖掘 KdV 方程時的演化路徑??梢姷?1 代產生的最優方程與實際方程相差甚遠。在此后演化過程中,隨著二叉樹的拓撲結構以及節點含義的變異,以及函數項之間的交叉重組,最終在第 31 代找到了正確的解,且此時 AIC 指標已達到文中給定的收斂標準。有意思的是,如果繼續優化,則會在第 69 代找到 KdV 方程基于復合函數求導的更加簡約的表達形式。圖 6 則展示了 SGA-PDE 尋找具有分式結構控制方程的優化過程。
圖 5:SGA-PDE 對 KdV 方程的優化過程
圖 6:SGA-PDE 對具有分式結構的方程的優化過程
控制方程是對領域知識的一種高效表示形式,然而許多現實問題的方程參數甚至方程形式都不確定,很難寫出準確的控制方程,極大制約了領域知識在機器學習中的應用。
SGA-PDE 通過符號數學的方法對方程進行轉化,解決了任意形式的偏微分方程的表示問題。此外,SGA-PDE 采用針對二叉樹設計的遺傳算法,通過對樹的拓撲結構以及節點屬性的迭代優化,從開放域中自動挖掘符合觀測數據的控制方程。在優化中,SGA-PDE 不依賴于方程形式的先驗信息,也無需給定候選集,實現了對復雜結構方程的自動尋優。同時,SGA-PDE 也是無梯度算法,避免了方程結構與損失值之間梯度難以計算的問題。
未來研究將關注于:1. 嘗試結合強化學習或者組合優化算法;2. 通過嵌入物理機理縮小求解空間;3. 評估并提升 SGA-PDE 對稀疏數據和有噪數據的適用性;4. 將知識嵌入方法與知識發現方法進行融合。
論文鏈接(可免費獲?。?/p>
https://journals.aps.org/prresearch/abstract/10.1103/PhysRevResearch.4.023174
代碼與算例數據鏈接:
https://github.com/YuntianChen/SGA-PDE