知識蒸留(Knowledge Distillation)は、大規模モデルの「ダークナレッジ」を小さなモデルに伝える技術である。まず巨大な教師モデルに参照出力を生成させ、ずっと小さな生徒モデルにそれを学ばせることで、小さくて実用的なモデルを作り出す。
先生が実際に伝えるもの:ソフトラベルに宿るダークナレッジ
通常の学習ではモデルに「正解はA」とだけ教えるが、教師モデルが生徒に渡すのは答えだけではない。各選択肢に対する確率の採点という、完全な「迷いの記録」も一緒に渡すのだ。この確率分布をソフトラベルと呼び、「猫は机より虎に似ている」といった構造的な常識が暗に含まれている。この分布を模倣することで、生徒モデルが学ぶのは単一の答えではなく、先生の判断の仕方そのものだ。ダークナレッジとは、学習データのラベルには書かれていないのに、モデルの確率の中に隠れているこうした情報のことである。
温度パラメータ:先生の説明の細かさを調整する
蒸留では、ソフトラベルの滑らかさを調整するために温度パラメータがよく使われる。温度が高いほど確率分布は平坦になり、生徒は先生の各選択肢に対する微妙な違いをはっきり見取れる。温度が低いほど分布は鋭くなり、通常のハードラベルに近づく。温度の調整とは「先生にどれだけ細かく説明させるか」の制御である。粗すぎれば構造を学べず、細かすぎればノイズが混じる。実務では温度は試行錯誤で決めるハイパーパラメータであり、万能の値など存在しない。
損失関数:生徒は二つの授業を同時に受ける
生徒モデルの学習目標は通常二つの部分からなる。一つはソフトラベルに合わせ、先生の確率分布を模倣すること。もう一つは真のラベルに合わせ、基本的な正しさを保つことであり、両者は重み係数でバランスを取る。先生の言うことだけを聞けば、先生の間違いまでコピーしてしまう。ハードラベルだけを見れば、ダークナレッジは学べない。発展的な手法では中間層の特徴表現も揃え、生徒に結論だけでなく考え方まで学ばせる。
天井効果:生徒が先生を超えることはめったにない
蒸留には厳しい境界がある。生徒の能力の上限は、ほぼ例外なく教師モデルに縛られるのだ。先生が誤って判断した箇所では、生徒も高い確率で同じ誤りを犯す。模倣の過程で先生の能力の一部が失われることもある。蒸留の本質は「損失のある継承」であり、「青は藍より出でて藍より青し」ではない。数十億パラメータの小さなモデルが蒸留によって、総合力で数百億パラメータの先生を追い越すことを期待するのは、実務経験に合わない。
よくある二つの誤解
一つ目は「蒸留は圧縮コピーにすぎない」という誤解だ。圧縮は結果にすぎず、蒸留の核心は知識の転移にある。先生は確率分布の中の構造知識を手渡し、生徒は新しい意思決定の仕方を学ぶのだ。二つ目は「蒸留すれば小さなモデルは大規模モデルと同じくらい強くなる」という誤解だ。蒸留が目指すのは「十分使える」ことであり、スマートフォンやエッジデバイスのような計算資源に制約のある場面で、最小のサイズと引き換えに先生に近い性能を得ることであって、先生の能力の完全な複製ではない。