好久不見大家。今天給大家推薦的是來自大牛 Jürgen Schmidhuber 的工作,《Recurrent Highway Networks》[1]。另外這篇工作也和曾經將 LSTM 的模型的各種 variant 做橫向對比的 LSTM Odyssey[2] 是出自同一個團隊。這篇論文為一些在 RNN 方面的 trick 做了理論上的統一,並且提出了一種將 RNN 在與 time 的方向相垂直的 space 方向(論文中採用這個詞,但並一定準確)上增加 depth 的新模型——即 Recurrent Highway Networks。一些同學可能已經能從名字中看出端倪,這篇論文就是使用了 Highway Networks[3] 的 architecture 來進行縱向擴展。
那麼先說說,我們為什麼要讓 RNN 做一些縱向上的擴展,這所謂的「縱向」又是什麼呢?大家都知道 RNN,是在時間軸上做一種 micro time steps 的 tick 循環,從而有一種 time 方向上的 depth,如果這個我們叫做「橫向的」 depth。那麼這篇論文[1] 則是希望進行與這個方向垂直的,一種 space 方向上的擴展。這個 space 是說,在 recurrent state transition 上增加 depth——為「縱向」的 depth——起名為 recurrence depth。這個 depth 怎麼增加呢?就是用 Highway Networks 的方式,增加一個 deep net 去計算從 (h_t, x_t) 到 h_{t+1} 的轉移。說到這裡,是不是這樣做的原因已經很明白了?因為眾所周知的 RNN 甚至 LSTM 梯度信息傳遞的困難,大家總是希望能有更 efficient 或者更 effective 的方式,去把 gradient information flow 在兩個 state 之間進行傳遞。這篇論文[1] 的出發點也是如此。
有了出發點,怎樣入手呢?由於這篇論文[1] 的作者曾經對 LSTM variant 做過很深入的研究[2],他們甚至找到了一個比較統一的理論框架,去解讀 RNN 這種模型在 gradient information flow 問題上的各種邊界情況。他們首先定義了 temporal Jacobian 如下:
然後利用一個叫做 Geršgorin circle theorem (GCT) 的定理,得到了 Jacobian 的 spectral radius、recurrent weight matrix R 和 graident vanishing/exploding 的關係。
雖然這個定理比較生僻,但是圖示和 intuitive 的理解很容易。大家甚至可以從 Bengio 在 ICML 2016 Back-to-the-future Workshop 上給的 talk 中獲得一些啟發。如果我們要穩定地去存儲 1 bit information,我們需要做的就是 spectral radius 小於1:
而這又可以和我們的 recurrent transition matrix R 做好關聯。多個 spectral radis 小於1 的 matrices 連乘就相當於一個 spectral radius 指數型收斂於0 的 matrix:
於是乎,就像這篇論文[1] 的結論一樣,gradient vanishing problem 的出現,就是當我們用一些標準差接近0(zero-mean Gaussian)的方式去為 recurrent transition matrix R 做初始化和使用 L1/L2 weight regularization 的 trick 時,一般就會使得 spectral radius 小於1。而當我們用標準差比較大的方式去做這件事,就正好相反啦,就會出現 gradient exploding problem。那麼一個邊界情況是啥呢,就是我們正好用 identity matrix(或者 scaled identity matrix)做 R 的初始化,就像[4] 論文提出的那樣,這時候 specturm 就更容易落在1這個中心附近,gradient 也就不容易出現 vanishing/exploding。所以稍微總結一下,這個 RNN 的 gradient information flow,是和 recurrent transition matrix R 的 Jacobian eigenvalue 有很大關係的,而這個 eigenvalue 的數值很容易被我們的初始化影響。
但是 eigenvalue 的數值,不只是會被初始化影響,還會在 training 的過程中繼續改變呀,所以直接把 R 初始化成 identity matrix(IRNN)的方法,並不能完全保證良好的 gradient information flow。這也是為啥一般這種時候,我們會採用比較小的學習率的原因。所以這篇論文[1] 還是想在除了初始化以外的地方,去改進 gradient information flow 的機制。他們另闢蹊徑,在計算 recurrent state transition 時使用 highway networks 做 deep net,並把這種改進的 RNN architecture 叫做 Recurrent Highway Networks(RHN)。如下,一個擁有 recurrence depth = L 的 RHN 層:
這裡的 t_l 和 c_l 就是對應 highway networks[2] 中的 transform gate 和 carry gate。
除了上面這種圖示,我們還可以把 RHN 與其它常見的 LSTM variant 做對比。個人感覺,當我們的 recurrence depth L=1 時,這個特殊情況的 RHN 與 GRU 非常相似,只不過 GRU 多一個 reset gate。而與 LSTM 相比的話,LSTM 多的是 output gate,以及合併後的 input 和 forget gate,還有一個 output activation function。所以說到這裡,RHN 的「優勢」和特點就很明顯了。首先是,與 highway networks 結合的它,使得它可以將信息無轉化的在 hidden state 間傳遞(carry gate)。第二,它不像 GRU 和 LSTM 一樣,需要通過 activation function,而這會帶來很大的不同。說完這些 variant 的對比,就不得不說到這篇論文[1] 的不足之處。它和 GRU 以及一些相關 LSTM variant 的區別討論不足,實驗對比也不足。比如在實驗部分根本沒有加入 GRU。作者在網上承諾將在下一個版本內補上。
接下來就是把剛才利用 GCT 定理的分析和作者提出的 RHN 架構結合在一起的時候啦。作者發現,利用 GCT 定理,RHN 的優點有以下幾個:(1)首先就跟 highway networks 一樣,RHN 的 transform 和 carry gates 讓它變得更靈活一點;(2)這個靈活性是作者認為他們的 RHN 比別人的表現更好的原因。也就是說,當應對複雜的 complex sequences modeling 的時候,它更靈活,又好 training,那不就相當於它的 representation ability 和 optimization ability 都更強麼?
最後就是實驗啦,實驗是它的弱項。對比不夠充分,而且在使用的優化方法上也不夠有說服力。對比不充分是它沒有和非常相似的 GRU 或者 IRNN 做對比。以及它既然對比了 Grid-LSTM,卻沒有更深入的分析 RHN 和 Grid-LSTM 的區別(甚至沒有 cite),實驗的結果都是直接 copy 自 Grid-LSTM 的論文。第二是,它的優化方法採用的是 Momentum SGD,而不是 Adam 這些 learning rate 可以調整的優化方法。那麼顯然,這個對於 RHN 的 optimization ability 比別人更好,是不太有說服力的。
綜上,推薦這篇論文的原因主要是它從另一個簡單的方式將 RNN 在 recurrence depth 上進行了改造,使得 RNN 的建模更加靈活和強大。但它提出的 RHN 到底多強大,也就是這種改造方法,比起 Grid-LSTM 等相似方法,到底能好出多少,還需要更多的分析和實驗。
[1] Julian Georg Zilly, Rupesh Kumar Srivastava, Jan Koutník, Jürgen Schmidhuber. "Recurrent Highway Networks". 2016 arXiv preprint.
[2] Klaus Greff, Rupesh Kumar Srivastava, Jan Koutník, Bas R. Steunebrink, Jürgen Schmidhuber. "LSTM: A Search Space Odyssey". 2015 arXiv preprint.
[3] Rupesh Kumar Srivastava, Klaus Greff, and Jürgen Schmidhuber. "Highway networks". arXiv preprint arXiv:1505.00387, 2015.
[4] Q. V. Le, N. Jaitly, and G. E. Hinton. A Simple Way to Initialize Recurrent Networks of Rectified Linear Units. ArXiv e-prints, April 2015.