# RNN ## 定義 RNN(再帰型ニューラルネットワーク、Recurrent Neural Network)は、時系列・系列データを処理するニューラルネットワークのクラスである。共通の遷移関数 $f$ を全時刻に適用し、固定次元のベクトル状態 $h_t \in \mathbb{R}^d$ を更新しながら系列を逐次処理する。形式的には、時刻 $t$ の入力 $x_t$ を受け取り、$h_{t+1} = f(x_t, h_t)$、出力 $y_t = g(h_t)$ という規則で動作する。状態が固定次元であることが特徴であり、推論時は 1 ステップあたり定メモリ・定計算量で動作する。(Source: [[joisino-トランスフォーマーはRNN-2024]]) ## 文字レベル言語モデルでの具体化 2015年の[[Andrej Karpathy]]の記事は、RNNの状態更新を「同じ学習済みプログラムを入力と内部変数に対して反復実行すること」と説明した。多層LSTMで次文字予測を学習すると、入力・出力長を事前に固定せず、綴り・句読法・Markdown・LaTeX・Cコードの局所構文を生成できる。一方、長距離の環境対応、変数名、型、意味の整合性には失敗し、固定次元状態へ履歴を圧縮する限界も具体化した。(Source: [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]]) ## 関係記憶による具体化 [[Relational Memory Core]]は、RNNの状態を一つのベクトルではなく固定個数の記憶スロット行列として表し、同一時刻内でスロット間にマルチヘッド自己アテンションを適用する。更新をLSTM型ゲートへ組み込むため、過去表現のバッファを増やさず、各時刻で記憶同士を関連づけられる。Nth Farthestでは91%に達し、LSTMとDNCは30%未満だった。(Source: [[@2026__30papers__Relational Recurrent Neural Networks]]) ## 横断的知見 - [[Transformer]] は KV キャッシュを状態とした RNN として形式的に見なすことができ、両者は二項対立ではなく同質の計算モデルを異なる角度から捉えたものである。KV キャッシュの状態はアテンションのカーネル法再定式化を通じて固定次元ベクトル $w_n$ に変換でき、完全な RNN 形式が得られる。(Source: [[joisino-トランスフォーマーはRNN-2024]]) - 状態次元のスペクトルとして、無限次元(通常の Transformer)から低次元 RNN まで連続的に配置できる。テキストには高次元(低圧縮)、動画・音声には低次元(高圧縮)が適するという設計指針が導ける。(Source: [[joisino-トランスフォーマーはRNN-2024]]) - [[LSTM]] は RNN の固定次元状態という形式を維持しつつ、状態更新をゲート付き加法更新へ変えることで長期情報を学習しやすくする。一方、Transformer の RNN 等価性は状態表現の次元と参照方法を変える。両者を並べると、系列モデルの長期依存への対処には「状態をどう更新するか」と「状態をどの次元・形式で保持するか」という二つの設計軸がある。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[joisino-トランスフォーマーはRNN-2024]]) - **2015年の生成上の長距離誤りは、状態次元スペクトルの実例として読める**: 文字レベルLSTMは局所構文を再現する一方、LaTeX環境の開閉やCコードの変数整合性を忘れた。後年の「無限次元Transformerから低次元RNNまで」という整理に照らすと、これは低次元状態へ履歴を圧縮するほど遠距離の個別情報を保持しにくいという設計上のトレードオフの早期の実例である。(Source: [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]], [[joisino-トランスフォーマーはRNN-2024]]) - **RNNからTransformerへの移行では自己回帰目的が残り、状態表現と転移性能が変わった**: KarpathyのLSTMは次文字予測から局所構造を生成した。GPT-1も過去のトークンから次トークンを予測するが、BPE語彙とTransformerを用いて下流タスクへ転移し、LSTMベースラインを平均5.6ポイント上回った。世代交代の中心は目的関数の放棄ではなく、履歴表現と評価目標の変更にある。(Source: [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]], [[@2018__OpenAI__Improving Language Understanding by Generative Pre-Training]]) - **RMCは「LSTMの固定サイズ状態」と「Transformerの自己アテンション」を一つの再帰コアへ組み合わせる中間設計である**: LSTMは単一状態の成分をゲートで保持・上書きし、Transformerは全位置間の相互作用をアテンションで直接計算する。RMCは固定個数のスロットをゲートで再帰更新しつつ、その内部では全スロットを自己アテンションで結ぶ。系列モデルの設計空間はRNN対Transformerの二択ではなく、「状態サイズを固定するか」「状態内部の要素を明示的に相互作用させるか」の組み合わせとして整理できる。(Source: [[@2026__30papers__Understanding LSTM Networks]], [[@2017__NeurIPS__Attention Is All You Need]], [[@2026__30papers__Relational Recurrent Neural Networks]]) - **固定サイズ状態の性能向上と長期情報保持は同義ではない**: RMCはWikiText-103でLSTMより低いパープレキシティを示したが、短い評価文脈での性能低下がLSTMより小さく、著者らは直近の関係をより良く捉えた可能性を述べる。一方、Karpathyの文字LSTMが示した長距離整合性の失敗を直接解消した証拠ではない。状態内相互作用は固定次元圧縮の質を高めうるが、保持期間そのものとは分けて評価する必要がある。(Source: [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]], [[@2026__30papers__Relational Recurrent Neural Networks]] §5.4, Supplement Figure 12) ## 未解決の問い - Transformer と RNN の「等価変換」において、有限次元近似の精度とモデル性能はどのようにトレードオフするか。現実の LLM ではどの次元数が適切か。 - RWKV、Mamba 等の[[状態空間モデル]]は具体的にどの近似カーネルを使っており、通常の Transformer に対してどの程度性能を保持できるか。 - LSTM のゲート付き更新で改善される実効的な依存距離と、固定次元状態による情報圧縮の限界をどのように分離して測定できるか。 - URL内外や引用符内外に反応するLSTMセルは、該当概念を因果的に担うのか、それとも分散表現の相関的な一断面にすぎないのか。 - RMCのスロット数・スロット幅・ヘッド数を同一計算量で変えたとき、情報容量、関係計算、長期保持への寄与をどのように分離できるか。 ## 関連 - [[Transformer]] — RNN と等価変換できることが示されたアーキテクチャ - [[線形注意]] — 有限次元カーネルで RNN モードを実現するモデル群 - [[状態空間モデル]] — RNN の一般化として位置づけられる系列モデル - [[文脈内学習]] — Transformer の RNN 状態更新として解釈できる - [[LSTM]] — 長期依存の学習をゲート付き状態更新で改善する RNN - [[Relational Memory Core]] — 固定サイズ状態内部へ自己アテンションを導入する RNN - [[関係推論]] — 記憶間相互作用が支える推論能力 - [[文字レベル言語モデル]] — 固定次元状態による次文字予測の具体例 - [[char-rnn]] — 多層LSTMの再現実装 ## 出典 - [[joisino-トランスフォーマーはRNN-2024]](§「この議論の問題点」〜§「トランスフォーマーは RNN である(再)」) - [[@2026__30papers__Understanding LSTM Networks]] - [[@2026__30papers__The Unreasonable Effectiveness of Recurrent Neural Networks]] - [[@2026__30papers__Relational Recurrent Neural Networks]] - [[@2018__OpenAI__Improving Language Understanding by Generative Pre-Training]]