AI・機械学習
中級

知識蒸留(ティーチャー・スチューデント)(チシキジョウリュウティーチャースチューデント)

大規模な教師モデルの出力確率分布(ソフトラベル)を用いて小規模な生徒モデルを訓練し、モデル圧縮を実現する手法。

0 回閲覧
0 いいね
2026/6/8 更新
関連タグ
知識蒸留
モデル圧縮
Teacher-Student
ソフトラベル
LLM効率化

知識蒸留(ティーチャー・スチューデント)

知識蒸留(Knowledge Distillation)は、大規模で高精度な教師モデル(Teacher)の「知識」を、小規模で軽量な生徒モデル(Student)へ転移するモデル圧縮手法です。Hintonら(2015年)が提唱した概念で、LLM時代に入ってから特に重要性が増しています。

なぜソフトラベルが有効なのか

通常の学習では正解クラスのみを1とするハードラベルを使います。しかし教師モデルのソフトラベル(各クラスへの確率分布)には「猫と虎の類似性」「動詞と名詞の文脈的近接性」など、ハードラベルでは失われる豊富な構造情報が含まれています。この情報を生徒モデルへ伝えることで、少ないパラメータでも高い汎化性能を実現できます。

温度パラメータとKLダイバージェンス

蒸留の損失関数には通常、教師と生徒の確率分布のKLダイバージェンスを最小化する項が含まれます。温度パラメータτ(τ>1)でソフトマックスを平滑化することで、本来低確率なクラスの情報も生徒に伝達されます。

import torch.nn.functional as F

# 温度スケーリング済みソフトラベルのKLダイバージェンス
student_logits_scaled = student_logits / temperature
teacher_logits_scaled = teacher_logits / temperature

distillation_loss = F.kl_div(
    F.log_softmax(student_logits_scaled, dim=-1),
    F.softmax(teacher_logits_scaled, dim=-1),
    reduction='batchmean'
) * (temperature ** 2)

LLMへの応用

LLM蒸留は主に以下の形態で行われます。

ブラックボックス蒸留

教師LLMのAPIから出力テキストを収集し、生徒モデルのSFTデータとして利用。Alpaca(GPT-3.5→LLaMA-7B)やDeepSeek-R1-Distill(R1→7B/14B/32B)が代表例。

ホワイトボックス蒸留

教師モデルのlogitsや中間層表現にアクセスして損失計算。精度は高いが教師モデルへの直接アクセスが必要。MiniLMやTinyBERTがこのアプローチを採用。

シーケンスレベル蒸留

教師が生成したシーケンスを生徒の学習データとして使うSimple Sequence-Level KD。生成品質は高いが多様性が低下しやすい。

代表的な蒸留済みモデル(2025年)

  • DistilBERT: BERT-baseの40%サイズで97%性能維持
  • TinyLlama-1.1B: Llama-2-7Bを蒸留
  • DeepSeek-R1-Distill-7B: DeepSeek-R1から推論特化蒸留
  • Phi-4-mini: Phi-4から3.8Bへ蒸留

LoRA蒸留とアダプタ転移

2025年のトレンドとして、フルモデルではなくLoRAアダプタ形式で教師の知識を生徒へ転移する手法が注目されています。AdaLoRAやLLaMA-Adapterがこのアプローチを発展させており、ベースモデルを凍結したまま数百MBのアダプタだけで蒸留効果を得られます。

まとめ

  • 知識蒸留はソフトラベルによるクラス間関係の転移がコア
  • 温度パラメータτで知識の豊富さを制御
  • LLMではブラックボックス/ホワイトボックス/シーケンスレベルの3形態
  • 2025年はDeepSeek-R1蒸留系モデルが推論タスクで特に注目
この記事について
カテゴリーAI・機械学習
難易度中級
作成日2026/6/8