なぜ今「ハイブリッドモデル」をトークン単位で見るべきなのか
近年のLLMアーキテクチャ議論で最もホットなトピックの一つがハイブリッド(hybrid)モデルです。Attention層をいくつか残しつつ、残りを再帰(recurrent)層に置き換えた構造で、標準ベンチマークではTransformerと同等かわずかに上回るスコアを出します。しかし、**「で、具体的にどこがどう優れているのか?」**という問いにはなかなか答えが出ません。
本記事は、その問いにトークンレベルで答えた実験を整理したものです。同一データ・同一トークナイザ・同一学習レシピで構築された7B Transformer(Olmo 3)と7B ハイブリッド(Olmo Hybrid)を1対1で比較し、トークン一つひとつについて両モデルが実際の正解トークンにどれだけの確率を割り当てたかを測定しています。アーキテクチャ以外の変数を極力統制しているため、ここで観測される差はほぼ純粋に構造由来とみなせます。
この種のトークン単位分析は実務でも重要です。「平均loss 3.2 vs 3.1」といった数字だけを見ても、何を得て何を捨てているのかが全く見えないからです。根拠資料はHugging Faceブログの原レポートで確認できます。

Attention vs Recurrence:二つのメカニズムの根本的な違い
比較の前に、それぞれの層が何を得意とするかを整理します。
Attention層(Transformer)
- すべての過去トークンを一度に直接参照できます。
- そのため、**遠く離れたトークンを正確にそのままコピー(recall)**するのが得意です。
- 一方で、入力長が伸びるほどコストが二乗で増加し、時間とともに逐次的に変化する情報(状態追跡)の表現は苦手です。
Recurrent層(ハイブリッド)
- トークンを左から右へ読みながら、固定サイズのメモリに畳み込みます。
- 入力がどれだけ長くなっても、トークンあたりのコストは**一定(flat)**です。
- メモリは圧縮・損失的であるため、過去トークンを正確に取り出すことはできません。
- 代わりに、読み進める中で変化する状態(state)を更新し続けるのが得意です。
まとめると、**「正確なコピー=Attention」「状態追跡=Recurrent」**という相補的な強みの構造になっています。
実験手法(loss gap)
# 二つのモデルのトークン単位loss gapを計算する概念コード
# gap > 0 ならハイブリッドの方が予測が良い、gap < 0 ならTransformerの方が良い
def token_loss_gap(transformer_logits, hybrid_logits, target_token_id):
# 各モデルが実際の正解トークンに与えた確率をログスケールに変換
t_loss = -torch.log_softmax(transformer_logits, dim=-1)[target_token_id]
h_loss = -torch.log_softmax(hybrid_logits, dim=-1)[target_token_id]
# loss gap: ハイブリッドのlossが低い → 正の値
return t_loss - h_loss
# カテゴリ別の平均 + 回帰分析で希少性・繰り返しなどの交絡因子を統制
データにはWikipedia、書籍、論文などの自然言語散文に加え、Python、HTML、LaTeXといった構造化テキストも使用されています。

結果:ハイブリッドが勝つ領域、Transformerが勝つ領域
ハイブリッドが強い領域
- 内容語(content words):名詞、動詞、形容詞 — 文が「何について述べているか」を決める語。loss gapが明確に正。
- 副詞・形容詞:ハイブリッド優位が特に顕著。
- 代名詞の照応解決:「その人物が誰を指すか」といった文脈追跡が必要なトークン。
- 一部の機能語:「there」のような存在詞(existential)もハイブリッドが強かった — 文脈依存度が高く、再帰層の状態追跡が有利に働く。
Transformerが強い領域
- 繰り返しn-gramのコピー:直前までに出現したフレーズがそのまま再登場する場合。繰り返し区間が長いほどハイブリッドの優位は0に収束。
- 閉じ括弧(closing brace):
})]の予測。言語・コード・マークアップ全般で再現。開き括弧には該当なし。Attentionのみで括弧マッチングを表現できるという既存研究と整合。
まとめ表
| トークン種別 | ハイブリッド優位 | Transformer優位 | 理由 |
|---|---|---|---|
| 名詞/動詞/形容詞 | ◎ | 意味合成 + 状態追跡 | |
| 副詞/形容詞 | ◎ | 文脈依存度が高い | |
| 代名詞の照応 | ○ | 逐次的な状態更新 | |
| 機能語(一部) | ○ | 存在詞など文脈依存 | |
| 繰り返しn-gram | ◎ | 正確なコピー = Attention | |
| 閉じ括弧 | ◎ | Attentionのみで十分 |
実務適用:「フィルタリング済みトークンloss」でアーキテクチャを比較する
この研究の真に実用的な成果は、フィルタリング済みトークンloss(filtered token loss)を評価指標として使おうという提案です。1BパラメータのTransformer / ハイブリッド / 純粋な再帰モデルの3つを比較したところ:
- 意味を持つ非繰り返しトークンでは、ハイブリッドと純粋再帰がTransformerを上回る(ハイブリッドが最良)。
- 繰り返しトークンでは、Attentionを全く持たない純粋再帰が、ハイブリッドとTransformerの両方に後れを取る。
つまり、事前学習の初期段階において、単一の平均lossでは絶対に見えないコピー能力や内容語の差が、フィルタリング済みlossによって可視化されるということです。アーキテクチャのA/Bテストを行う際、平均lossだけを見ているとこうしたシグナルを丸ごと見落とすことになります。

実務ではどう活かすべきか
1. 平均loss一つでアーキテクチャを比較しないこと。 Transformer vs ハイブリッドのような構造比較では、平均lossは粗すぎる指標です。最低でも (a) 内容語、(b) 繰り返しn-gram、(c) 構造的トークン(括弧、タグ)の3カテゴリに分けてlossを見るべきです。
2. ワークロードに応じてアーキテクチャを選ぶこと。
- 要約・コピー・コード引用のように、長い入力から正確に再現することが重要なタスク → Attention比率の高い構造が有利。
- 推論・対話・状態追跡、ロングコンテキストでのコスト効率が重要なタスク → ハイブリッドが魅力的。
3. この技術の限界と注意点
- この実験は7B / 1Bスケールでの結果です。スケールが大きくなれば優位の地形は変わり得ます。
- loss gapは次トークン予測の指標に過ぎず、実際のダウンストリーム性能と1対1で対応するわけではありません。
- トークンカテゴリ分類は言語・トークナイザに依存するため、日本語のように形態論的特性の強い言語ではカテゴリの境界が曖昧になります。
- 特に日本語では、助詞・助動詞がトークン境界をまたぐことが多く、「機能語 vs 内容語」の分離が英語ほど綺麗にはいきません。フィルタリング済みlossを日本語モデルに適用するなら、カテゴリ定義から自前で再設計する必要があります。
4. 次のステップ学習の方向性
- 原論文のフィルタリング済みloss指標を、自身の事前学習パイプラインに直接組み込んでみてください。学習序盤にアーキテクチャ差がどこで生じるかを即座に観察できます。
- Attention層をいくつ残すか(ハイブリッド比率)を、トークンカテゴリ別lossでチューニングするのも面白い実験テーマです。
- ロングコンテキストRAGパイプラインを運用しているなら、コピー区間で生じる弱点をどう補うかを先にベンチマークすることをお勧めします。
あわせて読みたい記事
- マルチステージ推薦システム、実際にどう運用するか?(Feat. Kubeflow, Triton, FAISS) — 大規模モデルを実際のサービングパイプラインに載せる実践事例。
- Python公式ブログ、BloggerからGitHub+Astroへの移行理由と方法 — 開発ブログやドキュメント基盤を自前で運用している人に参考になるマイグレーション記録。