GRU及雙向RNN介紹

GRU
假設我們已經熟知循環神經網絡(RNN)及長短時間記憶網絡(LSTM)。相比於簡單的RNN,LSTM增加了記憶單元(memory cell)、輸入門(input gate)、遺忘門(forget gate)及輸出門(output gate),這些門及記憶單元組合起來大大提升了RNN處理遠距離依賴問題的能力。
RNN:

Image Name

Ht=ϕ(XtWxh+Ht1Whh+bh) H_{t} = ϕ(X_{t}W_{xh} + H_{t-1}W_{hh} + b_{h})

長短期記憶long short-term memory

遺忘門:控制上一時間步的記憶細胞
輸入門:控制當前時間步的輸入
輸出門:控制從記憶細胞到隱藏狀態
記憶細胞:⼀種特殊的隱藏狀態的信息的流動

Image Name

It=σ(XtWxi+Ht1Whi+bi)Ft=σ(XtWxf+Ht1Whf+bf)Ot=σ(XtWxo+Ht1Who+bo)C~t=tanh(XtWxc+Ht1Whc+bc)Ct=FtCt1+ItC~tHt=Ottanh(Ct) I_t = σ(X_tW_{xi} + H_{t−1}W_{hi} + b_i) \\ F_t = σ(X_tW_{xf} + H_{t−1}W_{hf} + b_f)\\ O_t = σ(X_tW_{xo} + H_{t−1}W_{ho} + b_o)\\ \widetilde{C}_t = tanh(X_tW_{xc} + H_{t−1}W_{hc} + b_c)\\ C_t = F_t ⊙C_{t−1} + I_t ⊙\widetilde{C}_t\\ H_t = O_t⊙tanh(C_t)

GRU:

Image Name

Rt=σ(XtWxr+Ht1Whr+br)Zt=σ(XtWxz+Ht1Whz+bz)H~t=tanh(XtWxh+(RtHt1)Whh+bh)Ht=ZtHt1+(1Zt)H~t R_{t} = σ(X_tW_{xr} + H_{t−1}W_{hr} + b_r)\\ Z_{t} = σ(X_tW_{xz} + H_{t−1}W_{hz} + b_z)\\ \widetilde{H}_t = tanh(X_tW_{xh} + (R_t ⊙H_{t−1})W_{hh} + b_h)\\ H_t = Z_t⊙H_{t−1} + (1−Z_t)⊙\widetilde{H}_t

GRU是Cho等人在LSTM上提出的簡化版本,也是RNN的一種擴展,如下圖所示。GRU單元只有兩個門:

重置門(reset gate):如果重置門關閉,會忽略掉歷史信息,即歷史不相干的信息不會影響未來的輸出。
更新門(update gate):將LSTM的輸入門和遺忘門合併,用於控制歷史信息對當前時刻隱層輸出的影響。如果更新門接近1,會把歷史信息傳遞下去。
RNN存在的問題:梯度較容易出現衰減或爆炸(BPTT)
⻔控循環神經⽹絡:捕捉時間序列中時間步距離較⼤的依賴關係

• 重置⻔有助於捕捉時間序列⾥短期的依賴關係;
• 更新⻔有助於捕捉時間序列⾥⻓期的依賴關係。

雙向循環神經網絡

雙向循環神經網絡,這裏介紹Bengio團隊在論文[1,2]中提出的另一種結構。該結構的目的是輸入一個序列,得到其在每個時刻的特徵表示,即輸出的每個時刻都用定長向量表示到該時刻的上下文語義信息。

具體來說,該雙向循環神經網絡分別在時間維以順序和逆序——即前向(forward)和後向(backward)——依次處理輸入序列,並將每個時間步RNN的輸出拼接成爲最終的輸出層。這樣每個時間步的輸出節點,都包含了輸入序列中當前時刻完整的過去和未來的上下文信息。下圖展示的是一個按時間步展開的雙向循環神經網絡。該網絡包含一個前向和一個後向RNN,其中有六個權重矩陣:輸入到前向隱層和後向隱層的權重矩陣(W1,W3),隱層到隱層自己的權重矩陣(W2,W5),前向隱層和後向隱層到輸出層的權重矩陣(W4,W6)。注意,該網絡的前向隱層和後向隱層之間沒有連接。
在這裏插入圖片描述
【1】Cho K, Van Merriënboer B, Gulcehre C, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation[C]//Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), 2014: 1724-1734.

【2】Bahdanau D, Cho K, Bengio Y. Neural machine translation by jointly learning to align and translate[C]//Proceedings of ICLR 2015, 2015.

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