目錄
1. 雙向循環網絡 BRNN(Bidirectional RNN)
如果這篇文章對你有一點小小的幫助,請給個關注,點個贊喔~我會非常開心的~
0. 前言
本篇介紹標準的 RNN 的改造模型。
- 雙向循環網絡 BRNN(Bidirectional RNN)
- 深度循環網絡 Deep RNN
1. 雙向循環網絡 BRNN(Bidirectional RNN)
標準的 RNN 在時刻 的狀態只能從過去的序列以及當前的輸入中捕獲信息,無法使用到後面序列的信息。
BRNN 結合時間上從序列起點開始移動的 RNN 和另一個時間上從序列末尾開始移動的 RNN 。
這允許輸出單元能夠計算同時依賴於過去和未來且對時刻 的輸入值最敏感的表示。
BRNN 在每個時刻增加一個隱藏單元,如下圖所示(圖源:深度學習):
其中,隱藏單元 在時間上向前傳播,隱藏單元 在時間上向後傳播。
BRNN 的缺點是必須獲取了所有時刻的輸入之後,才能進行每一個時刻的輸出。
2. 深度循環網絡 Deep RNN
在標準的 RNN 中,只每一個時間上,只存在一個隱藏單元。
Deep RNN 是由多個隱藏層疊加而成,如下圖所示(圖源:吳恩達深度學習):
Deep RNN 中較低的層起到了將原始輸入轉化爲對更高層的隱藏狀態更適合表示的作用。
但是增加深度會帶來優化困難,一般情況下,更容易優化較淺的架構。
另一種 Deep RNN 是在時間步 到 間擴展深度,或者引入跳躍連接(圖源:深度學習):
因爲 RNN 在時間的維度上很大,所以一般不會構建很深的 RNN 。
如果這篇文章對你有一點小小的幫助,請給個關注,點個贊喔~我會非常開心的~