こんな方におすすめ
深層学習・ディープラーニングでも必要な「Long Short-Term Memory : LSTM」の基本的な内容について知りたい.
Index
Long Short-Term Memory : LSTMとは
RNN のネットワークアーキテクチャを基本とした、拡張したモデル.
RNN との違い
LSTMは、計算グラフの構造が RNN と異なる.
以下が、RNN の計算グラフ.
このグラフに「記憶セル」と複数の「ゲート」という機構を搭載することでLSTMの計算グラフが出来上がる.
「記憶セル」と「ゲート」を注目してまとめる.
これらの概念に触れる前に、計算ノードを簡略的に表現する
「tanh」と表記があるものは同様の計算ノードを簡略したもの.
記憶セル
「記憶セル」の役割は、その名前の通り「記憶」・「情報を保持」する.
そのため、自身のLSTMレイヤ内の伝達しか行わない.
ゲート
「ゲート」の役割は、情報の量をコントロールすること.
「ゲート」としてのパラメータは0.0 ~ 1.0 の整数値で、どの程度の情報を流すかをコントロールする.
Outputゲート
「Outputゲート」は次の出力となる情報がどれだけ重要かどうかを判断する.
その名の通り、「Output」の情報のコントロールを行う.
Forgetゲート
「Forgetゲート」は「記憶セル」に作用するゲート.
「記憶セル」は次時刻への記憶セルにそのまま情報を伝えられるわけではない.
前時刻の「記憶セル」の情報が「Forgetゲート」によりどれだけ重要な情報かを判断する.(忘れさせられる)
新しい情報
「Forgetゲート」により、過去の記憶を忘れさせられた「記憶セル」は新しい情報を取得する.
Inputゲート
そしてまた、新しい情報がどれだけ重要かを判断する「Inputゲート」を設ける.
まとめ
このように、RNN のような単純な構造に「記憶セル」と複数の「ゲート」を搭載することで、 LSTMという新しいアーキテクチャを構築した.
参考
- LONG SHORTTERM MEMORY
書籍
- ゼロから作るDeep Learning 2
- 6 ゲート付きRNN
Web サイト
- colah’s blog : Understanding LSTM Networks