AI・機械学習
中級
DistilBERT知識蒸留(ディスティルバートチシキジョウリュウ)
BERTの知識蒸留版モデル。教師BERTの知識を40%少ないパラメータの生徒モデルへ転移し、推論速度60%向上・性能97%保持を実現した2019年のHugging Face提案手法。
0 回閲覧
0 いいね
2026/6/6 更新
関連タグ
bert
knowledge-distillation
nlp
model-compression
huggingface
DistilBERT知識蒸留とは
DistilBERTは2019年にHugging Faceが発表した知識蒸留(Knowledge Distillation)によるBERTの軽量版モデルです。Victor Sahnらによって提案され、大型の教師モデル(BERT-Base, 110Mパラメータ)の知識を小型の生徒モデル(66Mパラメータ)に転移します。
知識蒸留の基本概念
知識蒸留は2015年にHinton et al.が提案した技術で、ソフトラベル(ソフトターゲット)を使って教師モデルの「暗黙知」を生徒モデルに伝達します。教師モデルが出力するクラス確率分布は、正解クラスだけでなく誤答クラスへの確率も含み、モデルが学習した知識の構造を反映しています。
DistilBERTの3つの損失関数
DistilBERTは以下の3つを組み合わせた蒸留目的関数を採用:
- ソフトラベル損失: 教師BERTのMLM出力(softmax確率分布)に対するKLダイバージェンス
- コサイン埋め込み損失: 教師・生徒の隠れ層ベクトルのコサイン類似度を最大化
- MLMハード損失: 通常のMasked Language Modelingタスクのクロスエントロピー損失
これらを加重平均した損失を最小化することで、単純なSFTより効果的に知識転移が行われます。
実装上の工夫
- レイヤー数削減: BERT-Base(12層)→DistilBERT(6層)。レイヤー初期化には教師BERTの偶数番レイヤーの重みをそのままコピー
- 温度パラメータ(Temperature): ソフトラベル計算に
T=2を使用し、確率分布を滑らかにして蒸留効果を高める - プーリング削除: NSP(Next Sentence Prediction)ヘッドとセグメント埋め込みを削除してパラメータ効率を向上
性能ベンチマーク
GLUEベンチマーク(9タスク平均):
- BERT-Base: 79.6
- DistilBERT: 77.0(BERT比97%)
- 推論速度: 1.6倍高速化
- モデルサイズ: 40%削減
DistilBERTファミリー
Hugging Faceは同手法を他モデルにも適用:
- DistilGPT-2: GPT-2の蒸留版
- DistilRoBERTa: RoBERTaの蒸留版
- DistilBART: BARTの蒸留版(要約タスク向け)
現代的意義
DistilBERTはエッジデバイスやリソース制約環境でのNLPモデル展開の先駆けとなり、後続のTinyBERT・MobileBERT・MiniLMなどの軽量化研究の基盤を形成しました。2024年現在も、BERTベースの分類・NERタスクで最も広く使われる蒸留済みモデルの一つです。