神经了的ODE:Neural Ordinary Differential Equations
Abstract
我們介紹深度神經網絡模型的一個新家族。我們使用神經網絡參數化隱藏狀態的導數,而不是指定一個離散的隱藏層序列。網絡的輸出使用一個黑盒微分求解器進行計算(blackbox differential equation solver)。這些連續深度模型需要的存儲成本恒定、針對不同輸入調整評估策略(evaluation strategy)、可以用數值精度換取速度。我們在 continuous-depth residual networks 和 continuous-time latent variable models 中證明這些性質。我們也構建了連續標準化流(continuous normalizing flows),可以使用 maximum likelihood 訓練的生成模型,不需要對數據維度進行分區或排序。在訓練過程中,我們展示了怎樣通過 any ODE solver 可調節地進行反向傳播, without access to its internal operations。
1、Introduction
殘差網絡(residual networks)、循環神經網絡解碼器(recurrent neural network decoders)、標準化流(normalizing flows)通過堆疊一系列的轉換(transformations)形成一個隱狀態來建立復雜的轉換(transformations):
 
 ??其中,t∈{0...T}t \in \lbrace0...T\rbracet∈{0...T}、 ht∈RDh_t\in\Bbb{R}^Dht?∈RD。這些迭代更新可以看作為一個連續變換(continuous transformation)的 歐拉離散化(Euler discretization)。(Lu et al., 2017; Haber and Ruthotto, 2017; Ruthotto and Haber, 2018)
 當我們添加更多的層、每一步更小的時候會發生什么?在極限的情況下,我們參數化隱藏神經元的連續動態(continuous dynamics)使用一個神經網絡指定的 ordinary differential equation (ODE):
 
 ??從輸入層h(0)h(0)h(0)開始,我們可以將輸出層h(T)h(T)h(T)定義為在某時刻T上ODE初值問題的解。這個值可以由一個黑箱微分方程求解器計算,它評估隱藏神經元動力學fff在任何需要的地方求解符合精度要求的解。圖1對比了這兩種方法。
 
 ??左邊:殘差網絡定義了一個有限變換的離散序列。右邊:一個ODE網絡定義了一個向量場(vector field),可以進行狀態的連續轉換。BothBothBoth:圓圈代表評估的位置。
使用ODE求解器定義和評估模型有幾個好處:
 內存優化
 ??不論是什么結構的神經網絡,其本質就是在擬合一個復雜的復合函數,復合的次數就是神經網絡的層數,要找到參數的梯度,很容易就想到鏈式法則,然而,在前向傳播時我們需要保留所有層的激活值,并在反向傳播時利用這些激活值,這對內存的占用非常大,對深度模型的訓練過程來說是一個很大的限制。
 ??對于Neural ODE來說,若直接通過積分器來做反向傳播,則需要對一個積分求微分,內存開銷會很大,且計算的誤差會逐漸累加,因此,作者給出了一個adjoint sensitivity method來計算ODE的梯度,該方法將梯度的計算歸結為解一個ODE,該ODE能夠ODE Solver求解,其思路來源于Pontryagin論文《The mathematical theory of optimal processes》中的龐特里亞金最大化原理,具體的公式比較復雜,這里就不給出了。我們將隱藏狀態的導數作為參數,因此參數就不是一系列離散值,而是一個連續的空間,因此并不需要依次傳遞到前向傳播中的每一個函數進行評估,也就不用耗費大量空間來存儲中間結果了。
 自適應計算
 ??絕大多數常微分方程都很難找到解析解,因此往往通過數值求解,比如最簡單的方法Euler法(這樣就又變成ResNet了),還有更復雜一點的Runge-Kutta法,近百年來,數學家對ODE的求解已經研究得很深入了,現代的ODE Solver也已經非常成熟,它們不僅能保證收斂到真實解,同時還能控制誤差水平,會根據給定的誤差容忍度選擇適當的步長逼近真實解。在評估或訓練過程中,通過顯式地改變數值積分的精度,我們可以自由地調節模型的速度和精度,比如我們可以花更多的時間去訓練一個高精度的模型,而在評估預測時降低精度以提高系統的響應速度。
 公式簡化
 
 Continuous time-series models
 ??與RNN不同,RNN需要離散的觀測值和觀測間隔(emission intervals),continuously-defined dynamics can naturally incorporate data which arrives at arbitrary times. 連續定義的動力學模型可以很自然地合并在任意時刻觀測的數據。在第5節,我們構建和演示了這樣一個模型。
2、ODE解的Reverse-mode automatic differentiation
總結
以上是生活随笔為你收集整理的神经了的ODE:Neural Ordinary Differential Equations的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 三岁小屁孩的诗
- 下一篇: 数据通信网络的基本概念
