循環(huán)神經(jīng)網(wǎng)絡(luò) RNN

概述

循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks ,以下簡(jiǎn)稱RNN),它廣泛的用于自然語(yǔ)言處理中的語(yǔ)音識(shí)別,手寫書別以及機(jī)器翻譯等領(lǐng)域。 更多見 iii.run

而對(duì)于這類問題,RNN則比較的擅長(zhǎng)。那么RNN是怎么做到的呢?RNN假設(shè)我們的樣本是基于序列的。比如是從序列索引1到序列索引\tau的。對(duì)于這其中的任意序列索引號(hào)t,它對(duì)應(yīng)的輸入是對(duì)應(yīng)的樣本序列中的x^{(t)}。

而模型在序列索引號(hào)t位置的隱藏狀態(tài)h^{(t)},則由x^{(t)}和在t?1位置的隱藏狀態(tài)h^{(t?1)}共同決定。在任意序列索引號(hào)t,我們也有對(duì)應(yīng)的模型預(yù)測(cè)輸出o^{(t)}。

通過預(yù)測(cè)輸出o^{(t)}和訓(xùn)練序列真實(shí)輸出y^{(t)},以及損失函數(shù)L^{(t)},我們就可以用DNN類似的方法來(lái)訓(xùn)練模型,接著用來(lái)預(yù)測(cè)測(cè)試序列中的一些位置的輸出。

RNN模型

image

上圖中左邊是RNN模型沒有按時(shí)間展開的圖,如果按時(shí)間序列展開,則是上圖中的右邊部分。我們重點(diǎn)觀察右邊部分的圖。

這幅圖描述了在序列索引號(hào)t附近RNN的模型。其中:

  • x^{(t)}代表在序列索引號(hào)t時(shí)訓(xùn)練樣本的輸入。同樣的,x^{(t?1)}x^{(t+1)} 代表在序列索引號(hào)t?1t+1時(shí)訓(xùn)練樣本的輸入。

  • h^{(t)}代表在序列索引號(hào)t時(shí)模型的隱藏狀態(tài)h^{(t)}x^{(t)}h^{(t?1)}共同決定。

  • o^{(t)}代表在序列索引號(hào)t時(shí)模型的輸出。o^{(t)}只由模型當(dāng)前的隱藏狀態(tài)h^{(t)}決定。

  • L^{(t)}代表在序列索引號(hào)t時(shí)模型的損失函數(shù)。

  • y^{(t)}代表在序列索引號(hào)t時(shí)訓(xùn)練樣本序列的真實(shí)輸出。

  • U,W,V這三個(gè)矩陣是我們的模型的線性關(guān)系參數(shù),它在整個(gè)RNN網(wǎng)絡(luò)中是共享的,體現(xiàn)了RNN的模型的“循環(huán)反饋”的思想。

RNN前向傳播算法

對(duì)于任意一個(gè)序列索引t隱藏狀態(tài)h^{(t)}輸入x^{(t)}前一個(gè)隱藏狀態(tài)h^{(t-1)}得到。

hint: 我把隱藏狀態(tài)理解為時(shí)間序列中該時(shí)間事件的內(nèi)部真實(shí)狀態(tài)。

  • 隱藏狀態(tài)
    h^{(t)} = \sigma(z^{(t)}) = \sigma(Ux^{(t)} + Wh^{(t-1)} +b )
    其中 \sigma 為RNN的激活函數(shù),主要為tanh,b為線性偏執(zhí)。

  • 模型的輸出
    序列索引號(hào)t時(shí)模型的輸出o^{(t)}的表達(dá)式比較簡(jiǎn)單:
    o^{(t)} = Vh^{(t)} +c

  • 最終預(yù)測(cè)輸出
    在最終在序列索引號(hào)t時(shí)我們的預(yù)測(cè)輸出為:
    \hat{y}^{(t)} = \sigma(o^{(t)})
    通常由于RNN是識(shí)別類的分類模型,所以上面這個(gè)激活函數(shù)一般是softmax。

通過損失函數(shù)L^{(t)},比如對(duì)數(shù)似然損失函數(shù),我們可以量化模型在當(dāng)前位置的損失,即\hat{y}^{(t)}y^{(t)}的差距。

RNN小結(jié)

RNN雖然理論上可以很漂亮的解決序列數(shù)據(jù)的訓(xùn)練,但是它也像DNN一樣有梯度消失時(shí)的問題,當(dāng)序列很長(zhǎng)的時(shí)候問題尤其嚴(yán)重。

因此,上面的RNN模型一般不能直接用于應(yīng)用領(lǐng)域。在語(yǔ)音識(shí)別,手寫書別以及機(jī)器翻譯等NLP領(lǐng)域?qū)嶋H應(yīng)用比較廣泛的是基于RNN模型的一個(gè)特例LSTM。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容