循環(huán)神經(jīng)網(wǎng)絡(luò)
本節(jié)介紹循環(huán)神經(jīng)網(wǎng)絡(luò),下圖展示了如何基于循環(huán)神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)語言模型库物。我們的目的是基于當(dāng)前的輸入與過去的輸入序列,預(yù)測序列的下一個(gè)字符。循環(huán)神經(jīng)網(wǎng)絡(luò)引入一個(gè)隱藏變量H次洼,用Ht表示H在時(shí)間步t的值。Ht的計(jì)算基于Xt和Ht?1遇骑,可以認(rèn)為Ht記錄了到當(dāng)前字符為止的序列信息卖毁,利用Ht對序列的下一個(gè)字符進(jìn)行預(yù)測。
循環(huán)神經(jīng)網(wǎng)絡(luò)的構(gòu)造
我們先看循環(huán)神經(jīng)網(wǎng)絡(luò)的具體構(gòu)造落萎。假設(shè)Xt∈Rn×d是時(shí)間步t的小批量輸入亥啦,Ht∈Rn×h是該時(shí)間步的隱藏變量,則:
Ht=?(XtWxh+Ht?1Whh+bh).
其中练链,Wxh∈Rd×h翔脱,Whh∈Rh×h,bh∈R1×h媒鼓,?函數(shù)是非線性激活函數(shù)届吁。由于引入了Ht?1Whh错妖,Ht能夠捕捉截至當(dāng)前時(shí)間步的序列的歷史信息,就像是神經(jīng)網(wǎng)絡(luò)當(dāng)前時(shí)間步的狀態(tài)或記憶一樣疚沐。由于Ht的計(jì)算基于Ht?1暂氯,上式的計(jì)算是循環(huán)的,使用循環(huán)計(jì)算的網(wǎng)絡(luò)即循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network)濒旦。
在時(shí)間步t株旷,輸出層的輸出為:
Ot=HtWhq+bq.
其中Whq∈Rh×q,bq∈R1×q尔邓。