【干货】人人都能看懂的LSTM
推薦閱讀時間:8min~13min
推薦理由:這是在看了臺大李宏毅教授的深度學習視頻之后的一點總結和感想。看完介紹的第一部分RNN尤其LSTM的介紹之后,整個人醍醐灌頂。
循環神經網絡(Recurrent Neural Network,RNN)是一種用于處理序列數據的神經網絡。相比一般的神經網絡來說,他能夠處理序列變化的數據。比如某個單詞的意思會因為上文提到的內容不同而有不同的含義,RNN就能夠很好地解決這類問題。
先簡單介紹一下一般的RNN。
其主要形式如下圖所示(圖片均來自臺大李宏毅教授的PPT):
通過序列形式的輸入,我們能夠得到如下形式的RNN。
長短期記憶(Long short-term memory, LSTM)是一種特殊的RNN,主要是為了解決長序列訓練過程中的梯度消失和梯度爆炸問題。簡單來說,就是相比普通的RNN,LSTM能夠在更長的序列中有更好的表現。
LSTM結構(圖右)和普通RNN的主要輸入輸出區別如下所示。
下面具體對LSTM的內部結構來進行剖析。
下面開始進一步介紹這四個狀態在LSTM內部的使用。(敲黑板)
LSTM內部主要有三個階段:
以上,就是LSTM的內部結構。通過門控狀態來控制傳輸狀態,記住需要長時間記憶的,忘記不重要的信息;而不像普通的RNN那樣只能夠“呆萌”地僅有一種記憶疊加方式。對很多需要“長期記憶”的任務來說,尤其好用。
但也因為引入了很多內容,導致參數變多,也使得訓練難度加大了很多。因此很多時候我們往往會使用效果和LSTM相當但參數更少的GRU來構建大訓練量的模型。
對于GRU我會在以后的文章中進行介紹。
總結
以上是生活随笔為你收集整理的【干货】人人都能看懂的LSTM的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么程序员发现不了自己的BUG?
- 下一篇: 一位像素艺术家用39张动图,将大自然的唯