In-Context Learning(ICL)

LLMはプロンプト内の例示のみで新タスクを学習できる。パラメータ更新なしの適応。Zero-shot、Few-shot学習。なぜ可能なのか、どう機能するのか。プロンプトエンジニアリングの基礎。

最終更新:2025年11月

1. ICLとは

1.1 定義

In-Context Learning(ICL):プロンプト内に提示された例示から、パラメータ更新なしにタスクを学習し実行する能力。

従来のアプローチとの違い:

  • Fine-tuning:パラメータを更新して適応
  • ICL:パラメータ固定、入力のみで適応

1.2 GPT-3での発見

Brown et al. (2020)。GPT-3で大規模に実証。

例示を数個与えるだけで、Fine-tuningに匹敵する性能を達成。

1.3 なぜ革新的か

  • 即時適応:訓練なしで新タスクに対応
  • 柔軟性:同一モデルで多様なタスク
  • 効率性:計算コスト大幅削減
  • アクセシビリティ:専門知識なしで利用可能

2. ICLの種類

2.1 Zero-shot

例示なしでタスクを実行。

以下の文の感情を判定してください:
「このレストランは最高でした!」

回答:

タスク記述のみで能力を引き出す。

2.2 One-shot

1つの例示を提供。

文の感情を判定します。

文:「素晴らしい映画でした」→ ポジティブ

文:「このレストランは最高でした!」→

2.3 Few-shot

複数の例示(通常2-10個)を提供。

文の感情を判定します。

文:「素晴らしい映画でした」→ ポジティブ
文:「時間の無駄だった」→ ネガティブ
文:「まあまあだった」→ ニュートラル

文:「このレストランは最高でした!」→

2.4 Many-shot

長文脈モデルで数百〜数千の例示。

Few-shotより高性能だが、文脈長の制限あり。

2.5 性能の傾向

一般に:Zero-shot < One-shot < Few-shot < Many-shot

ただしタスクやモデルにより異なる。

3. ICLのメカニズム

3.1 なぜ可能なのか?

理論的に完全には解明されていないが、いくつかの仮説:

3.2 仮説1:暗黙的ベイズ推論

Xie et al. (2022)。

ICLは暗黙的なベイズ推論として理解可能。

  • 事前分布:訓練データから学習した分布
  • 例示:観測データとして作用
  • 出力:事後分布からのサンプリング

3.3 仮説2:タスクベクトル

例示から「タスク」の表現を構築。

この表現が以降の予測を条件付ける。

3.4 仮説3:Induction Heads

Olsson et al. (2022)。

Attentionヘッドの一部がパターンマッチングを実行。

  • 「[A][B]...[A]」の後には「[B]」が来やすい
  • この機構がICLを可能にする

3.5 仮説4:暗黙的勾配降下

von Oswald et al. (2023)。

Transformerの forward pass が暗黙的に勾配降下を実行。

線形Attentionでは数学的に証明可能。

3.6 内部メカニズムの研究

Mechanistic Interpretabilityの手法で解析:

  • 特定の層・ヘッドがICLに重要
  • 例示の情報が中間層で統合
  • タスク識別とタスク実行が分離

4. 性能に影響する要因

4.1 例示の選択

  • 類似性:テスト入力に似た例示が効果的
  • 多様性:異なるパターンをカバー
  • 難易度:適切な難易度の例示

4.2 例示の順序

Lu et al. (2022)。順序で性能が大きく変動。

  • 最適な順序の探索が重要
  • 最後の例示が特に影響大
  • ランダム順序は安定しない

4.3 例示の数

  • 一般に多いほど良い(収穫逓減あり)
  • 文脈長の制限
  • タスクにより最適数が異なる

4.4 フォーマット

  • 区切り記号の選択
  • ラベルの表現方法
  • 説明の有無

4.5 ラベルの正確性

Min et al. (2022)。意外な発見:

  • ランダムラベルでも一定の性能
  • フォーマット・分布の情報が重要
  • ただし正しいラベルが最も効果的

5. プロンプトエンジニアリング

5.1 基本原則

  • 明確性:曖昧さを排除
  • 具体性:具体的な例示と指示
  • 構造化:整理されたフォーマット

5.2 Chain-of-Thought (CoT)

Wei et al. (2022)。推論過程を明示的に生成。

Q: 農場に鶏が23羽、牛が7頭います。
   全部で足は何本ですか?

A: まず、鶏は2本足なので23×2=46本。
   牛は4本足なので7×4=28本。
   合計で46+28=74本です。

5.3 Zero-shot CoT

Kojima et al. (2022)。「Let's think step by step」を追加するだけ。

例示なしでCoT効果を得られる。

5.4 Self-Consistency

Wang et al. (2023)。複数の推論パスを生成し多数決。

  • 同じ問題に複数回回答
  • 最も多い回答を採用
  • 精度向上、ただし計算コスト増

5.5 その他の技法

  • Tree-of-Thought:分岐探索
  • ReAct:推論とアクションの交互実行
  • 役割設定:「あなたは専門家です」

6. 限界と課題

6.1 文脈長の制限

  • 例示数に上限
  • 長い入力での性能低下
  • 長文脈モデルで改善中

6.2 不安定性

  • 例示の選択・順序で大きく変動
  • 再現性の問題
  • 最適プロンプトの発見が困難

6.3 Fine-tuningとの比較

  • 特定タスクではFine-tuningが優位
  • 大量の訓練データがあればFine-tuning
  • ICLは少数データ・多タスクで有効

6.4 理解の限界

  • なぜ機能するか完全に理解されていない
  • 失敗モードの予測困難
  • 理論的基盤が発展途上

7. 参考文献

主要論文

  • Brown et al. (2020) "Language Models are Few-Shot Learners" (GPT-3), NeurIPS
  • Wei et al. (2022) "Chain-of-Thought Prompting Elicits Reasoning", NeurIPS
  • Kojima et al. (2022) "Large Language Models are Zero-Shot Reasoners", NeurIPS

理論的研究

  • Xie et al. (2022) "An Explanation of In-context Learning as Implicit Bayesian Inference"
  • Olsson et al. (2022) "In-context Learning and Induction Heads"
  • von Oswald et al. (2023) "Transformers Learn In-Context by Gradient Descent"

実践的研究

  • Lu et al. (2022) "Fantastically Ordered Prompts and Where to Find Them"
  • Min et al. (2022) "Rethinking the Role of Demonstrations"
  • Wang et al. (2023) "Self-Consistency Improves Chain of Thought Reasoning"

関連ページ