詳解RNN、LSTM、GRU

寫在前面

本博客會分三大部分:
1.RNN詳解,這塊會介紹到雙向RNN,也會簡單提一下深度RNN模型
2.LSTM內部結構詳解
3.GRU單元詳解

1. RNN詳解

在這裏插入圖片描述
首先要說明一點:圖中所有的W相等,所有的U相等,所有的V相等,即RNN實現參數共享

1.1符號解釋:考慮St結點,t代表t時刻,St就代表t時刻記憶單元的值,St-1,St,St+1構成一個記憶單元,整體叫做循環核

①W權重矩陣:指的是上一個隱藏結點的值St-1所需要乘的參數矩陣,它會對St的值貢獻一部分
②U權重矩陣:Xt所需要成的參數矩陣,它也會對St的值貢獻一部分。
(TIPS:等於說St的值由兩部分組成)
③V權重矩陣:St所需要的參數矩陣,矩陣點乘的結果就是t時刻的輸出Ot

從圖中可以看出,RNN其實就是比全連接層多了一個參數權重W

1.2 RNN的計算過程

在這裏插入圖片描述

  • 在前向傳播時,記憶體內的存儲的狀態信息St在每一時刻都會被刷新,最後輸出Ot+1,每個記憶體中記憶單元的個數根據需求選取。例如用四個單詞預測一個,就選取4個記憶單元作爲一個循環核的記憶體。

1.3 雙向循環網絡(BRNN)

在這裏插入圖片描述
在這裏插入圖片描述

1.4 深度雙向循環網絡

在這裏插入圖片描述
在這裏插入圖片描述

2. LSTM詳解

2.1 爲什麼要有LSTM(等價與問RNN中的缺陷)

RNN中會存在梯度消失問題,當然也存在梯度爆炸問題,梯度爆炸可以通過梯度剪裁或者降低學習率來解決,而梯度消失則很難解決。吳恩達教授講了一個例子很生動,這裏貼出來:
The cat,which already ate… … …(很多食物),was full
The cats ,which already ate… … …(很多食物),were full
我們如何捕捉到cat單複數的問題,這需要在was/were這裏獲取到cat/cats的信息,然後我們都知道深度網絡模型中都存在梯度消失問題,這是我們丟失了以前的信息。我們稱這種現象也叫“短期依賴”。

  • 下面是梯度消失導致的現象,參數幾乎不再更新。
    在這裏插入圖片描述

2.2 LSTM內部原理(Long Short-Term Memory)

LSTM 和 GRU 是解決短時記憶問題的解決方案,它們具有稱爲“門”的內部機制,可以調節信息流。
在這裏插入圖片描述
這些“門”可以知道序列中哪些重要的數據是需要保留,而哪些是要刪除的。 隨後,它可以沿着長鏈序列傳遞相關信息以進行預測,幾乎所有基於遞歸神經網絡的技術成果都是通過這兩個網絡實現的。

LSTM 和 GRU 可以在語音識別、語音合成和文本生成中找到,你甚至可以用它們爲視頻生成字幕。對 LSTM 和 GRU 擅長處理長序列的原因,到這篇文章結束時你應該會有充分了解。

LSTM 的控制流程與 RNN 相似,它們都是在前向傳播的過程中處理流經細胞的數據,不同之處在於 LSTM 中細胞的結構和運算有所變化。
在這裏插入圖片描述
這一系列運算操作使得 LSTM具有能選擇保存信息或遺忘信息的功能。咋一看這些運算操作時可能有點複雜,但沒關係下面將帶你一步步瞭解這些運算操作。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
接下來了解一下門結構的功能。LSTM 有三種類型的門結構:遺忘門、輸入門和輸出門。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
讓我們再梳理一下。遺忘門確定前一個步長中哪些相關的信息需要被保留;輸入門確定當前輸入中哪些信息是重要的,需要被添加的;輸出門確定下一個隱藏狀態應該是什麼。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

2.3 GRU(Gate Recurrent Units)

知道了 LSTM 的工作原理之後,來了解一下 GRU。GRU 是新一代的循環神經網絡,與 LSTM 非常相似。與 LSTM 相比,GRU 去除掉了細胞狀態,使用隱藏狀態來進行信息的傳遞。它只包含兩個門:更新門和重置門。
在這裏插入圖片描述
在這裏插入圖片描述

  • 相比於RNN,我們只是中間隱藏層的結構發生了變化。
    在這裏插入圖片描述
  • σ爲sigmoid函數,通過這個函數可以將數據變換爲0-1範圍內的數值,從而來充當門控信號
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

3. 總結

GRU輸入輸出的結構與普通的RNN相似,其中的內部思想與LSTM相似。

與LSTM相比,GRU內部少了一個”門控“,參數比LSTM少,但是卻也能夠達到與LSTM相當的功能。考慮到硬件的計算能力和時間成本,因而很多時候我們也就會選擇更加”實用“的GRU啦。

4. 參考文獻

參考文獻1
參考文獻2

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章