這篇文章給大家介紹怎樣理解門(mén)控循環(huán)單元、GRU,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
在循環(huán)神經(jīng)?絡(luò)中的梯度計(jì)算?法中,我們發(fā)現(xiàn),當(dāng)時(shí)間步數(shù)較?或者時(shí)間步較小時(shí),循環(huán)神經(jīng)?絡(luò)的梯度較容易出現(xiàn)衰減或爆炸。雖然裁剪梯度可以應(yīng)對(duì)梯度爆炸,但?法解決梯度衰減的問(wèn)題。通常由于這個(gè)原因,循環(huán)神經(jīng)?絡(luò)在實(shí)際中較難捕捉時(shí)間序列中時(shí)間步距離較?的依賴(lài)關(guān)系。
門(mén)控循環(huán)神經(jīng)?絡(luò)(gated recurrent neural network)的提出,正是為了更好地捕捉時(shí)間序列中時(shí)間步距離較?的依賴(lài)關(guān)系。它通過(guò)可以學(xué)習(xí)的?來(lái)控制信息的流動(dòng)。其中,門(mén)控循環(huán)單元(gatedrecurrent unit,GRU)是?種常?的門(mén)控循環(huán)神經(jīng)?絡(luò)。
GRU它引?了重置?(reset gate)和更新?(update gate)的概念,從而修改了循環(huán)神經(jīng)?絡(luò)中隱藏狀態(tài)的計(jì)算?式。
門(mén)控循環(huán)單元中的重置?和更新?的輸?均為當(dāng)前時(shí)間步輸?
與上?時(shí)間步隱藏狀態(tài)
,輸出由激活函數(shù)為sigmoid函數(shù)的全連接層計(jì)算得到。 如下圖所示:
具體來(lái)說(shuō),假設(shè)隱藏單元個(gè)數(shù)為 h,給定時(shí)間步 t 的小批量輸?
(樣本數(shù)為n,輸?個(gè)數(shù)為d)和上?時(shí)間步隱藏狀態(tài)
。重置?
和更新?
的計(jì)算如下:
)
)
sigmoid函數(shù)可以將元素的值變換到0和1之間。因此,重置?
和更新?
中每個(gè)元素的值域都是[0,
1]。
接下來(lái),?控循環(huán)單元將計(jì)算候選隱藏狀態(tài)來(lái)輔助稍后的隱藏狀態(tài)計(jì)算。我們將當(dāng)前時(shí)間步重置?的輸出與上?時(shí)間步隱藏狀態(tài)做按元素乘法(符號(hào)為⊙)。如果重置?中元素值接近0,那么意味著重置對(duì)應(yīng)隱藏狀態(tài)元素為0,即丟棄上?時(shí)間步的隱藏狀態(tài)。如果元素值接近1,那么表?保留上?時(shí)間步的隱藏狀態(tài)。然后,將按元素乘法的結(jié)果與當(dāng)前時(shí)間步的輸?連結(jié),再通過(guò)含激活函數(shù)tanh的全連接層計(jì)算出候選隱藏狀態(tài),其所有元素的值域?yàn)閇-1,1]。
具體來(lái)說(shuō),時(shí)間步 t 的候選隱藏狀態(tài)
的計(jì)算為:
W_{hh}+b_h))
從上?這個(gè)公式可以看出,重置?控制了上?時(shí)間步的隱藏狀態(tài)如何流?當(dāng)前時(shí)間步的候選隱藏狀態(tài)。而上?時(shí)間步的隱藏狀態(tài)可能包含了時(shí)間序列截?上?時(shí)間步的全部歷史信息。因此,重置?可以?來(lái)丟棄與預(yù)測(cè)?關(guān)的歷史信息。
最后,時(shí)間步t的隱藏狀態(tài)
的計(jì)算使?當(dāng)前時(shí)間步的更新?
來(lái)對(duì)上?時(shí)間步的隱藏狀態(tài)
和當(dāng)前時(shí)間步的候選隱藏狀態(tài)
做組合:
值得注意的是,更新?可以控制隱藏狀態(tài)應(yīng)該如何被包含當(dāng)前時(shí)間步信息的候選隱藏狀態(tài)所更新,如上圖所?。假設(shè)更新?在時(shí)間步之間?直近似1。那么,在時(shí)間步
間的輸?信息?乎沒(méi)有流?時(shí)間步 t 的隱藏狀態(tài)
實(shí)際上,這可以看作是較早時(shí)刻的隱藏狀態(tài)
直通過(guò)時(shí)間保存并傳遞?當(dāng)前時(shí)間步 t。這個(gè)設(shè)計(jì)可以應(yīng)對(duì)循環(huán)神經(jīng)?絡(luò)中的梯度衰減問(wèn)題,并更好地捕捉時(shí)間序列中時(shí)間步距離較?的依賴(lài)關(guān)系。
我們對(duì)?控循環(huán)單元的設(shè)計(jì)稍作總結(jié):
重置?有助于捕捉時(shí)間序列?短期的依賴(lài)關(guān)系;
更新?有助于捕捉時(shí)間序列??期的依賴(lài)關(guān)系。
關(guān)于怎樣理解門(mén)控循環(huán)單元、GRU就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。