RNN系列之四 長期依賴問題

2021-08-17 09:43:55 字數 672 閱讀 4303

rnn面臨的最大挑戰就是無法解決長期依賴問題。例如對下面兩句話:

最後的was與were如何選擇是和前面的單複數有關係的,但對於簡單的rnn來說,兩個詞相隔比較遠,如何判斷是單數還是複數就很關鍵。長期依賴的根本問題是,經過許多階段傳播後的梯度傾向於消失(大部分情況)或**(很少,但對優化過程影響很大)。對於梯度**是很好解決的,可以使用梯度修剪(gradient clipping),即當梯度向量大於某個閾值,縮放梯度向量。但對於梯度消失是很難解決的。

如何從數學的角度來理解梯度消失或者**問題呢,我們將以乙個簡單的、缺少非線性啟用函式和輸入x的迴圈神經網路為例。我們可以認為,迴圈聯絡為:

可以簡化為:

當w符合下列形式的特徵分解時:

其中q正交,迴圈聯絡可以進一步簡化為:

特徵值提公升到t次後,幅值小於1的衰減為0,幅值大於1的急劇增大,任何不與最大特徵向量對齊的

(1)滲透單元及其它多時間尺度的策略

(2)長短期記憶和其它門控rnn

(3)優化長期依賴(截斷梯度、引導資訊流的正則化)

之後將會對長短期記憶網路(lstm)以及門控迴圈單元(gru)做講解,其餘的部分可查閱花書10.9及10.11節。

RNN系列之六 LSTM

lstm的基本結構如下圖 包含三個門控,乙個更新門 輸入門 u,乙個遺忘門 f,乙個輸出門 o 更新門 將新的資訊選擇性的更新到細胞狀態中。遺忘門 將細胞狀態中的資訊選擇性的遺忘。輸出門 確定細胞狀態與輸入的哪個部分將輸出出去。具體數學表示式為 在很多lstm版本中,幾個門值的計算不只取決於輸入x ...

Ajax系列之四 問題總結

1,最經典的就是ie下的快取問題了。如果使用的是get,那麼在ie下出現快取問題。導致 只執行一次。解決辦法就是加時間戳或者隨機數,使url變為唯一,這樣就不會出現ie 下的快取問題了,或者改為post提交。xhr.open get x.aspx?dc newdate gettime true 2,...

Ajax系列之四 問題總結

1。最經典的就是ie下的快取問題了。假設使用的是get。那麼在ie下出現快取問題。導致 僅僅執行一次。解決的方法就是加時間戳或者隨機數,使url變為唯一,這樣就不會出現ie 下的快取問題了,或者改為post提交。xhr.open get x.aspx?dc newdate gettime true ...