知識蒸留(distillation)とは|大きな教師モデルの知識を小さな生徒モデルへ移す仕組み

「大きなモデルの賢さを、そのまま小さなモデルに引き継げないか」という発想から生まれたのが知識蒸留(knowledge distillation)です。量子化やMoEと同じく「小さく・安く動かす」ための系統に位置づけられますが、仕組みは大きく異なります。量子化が同じモデルを軽くするのに対し、蒸留は教師(teacher)となる大きなモデルの振る舞いを、生徒(student)となる別の小さなモデルに真似させて新たに学習させます。この記事では、2015年の原典に立ち返って仕組みを整理し、量子化やMoEとの違い、実務の勘所、そして商用APIの出力を学習に使う際の規約上の注意までを、優劣を断定せずに扱います。
知識蒸留とは何か
知識蒸留の原典は、Geoffrey Hinton・Oriol Vinyals・Jeff Deanによる2015年の論文"Distilling the Knowledge in a Neural Network"(arXiv:1503.02531)です。大きなモデルやアンサンブル(複数モデルの組み合わせ)が持つ知識を、より配備しやすい単一の小さなモデルへ移すことを狙う手法として提案されました。
ポイントは、生徒モデルに与える「教材」の作り方にあります。通常の教師あり学習では、正解ラベル(hard target)だけを使います。画像分類なら「これは犬」という1つの正解だけです。これに対して蒸留では、教師モデルが出力する確率分布(soft target)も教材に使います。教師が「犬90%・猫8%・自動車0.001%」のように各クラスへ確率を割り振ったとき、その分布そのものに情報が含まれている、という考え方です。
soft targetとtemperature、dark knowledge
soft targetが持つ価値は、クラス間の相対的な近さにあります。「犬」と答えつつ「猫」にもわずかに確率を残していれば、教師は犬と猫が似ていて自動車とは遠い、という関係を暗黙に知っていることになります。この、正解ラベルには現れない相対関係は、いわゆるdark knowledgeと呼ばれます(Hintonが講演などで用いた呼称で、論文本文の用語ではありません)。
ただし、よく訓練された教師の確率分布は正解クラスに偏りがちで、そのままでは他クラスの微妙な差が潰れてしまいます。そこでtemperature(温度)というパラメータで分布を滑らかにし、小さな確率まで見えるようにしてから生徒に学ばせます。温度を上げるほど分布はなだらかになり、クラス間の相対関係が伝わりやすくなります。生徒は、正解ラベルと、温度で滑らかにした教師の分布の両方に近づくように学習する、というのが蒸留の基本形です。
メモ
量子化・MoEとの違い
「小さく・安く動かす」文脈では量子化やMoEと並べて語られますが、何を操作しているかが根本的に違います。混同すると手段の選択を誤るため、切り分けておきます。
| 手法 | 何をするか | モデルの数 |
|---|---|---|
| 量子化 | 同じモデルの重みや活性の数値精度を落として軽くする | 1つ(同一モデルを圧縮) |
| MoE | 大きなモデルの一部の専門家(expert)だけを使って計算量を減らす | 1つ(内部の一部だけ稼働) |
| 知識蒸留 | 教師の振る舞いを真似るように、別の小さなモデルを新たに学習させる | 2つ(教師と生徒) |
量子化とMoEは、あくまで元のモデルそのものを扱う技術です。対して蒸留は、教師とは別の生徒モデルを用意し、それを新たに学習させる点が本質的な違いです。生徒のアーキテクチャは教師と別物でよく、教師より大幅に小さく設計できます。学習が必要な分だけ手間はかかりますが、量子化のように元モデルの構造に縛られず、配備しやすい形の生徒を作れるのが特徴です。これらは排他ではなく、蒸留した生徒をさらに量子化して軽くする、といった組み合わせも可能です。
あわせて読みたい
量子化(quantization)とは|LLMを軽く・速く・安く動かすモデル圧縮の仕組み
あわせて読みたい
MoE(Mixture of Experts)とは|総パラメータと活性パラメータの違いを実務目線で
現代のLLMでの使われ方
原典は分類タスクの確率分布を題材にしていましたが、現代のLLMでは、より実務的な形で蒸留が使われています。中心になっているのは、大きなモデルの出力(応答や生成データ)を集めて、それを教材に小さなモデルを訓練する「レスポンスベース蒸留」あるいは「データ蒸留」と呼ばれる進め方です。内部の確率分布に触れず、生成された文章そのものを学習データとして使えるため、APIごしにしかアクセスできない大モデルからでも実施しやすいのが利点です。
さらに一歩進めた例として、Google Researchの"Distilling step-by-step"があります。これは教師モデルに最終的な答えだけでなく、そこに至る推論の根拠(rationale)も出力させ、生徒はラベルの予測と根拠の生成を同時に学ぶ、というアプローチです。同ブログでは、根拠まで教材に使うことで、より少ない学習データ・より小さいモデルでも大きなモデルを上回れた事例が示されています。数値はモデル・データセット・時点で変わりうるベンダー公表値として捉え、自分の課題での再現性は別途確かめる姿勢が要ります。
実務で押さえる勘所
蒸留は「小さくできる魔法」ではありません。効果を出すには、いくつかの前提を理解しておく必要があります。
- 1
教師の質が生徒の上限を決める
生徒の精度は、概ね教師の質で頭打ちになります。教師が間違える部分は生徒も引き継ぎやすく、生徒が教師を全面的に超えて万能化する、といったことは基本的に起きません。まず教師側の出力品質を上げることが、生徒を良くする近道です。 - 2
対象タスクを絞るほど効きやすい
汎用的な賢さをまるごと小さなモデルに移すのは困難です。用途を要約・分類・特定フォーマットの変換などに絞るほど、小さな生徒でも実用的な品質に届きやすくなります。守備範囲を広げすぎないことが成功率を左右します。 - 3
蒸留後は必ず評価する
生成データで学習させた生徒は、教師が苦手な領域や、教材に偏りがあった部分で劣化しがちです。蒸留後は、実際に使うタスクで出力を比較し、どこが落ちたかを具体的に確認します。一般的なベンチマーク値だけで判断しないのが安全です。 - 4
ライセンスと規約を確認する
教材に使うデータの出所には注意が必要です。特に、商用APIの出力を別モデルの学習に使う場合は、提供元の規約で制限されていないかを事前に確認します。
あわせて読みたい
ファインチューニングとRAGの使い分け|LLMをカスタマイズする2つの道の選び方
ライセンスと規約の注意
技術的に可能でも、規約上許されるとは限らない、というのが蒸留で最も見落とされやすい点です。データ蒸留は他社モデルの出力を教材にできてしまうため、利用規約との関係を必ず確認する必要があります。
事実として、Anthropicの商用利用規約(Commercial Terms of Service)は、Use Restrictionsの中で、同社のサービスを使って競合する製品・サービスを開発すること(競合するAIモデルの学習を含む)を明示的に禁止しています。つまり、商用APIの出力を無断で別モデルの学習に流用する行為は、各社の規約に抵触し得ます。禁止の範囲や表現は提供元・プランごとに異なり、改定もあるため、最新の規約原文を都度確認するのが前提になります。
注意
2026年には、大手モデルの出力を無断で蒸留したのではないか、といった議論が報じられる場面もありました。ただし、こうした事案の当否は外部からは検証が難しく、本記事では特定企業の是非を断定しません。ここで押さえるべきは、蒸留という技術そのものは中立でも、その教材の集め方には規約とライセンスの制約が付きうる、という点です。
本文の仕組み(soft target・temperature)はHinton・Vinyals・Deanの2015年論文(dark knowledgeはHintonによる非公式な呼称)、teacher-studentなどの用語整理はIBMの解説、rationaleを使う手法はGoogle Researchのブログ、規約の記述はAnthropicの商用利用規約に基づきます。数値や規約内容は時点で変わりうるため、具体的な採否は最新の一次情報と自分の環境での評価を優先してください。
よくある質問
知識蒸留と量子化は何が違いますか
soft targetとhard targetの違いは何ですか
蒸留すれば小さいモデルで大きいモデルを超えられますか
どんなタスクで蒸留が効きやすいですか
商用APIの出力を使って自作モデルを学習させても大丈夫ですか
まとめ
知識蒸留は、大きな教師モデルの知識を、別の小さな生徒モデルへ移して新たに学習させる手法です。正解ラベルだけでなく、教師の確率分布(soft target)をtemperatureで滑らかにして学ばせ、クラス間の相対関係まで伝えるのが原典の核心でした。現代のLLMでは、大モデルの出力を教材にするデータ蒸留が一般化し、根拠まで使う手法も登場しています。一方で、生徒の品質は教師の質が上限になり、タスクを絞るほど効きやすく、蒸留後の評価は欠かせません。そして教材の集め方には、ライセンスと規約の制約が付きうることを忘れないでください。
知識蒸留を検討するときのチェックリスト
- 軽くしたいのがモデル圧縮(量子化)なのか、別の小型モデルを作る(蒸留)なのかを切り分けた
- 教師モデルの出力品質を確認し、それが生徒の上限になることを理解した
- 生徒に任せるタスクを、要約や分類など具体的な範囲に絞った
- 蒸留後に、実際に使うタスクで出力を比較し劣化箇所を確認する計画を立てた
- 教材の出所を洗い出し、商用APIの出力を使う場合は最新の利用規約を確認した
- 判断が難しい規約・ライセンスの論点は法務に相談する体制を用意した
蒸留を理解すると、「大モデルをそのまま回すか、絞ったタスクを小さな生徒に肩代わりさせるか」というコスト設計の選択肢が具体的になります。まずは頻出する定型タスクを1つ選び、教師の出力で小さなモデルを作って評価する、という小さな実験から始めるのが現実的です。
出典・参考
関連する記事
量子化(quantization)とは|LLMを軽く・速く・安く動かすモデル圧縮の仕組み
量子化はモデルの重みや活性の数値精度を下げてメモリと計算を節約する技術です。FP16からINT8/INT4への圧縮の狙い、GGUF・GPTQ・AWQ・NF4といった方式、PTQとQATの違い、VRAM見積りと実務での選び方を、優劣を断定せず実証的に整理します。
MoE(Mixture of Experts)とは|総パラメータと活性パラメータの違いを実務目線で
近年の大規模モデルが広く採用するスパースMoE(混合エキスパート)を、dense(密)モデルとの違いから解説します。FFNをexpertに分割しrouterがtop-k routingで一部だけ動かす仕組み、総パラメータと活性パラメータの区別、VRAMは総規模・計算は活性規模というねじれ、学習と推論の注意点、モデル選定での読み方までまとめます。
ファインチューニングとRAGの使い分け|LLMをカスタマイズする2つの道の選び方
LLMを自社用途に寄せる方法には、プロンプト、RAG、ファインチューニングの階層があります。RAGとファインチューニングはそれぞれ何を得意とし、どこで選ぶべきか。知識の更新性、出力の安定性、コストとトラフィックの観点から使い分けの原則を整理し、実務で有効なハイブリッド構成と落とし穴まで、公式ドキュメントを確認しながら冷静にまとめます。


