循環神經網絡(RNN)之入門篇

一、初識RNN

1、 循環神經網絡是指隨着時間的推移,重複發生的結構。在自然語言處理,語音圖像等多個領域均有着廣泛的使用。RNN網絡和其它網絡的不同之處在於RNN可以實現某種記憶功能,是進行時間序列分析的最好選擇。好像人類能夠憑藉自己過往的記憶更好的認識這個世界一樣。RNN也實現了類似於人腦的這一機制,對所處理過的信息留存有一定的記憶,而不像其他類型的神經網絡並不能對處理過的信息留存記憶。
2、 重複發生的結構概括性的描述了,RNN和CNN類似,通過共用一組權值來減少運算量。
3、 通過時間序列,我們將輸入的內容按時間先後進行輸入,通過計算將tt時刻之前總結的內容和tt時刻的內容一起輸入進行運算,則表達了記憶的特徵

二、RNN原理

1、
在這裏插入圖片描述

整個網絡中只有簡單的輸入、輸出以及網絡參數狀態 ,每個時間點輸入的都是類似於該狀態。一個典型的RNN網絡包含一個輸入X一個輸出h一個神經網絡單元A。和普通的神經網絡不同的是,RNN網絡的神經網絡單元A不僅僅與輸入和輸出存在聯繫,其與自身也存在一個迴路。這種網絡結構就揭示了RNN的主要工作原理:即上一個時刻的網絡狀態信息將會作用於下一個時刻的網絡狀態。
2、1中的圖展開可得

在這裏插入圖片描述

在這裏插入圖片描述
數學公式的表達如下
在這裏插入圖片描述

在上圖右側爲RNN的展開形式,由於RNN一般處理的是序列信息,我們將以時間序列的例子來學習和解釋。等號右邊的等價RNN網絡中最初的輸入狀態爲Xt1X_{t-1},輸出爲Ot1O_{t-1},這代表着在(t-1)的時刻RNN網絡的輸入爲Xt1X_{t-1},輸出爲Ot1O_{t-1},網絡神經元在(t-1)時刻的狀態保存在了St1S_{t-1}中。當下一個時刻(t)時刻到來時,此時網絡神經元的狀態不僅僅由(t)時刻的輸入XtX_t所決定,也由(t-1)時刻的保存的神經元狀態St1S_{t-1}所決定。之後的所有情況以此類推。
實例: 假設現有一句話 爲“我 是 中國 _”,我們的輸入框爲Xt1=X_{t-1}=‘我’ Xt=X_{t}=‘是’ Xt+1=X_{t+1}=‘中國’ ,則在相應的輸出框中理論上應該爲 Ot1=O_{t-1}=‘是’ Ot=O_{t}=‘中國’ 通過預測,我們可以得出Ot+1O_{t+1}大概率爲Ot+1=O_{t+1}=‘人’

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