(譯) LSTM 網絡原理介紹

原文鏈接: http://colah.github.io/posts/2015-08-Understanding-LSTMs/

RNN基本結構

 

                

 上述兩圖分別爲閉環結構和閉環展開結構

    RNN相對傳統的ANN網絡結構實現了信息的保留,具有一定的記憶功能。可以將過去的信息應用到當前的任務中。

LSTM基本結構

    爲完成當前任務如果僅僅需要短期的信息而不需要長期的信息可以使用RNN。但是如果如果任務需要更多的上下文信息,僅僅依靠少量的過去信息無法完成準確的預測。也就是過去信息和當前任務存在較大的跳動,甚至需要未來的信息才能完成預測。這時經典的RNN就無法滿足需要why??? http://ai.dinfo.unifi.it/paolo//ps/tnn-94-gradient.pdf用梯度下降學習長期依賴模型是困難的)而需要特殊的時間序列模型LSTM。LSTMs 就是用來解決長期依賴問題,這類模型可以記住長期信息。


         經典的RNN模型中的激活函數可能就是一個簡單的tanh函數,但是LSTMs引入了四個門結構,具有增加或者移除信息狀態的功能。門限可以有選擇的讓信息通過,它是由sigmoid神經網絡層和pointwise乘法操作構成的。sigmoid層輸入數值0-1 代表可以通過的比例,輸入爲0時代表不允許通過,輸出爲1時代表允許全部通過。

 

X 代表輸入; h代表輸出;C 代表狀態其大小是[h,x]

 

1、  forget gate 忘記門:

忘記門輸入是ht-1和xt,輸出是ft(介於0-1),ft作用於Ct-1。

當ft 爲1 時,代表完全保留該值;

當ft 爲0時, 代表完全捨去該值

2、  input gate 輸入門:


存儲什麼樣的新信息包括兩步,第一步輸入門決定哪些值可以更新,第二步tanh層創造候選向量

It是sigmoid函數輸出結果表示是否產生輸入,其取值範圍是0-1

Ct~是新產生的候選向量

忘記門ft乘Ct-1 :忘掉決定忘掉的早期信息

其結果加上it*Ct~(候選向量通過it縮放後表示多大程度上更新狀態值)


通過忘記門和輸入門的組合可以表達出這樣的信息:多大程度上忘記舊的信息以及多大程度上更新新的信息

 

Output gate 輸出門:

首先sigmoid函數決定輸出的縮放比例ot,然後cell 狀態通過tanh函數,其結果與ot相乘。

 

LSTMs 變形之增加窺視孔的LSTM

在每個sigmoid函數的輸入中增加cell的內容

 

LSTMs 變形之取消輸入門

用1-ft 代替it 也就是當發生忘記的時候才產生輸入,否則不產生輸入


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