AIの本と用語検索

蒸留

AIの分野における蒸留は、主にモデル圧縮の手法として用いられます。この技術の目的は、巨大で複雑なニューラルネットワーク(教師モデル)が持つ知識や性能を、より小さく、高速で、計算資源の制約が少ないネットワーク(生徒モデル)へと効率的に移し替えることです。

教師モデルは、多くの場合、非常に高い精度を達成しますが、その代償として多くのパラメータを持ち、推論に時間がかかり、モバイルデバイスや組み込みシステムのようなリソースが限られた環境での利用が困難です。

蒸留のプロセスでは、生徒モデルは、通常の正解ラベル(ハードラベル)だけでなく、教師モデルの出力の確率分布(ソフトターゲットまたはソフトラベル)からも学習します。

この確率分布には、正解以外のクラスに関する情報、つまり「なぜ教師モデルはその答えを選んだのか」という豊かな知識が含まれています。

例えば、教師モデルが「猫」の画像を正解の「猫」と高い確率で識別しつつも、「ライオン」や「ヒョウ」といった関連する動物にもわずかに高い確率を与えていた場合、この関連性の情報が生徒モデルに渡されます。

生徒モデルは、このソフトターゲットの情報を利用して訓練されることで、教師モデルの汎化能力と判断の機微を模倣しようとします。その結果、生徒モデルは、教師モデルと比べても遜色のない性能を維持しつつ、劇的に小さく、高速になります。これは、大規模なAIモデルを実世界の多様な環境に展開するための実用的な解決策として非常に重要です。