# LSTM ## 定義 LSTM(Long Short-Term Memory、長短期記憶)は、標準的な [[RNN]] が長期依存を実際の学習で捉えにくい問題に対処するためのゲート付き再帰型ニューラルネットワークである。セル状態 $C_t$ を時間方向へ伝え、忘却ゲート、入力ゲート、出力ゲートによって情報の保持、追加、読み出しを成分ごとに制御する。(Source: [[@2026__30papers__Understanding LSTM Networks]]) ## 構造 ### セル状態 セル状態は時間方向にほぼ線形な経路を持つ内部記憶である。更新は次式のように、過去の状態を忘却ゲートで減衰した項と、候補値を入力ゲートで選択した項の和として表せる。 $ C_t = f_t * C_{t-1} + i_t * \tilde{C}_t $ この加法的な更新経路により、標準 RNN の単一の $\tanh$ 変換を時刻ごとに反復する場合よりも、長い期間にわたって情報を保持しやすい。(Source: [[@2026__30papers__Understanding LSTM Networks]]) ### 忘却ゲート $ f_t = \sigma(W_f [h_{t-1}, x_t] + b_f) $ 直前のセル状態 $C_{t-1}$ の各成分をどの程度保持するかを0から1の範囲で決める。(Source: [[@2026__30papers__Understanding LSTM Networks]]) ### 入力ゲート $ i_t = \sigma(W_i [h_{t-1}, x_t] + b_i) $ $ \tilde{C}_t = \tanh(W_C [h_{t-1}, x_t] + b_C) $ 入力ゲートが更新対象を選び、候補値がセル状態へ追加できる新しい内容を表す。(Source: [[@2026__30papers__Understanding LSTM Networks]]) ### 出力ゲート $ o_t = \sigma(W_o [h_{t-1}, x_t] + b_o) $ $ h_t = o_t * \tanh(C_t) $ セル状態のうち現在時刻の出力として必要な成分を、隠れ状態 $h_t$ として読み出す。(Source: [[@2026__30papers__Understanding LSTM Networks]]) ## 主な変種 - **覗き穴結合**: ゲートがセル状態を直接参照する。 - **忘却・入力ゲートの結合**: 情報を忘れる操作と新しい情報を入れる操作を一つの決定にする。 - **GRU**: 忘却・入力ゲートを更新ゲートへ統合し、セル状態と隠れ状態も統合する。 (Source: [[@2026__30papers__Understanding LSTM Networks]]) ## 正則化 標準的なドロップアウトを時間再帰結合へ適用すると、過去から運ばれる情報が時刻ごとに繰り返し破損する。[[ドロップアウト]]を入力、層間、出力の非再帰結合だけへ適用し、時間再帰結合を保つと、長期記憶を壊さずに大規模LSTMの過学習を抑えられる。深さ$L$のネットワークでは、過去入力から将来出力へ至る経路がドロップアウトを受ける回数は系列長に依存せず$L+1$回となる。(Source: [[@2026__30papers__Recurrent Neural Network Regularization]]) ## 横断的知見 - LSTM は標準 RNN の**状態更新則**をゲート付き加法更新へ変えることで長期情報を学習しやすくする一方、固定次元状態へ系列を圧縮するという RNN の基本形式は維持する。[[joisino-トランスフォーマーはRNN-2024]] が示す状態次元のスペクトルと合わせると、LSTM は「固定次元圧縮を捨てる」のではなく「圧縮された状態の保持と上書きを学習可能にする」解法と位置づけられる。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[joisino-トランスフォーマーはRNN-2024]]) - 2015年の記事が長期依存への次の方向としてアテンションを挙げたのに対し、後年の見方では [[Transformer]] のアテンションも状態表現を変換すれば RNN として記述できる。LSTM からアテンションへの移行は「再帰の放棄」だけでなく、情報を蓄積する状態の次元と参照方法を変えた転換として読める。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[joisino-トランスフォーマーはRNN-2024]]) - **ゲート機構の説明と文字生成実験は、LSTMの機構と挙動を補完的に示す**: `Understanding LSTM Networks`は忘却・入力・出力ゲートによるセル状態更新を分解して説明する。一方、Karpathyの実験は同じLSTMがURL内外・引用符内外に対応するセルを自発的に形成し、局所構文を生成することを示す。ただしLaTeX環境や変数名の長距離整合性には失敗し、ゲートが長期依存を改善しても固定次元状態の限界を解消しないことが挙動から確認できる。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]]) - [[Neural Turing Machine]]はLSTMの消去・追加というゲート付き更新を、固定次元セル状態からアドレス可能な外部メモリへ拡張した。コピー課題でLSTMが訓練長を越えると悪化した一方、NTMはメモリ位置を順に走査して長い系列へ外挿したため、長期依存には状態更新則だけでなく、容量と参照方式の分離も有効だと分かる。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[@2026__30papers__Neural Turing Machines]]) - **ゲート付き記憶と確率的正則化は、情報流への介入箇所を分ける必要がある**: LSTMのゲートは入力に応じて時間方向の保持と上書きを学習する一方、非再帰ドロップアウトは訓練時だけ層間表現を無作為に遮断する。時間再帰結合を正則化対象から外す設計は、長期記憶の制御を学習済みゲートへ任せ、共適応の抑制を時刻内変換へ限定する分業である。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[@2026__30papers__Recurrent Neural Network Regularization]]) ## 未解決の問い - LSTM の三つのゲートのうち、系列長、データ量、モダリティごとに性能へ最も寄与するゲートはどれか。 - LSTM が保持できる実効的な依存距離を、勾配伝播だけでなく情報圧縮の観点からどのように測定できるか。 - LSTM、GRU、[[状態空間モデル]]、[[Transformer]] を、状態次元、訓練時の並列性、推論時のメモリ量という共通軸で比較すると、どの領域で LSTM が依然として有利か。 - URL内外や引用符内外に反応する単一セルは、対応するゲート操作とどのような因果関係を持つか。 - 内部セル状態と外部メモリを併用する場合、どの情報をどちらへ保存するかを明示的な教師信号なしで安定して分業できるか。 - 時間再帰結合を保つドロップアウトと、系列全体で同じ遮断マスクを共有する方式では、長期依存の保持と汎化性能がどう異なるか。 ## 関連 - [[RNN]] — LSTM の基礎となる系列モデル - [[Transformer]] — 2015年以降にアテンションを中心として発展した系列モデル - [[状態空間モデル]] — 固定次元状態を持つ系列モデルの別系統 - [[Neural Turing Machine]] / [[メモリ拡張ニューラルネットワーク]] — LSTMコントローラと外部メモリを組み合わせる系統 - [[ドロップアウト]] — 時間再帰結合を保ちながら層間表現を正則化する - [[Christopher Olah]] — 図解記事「Understanding LSTM Networks」の著者 - [[@2026__30papers__Understanding LSTM Networks]] - [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]] - [[@2026__30papers__Neural Turing Machines]] - [[@2026__30papers__Recurrent Neural Network Regularization]] ## 出典 - [[@2026__30papers__Understanding LSTM Networks]] - [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]] - [[@2026__30papers__Neural Turing Machines]] - [[@2026__30papers__Recurrent Neural Network Regularization]] - [[joisino-トランスフォーマーはRNN-2024]]