知識蒸留は、事前トレーニングされた大規模なモデル (「教師モデル」) の学習結果をより小規模な「生徒モデル」に転送するように設計された機械学習手法です。これは、特に大規模なディープ ニューラル ネットワークのモデル圧縮および知識伝達の形式としてディープ ラーニングで使用されます。
知識抽出の目標は、より大規模で複雑なモデルをシミュレートするために、よりコンパクトなモデルをトレーニングすることです。従来の深層学習の目標は、人工ニューラル ネットワークをトレーニングしてその予測をトレーニング データ セットで提供される出力例に近づけることですが、知識抽出の主な目標は、教師ネットワークの予測と一致するように生徒ネットワークをトレーニングすることです。 。
知識蒸留 (KD) は、複数の層と学習可能なパラメーターを備えた大規模なディープ ニューラル ネットワークで最も一般的に使用されます。このプロセスは、数十億のパラメーターを備えた新興の大規模な生成 AI モデルに特に関連します。
このコンセプトは、2006 年の次のタイトルの記事に端を発しています。 「モデル圧縮」に関する論文。 Caruana らは、当時最先端の分類モデル (数百の基本分類器で構成される大規模アンサンブル モデル) を使用して大規模なデータセットをラベル付けし、その後、従来の教師あり学習によって、新しくラベル付けされたデータセット上で単一のニューラル ネットワークをトレーニングしました。 。
知識蒸留テクノロジーは、自然言語処理 (NLP)、音声認識、画像認識、物体検出などのさまざまな分野で成功裏に適用されています。近年、知識の蒸留に関する研究は、大規模言語モデル (LLM) にとって特に重要になっています。 LLM にとって、知識の蒸留は、高度な機能を主要な独自モデルから、より小規模でアクセスしやすいオープンソース モデルに移行する効果的な手段となっています。