LSTM(Long Short-Term Memory)和LSTM例子理解

What is LSTM

LSTM(Long Short-Term Memory)是長短時間記憶網絡,是一種時間遞歸神經網絡,適合於處理和預測時間序列中間隔和延遲相對較長的重要事件。
LSTM 已經在科技領域有了多種應用。基於 LSTM 的系統能夠學習翻譯語言、控制機器人、圖像分析、文檔摘要、語音識別圖像識別、手寫識別、控制聊天機器人、預測疾病、點擊率和股票、合成音樂等等任務。css

LSTM

這裏寫圖片描述

LSTM是爲了解決RNN在長期依賴方面的問題,以解決隨着梯度降低產生的梯度消失(返回的數值在通過每一層神經網絡的時候,乘以一個小於一的權重值,在必定次數以後,返回的數值消失【返回的數值接近於0】),或者是梯度爆炸(返回的數值在通過每一層神經網絡的時候,乘以一個大於一的權重值,在必定次數以後,返回的數值爆炸【返回的數值接近於無窮大】)
LSTM實在傳統的RNN的每一層的輸入層,神經網絡層,輸出層上加入一個處理函數:
1.在輸入層以後添加一個GET()函數用於判斷是否要在只有的神經網絡的Train中使用當前時刻的輸入信息。
2.在神經網絡層上添加一個FORGET()函數用於判斷是否須要以前時刻神經網絡Train產生的結果,來做爲當前時刻的神經網絡Train的輸入信息。或者將其暫時忘記。
3.在輸出層以後添加一個GET()函數用於判斷是否要讀取當前M中產生的信息。
因爲加入了以上三個函數,LSTM可以較好的完成RNN在長期依賴方面的問題。獲取更好的Train結果。markdown

LSTM例子——論如何快速通關仙劍奇俠傳一

正如咱們所知道的經典單機遊戲仙劍奇俠傳一是一個主線劇情+支線劇情的單機扮演類遊戲,咱們能夠經過不斷的與劇情任務(主線劇情或支線劇情)的互動來推進遊戲向前發展。網絡

對比於LSTM,RNN就是通常玩家。咱們能夠這樣理解整個從通常的RNN推動的順序能夠看作是仙劍的主線劇情(標準結局,Stand End or Sad End),毫無疑問,若是咱們只是和RNN同樣玩了個Stand End,是難以讓咱們知足的。app

因此,LSTM就登場啦。在骨灰級玩家LSTM的操做之下,咱們學會了開發支線劇情,存檔操做等等一系列的操做,就使得咱們有了更好的(月如版隱藏結局與靈兒版隱藏結局,Happy End)。
在這裏的LSTM開發支線劇情,存檔操做等等一系列的操做就是咱們上面所講述輸入層GET()函數、神經網絡層FORGET()函數、輸出層GET()函數的做用。咱們能夠這樣理解這三個函數:
輸入層GET()函數就是要不要將分線劇情考慮到主線劇情之中(要不要作支線任務,以重不重要,會對結果產生怎麼樣影響來決定進行仍是忽略)。
神經網絡層FORGET()函數(分線劇情是否十分重要,需不須要咱們暫時忘記主線劇情)。
輸出層GET()函數(這一個分線劇情會對咱們產生什麼影響,是保留仍是消除它的做用)。函數

這裏寫圖片描述

PS:好吧,我認可我是標題黨,我也認可圖片不是仙一。學習

相關文章
相關標籤/搜索