牛津大学231页博士论文全面阐述神经微分方程(NDE),Jeff Dean点赞
?作者?|?機器之心編輯部
來源?|?機器之心
牛津大學的這篇博士論文對神經微分方程(NDE)展開了全面細致的研究。論文作者表示,他希望這篇論文可以吸引到對深度學習與動力學系統結合感興趣的讀者,并希望為當前的 SOTA 研究提供有益的參考。
在機器學習(ML)領域,動力學系統與深度學習的結合已經成為研究社區感興趣的課題。尤其是對神經微分方程(neural differential equation, NDEs)而言,它證明了神經網絡和微分方程是「一枚硬幣的正反面」。
傳統的參數化微分方程是特例,殘差網絡和循環網絡等很多流行的神經網絡架構呈現離散化。神經微分方程能夠提供高容量的函數近似,在模型空間上表現出強先驗,有能力處理不規則數據,還具有很高的內存效率。
神經微分方程尤其適用于解決物理、金融等領域的生成問題、動力學系統和時間序列問題,因此現代機器學習和傳統數學建模中都樂于使用它。
近日,一篇專門探討神經微分方程的博士論文《 On Neural Differential Equations》吸引了領域內研究者的注意,谷歌 AI 負責人、知名學者 Jeff Dean 也點贊推薦。這篇論文的 examiner 甚至褒贊它為「神經微分方程的教科書」。
論文作者為牛津大學數學研究所的博士生 Patrick Kidger,他的主要研究興趣在于神經微分方程以及更廣泛的深度學習和時間序列。他希望這篇論文可以吸引到任何對深度學習與動力學系統結合感興趣的讀者,并希望為當前的 SOTA 研究提供有益的參考。
論文地址:
https://arxiv.org/pdf/2202.02435.pdf
這篇博士論文的主要內容包括如下:
神經常微分方程(neural ordinary diffeqs):用于學習物理系統,作為離散架構的連續時間限制,包括對可表達性的理論結果;
神經受控微分方程(neural controlled diffeqs):用于建模時間序列函數、處理不規則數據;
神經隨機微分方程(neural stochastic diffeqs):用于從復雜的高維隨機動態中采樣;
數值法(numerical methods):一類新的可逆微分方程求解器或布朗重建(Brownian reconstruction)問題。
此外,這篇論文還涉及了其他一些主題,比如用于動力學系統的符號回歸(如通過正則化演化)、深度隱式模型(如深度均衡模型、可微優化)。
在回答網友的提問「為什么神經微分方程如此重要」時,作者表示,「神經微分方程將當前使用的兩種主流建模方法——神經網絡和微分方程結合在一起,為我們提供了很多在神經網絡和微分方程中使用得很好的理論,并在物理、金融、時間序列和生成建模等領域獲得了直接的實際應用。」
機器之心對該論文的核心內容進行了簡要介紹。
論文概覽
閱讀這篇論文需要掌握的預備知識包括常微分方程(ODE)和深度學習的基礎知識。論文中歸納神經微分方程的 4 個主要應用為:
物理建模;
時間序列;
生成式建模;
一種開發深度學習模型的策略:取適當的微分方程并將其離散化。
神經微分方程提供了一種兩全其美的方法。類似于神經網絡的結構提供了高容量的函數近似和易于訓練的性能。類似于微分方程的結構則通過易于理解和久經考驗的理論文獻為模型空間、內存效率和理論理解提供了強有力的先驗知識。相對于經典微分方程理論,神經微分方程本質上具有前所未有的建模能力。相對于現代深度學習,神經微分方程提供了一個關于「什么是好的模型」的連貫理論。
此外,該論文從歷史演變的角度闡述了神經微分方程誕生的思路演變過程。
神經常微分方程
目前最常見的神經微分方程是一種神經常微分方程(neural ODE):
通常這個方程需要考慮兩方面的問題:(1) 方程解是否存在且唯一;(2) 評估與訓練。
與非微分方程的模型相比,這里存在兩個額外的問題:
需要獲得該微分方程的數值解;
ODEnet 的反向傳播,即通過解常微分方程直接把梯度θ求出來。
現在已經有標準方法和工具可以解決這兩個問題,使得研究者能專注于構建模型架構本身的任務。
神經常微分方程的應用主要包括以下幾方面:
圖像分類;
帶有歸納偏置的物理建模;
連續歸一化流;
潛在 ODE;
殘差網絡。
論文中詳細講解了幾種參數化選擇,包括神經架構、非自主性和增強,并對比闡述了非增強型神經常微分方程和增強型神經常微分方程的近似屬性。
神經受控微分方程
第三章論文從循環神經網絡的連續時間限制的角度介紹了神經受控微分方程。這對于研究 RNN 或時間序列的人來說非常有用;也適合路徑理論、控制理論或強化學習的研究者閱讀。
這一章論文首先介紹了受控微分方程(CDE)、神經矢量場、求解 CDE、正則時間序列的應用,然后討論并總結了神經 CDE 的幾個優點。
論文中歸納神經 CDE 的幾種應用包括:不規則時間序列、RNN 和離散神經 CDE、長時間序列和粗糙微分方程(rough differential equations)、訓練神經 SDE。
在理論屬性方面,該論文講解了通用近似、與 ODE 模型的比較、不變性幾方面的理論。在參數化選擇部分,論文介紹了神經架構與門控程序、狀態 - 控制 - 矢量場相互作用兩個方面。最后該論文從理論條件、插值點的選擇、實際應用案例幾方面講解了插值方案的內容。
神經隨機微分方程
本章共分為 6 個小節,主要包括隨機微分方程的介紹、結構、訓練標準、參數選擇、示例展示以及評論。
隨機微分方程(SDE)已廣泛應用于模擬現實世界的隨機現象,例如粒子系統 、金融市場、人口動態和遺傳學 。它們是常微分方程 (ODE) 的自然擴展,用于對在連續時間中受不確定性影響的系統進行建模。
SDE 的動力學由一個確定性項和一個隨機項組成,其形式如下:
SDE 的理論構建:SDE 是在理論基礎上構建的,而且通常相對簡單。一種通用且直接的方法是固定一個常數矩陣 σ,并將σ ? d_w(t) 添加到 ODE 模型中。?
校準 SDE:一旦選擇 SDE 模型后,必須根據實際數據校準模型參數,可以通過以下方式來優化:
示例展示
布朗運動作為最簡單的示例,考慮(單變量)布朗運動樣本的數據集,初始條件為 Uniform[-1, 1]。數據集的每個元素都是沿單個布朗樣本路徑的時間序列觀察到的。研究者訓練了一個小的 SDE-GAN 來匹配初始條件的分布和時間演化樣本的分布。
如圖 4.3 所示,布朗運動可能看起來非常簡單,但它突出了一類時間序列,這幾乎是不可能用潛在 ODE 進行學習的(第 2.2.4 節)。布朗運動代表純擴散,而潛在 ODE 代表純漂移。
神經微分方程的數值解
本章共分為 7 個小節,主要內容包括通過 ODES 進行反向傳播、通過 CDE 和 SDE 進行反向傳播、數值求解器、實用技巧、布朗運動的數值模擬、應用軟件以及評論。
訓練神經微分方程意味著通過微分方程的解進行反向傳播,通過 ODE 進行微分的方法有三種:離散后優化 – 此類方法內存效率低,但準確且快速;先優化再離散 – 此類方法內存效率高,但速度有點慢;可逆 ODE 求解器 – 此類方法內存高效且準確,但速度稍慢。一般來說,先離散再優化是首選方法。但是從內存限制來講,可逆 ODE 求解器是最佳選擇,如果前兩者都不合適,那么就采用先優化后離散的方法,但這類方法通常是最不受歡迎的。
接下來文章介紹了更普遍的通過 CDE 和 SDE 進行反向傳播。
先離散后優化:這與 ODE 示例完全相同——只需通過受控 / 隨機微分方程求解器的內部操作進行微分,通常使用在自微分框架中編寫的求解器。
CDE 的先優化后離散:這類方法有兩種,可以為 CDE 構建連續伴隨(continuous adjoint)方法。一種是將 CDE 簡化為第 3 章中的 ODE,然后對 ODE 應用連續伴隨方法。還有一種是構建一個時間倒退(backwards-in-time)的 CDE,然后通過簡化為 ODE 或其他方式,以任何需要的方式進行數值求解。
可逆微分方程求解器:如第 3 章所述,CDE 可以簡化為 ODE,并且相應地可以應用于任何可逆 ODE 求解器。同時 SDE 有一個已知的可逆求解器,即可逆 Heun 方法。
數值求解器
神經網絡表示非結構化向量場,這意味著許多更專業的微分方程求解器(為任何特定方程開發)都不適用,我們必須依賴通用求解器。
在通用求解器中,論文主要介紹了顯式 Runge-Kutta 求解器,特別是 ODE 和 CDE,它們是一個流行的數值求解器家族,每種求解器都需要遵循通用原則。
除了通用求解器,在可逆求解器中,可逆求解器的反向傳播如下表 1 所示。在可逆求解器中,需要局部前向來構建計算圖,之后通過該計算圖計算向量 - 雅可比積。
軟件
用于神經微分方程的數值求解和訓練的軟件包目前已經進行了標準化,文中提供了幾種選擇供讀者使用:
在 JAX 生態系統 [Bra+18] 的 Diffrax(第一個鏈接);在 PyTorch 生態系統 [Pas+19] 中的 torchdiffeq、torchcde 和 torchsde 系列庫(2-5 鏈接);在 Julia [Bez+17] 生態系統中的 DifferentialEquations.jl(最后一個鏈接):
https://github.com/patrick-kidger/diffrax
https://github.com/rtqichen/torchdiffeq
https://github.com/patrick-kidger/torchcde?
https://github.com/google-research/torchsde?
https://github.com/DiffEqML/torchdyn?
https://github.com/SciML/DifferentialEquations.jl?
未來工作
在神經 ODE 方面,每年都會有數千篇論文,還有研究將非神經 ODE 應用于科學、金融、經濟學等領域。相應地,目前比較重要的工作是將神經 ODE 應用于迄今為止僅應用非神經 ODE 的許多任務。
在神經 CDE 和 SDE 方面,神經 CDE 和神經 SDE 更新得比較快,但技術細節還需要完善:研究者需要找到向量場的表達選擇,并確定如何有效地訓練這些模型。與神經 ODE 一樣,未來的另一個研究方向是它們在實際中的應用,或者如何將它們與非神經 CDE、SDE 相結合。
在神經 PDE 方面,例如,一個卷積網絡大致相當于一個拋物型 PDE 離散化。[Li+20b; Li+20c; Li+21] 研究從傅里葉神經算子考慮,這可能是目前最成熟的接近神經 PDE 的理論研究。[SLG21] 中給出了神經隨機偏微分方程的一些初步思考。在實踐中,關于神經 PDE 的許多想法還尚未進行融合。但這代表了神經微分方程領域的一個主要研究方向。
更多細節內容請參考論文原文。
參考鏈接:
https://www.maths.ox.ac.uk/people/patrick.kidger
https://www.reddit.com/r/MachineLearning/comments/snmtzn/r_phd_thesis_on_neural_differential_equations/
特別鳴謝
感謝 TCCI 天橋腦科學研究院對于 PaperWeekly 的支持。TCCI 關注大腦探知、大腦功能和大腦健康。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
📝?稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
📬?投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
🔍
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的牛津大学231页博士论文全面阐述神经微分方程(NDE),Jeff Dean点赞的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何正确地清洁和消毒家中的墙面?
- 下一篇: 月工资计算公式和方法