# トランスフォーマーは RNN である
[[佐藤竜馬]] による 2024年9月30日付けのブログ記事(ジョイジョイジョイ)。書籍『深層ニューラルネットワークの高速化』重版記念の書き下ろし。Transformer を KV キャッシュを状態とする [[RNN]] と捉え、さらにアテンションをカーネル法として再定式化することで、固定次元ベクトル状態の RNN に等価変換できることを示す。訓練・推論モード切り替えと文脈内学習の数学的解釈が中心的なテーマ。
## 核心的主張
- Transformer はキー・バリューキャッシュ(KV キャッシュ)を「状態」とした RNN である。ただしこの状態はリスト形式であり、時刻とともに成長するという点で通常の RNN と異なる。
- アテンション機構の重み $\exp(\langle c_i, q \rangle)$ はカーネル関数 $k_A$ として解釈でき、ガウスカーネルの特徴マップ $\phi_A$ を用いた内積で書き直せる。
- 内積の線形性を使うと $y = \langle w_n, \phi_A(q) \rangle$ と整理でき、状態更新 $w_{n+1} = w_n + v_n \phi_A(c_n)$ という典型的な RNN 形式になる。
- この状態ベクトル $w_n$ は固定次元(または有限次元近似)であり、成長しない。問題点がほぼ解消された形での RNN 等価性が成立する。
## Transformer のモード二元性
同一モデルが 2 つの等価な計算形式で動作できる。
| モード | 計算式 | 特性 |
|--------|--------|------|
| Transformer モード | $y = \sum_{i=1}^n \exp(\langle c_i, q \rangle) v_i$ | 並列計算可能・訓練に適する |
| RNN モード | $y = \langle w_n, \phi_A(q) \rangle$、$w_{n+1} = w_n + v_n \phi_A(c_n)$ | 定メモリ・定計算量・推論に適する |
「Transformer は RNN より並列」「Transformer は計算量が二乗」はどちらか一方の見方に固定した場合の話であり、内在的な性質ではない。
## カーネル法との関係
- アテンション機構はカーネル関数 $k$ で重み付けてバリューベクトルを足し合わせる手続きとして統一的に捉えられる。
- 具体的なカーネル関数の選択がモデルの性質を決める。$k_A$(指数内積カーネル)が無限次元対応で通常の Transformer、有限次元の近似カーネルが[[線形注意]]モデル群(Performer、RWKV、Mamba など)に対応する。
- 有限次元近似の方法として、ランダム特徴量(Performer の手法)とナイストローム近似が紹介される。
## 文脈内学習との関係
- 状態の展開式 $w_n = v_1 \phi_A(c_1) + \cdots + v_n \phi_A(c_n)$ は、「$\phi_A(c_i)$ に似たクエリが来たら $v_i$ に似た出力をするべし」を逐次的に学習している構造を持つ。
- これは[[文脈内学習]](in-context learning)の数学的実体であり、トークンを処理するごとにキーとバリューの対応が「学習」される。
- 通常の重み内学習(ニューラルタンジェントカーネル NTK による定式化)とも同質の手続きであり、どちらも過去データとの類似度をカーネルで測り新たな出力を決定している。
## 状態次元のスペクトルとデータ適性
記事は圧縮・汎化・効率の三者をトレードオフとして位置づける。
- 一方の極端: 無限次元(通常の Transformer)。原理的に無限の情報を記憶できるが計算コストが高い。
- 他方の極端: 低次元 RNN。高い計算・サンプル効率だが記憶容量が制限される。
- **テキスト**: 離散的・粒度が大きいため、圧縮率を低く抑え無限次元に近い状態空間が適する。
- **動画・音声**: 連続的・冗長性が高いため、高圧縮・低次元の状態空間が適する。
参照元として引用されている「On the Tradeoffs of State Space Models」図がこのスペクトルを視覚的に示している。
## 関連ページ
- [[Transformer]] — 本記事の主題。RNN との等価性
- [[RNN]] — 等価変換先のモデルクラス
- [[線形注意]] — 有限次元近似カーネルを用いた Transformer 変種群
- [[文脈内学習]] — 数学的実体が本記事と接続する概念
- [[カーネル法]] — アテンション機構の再解釈フレームワーク
- [[状態空間モデル]] — Mamba 等が属するモデルクラスで本記事のスペクトルに位置づけられる
- [[佐藤竜馬]] — 著者