隨著 RNN,尤其是 LSTM 架構(第 10.1 節)在 2010 年代迅速流行,許多論文開始嘗試簡化架構,希望保留結合內部狀態和乘法門機制的關鍵思想,但目的是加快速度上計算。門控循環單元 (GRU) (Cho等人,2014 年) 提供了 LSTM 記憶單元的簡化版本,通常可實現相當的性能,但具有計算速度更快的優勢(Chung等人,2014 年)。
import tensorflow as tf
from d2l import tensorflow as d2l
10.2.1。重置門和更新門
在這里,LSTM 的三個門被兩個替換:重置門和更新門。與 LSTM 一樣,這些門被賦予 sigmoid 激活,迫使它們的值位于區間內(0,1). 直覺上,重置門控制著我們可能還想記住多少之前的狀態。同樣,更新門將允許我們控制新狀態中有多少只是舊狀態的副本。 圖 10.2.1說明了 GRU 中重置門和更新門的輸入,給定當前時間步的輸入和前一時間步的隱藏狀態。兩個門的輸出由兩個具有 sigmoid 激活函數的全連接層給出。
在數學上,對于給定的時間步長t,假設輸入是一個小批量Xt∈Rn×d(示例數量:n, 輸入數:d) 而前一個時間步的隱藏狀態是 Ht?1∈Rn×h(隱藏單元的數量:h). 然后,復位門 Rt∈Rn×h和更新門 Zt∈Rn×h計算如下:
在哪里 Wxr,Wxz∈Rd×h和 Whr,Whz∈Rh×h是權重參數和 br,bz∈R1×h是偏置參數。
評論
查看更多