1. 程式人生 > >009-LSTM網路-長短記憶網路

009-LSTM網路-長短記憶網路

基於RNN網路的2個缺陷(全部記憶,梯度消失),現有RNN網路的升級版LSTM

LSTM要做的一件事就是本次有選擇的記憶用到下一次的遞迴工作中。

LSTM網路中,與RNN最大的區別,也是LSTM網路中最核心的東西就是控制記憶的引數C了

C是一個矩陣,用來和輸入做內積,用實際的數字控制輸入哪些該遺忘,哪些該記憶。比如0,0.1,0.5,1,0.8....等等

先來複習一下神經網路中的門單元:

 

決定丟棄(遺忘)的資訊

是上一次的輸出值

表示本次的輸入資料值

表示經過sigmoid函式將本次的輸入對映完成之後,進行本模組內的輸出,輸出值在0~1

表示上一個神經元傳過來的記憶矩陣,決定哪些該遺忘,與

進行內積,這樣就可以決定哪些該遺忘。

 

 

決定要保留(記憶)的資訊:

 

更新細胞資訊:

表示要遺忘的資訊,

表示要記憶的資訊

那麼就有一個新的作用域之後的工作。

 

 

得到輸出值:

我們最終所需要的就是

表示原始資料,也就是什麼都沒有忘記的資料。

那麼就用上一步更新完的來和內積得到記憶結果

 

 

整體LSTM網路的架構:

實際應用中,LSTM使用的是比RNN多的。