訓練
知識蒸留(knowledge distillation)
大きな教師モデルの出力を小さな生徒モデルが模倣して学ぶ圧縮手法で、精度を保ったままサイズを縮小し、オンデバイスや低リソース環境での実行を可能にします。
**知識蒸留(knowledge distillation)**は、より小さな「生徒」ネットワークがより大きな「教師」ネットワークの振る舞いを模倣することを学ぶ、モデル圧縮手法です。生徒がデータセットのハードラベルだけから学ぶのではなく、教師が生成するソフトな確率分布で学習されます — これは教師がどのように一般化するかに関する、はるかに豊かな情報を運びます。
この技術は2015年にHinton、Vinyals、Deanによって普及しました。典型的な手順:
- 大規模な大規模言語モデル(教師)が、大量のプロンプト集合で出力やロジットを生成
- より小さな生徒が、自身の出力と教師のものとの差を最小化するよう学習され、より滑らかな分布のためにしばしば「temperature softmax」を伴う
- オプションで、実ラベルでの古典的なファインチューニングと組み合わせる
蒸留は、強力なモデルの実用的な小型版が今日存在する理由です — 例えばDistilBERT(BERTより40%小さく、性能は97%)、Llama 3.2 1B/3B、Gemma 2B、そしてGPT-4とClaudeからの多数のローカル蒸留版。Apple Intelligenceとモバイル端末上のオンデバイスモデルは、大きな能力を数ギガバイトのRAMに収めるために、蒸留に大きく依存しています。
限界は、生徒がエッジケースや複雑な推論で教師に追いつくことが稀であり、品質が転移に使用されるプロンプトの多様性に大きく依存することです。