🐈

言語モデルの内部メカニズムを物理学的アプローチで解明

に公開

概要

"Physics of Language Models"は、Microsoft ResearchのZeyuan Allen-Zhu(アレン・ジュウ)とYuanzhi Li(ユアンジー・リー)による画期的な研究シリーズです。言語モデルの内部メカニズムを物理学的アプローチで解明し、LLMがどのように学習し、知識を保存・操作し、推論を行うかを体系的に研究しています。

革命的意義:3つの科学的ブレークスルー

1. 定量的法則の確立:2ビット/パラメータ則

初めてLLMの知識容量を定量化

  • 1パラメータあたり正確に2ビットの知識を保存(標準条件下)
  • 7Bモデル = 14Bビット = 英語Wikipedia + 教科書の合計を超える容量
  • モデル設計の科学的根拠を提供(「大きければ良い」から「適正サイズ」へ)

2. メカニズムの解明:LLMは何をしているのか

4つの核心的発見

  1. 文脈自由文法学習: 動的計画法的なアルゴリズムを自己組織化
  2. 知識保存: 分散表現により冗長性を持って保存
  3. 知識アクセス: プロンプトを「鍵」として特定知識を活性化
  4. 知識操作の限界: Forward-onlyアーキテクチャの根本的制約(逆検索は不可能)

なぜ革命的か

  • ブラックボックスが「グレーボックス」に
  • 失敗の理由が説明可能に(例:なぜGPT-4でも逆検索できないか)
  • 改善の方向性が明確に

3. 実践への橋渡し:即座に適用可能な知見

科学的アプローチの勝利

  • 小規模実験(100Mパラメータ)から普遍法則を発見
  • 制御実験により因果関係を特定
  • 予測可能な性能とスケーリング

最も重要な教訓

  • LLMは「知識のデータベース」ではない(保存は得意だが操作は苦手)
  • スケールの神話の崩壊(データ量とモデルサイズのバランスが重要)
  • 質の低いデータは毒(50%ジャンクで20倍の性能劣化)

研究者について

Zeyuan Allen-Zhu

  • 所属: Microsoft Research
  • 専門: 理論計算機科学、機械学習、最適化
  • 背景: MITで博士号取得、理論と実践の橋渡しに注力

Yuanzhi Li

  • 所属: Carnegie Mellon University (CMU)、Microsoft Research協力者
  • 専門: 機械学習理論、深層学習
  • 背景: プリンストン大学で博士号取得

関連研究者

  • Ziming Liu(ジミン・リュウ): MIT & IAIFI、Max Tegmark教授の指導下
  • Max Tegmark(マックス・テグマーク): MIT物理学教授、AIと物理の交差点研究

Physics of Language Models シリーズ構成

Part 1: Learning Hierarchical Language Structures(階層的言語構造の学習)

発表: 2023年5月

主要な発見とメカニズム

1. 文脈自由文法(CFG)の学習能力の実証

実験設計

  • 合成CFGファミリーを設計:階層的ルールを生成し、数百トークンの長文を作成
  • これらの文は局所的に曖昧で、解析には動的計画法が必要
  • 例:入れ子構造の括弧、再帰的な文法規則、複雑な依存関係

発見

  • GPTモデルは訓練後、CFGで定義された階層構造を正確に学習
  • 新しい文を生成する際も、学習したCFG規則に厳密に従う
  • エラー率は1%未満で、人間の文法理解に匹敵
2. 動的計画法的な内部メカニズムの発見

動的計画法(Dynamic Programming)とは
動的計画法は、複雑な問題を小さな部分問題に分割し、それらの解を組み合わせて全体の解を得るアルゴリズム手法です。

  • 部分問題への分割: 大きな問題を重複する小さな問題に分解
  • メモ化: 一度解いた部分問題の答えを保存して再利用
  • ボトムアップ構築: 小さい問題から順に解いて大きな問題へ

CFG解析における動的計画法(CYKアルゴリズム)

文: "The cat ate fish"
ステップ1: [The] [cat] [ate] [fish] (各単語)
ステップ2: [The cat] [cat ate] [ate fish] (2単語の組み合わせ)
ステップ3: [The cat ate] [cat ate fish] (3単語の組み合わせ)
ステップ4: [The cat ate fish] (全体)

各ステップで前の結果を再利用しながら、より大きな構造を構築します。

隠れ状態の解析

  • モデルの隠れ状態がCFG構造を正確にエンコード
  • 非終端記号(NT)情報が部分木の境界に正確に配置される
  • プロービング実験で、NT情報が線形に抽出可能(精度99%以上)

注意パターンの可視化

  • 「境界から境界への注意」(Boundary-to-Boundary Attention)を発見
  • トークンは最も近いNT記号に注意を向ける(数百トークン離れていても)
  • 例:括弧構造 "((A + B) * (C - D))" において:
    • ")" は対応する "(" に注意
    • "B" は "A" と "+" に注意
    • "*" は両側の部分式の境界に注意

なぜTransformerが動的計画法的なのか

  1. 階層的な情報伝播

    • 動的計画法: 小→大へ段階的に構築
    • Transformer: 局所→全体へ情報を伝播
  2. 部分構造の再利用

    • 動的計画法: 部分問題の解を保存・再利用
    • Transformer: 下位構造の表現を上位で活用
  3. 境界の重要性

    • 動的計画法: 部分問題の境界を明確に管理
    • Transformer: 括弧や句の境界に強く注意

重要な洞察
Transformerは明示的に動的計画法を実装しているわけではないが、訓練を通じて動的計画法的な情報処理パターンを自己組織化している。これは:

  • 人間が設計した効率的アルゴリズムと同じ原理を自然に発見
  • 階層構造の処理に最適な方法を学習
  • プログラミングなしに再帰的構造を理解

この発見により、LLMがなぜ複雑な入れ子構造や長距離依存関係を処理できるのかが科学的に説明可能になった。

アーキテクチャ比較の知見

  • 絶対位置埋め込み < 相対位置埋め込み < Rotary埋め込み(性能順)
  • Encoder-only(BERT系)はCFG推論で苦戦、Decoder-only(GPT系)が優位
  • 構造的ノイズを事前訓練に注入すると、破損した入力への頑健性が向上

Part 3.1: Knowledge Storage and Extraction(知識の保存と抽出)

発表: 2023年9月、2024年更新

主要な発見とメカニズム

1. 知識保存の本質的な理解

実験設計

  • 合成伝記データセット(bioS):N人の人物、各6属性(誕生日、出生地、大学、専攻、雇用主、勤務地)
  • 制御された環境で、知識の保存と抽出を精密に測定

重要な発見

  • LLMは単純な「質問-回答ペア」の暗記ではない
  • 知識は柔軟に抽出可能:異なる質問形式でも同じ知識にアクセス
  • 例:「Anya Forgerの誕生日は?」「いつAnya Forgerは生まれた?」両方で正解

知識の分散表現

  • 知識は特定のニューロンではなく、ネットワーク全体に分散
  • 削除実験:単一層を削除しても知識は残存(ただし精度は低下)
  • 冗長性により頑健性を確保
2. プロンプトの「鍵」メカニズム

プロンプトの役割

  • プロンプトは知識データベースへのクエリとして機能
  • 同じ知識でも、プロンプトの構造により抽出効率が変化
  • 最適なプロンプト:訓練時のフォーマットに近いほど高精度

文脈依存のアクセス

  • 文脈により異なる知識セットが活性化
  • 例:「科学の文脈」vs「歴史の文脈」で異なる事実が想起
  • マルチホップ推論:A→B→Cのような連鎖的知識抽出も可能

Part 3.2: Knowledge Manipulation(知識の操作)

発表: 2023年9月、2024年7月更新

4つの基本タスクの詳細な実験結果

実験設計の詳細

データセット

  • bioS(合成):完全に制御された伝記データ、知識の順序を制御可能
  • bioR(準現実):より現実的なパターンを含む伝記データ
  • 各人物:6属性(誕生日、出生地、大学、専攻、雇用主、勤務地)
タスク別の詳細結果と分析

1. 検索(Retrieval)- 成功率95%以上

  • 質問例:「John Smithの誕生日は?」
  • モデルは直接的な事実検索に優れる
  • 異なる質問形式でも高精度を維持
  • メカニズム:注意機構が名前と属性を直接結びつける

2. 分類(Classification)- 成功率約50%(ランダムと同等)

  • 質問例:「John Smithの誕生年は偶数?奇数?」
  • CoTなし:ほぼランダムな回答
  • CoTあり:80-90%まで改善
  • 失敗の理由:
    • モデルは「1985年」を保存しているが、「奇数」という概念と直接結びつけられない
    • 中間ステップ(数値抽出→判定)が必要

3. 比較(Comparison)- 成功率約50%

  • 質問例:「John SmithはMary Johnsonより年上?」
  • 両者の誕生日は正確に検索可能
  • しかし直接比較は失敗
  • CoTで改善:誕生日を明示的に抽出→比較
  • 失敗メカニズム:知識の「横断的処理」が苦手

4. 逆検索(Inverse Search)- 成功率0-5%

  • 質問例:「1985年生まれの人物を全て挙げよ」
  • ほぼ完全に失敗
  • CoTでも改善せず
  • 根本的な制限:
    • Forward indexing(名前→属性)は可能
    • Backward indexing(属性→名前)は不可能
    • アーキテクチャレベルの制約
決定的な実験証拠

制御実験1:完璧な知識保存の確認

  • 全ての人物の全属性を個別に質問→95%以上正解
  • つまり、知識は完全に保存されている

制御実験2:プロンプトエンジニアリング

  • 20種類以上の異なるプロンプト形式を試験
  • 逆検索タスクは全て失敗

制御実験3:モデルサイズの影響

  • 350M〜7Bパラメータで実験
  • サイズに関わらず同じ制限パターン
GPT-4、Claude、Llama-3での検証(2024年5月)
  • 実世界の知識で同様のテストを実施
  • 例:「ノーベル物理学賞を2010年に受賞した人は?」(逆検索)→失敗
  • 「アインシュタインのノーベル賞受賞年は?」(順検索)→成功
  • 最先端モデルでも同じ制限が存在

Part 3.3: Knowledge Capacity Scaling Laws(知識容量のスケーリング則)

発表: 2024年4月

画期的な2ビット/パラメータ則の発見

実験方法論

データセット設計

  • N人の合成伝記、各6属性 = 6N個の独立した知識片
  • 知識の表現:タプル形式(例:USA, capital, Washington D.C.)
  • 訓練データ:同じ知識を異なる文体で複数回提示

測定方法

  • QAタスクで知識の保存を検証
  • 「What is [Person]'s [Attribute]?」形式で全知識をテスト
  • 正解率から実効的な知識ビット数を計算
核心的な発見:2ビット/パラメータ則

標準条件(露出1000回)での結果

モデルサイズ | 保存可能な知識量
1Mパラメータ → 2Mビット
100Mパラメータ → 200Mビット
1Bパラメータ → 2Bビット
7Bパラメータ → 14Bビット

重要な洞察

  • 7Bモデルは14Bビットを保存可能
  • これは英語版Wikipedia + 教科書の合計を超える
  • int8量子化でも2bits/paramを維持

なぜ正確に2ビットなのか

  • 各パラメータは浮動小数点(32ビット)
  • しかし知識保存に使われるのは実効2ビット分
  • 残りは言語モデリング、推論、その他の能力に使用
露出回数による容量変化

実験結果

露出回数 容量/パラメータ 備考
1000回 2.0 bits 標準
100回 1.0 bit 希少知識
10回 0.1 bit ほぼ保存不可

メカニズムの解釈

  • 露出回数は「知識の強化」に必要
  • 少ない露出では、ノイズに埋もれて定着しない
  • 1000回は「飽和点」:これ以上増やしても改善なし
アーキテクチャによる差異

希少知識(100回露出)での比較

GPT-2 (標準MLP): 1.3 bits/param
LLaMA (Gated MLP): 1.0 bit/param
Mistral (SwiGLU): 1.0 bit/param
差: 1.3倍

なぜGPT-2が優位か

  • シンプルなMLPは希少パターンの学習に有利
  • Gated機構は頻出パターンに最適化されている
  • 希少知識には過度な正則化が逆効果
データ品質の影響(驚くべき発見)

ジャンクデータ混入実験

  • 良質データ:正確な伝記情報
  • ジャンクデータ:ランダムな文字列、無意味な文

結果

  • ジャンクなし:100%の知識を保存
  • 50%ジャンク:5%の知識のみ保存(20倍の劣化!)
  • ジャンクデータは良質データの学習を阻害

解決策:ドメイントークン

  • 各データにドメイン識別子を付与(例:[WIKI]、[JUNK])
  • 結果:ジャンク存在下でも80%の知識を保存
  • モデルは信頼できるソースを識別して学習
データサイズ固定時の飽和

重要な制限

  • データに含まれる情報量が上限
  • モデルを大きくしても、データ以上の知識は獲得不可
  • 例:1GBのテキストから2GB以上の知識は抽出不可能

実践的示唆

  • モデルサイズとデータサイズのバランスが重要
  • 過度に大きなモデルは無駄
  • スケーリングは両方を同時に行うべき

Part 4.1: Architecture Design(アーキテクチャ設計)

発表: 2025年5月(論文公開済み、v1.1更新: 2025年5月19日)

Canon Layersの魔法

論文タイトル: "Architecture Design and the Magic of Canon Layers"

Canon Layersとは何か

  • 名前の由来: 音楽用語「カノン」(同じメロディーを追いかけて演奏する形式)
  • 核心機能: 隣接トークン間の水平的な情報フロー(horizontal information flow)を促進
  • 軽量設計: 隣接トークン表現の重み付き和を計算するシンプルな構造
  • 汎用性: Transformer、線形注意、状態空間モデル等、あらゆるシーケンスアーキテクチャに統合可能

12の主要改善点

  1. 推論深度: 2倍の改善
  2. 推論の幅: より広範な問題への対応
  3. 知識操作: Part 3.2で発見された限界の部分的克服
  4. 弱いアーキテクチャの強化: NoPEをRoPEレベルまで引き上げ
  5. 線形注意の改善: Mamba2等の状態空間モデルに匹敵する性能

QK-Norm(Query-Key正規化)の役割

  • 問題: マルチモーダル(テキスト、画像等)統合時の訓練不安定性
  • 原因: Q、Kベクトルのノルムが指数的に成長(50,000超に到達)
  • 解決: ℓ2正規化をhead次元に適用し、学習可能なパラメータでスケール
  • 効果: attention logitsの爆発を防ぎ、安定した訓練を実現

なぜCanon Layersが必要だったか

  • Uniform Attention(均一注意)の発見: 全トークンに均等に注意を向けることが意外に効果的
  • しかし限界も判明: 長距離依存関係の捕獲には不十分
  • 解決策: Canon Layersで局所的な情報統合を追加

技術的詳細

# Canon Layerの概念的実装
def canon_layer(tokens, window_size=3):
    """隣接トークンの重み付き和を計算"""
    output = []
    for i in range(len(tokens)):
        # 隣接window_size分のトークンを重み付き和
        local_sum = weighted_sum(
            tokens[max(0, i-window_size):min(len(tokens), i+window_size+1)]
        )
        output.append(local_sum)
    return output

主要な成果

  • LlamaCanon実装: Canon layers + QK-norm + partial RoPE
  • 効率性: 8Bベースモデルを42,000 GPU時間で事前訓練可能
  • 性能向上: 標準Transformerに比べて各種ベンチマークで大幅改善

実験環境

  • アカデミックスケール(1.3Bパラメータ、100Bトークン)での検証
  • 合成データセット群:Depo、Brevo、Capo、Mano、Lano
    • Lano: 階層的言語構造
    • Capo: 知識の保存と抽出

公開リソース

  • コード: GitHub (facebookresearch/PhysicsLM4) Apache 2.0ライセンス
  • 論文: SSRN (abstract=5240330)
  • v2.0準備中: より大規模な実験結果を含む予定

ICML 2024チュートリアルのハイライト

発表者

Zeyuan Allen-Zhuによる包括的なチュートリアル(圧倒的な反響、満員の聴衆)

物理学的方法論の詳細

なぜ「物理学」なのか

従来のML研究との違い

  • 従来:大規模モデルでベンチマーク性能を追求
  • Physics approach:小規模で制御された実験から普遍法則を導出
  • 物理学の手法:観察→仮説→実験→法則化→予測

具体的な方法論

  1. 制御実験の徹底

    • 変数を一つずつ変化させて因果関係を特定
    • 例:露出回数だけを変えて知識容量を測定
    • 再現性:同じ条件で100回以上実験
  2. スケールダウンして本質を抽出

    • 100Mパラメータで発見した法則が7Bでも成立
    • H100で1日、V100×8でも1日で実験完了
    • 数千回の実験で統計的に有意な結論
  3. 合成データによる完全制御

    • ノイズ、バイアス、分布を完全にコントロール
    • 実データの複雑さを排除して本質を見る
    • 発見した法則を実データで検証

チュートリアルでの実演内容

1. 知識の保存と操作(実演)

ライブデモ

  • 100Mモデルで知識容量を実測
  • パラメータ数を変えて2bits/param則を確認
  • 観客からの質問に即座にモデルで検証

インタラクティブ実験

  • 知識操作の4タスクを観客参加で実施
  • 人間 vs GPT-4の比較(逆検索で人間圧勝)

2. 推論メカニズムの可視化

Grade-School Math(小学校算数)での分析

  • 「3個のリンゴ + 5個のリンゴ = ?」
  • 注意機構の可視化:数字と演算子への注目パターン
  • Chain of Thoughtの自然発生を観察

驚きの発見

  • モデルは「暗算」せず「手順」を学習
  • 中間ステップを隠すと精度が激減
  • 人間の思考プロセスに類似

3. CFG学習の実演

階層構造の可視化

  • 入れ子になった括弧の処理を実演
  • 注意パターンが木構造を形成する様子
  • 動的計画法との類似性を図示

産業界への具体的推奨

データ戦略

推奨事項:
1. 重要知識は最低1000回露出
2. ドメイントークンで品質管理
3. ジャンクデータは5%以下に
4. 希少だが重要な知識は別扱い

モデル選択ガイド

用途別推奨:
- 一般知識: LLaMA/Mistral(効率的)
- 専門知識: GPT-2系(希少知識に強い)
- 知識操作: CoT + ツール統合必須
- 逆検索: 外部DB統合が唯一の解

実用的な影響と応用

発見の実世界への影響

1. ChatGPT/Claude等への直接的影響

知識操作タスクの設計指針

  • ユーザーの質問を「順検索」に変換する工夫
  • 例:「2010年のノーベル賞受賞者は?」→「各候補者の受賞年を確認」
  • UIレベルでの補完:検索機能との統合

プロンプトエンジニアリングへの示唆

  • 逆検索を避ける質問設計
  • CoTを明示的に要求(「ステップバイステップで」)
  • 知識の確認と操作を分離

2. 企業のLLM活用戦略

知識管理システムの設計

# 推奨アーキテクチャ
class KnowledgeSystem:
    def __init__(self):
        self.llm = LLM()  # 順検索用
        self.db = VectorDB()  # 逆検索用
        self.cot_engine = CoTEngine()  # 知識操作用

    def query(self, question):
        if is_inverse_search(question):
            return self.db.search(question)
        elif needs_manipulation(question):
            return self.cot_engine.process(question)
        else:
            return self.llm.generate(question)

データ準備のベストプラクティス

  1. 知識の強化戦略

    • コア知識:1000回以上の変形で提示
    • 例:「東京は日本の首都」を100種類の文体で10回ずつ
  2. 品質管理

    • ドメイントークン必須:[VERIFIED]、[UNVERIFIED]
    • ジャンクデータの隔離:別モデルで事前フィルタリング
  3. 希少知識の扱い

    • 専門用語辞書:別途Fine-tuning
    • 外部知識ベースとのハイブリッド

3. 新しい評価基準とTuringテスト

LLM評価の新基準

従来の評価:
- Perplexity
- BLEU/ROUGE
- 一般的QAベンチマーク

Physics of LMに基づく評価:
- 知識容量測定(bits/param)
- 4タスク評価(検索、分類、比較、逆検索)
- CoT依存度の定量化

人間とAIを区別する新手法

  1. 逆検索タスク:「誕生日が1月1日の歴史上の人物を10人」
  2. 即座の知識操作:「素数番目の米国大統領を列挙」
  3. 横断的比較:「身長順に並べて:Napoleon, Lincoln, Washington」

限界を踏まえた実装パターン

パターン1:知識検索特化システム

用途: FAQ、ドキュメント検索
構成:
  - LLM: 順検索と要約
  - ElasticSearch: 逆検索とフィルタリング
  - Cache: 頻出クエリの高速化

パターン2:分析・比較システム

用途: データ分析、レポート生成
構成:
  - LLM + CoT: ステップバイステップ分析
  - Python実行環境: 数値計算と比較
  - Visualization: 結果の可視化

パターン3:知識ベース構築

用途: 社内ナレッジ管理
構成:
  - データ準備: 1000回露出ルールの適用
  - ドメイン分離: 部門別トークン付与
  - 定期評価: 4タスクでの品質チェック

関連研究と今後の展望

MIT グループの研究

  1. Kolmogorov-Arnold Networks (KANs)

    • 2024年4月発表、MLPの代替として提案
    • Ziming Liu、Max Tegmarkらによる研究
  2. Opening the AI Black Box

    • 2024年2月発表
    • ニューラルネットワークの解釈可能性向上
  3. Survival of the Fittest Representation

    • 2024年5月発表
    • モジュラー演算での競争的ダイナミクス

今後の研究方向

  1. より深い理解

    • Grooking現象の解明
    • In-context learningのメカニズム
  2. 新アーキテクチャ

    • Canon Layersの実装と評価
    • 知識操作に特化した構造
  3. AGIへの道筋

    • 知識の真の理解と操作
    • 推論能力の向上

まとめ

この研究は、LLM開発を「アート」から「サイエンス」へと転換させる歴史的な転換点となるでしょう。物理学的アプローチにより、経験則ではなく科学的根拠に基づいたAI開発が可能になりつつあります。

Discussion