目錄
長程依賴關系的解釋
為什么傳統RNN不能解決長程依賴問題
如何解決長程依賴問題
參考資料
長程依賴關系的解釋 |
句子1:the clouds are in the (). 對語言模型而言,這里的()很容易就能被確定為sky,因為它剛“讀過”的單詞是“clouds are in the”,語言模型的是具有記憶的,因此很大概率可以預測對。
而句子2:I grew up in France… I speak fluent ().這里的省略號表示一大堆單詞,而這里的()被RNN這樣的語言模型預測為French的概率就很低了,因為他的記憶已經“模糊”了,換句話說,由於不停的“讀”新的單詞,很早之前的信息已經被沖淡了。
所以長程依賴可以理解為:當你想使用語言模型,並有效利用較早時間步的信息,最終產生預測的時候,那么你就要和較長路程前的信息建立一種依賴關系,這就是長程依賴。
長程依賴問題(The Problem of Long-Term Dependencies),也就是研究長程依賴的問題。
為什么傳統RNN不能解決長程依賴問題 |
回憶RNN的網絡結構,RNN之所以能夠對序列數據建模,是因為它具有一個記憶單元(隱藏層的參數),但是記憶單元中記錄的較早信息會隨着時間步的推移而沖淡,所以就無法建立起和較早時間步信息的依賴關系。
如何解決長程依賴問題 |
需要改變RNN的結構,從而建立起一種和較早時間步聯系的橋梁,比如后面要細談的LSTM和GRU等。
參考資料 |
https://colah.github.io/posts/2015-08-Understanding-LSTMs/