迴圈神經網路學習

2022-07-14 13:09:19 字數 2080 閱讀 2151

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層也是由乙個或者多個神經元組成的,每個神經元的輸入由兩部分構成,一部分是序列資料中的某乙個資料,另一部分是這個資料的前乙個資料經過迴圈層神經元時,神經元輸出...

迴圈神經網路

原文 迴圈神經網路也可以畫成下面這個樣子 對於語言模型來說,很多時候光看前面的詞是不夠的,比如下面這句話 我的手機壞了,我打算 一部新手機。可以想象,如果我們只看橫線前面的詞,手機壞了,那麼我是打算修一修?換一部新的?還是大哭一場?這些都是無法確定的。但如果我們也看到了橫線後面的詞是 一部新手機 那...

迴圈神經網路

原文 迴圈神經網路也可以畫成下面這個樣子 對於語言模型來說,很多時候光看前面的詞是不夠的,比如下面這句話 我的手機壞了,我打算 一部新手機。可以想象,如果我們只看橫線前面的詞,手機壞了,那麼我是打算修一修?換一部新的?還是大哭一場?這些都是無法確定的。但如果我們也看到了橫線後面的詞是 一部新手機 那...