1. 迴圈神經網路的應用
2. 迴圈神經網路vs卷積神經網路
迴圈神經網路所做的任務
rnn和cnn的區別:
1. 基本結構
隱層的資料被存入到乙個「記憶」單元中;
存在「記憶」中的資料會被作為另外乙個輸入與原始輸入一起輸入到神經網路中。
2. 深度rnn
3. 雙向rnn
結構:
優勢:
當需要判斷乙個詞的語義時,需要從整個句子的角度進行判斷,因此需要正向rnn接收所有輸入後,再反向回顧整個句子的語義,從而判斷該詞語在本次輸入(語句)中的語義。
4. bptt演算法
bp演算法
可能會出現梯度消失的問題。
bptt演算法
通過鏈式求導後:
1. 傳統rnn
從上圖中bptt演算法的鏈式求導過程中可得:
下圖紅色為tan影象,綠色為tan的導數影象:
可以得到:
所以,傳統的rnn很容易出現梯度消失/梯度**現象。因此,針對以上現象,採取權重衰減/梯度截斷進行改進。
梯度消失會導致長時依賴問題,從而使得rnn隨著時間間隔的不斷增大,喪失學習到連線遠距離的資訊的能力。
2. lstm(long short-term memory)長短期記憶模型
lstm擁有三個門(遺忘門,輸入門,輸出門),來保護和控制細胞狀態
**輸入門(input gate):
輸出門(output gate):
3. lstm vs rnn
4. gru
下圖為lstm和gru:
差異:
相似:
下圖為lstm和gru的公式對比:
問題:gru中的公式取消了偏置項的計算,有什麼好處?
1. clockwise rnn(cw-rnn)
相比較於rnn:
2. 基於attention的rnn
注意力機制
示例如下:
當翻譯某個詞的時候,關注點不一樣
把feature map和權重相乘,進行加和(每個channel進行一遍)
通過h1生成乙個詞,計算概率(第一次)
再經過h1在生成乙個新的權重,然後再和feature map相乘,從而改變權重,達到改變注意力的目的。
迴圈神經網路 機器學習 迴圈神經網路知識要點
迴圈神經網路特點是可以挖掘出資料序列之間的關係資訊,實際使用中每乙個樣本的輸入是資料序列,也就是一系列的資料,其中的每個資料是乙個時間步。rnn層也是由乙個或者多個神經元組成的,每個神經元的輸入由兩部分構成,一部分是序列資料中的某乙個資料,另一部分是這個資料的前乙個資料經過迴圈層神經元時,神經元輸出...
迴圈神經網路
原文 迴圈神經網路也可以畫成下面這個樣子 對於語言模型來說,很多時候光看前面的詞是不夠的,比如下面這句話 我的手機壞了,我打算 一部新手機。可以想象,如果我們只看橫線前面的詞,手機壞了,那麼我是打算修一修?換一部新的?還是大哭一場?這些都是無法確定的。但如果我們也看到了橫線後面的詞是 一部新手機 那...
迴圈神經網路
原文 迴圈神經網路也可以畫成下面這個樣子 對於語言模型來說,很多時候光看前面的詞是不夠的,比如下面這句話 我的手機壞了,我打算 一部新手機。可以想象,如果我們只看橫線前面的詞,手機壞了,那麼我是打算修一修?換一部新的?還是大哭一場?這些都是無法確定的。但如果我們也看到了橫線後面的詞是 一部新手機 那...