系列モデルの系譜:RNN→Transformer→SSM
系列モデルがなぜRNNからTransformer、そしてSSMへ分岐したのかを、計算量・長距離依存・並列性の三軸で系統立てて掴めます。各世代の得失を一望し、設計判断の根拠を得られます。
- 1.進化の駆動軸は三つ。逐次依存を断つ並列性、O(n)とO(n²)を分ける計算量、勾配が距離で減衰しない長距離依存。RNN系は並列性で詰まり、Transformerは計算量で詰まり、SSM/線形系はその両立を狙う。
- 2.Transformerは隠れ状態の逐次更新を全結合の注意で置き換え、学習を完全並列化した代償に系列長nに対しO(n²)の計算・メモリを背負った。この二乗の壁が次世代の分岐点になる。
- 3.SSM/Mambaと線形アテンションは、固定次元の状態に系列を畳み込むことで学習は並列・推論はO(1)メモリの再帰という両立を狙う。ただし無限の注意を有限状態へ圧縮する分、選択機構なしでは表現力で劣る。
何が系譜を駆動したのか——三本の評価軸
系列モデリングの歴史は、別々のアイデアの偶然の積み重ねではなく、三つの相反する要求を同時に満たそうとする試行として一本の系統樹に整理できます。その三軸を最初に固定しておくと、各世代がなぜ生まれ、何で詰まり、次へ分岐したかが見通せます。
- 長距離依存:系列の遠い位置どうしを結べるか。「何ステップ離れた情報まで勾配や経路が届くか」で測る。
- 計算量:系列長
nに対する時間・メモリの増え方。O(n)かO(n²)かが実用上の天井を決める。 - 並列性:学習時に時間方向を並列処理できるか。逐次依存があると GPU を埋められず学習が遅い。
この三軸は互いにトレードオフの関係にあります。どれか二つを取ると残り一つが犠牲になる、というのが系譜全体を貫く緊張です。以下、年代順に分岐をたどります。
第1世代:RNN/LSTM(1986〜1997, 再興2013頃)
素の RNN は隠れ状態 h_t を漸化式で逐次更新します。
h_t = tanh(W_h · h_{t-1} + W_x · x_t + b)
この形は有限次元の状態に過去を要約するという、後の SSM にも通じる発想です。しかし二つの限界を抱えました。第一に、同じ W_h を時刻ぶん繰り返し掛けるため ∂h_t/∂h_k が (t-k) 個の積になり、勾配が指数的に消失・爆発する(長距離依存の限界)。第二に、h_t が h_{t-1} に依存する逐次構造ゆえ、時間方向を並列化できない(並列性の限界)。
LSTM/GRU はゲートとセル状態の加算的更新で勾配の通り道を確保し、長距離依存を大きく改善しました。この勾配の詳細は RNN の限界と LSTM・GRU のゲート機構 に譲ります。ただしゲートを足しても逐次依存は消えない——ここが第一世代の構造的な天井でした。
LSTM は三軸のうち長距離依存を加算的更新で、計算量を O(n) で満たした。残った未達は並列性ただ一つ。次世代はこの一点を解くために、再帰そのものを捨てるという大胆な賭けに出る。
第2世代:Attention/Transformer(2017)
Transformer の核心は、隠れ状態の逐次更新を全結合の注意(attention)で置き換えたことです。各位置が他の全位置を直接参照するため、再帰が消え、学習時は全位置を同時に計算できます。
Attention(Q,K,V) = softmax(Q · Kᵀ / sqrt(d)) · V
# Q,K,V は各位置の表現を線形射影したもの
これで三軸のうち二つが一気に解けます。任意の二位置が1ホップで直結するので長距離依存は経路長 O(1)、しかも逐次依存がないので学習が完全並列化されます。注意の数理は Self-Attention の計算 に詳しいです。
代償は計算量です。Q · Kᵀ は全位置対の総当たりなので、スコア行列は n × n。時間もメモリも O(n²) に膨らみ、長文ほど急激に重くなります。これが二乗の壁であり、第二世代が次の分岐を生む引き金になりました。
Transformer は逐次依存を捨てて並列性を獲得したが、その対価として系列長に二乗の計算・メモリを背負った。さらに推論時は KV キャッシュが系列長に比例して伸び、長文生成のメモリを圧迫する。「並列性 ↔ 計算量」のトレードオフが第二世代の正体。
第3世代:線形アテンション/SSM/Mamba(2020〜2023)
第三世代は分岐します。出発点は同じ問い——二乗の壁を、長距離依存を保ったまま O(n) へ落とせるか。
分岐A:線形アテンション。softmax の指数核をカーネル特徴写像 φ の内積で近似すると、計算順序を (φ(Q)·φ(K)ᵀ)·V から φ(Q)·(φ(K)ᵀ·V) へ組み替えられ、O(n²) が O(n) に落ちます。系統と代償は 線形アテンションと効率的アテンションの系統 を参照。
分岐B:状態空間モデル(SSM)/Mamba。連続系の線形再帰 h_t = A·h_{t-1} + B·x_t、y_t = C·h_t を離散化したもので、第一世代の RNN へ再帰として回帰しつつ、同じ式が畳み込みカーネルとしても書ける二重表現を持ちます。学習は畳み込みで並列化し、推論は再帰で O(1) メモリ。S4 から Mamba の選択機構までは 状態空間モデルとMamba に詳しいです。
重要なのは、線形アテンションと SSM が数学的に近縁だという点です。両者とも「系列を有限次元の状態 S = Σ k·vᵀ に畳み込み、それを各位置で読み出す」という再帰に帰着します。下の擬似コードはこの共通骨格です。
S = 0 # 有限次元の状態(行列)
for t in 1..n: # 推論時は逐次・O(1) メモリ
S = decay * S + k_t · v_tᵀ # 状態を更新(kv を畳み込む)
y_t = q_t · S # 状態から読み出す
# 学習時は同じ式を並列スキャン/畳み込みで一括計算できる
この骨格が示すのは、第三世代の本質が**「無限に伸びる注意」を「固定サイズの状態」へ圧縮すること**だという事実です。だからこそ三軸を理屈上は同時に満たせます。
有限状態への圧縮は、過去全体を O(1) の S に詰める以上、情報を必ず捨てる。固定の減衰(時不変)だと「どれを覚え、どれを忘れるか」を文脈で選べず、長文の検索的タスクで Transformer に劣る。Mamba が減衰幅や B・C を入力の関数にする選択機構を入れたのは、まさにこの圧縮損失を埋めるため。並列スキャンの制約で畳み込み表現は失われる代わりに、状態の使い方を文脈依存にした。
系統と分岐を一枚で
三軸で各世代を並べると、進化が「どの軸を犠牲にどの軸を取ったか」の連鎖だと分かります。
| 世代/手法 | 年代 | 計算量(学習) | 推論メモリ | 並列性 | 長距離依存 | 犠牲にしたもの |
|---|---|---|---|---|---|---|
| 素のRNN | 1986〜 | O(n) | O(1)状態 | なし(逐次) | 弱い(勾配消失) | 長距離依存と並列性 |
| LSTM/GRU | 1997/2014 | O(n) | O(1)状態 | なし(逐次) | 中(ゲートで改善) | 並列性(逐次のまま) |
| Transformer | 2017 | O(n²) | O(n)のKVキャッシュ | 完全並列 | 強い(経路長1) | 計算量(二乗の壁) |
| 線形アテンション | 2020〜 | O(n) | O(1)状態 | 並列(連想式) | 中(核近似の劣化) | softmaxの表現力 |
| SSM/S4 | 2021〜 | O(n log n) | O(1)状態 | 並列(畳み込み) | 強い(HiPPO初期化) | 時不変で文脈選択不可 |
| Mamba | 2023 | O(n) | O(1)状態 | 並列(選択スキャン) | 強い(選択機構) | 畳み込み表現を放棄 |
縦に読むと一つの物語になります。第一世代は並列性で詰まり、それを解くため再帰を捨てた第二世代は計算量で詰まり、その二乗を解くため再帰へ戻った第三世代は有限状態への圧縮損失という新しい詰まりに直面した——という三段の分岐です。
まとめ:系譜は閉じていない
最後に系譜全体を圧縮します。三軸のトレードオフは消えておらず、各世代はそれを別の形に組み替えてきたにすぎません。
| 世代 | 解いた問題 | 新たに生んだ問題 |
|---|---|---|
| LSTM/GRU | 勾配消失による長距離依存の限界 | 逐次依存ゆえの並列性不足 |
| Transformer | 並列化と経路長1の長距離依存 | 系列長に対する O(n²) の二乗の壁 |
| SSM/線形系 | 線形コストと O(1) 推論メモリの両立 | 有限状態への圧縮による表現力の損失 |
現在の実務的な帰結はハイブリッド化です。注意層と SSM 層を交互に積み、Transformer の精密な検索能力と SSM の長文効率を一台に同居させる構成が主流になりつつあります。系譜は「次の王者」へ収束したのではなく、三軸のどこに重みを置くかをタスクごとに選ぶ設計問題へと姿を変えました。RNN へ立ち返った第三世代が示すのは、捨てた発想が形を変えて戻るという、この分野の循環的な性質そのものです。
AI/機械学習 Article
系列モデルの系譜:RNN→Transformer→SSMを実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
系列モデル
比較で見る軸
難易度: advanced / カテゴリ: AI/機械学習 / タグ数: 5
導入後に効く点
Transformerは隠れ状態の逐次更新を全結合の注意で置き換え、学習を完全並列化した代償に系列長nに対しO(n²)の計算・メモリを背負った。この二乗の壁が次世代の分岐点になる。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- advanced
- カテゴリ
- AI/機械学習
- タグ数
- 5
判断チェックリスト
- 自社の用途が「系列モデル / RNN」に近いか確認する。
- 強みである「進化の駆動軸は三つ。逐次依存を断つ並列性、O(n)とO(n²)を分ける計算量、勾配が距離で減衰しない長距離依存。RNN系は並列性で詰まり、Transformerは計算量で詰まり、SSM/線形系はその両立を狙う。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。