乾貨 | 循環神經網路LSTM的數學過程

  • 2019 年 10 月 7 日
  • 筆記

投稿作者來自電子科技大學

引言

長短時記憶(long short term memory,LSTM)是一種有效的鏈式循環神經網路(recurrent neural network,R2 NN1),被廣泛用於語言模型、機器翻譯、語音識別等領域。[1]本文具體就LSTM的具體實現做出推導。

LSTM模型描述

01

因為傳統的RNN在間隔不斷增大的同時,會喪失學習到連接如此遠的資訊的能力。這個問題簡稱長期依賴問題,為了解決這個問題,LSTM通過刻意的設計來避免長期依賴問題。以下就是LSTM的結構圖:

展開以後變成:

它與RNN的簡單模型不一樣的地方在於:

它是由記憶細胞、遺忘門、輸入門、輸出門組成。記憶細胞負責存儲歷史資訊, 通過一個狀態參數來記錄和更新歷史資訊;三個門結構則通過Sigmoid函數決定資訊的取捨, 從而作用於記憶細胞。[2]

遺忘門用來選擇性忘記多餘或次要的記憶

輸入門決定我們需要更新什麼值

輸出門決定細胞狀態的哪個部分輸出出去

模型抽象和數學符號的說明

02

為了方便數學原理的推導,這裡我們用下面的簡略圖代替:

前向傳播演算法

03

前向傳播總體上就是對三個門進行計算,然後通過這三個門決定當前細胞的隱藏狀態,更新當前記憶和過去的記憶,最終再計算出輸出值傳入下一次前向網路中:因為三個門的情況不僅取決於輸入向量Xt,還取決於ht-1

反向傳播演算法

04