【ちしきじょうりゅう】
知識蒸留(ナレッジディスティレーション) とは?
💡 大きなAIの「エッセンス」を小さなAIに凝縮する技術
📌 このページのポイント
- 大規模な教師モデルの出力を手本にして、小さな生徒モデルを訓練する
- モデルサイズを大幅に削減しながら、精度の低下を最小限に抑えられる
- スマホやIoT機器など、計算資源が限られた環境での利用を可能にする
- soft label(確率分布)を使った学習が通常の学習より豊かな情報を伝える
知識蒸留ってなんで必要なの?
どうやって知識を移すの?
面白い仕組みなんだ。普通の学習では「正解は猫」という0か1の情報で学ぶけど、蒸留では教師モデルの出力する「猫80%、トラ15%、ライオン5%」という確率分布をそのまま学ぶんだ。「猫とトラは似ている」という関係性まで学べるから、小さなモデルでも賢くなれるんだよ。
どれくらい小さくできるの?
タスクにもよるけど、モデルサイズを10分の1以下にしても元の精度の90%以上を維持できることもあるよ。DistilBERTという有名な例では、BERTの60%のサイズで97%の性能を達成しているんだ。
蒸留されたモデルって実際にどこで使われてるの?
蒸留と量子化って何が違うの?
まとめ:ざっくりこれだけ覚えればOK!
「知識蒸留」って出てきたら「大きなAIの知識を小さなAIにギュッと詰め込む技術のことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Knowledge Distillation」 = 知識の蒸留
💬 蒸留は液体を蒸発させて純粋な成分を取り出す化学プロセス。大きなモデルから本質的な知識だけを抽出するイメージだよ