この記事の音声は準備中です。
音声の一覧・再生リストへ文脈内学習と記憶の科学
この記事の目的
文脈内学習(in-context learning、ICL) — プロンプトの例だけから、重みを変えずにタスクを学ぶように振る舞う現象 — が「なぜ起きるか」の主要な理論仮説を整理し、few-shot の例数・順序の効果に関する研究知見(実務の裏付け)を理解できるようになります。あわせて、記憶と汎化(逐語記憶・grokking・二重降下)、そしてデータ汚染がベンチマークに与える影響を押さえ、プロンプト設計と評価の判断の「なぜ」に接続できる状態を目指します。
理論仮説は決着していないものが多いため、本記事は主要な仮説を中立に併記し、断定を避けます。
対象読者
- few-shot プロンプトが効く/効かない理由を、経験則でなく研究知見から理解したいエンジニア
- 記憶・汎化・データ汚染がモデルの評価にどう効くかを押さえたい人
前提知識
- プロンプトエンジニアリングの基礎技法 — few-shot の実務(本記事はその理論的裏付け)
- 事前学習とスケーリング則 — 学習の目的関数・汚染の話の土台
- Transformer アーキテクチャ詳解 — 多頭注意(誘導ヘッド「直前に A B が出たら、次に A が来たとき B を続ける」というコピー機構を担う注意ヘッド。文脈内学習の主要メカニズムの候補として提案され、形成時期と ICL 能力の立ち上がりの一致が観察・報告されている(原因の証明ではない)。の前提)
本文
概要: 重みを変えずに「学ぶ」ように見える
文脈内学習とは、プロンプトに数個の例(入力 → 出力)を並べるだけで、モデルがそのパターンに従って新しい入力を処理する現象です(GPT-3 で顕著に示されました)。重みは 1 ミリも更新されていないのに「例から学んだ」ように振る舞うため、その仕組みは活発な研究対象です。実務の few-shot(プロンプトエンジニアリングの基礎技法)はこの現象の応用です。
ICL はなぜ起きるか: 主要な理論仮説
有力な仮説がいくつかあり、互いに排他的ではなく、相補的に真実の一部を捉えていると見られています。
- 暗黙のベイズ推定: 事前学習で多様な「タスク」を含む文書を学んだモデルが、プロンプトの例からどのタスク(潜在概念)かを推論し、それに沿って続きを生成しているという見方。式で書くと、出力は潜在タスク について周辺化した形になります。
読み下し: 「例を見てタスク の確からしさを更新し(ベイズ的)、その分布で重み付けて出力を決める。例は新しい学習ではなく、既に持つタスクの『どれか』を選ぶ手がかり」。
- メタ学習 / 学習アルゴリズムの模倣: Transformer の順伝播が、内部で勾配降下のような学習アルゴリズムを近似的に実行しているという見方。線形回帰のような単純なタスクで、ICL が最小二乗解に近づく挙動が示されています
- 誘導ヘッド(induction heads): 「直前に出た
A Bというパターンを見つけ、次にAが来たらBを続ける」というコピー機構を担う注意ヘッド。学習の途中で誘導ヘッドが形成される時期と ICL 能力の立ち上がりが対応することが観察され、ICL の機構的な担い手の候補とされています(→ LLM の解釈可能性の基礎)
いずれも「事前学習で得た能力を、推論時に呼び出している」点では一致します。
few-shot の例の効き方
研究知見は、実務の直感を補正します。
- 形式・分布が、ラベルの正しさより効くことがある: few-shot 例のラベルをランダムに壊しても性能があまり落ちない場合がある、という報告があります。例は「正解を教える」より、出力の形式・ラベル空間・入力分布を示す役割が大きい、という解釈です(タスクや設定に依存し、常にそうとは限りません)
- 例数の収穫逓減: 例を増やすほど良くなるが逓減し、あるところで頭打ち・悪化することもあります
- 順序への敏感性: 同じ例でも並び順で結果が変わることがあり、特定の順序が安定して良いとは限りません
読み下すと: 「few-shot は正解の列挙というより、タスクの形を示す実演。だからラベルより形式・分布・順序の設計が効く」。これはプロンプトエンジニアリングの基礎技法で「例はフォーマットの手本として設計する」ことの理論的裏付けです。
記憶と汎化
モデルは「覚える」と「一般化する」の両方をします。その境界に関する現象を 3 つ。
- 逐語記憶(memorization): 学習データの一部をそのまま暗記することがあります。頻出する・重複するデータほど記憶されやすく、大きいモデルほど記憶しやすい傾向が報告されています。これはプライバシー(学習データの漏出)と汚染の両面で問題になります
- grokking(遅れて訪れる汎化): 小さな課題で、訓練データを暗記した後、しばらくしてから急に汎化する現象。暗記と汎化が別の時間スケールで起きうることを示し、「訓練損失が下がった = 汎化した」ではないことの例証です
- 二重降下(double descent): モデルサイズやデータ量を増やすと、テスト誤差が「下がる → いったん上がる → 再び下がる」という非単調な曲線を描くことがある現象。「大きく/多くすれば単調に良くなる」という素朴な期待が成り立たない領域があることを示します
読み下すと: 「暗記と汎化は別物で、時間・規模に対して単純な関係ではない。訓練指標の改善を汎化と早合点しない」。
データ汚染とベンチマークへの含意
逐語記憶は、評価に直接効きます。評価データが事前学習に混入(汚染)していると、モデルは『解いた』のでなく『思い出した』だけかもしれません。
- 汚染されたベンチマークは、能力を過大評価します(エージェントベンチマークの全体像・事前学習とスケーリング則)
- 対策は、自社の非公開データで評価すること、汚染検査、そして時間的に新しいデータでの評価です(評価データセットの構築と保守)
- 「有名ベンチマークで高スコア」は、汚染の可能性を割り引いて読みます
この理解が効く場面
- few-shot の設計: 例を「正解の列挙」でなく「形式・分布の実演」として設計する根拠(プロンプトエンジニアリングの基礎技法)
- 評価の設計: 汚染・記憶を前提に、非公開データ・新しいデータで評価する(評価データセットの構築と保守・エージェントベンチマークの全体像)
- ベンチマークの読み方: 高スコアを汚染の可能性込みで割り引く(事前学習とスケーリング則の創発論争とも通じる)
- 機構的理解への入口: 誘導ヘッドが ICL を担うという見方が、解釈可能性の議論につながる(LLM の解釈可能性の基礎)
実務での注意点
アンチパターン
- few-shot の例を「正解を教えるもの」とだけ捉える → ラベルより形式・分布・順序が効く場面を見落とし、例の設計が雑になる → 例をタスクの形式・ラベル空間の実演として設計する
- 例を増やせば単調に良くなると仮定する → 収穫逓減・順序敏感性で、増やしても頭打ち・悪化しうる → 例数・順序を評価で確かめる
- 有名ベンチマークの高スコアを額面で信じる → 汚染(記憶)で能力が過大評価されている可能性 → 自社の非公開・新しいデータで評価する
- 訓練損失の低下を汎化と早合点する → grokking・二重降下が示すように、暗記と汎化は別 → テストデータ・汎化指標で確認する
- ICL の理論仮説を確定した事実として語る → 主要仮説は決着していない → 「暗黙のベイズ・学習アルゴリズム模倣・誘導ヘッド」を併記し、断定を避ける
チェックリスト
- 文脈内学習が「重みを変えずに例から学ぶように振る舞う」現象だと説明できる
- ICL の主要仮説(暗黙のベイズ・学習アルゴリズム模倣・誘導ヘッド)を中立に併記できる
- few-shot の例が形式・分布・順序で効くという研究知見を理解している
- 逐語記憶・grokking・二重降下が「暗記 ≠ 汎化」を示すと説明できる
- データ汚染がベンチマークを過大評価させると理解し、非公開データで評価している
- ベンチマークの高スコアを汚染の可能性込みで読んでいる
関連トピック
- プロンプトエンジニアリングの基礎技法 — few-shot の実務(本記事の理論的裏付け)
- 事前学習とスケーリング則 — 汚染・二重降下・創発論争の土台
- Transformer アーキテクチャ詳解 — 誘導ヘッドの担い手(多頭注意)
- LLM の解釈可能性の基礎 — 誘導ヘッド・回路という機構的な見方
- LLM の能力と限界の由来 — 能力・限界の実務側
- 評価データセットの構築と保守 — 汚染対策・非公開データでの評価
- エージェントベンチマークの全体像 — 汚染を割り引いたベンチマークの読み方
参考資料
- Language Models are Few-Shot Learners — GPT-3。文脈内学習を顕著に示した(Brown et al., 2020、アクセス日: 2026-07-09)
- An Explanation of In-context Learning as Implicit Bayesian Inference — 暗黙のベイズ推定仮説(Xie et al., 2021、アクセス日: 2026-07-09)
- Rethinking the Role of Demonstrations: What Makes In-Context Learning Work? — ラベルより形式が効く知見(Min et al., 2022、アクセス日: 2026-07-09)
- What learning algorithm is in-context learning? Investigations with linear models — ICL を学習アルゴリズムとして分析(Akyürek et al., 2022、アクセス日: 2026-07-09)
- Transformers learn in-context by gradient descent — ICL = 勾配降下という見方(von Oswald et al., 2022、アクセス日: 2026-07-09)
- In-context Learning and Induction Heads — 誘導ヘッドと ICL の対応(Olsson et al., 2022、アクセス日: 2026-07-09)
- Grokking: Generalization Beyond Overfitting on Small Algorithmic Datasets — 遅れて訪れる汎化(Power et al., 2022、アクセス日: 2026-07-09)
- Deep Double Descent: Where Bigger Models and More Data Hurt — 二重降下(Nakkiran et al., 2019、アクセス日: 2026-07-09)
- Quantifying Memorization Across Neural Language Models — 逐語記憶の条件(Carlini et al., 2022、アクセス日: 2026-07-09)