第一次看到「不需要標註資料的偏微分方程運算子學習」時,我沒有立刻覺得這是什麼突破性魔法,反而先問了一個工程師很自然會問的問題:原本的成本被移到哪裡去了?
因為在軟體開發裡,成本通常不會真的消失。
主管說某個服務「不用維護」,很可能只是維護工作被丟給雲端供應商;技術文章說模型「不需要資料」,也經常只是把監督來源換成物理方程、模擬環境或人工規則。
Deep Onsager Operator Learning,簡稱 DOOL,同樣不是在完全沒有資訊的情況下自己悟出物理定律。
它真正省掉的是高成本的標註解答:研究者不需要先利用傳統數值求解器,替大量初始條件計算完整的時間演化結果,再把這些答案餵給神經網路。DOOL 改以 Onsager 變分原理建立訓練目標,讓模型直接學習耗散系統的狀態與通量關係。
這個說法不像「AI 不用資料就能解方程」那麼吸睛,卻更接近這項研究真正有價值的地方。
DOOL 由武漢大學的 Zhipeng Chang、Zhenye Wen 與 Xiaofei Zhao 提出,2025 年先發布於 arXiv,之後刊登在《SIAM Journal on Scientific Computing》。論文也取得 SIAM 的程式與資料可重現標章,代表讀者可以取得作者用來重現實驗結果的相關材料。SIAM 論文頁面
為什麼傳統運算子學習需要大量標註資料?
要理解 DOOL 解決了什麼問題,得先分清楚一般神經網路與神經運算子的工作差異。
一般神經網路預測一個結果,神經運算子處理一整類問題
一般神經網路可能接收溫度、壓力與時間,最後輸出某個位置的預測值。
神經運算子處理的範圍更大。它接收的可能是一整個初始溫度分布、外部作用力或材料參數,再輸出系統後續的完整空間分布。
以熱傳導為例,傳統數值求解器通常處理的是某一組特定條件:給定這次的初始溫度與邊界條件,計算熱量接下來如何擴散。
神經運算子則希望學會一套可以重複使用的映射。模型訓練完成後,換一組初始溫度分布,也能快速產生新的預測,不必為每個條件重新訓練模型。
這也是 DeepONet、Fourier Neural Operator 等方法受到重視的原因。只要同一套物理模型需要被重複求解很多次,訓練好的運算子就有機會大幅降低後續推論成本。
訓練資料通常仍得靠傳統求解器產生
問題在於,監督式運算子學習需要大量成對資料。
每一組訓練資料通常包含一個初始狀態,以及這個狀態經過高精度數值模擬後得到的完整時空解。
研究團隊可能必須先抽出數百甚至數千組初始條件,再使用有限元素法、有限差分法或譜方法,逐一產生標註答案。
這會形成一個有點尷尬的循環:為了訓練一套用來降低模擬成本的模型,必須先執行大量原本就很昂貴的模擬。
如果只是簡單的一維熱方程,資料生成成本可能不高。但換成高解析度流體、多相材料或三維反應擴散模型,真正昂貴的往往不是神經網路訓練,而是訓練前那批高保真解答。
DOOL 想拿掉的,就是這一段成本。
Onsager 原理到底在描述什麼?
Onsager 變分原理主要用於描述不可逆的耗散系統,例如熱傳導、粒子擴散、相分離與其他會逐步走向穩定狀態的物理過程。
這些系統通常有一個共同特徵:自由能會隨時間逐步下降。
一杯熱咖啡放在桌上會逐漸冷卻,而不會在沒有外部能量的情況下突然變得更熱;混合物也會朝較穩定的相態演化,而不是毫無限制地提高自身能量。
Onsager 原理會同時考慮兩件事:
- 系統降低自由能的傾向
- 系統變化過程所產生的耗散成本
實際發生的通量,會在這兩者之間取得符合物理規則的平衡。
這裡的通量可以理解為熱量、粒子、物質或其他物理量移動的方向與強度。只要知道目前的系統狀態,以及物理量接下來如何移動,就能進一步計算系統下一刻的狀態。
DOOL 正是利用這個結構,把 Onsager 原理轉換成神經網路的訓練目標。
DOOL 真正學習的是狀態到通量
一般監督式 DeepONet 常直接學習初始狀態到完整時空解的關係。
DOOL 沒有一次預測系統從現在到未來的所有變化,而是把問題拆成兩個部分。
第一部分由神經運算子負責:根據目前的系統狀態,預測熱量、粒子或物質接下來如何移動。
第二部分則交給外部時間積分器:利用守恆律或變化律,根據模型預測的通量更新下一個時間點的狀態。
更新後的新狀態會再次送入模型,模型再預測下一步通量。這個流程不斷重複,逐步建立出完整時間演化。
我認為這是 DOOL 最值得注意的架構決策。
它沒有要求神經網路同時記住空間結構、時間演化與所有可能的解,而是讓模型專心學習較穩定的本構關係,再保留傳統數值方法負責時間推進。
這比較像把 AI 放進既有求解流程,而不是讓 AI 完全接管求解器。
DOOL 如何在沒有標註解答的情況下訓練?
從函數空間抽樣不同狀態
DOOL 仍然需要訓練輸入,只是不需要替每個輸入準備正確答案。
研究者會先定義模型預計處理的函數空間,再利用 Fourier 基底等方式,產生多組不同形狀、振幅與頻率的狀態函數。
這些狀態代表模型未來可能遇到的系統分布。
因此,DOOL 並不是「沒有資料」,而是使用沒有標註解答的狀態資料。這個差異必須說清楚,否則很容易讓人誤以為模型可以在沒有任何物理知識或訓練輸入的情況下自行工作。
Branch Network 讀取狀態,Trunk Network 處理空間
DOOL 採用類似 DeepONet 的 Branch–Trunk 架構。
Branch Network 負責讀取整個狀態函數,例如溫度或濃度在不同位置的分布。
Trunk Network 則接收空間位置,讓模型知道目前要預測哪一個位置的通量。
兩邊的輸出結合後,模型就能產生特定位置的通量預測。
一般 DeepONet 的 Trunk Network 經常同時接收空間與時間資訊。DOOL 的 Trunk Network 只處理空間,不把時間直接放進神經網路。
這個看似簡單的調整,實際上同時影響了資料量、訓練效率與時間外推能力。
用 Onsager 原理取代標準答案
監督式模型通常會比較預測值與標註答案,再根據兩者差距更新參數。
DOOL 沒有標註解答可以比較,因此改用 Rayleighian 作為損失函數。Rayleighian 可以理解成自由能變化與耗散成本的組合。
如果模型預測的通量違反系統應有的能量與耗散關係,損失就會升高;如果預測結果更接近 Onsager 原理描述的物理演化,損失就會降低。
換句話說,DOOL 的監督訊號不是「正確答案長什麼樣子」,而是「合理的物理演化應該遵守哪些規則」。
用熱擴散理解 DOOL 的訓練邏輯
熱擴散是一個很容易理解的例子。
假設一根金屬棒中間很熱,兩端較冷。隨著時間經過,熱量會從高溫區域流向低溫區域,直到整體溫度逐漸接近一致。
如果使用監督式運算子學習,研究者可能需要先準備很多種初始溫度分布,再用傳統求解器算出每種分布後續幾百個時間點的溫度,作為模型的標準答案。
DOOL 不需要先算完這些時間軌跡。
它會產生不同的溫度分布,要求模型預測每個狀態下的熱通量,再利用自由能與耗散關係判斷這項預測是否合理。
模型學會熱通量後,才從指定的初始溫度開始,一步一步更新後續狀態。
對簡單熱方程而言,直接使用成熟數值方法通常更方便。為它訓練神經網路,有點像為個人作品集架設一整套微服務:技術上做得到,但未必有必要。
真正適合 DOOL 的,是同一類複雜耗散模型需要被大量重複求解的情境。
為什麼 DOOL 的時間外推能力比較好?
一般監督式 DeepONet 常在固定時間範圍內訓練。
假設模型只看過系統最初一小段時間的資料,要求它預測更久以後的狀態,就屬於超出訓練範圍的外推。時間拉得越長,模型越容易產生累積誤差。
DOOL 的模型本身不接收時間,只負責根據目前狀態預測通量。
因此,它不會被直接限制在某個訓練時間區間。理論上,只要後續狀態仍落在訓練時定義的函數空間內,模型就能持續預測通量,再由外部積分器向後推進。
在論文的 Cahn–Hilliard 實驗中,研究團隊讓 DeepONet 只在前段時間區間接受訓練,再要求兩套方法預測更長時間。
當測試範圍延伸至較遠的時間點時,DeepONet 的相對誤差明顯上升,部分案例超過 20%;DOOL 在相同測試中的誤差則大致維持在 0.1% 至 0.3% 左右。DOOL 原始論文
這項結果很漂亮,但不能直接解讀成 DOOL 在所有長期預測中都一定比較準。
它證明的是:在論文選定的耗散方程、函數空間與時間積分設定下,將通量學習與時間推進分開,確實能明顯改善超出訓練時間範圍的預測。
DOOL 測試了哪些耗散方程?
研究團隊使用多種典型模型驗證方法,包括:
- 一維與二維熱方程
- Fokker–Planck 方程
- 對流擴散問題
- Cahn–Hilliard 方程
- Allen–Cahn 方程
- 含耗散的二階波動模型
這些問題涵蓋純擴散、對流與擴散混合、化學反應及相分離等不同情境。
實驗使用 PyTorch 執行,主要測試環境是一台搭載 Intel Core i9-14900HX 處理器與 32GB 記憶體的筆記型電腦,沒有把成果建立在大型 GPU 叢集上。作者也公開了部分DOOL 實驗程式碼。
這讓研究比較容易重現,但也要注意:能在筆電上跑完的基準問題,和真正的三維工業模擬仍有很大距離。
DOOL 與 DeepONet 的性能差異
初始條件泛化精度大致相近
在一維 Cahn–Hilliard 方程的比較中,DOOL 與監督式 DeepONet 使用相近的網路架構與相同空間解析度。
研究團隊另外抽出五組未參與訓練的初始條件進行測試。兩種方法的相對時空誤差大致都位於千分之一等級,有些案例是 DeepONet 較準,有些則是 DOOL 較準。
比較合理的結論不是 DOOL 全面擊敗 DeepONet,而是它在沒有高保真標註解答的情況下,仍能達到與監督式方法相近的精度。
神經網路訓練時間只小幅縮短
在相同訓練回合下,論文記錄的 DeepONet 訓練時間約為 833 秒,DOOL 約為 777 秒。
換算下來,DOOL 的訓練時間大約縮短 6% 至 7%,並沒有突然快十倍。
但只看這兩個數字會漏掉最重要的部分:DeepONet 在開始訓練以前,還需要利用傳統求解器產生高保真標註解答;DOOL 不需要這個步驟。
真正可能節省大量成本的,是標註資料生成,而不是神經網路訓練本身。
能量下降提供額外的物理檢查
研究團隊在多個實驗中觀察到自由能隨時間下降,並在論文附錄分析這項行為。
這一點很重要,因為科學機器學習不能只看單一時間點的預測誤差。
一套模型短期內可能很接近參考答案,但如果長時間模擬持續違反能量耗散或質量守恆,最後仍可能產生完全不合理的結果。
DOOL 至少提供了一個額外的檢查方向:除了數值誤差,也能觀察整體物理結構是否符合預期。
DOOL 還能用在哪些地方?
多參數模型
如果 PDE 不只受初始狀態影響,還包含擴散係數、材料參數或其他輸入,DOOL 可以增加額外的 Branch Network,讓模型同時讀取狀態與參數。
這使它有機會在同一套模型中處理多組物理設定,不必替每個參數重新訓練。
參數反演
論文也將 DOOL 用於 Cahn–Hilliard 方程的參數反演。
研究者先取得部分觀測結果,再反向搜尋哪一組物理參數最能重現這些狀態。
這類任務通常需要重複執行大量前向模擬。當訓練好的 DOOL 能快速提供預測時,參數搜尋的整體成本就有機會下降。
從工程與商業角度來看,這可能比單純加速一次 PDE 求解更有價值。模型被重複呼叫的次數越多,前期訓練成本才越容易被攤平。
DOOL、PINN 與 DeepONet 有什麼差別?
PINN 通常針對一組特定初始條件與邊界條件,使用 PDE 殘差訓練出該問題的解。條件改變後,經常需要重新訓練。
監督式 DeepONet 學習的是一整類初始條件到完整解的映射,能處理新的輸入設定,但需要大量高保真標註資料。
DOOL 同樣希望學到可重複使用的運算子,卻不直接預測完整解。它先透過 Onsager 原理學習當前狀態與通量的關係,再使用外部時間積分器推進系統。
所以 DOOL 不是完全資料驅動,也不是單純使用傳統數值方法。它是一種把物理結構、神經運算子與時間積分結合起來的混合架構。
DOOL 真正吸引人的地方
不必預先生成大量完整解答
對於高保真模擬非常昂貴、但自由能與耗散結構已知的系統,DOOL 可以移除大量標註資料生成工作。
損失函數具有清楚的物理意義
模型不是單純對訓練答案做曲線擬合,而是被要求產生符合自由能與耗散規則的通量。
空間學習與時間推進分開
模型只學習狀態到通量,時間交給外部積分器,讓時間步長與積分方法可以由開發者控制。
適合需要大量重複求解的工作
參數掃描、最佳化、反問題與不確定性分析通常需要數百或數千次前向模擬。這些情境比單次求解更能發揮神經運算子的速度優勢。
DOOL 目前不能解決哪些問題?
不是所有 PDE 都符合 Onsager 原理
標準 Onsager 變分原理主要描述接近平衡、符合線性響應,且慣性效應可以忽略的耗散系統。
強烈非平衡、以慣性為主、混沌或非耗散的系統,不能直接使用相同訓練方式。
論文針對含耗散的二階波動模型另外提出 Deep Least-Action Method,也反過來說明 DOOL 本身不是通用的 PDE 萬能解法。
必須知道正確的物理結構
DOOL 不需要標註解答,卻需要研究者提供:
- 正確的狀態變數
- 守恆律或變化律
- 自由能
- 耗散函數
- 邊界條件
- 合理的訓練函數範圍
如果這些設定本身有誤,模型可能會非常穩定地產生錯誤結果。
做資料系統時我最怕的也不是 API 回傳錯誤,而是它每天都成功回傳一個定義錯誤的數字。科學機器學習同樣如此:模型成功收斂,不代表物理模型一定正確。
外部時間步進仍可能不穩定
DOOL 論文主要採用顯式時間更新。這種方法容易實作,但時間步長不能無限制放大。
對剛性問題、尖銳界面或高階方程,時間步長過大仍可能造成數值震盪甚至發散。
AI 可以快速預測通量,不代表後面的數值積分問題就自動消失。
時間外推仍受函數空間限制
DOOL 不直接輸入時間,因此比較不會被固定訓練區間綁住。但它仍然只能可靠處理訓練階段涵蓋的狀態範圍。
如果系統演化後出現更高頻、更尖銳或完全不同的狀態,模型仍可能遇到分布外輸入。
所以「可以向未來推進」不等於「可以無限期維持準確」。
現階段仍是研究型實作
論文測試了多種代表性耗散方程,也取得 SIAM 可重現標章,但目前案例仍以規則區域、一維與二維基準問題為主。
公開 GitHub 專案內容也相對精簡,缺乏完整的依賴版本、環境建置、測試流程與持續整合設定。
能重現論文結果,和能在正式工程環境穩定維護多年,是兩種不同的成熟度。
GitHub 專案看起來很熱鬧,從來不是我判斷技術能不能上線的唯一標準;相反地,專案沒有很多星星,也不代表論文沒有研究價值。真正要看的是測試範圍、失敗條件與後續維護能力。
哪些情況適合考慮 DOOL?
DOOL 比較適合以下情境:
- 系統具有明確的耗散或梯度流結構。
- 自由能、耗散函數與守恆律已知。
- 同一模型需要處理大量不同初始條件。
- 產生高保真標註資料非常昂貴。
- 需要進行時間外推。
- 後續要執行參數反演或最佳化。
- 需要大量重複前向模擬。
如果只是求解一次簡單熱方程,成熟的有限差分法、有限元素法或譜方法通常更直接,也更容易驗證。
如果連系統的自由能與耗散關係都不確定,硬套 DOOL 可能比直接使用監督式模型更麻煩。
和選擇微服務一樣,並不是問題看起來複雜,就一定要使用最新架構。技術只有在解決真正的成本瓶頸時才有價值。
實作 DOOL 前應該做哪些測試?
先用簡單問題驗證整條管線
不要一開始就挑複雜三維模型。先用具有解析解的熱方程確認狀態抽樣、通量預測、空間導數與時間更新全部正確。
不要只看平均誤差
除了預測誤差,也應該持續監控:
- 自由能是否符合預期下降
- 質量是否守恆
- 邊界條件是否被滿足
- 時間步長改變後結果是否收斂
- 模型輸出是否超出合理範圍
- 長期累積誤差是否突然放大
刻意測試訓練範圍以外的輸入
應該主動加入更高頻、更尖銳或振幅更大的初始狀態,觀察模型從什麼時候開始失效。
只測試與訓練資料非常相似的狀態,容易得到過度樂觀的性能報告。
保留傳統求解器作為基準
DOOL 可以成為快速代理模型,但正式應用最好仍保留經過驗證的傳統求解器,用於抽樣比對、極端案例與模型漂移監控。
如果沒有任何可信基準,出現異常時會很難判斷問題來自神經網路、時間積分器,還是最初的物理設定。
結語:DOOL 不是拿掉物理,而是把物理變成監督訊號
DOOL 最有價值的地方,不是讓 AI 在沒有任何資訊的情況下自行理解偏微分方程。
它真正做的是把監督來源從昂貴的高保真解答,改成 Onsager 變分原理所提供的能量與耗散結構。
模型不需要看過每一題的完整答案,但仍然必須知道合理的物理演化應該遵守哪些規則。
這種設計比單純增加模型參數更接近我認同的工程方向:讓神經網路處理它擅長的函數近似,把守恆律、時間積分與可驗證的限制留在明確的程式流程中。
現階段,DOOL 已在多種典型耗散方程中展現不錯的準確度、初始條件泛化與時間外推能力。但從研究原型走向大型工程應用,仍需要更多高維、不規則幾何、剛性系統與分布外穩定性測試。
如果有人只告訴你「DOOL 不需要資料,而且一定比 DeepONet 準」,那只說了故事最好聽的部分。
更完整的結論是:DOOL 不需要成對的高保真標註解答,但需要可信的物理結構。對符合 Onsager 原理的耗散問題,它有機會顯著降低資料生成成本;對不符合這些條件的問題,它並不是可以直接套用的通用捷徑。
DOOL 常見問題
DOOL 是什麼?
DOOL 是 Deep Onsager Operator Learning 的縮寫。它利用 Onsager 變分原理訓練神經運算子,學習耗散系統中目前狀態與通量的關係,再搭配外部時間積分器推進系統演化。
DOOL 為什麼不需要標註資料?
因為模型不需要拿預測值與高精度標準答案比較,而是根據自由能與耗散關係判斷預測通量是否合理。不過,它仍需要未標註狀態、正確物理規則與訓練範圍。
DOOL 與 DeepONet 有什麼不同?
標準 DeepONet 通常直接學習初始條件到完整時空解的映射。DOOL 則學習目前狀態到通量的映射,並將時間推進交給外部數值積分器。
DOOL 為什麼具有時間外推能力?
因為模型不直接依賴固定時間區間。只要演化後的狀態仍落在訓練涵蓋的函數範圍內,就能繼續預測通量並向後推進。但這不代表它可以無限期保持相同精度。
DOOL 適合所有偏微分方程嗎?
不適合。它主要針對具有 Onsager 變分結構的耗散系統。強慣性、非耗散、混沌或缺乏明確自由能結構的模型,需要其他方法或額外延伸。
DOOL 可以完全取代傳統 PDE 求解器嗎?
目前更適合把它視為快速代理模型。對參數掃描、最佳化及反問題,它可能大幅降低重複計算成本;對高安全要求、分布外條件或單次精確求解,傳統求解器仍是重要基準。
立即體驗安全可靠的交易平台,點擊加入:https://www.okx.com/join?channelId=42974376