Hugging Faceが開発したBERTの蒸留モデル。BERTの40%のパラメータ削減・60%の高速化を実現しつつ、97%の言語理解性能を維持する軽量NLPモデルの代表例。
PC構成ビルダーで最適なパーツを選択
DistilBERT(Distilled BERT)は、Hugging Face の研究チームが 2019 年に発表した BERT の蒸留モデルです。知識蒸留の実用性を世に示した歴史的なモデルであり、「大規模モデルを小型化しても実用的な性能を維持できる」ことを広く認知させました。BERT-base(110M パラメータ、12層)から DistilBERT(66M パラメータ、6層)へ蒸留し、GLUE ベンチマークで 97% の性能を維持しながら 60% 高速化しました。
| 項目 | BERT-base | DistilBERT | 差異 |
|---|---|---|---|
| パラメータ数 | 110M | 66M | 40%削減 |
| 層数 | 12 | 6 | 50%削減 |
| 隠れ層次元 | 768 | 768 | 同一 |
| アテンションヘッド | 12 | 12 | 同一 |
| 推論速度 | 基準 | 1.6× | 60%高速 |
| モデルサイズ | 440MB | 260MB | 41%削減 |
| GLUE スコア | 79.5 | 77.0 | 97%維持 |
DistilBERT の学習には3つの損失関数を組み合わせています。
最終損失 = α × 蒸留損失 + β × MLM損失 + γ × コサイン損失
BERT-base の12層のうち、2層ごとに1層を選択して DistilBERT の6層に対応させます(層0,2,4,6,8,10 → DistilBERT層0-5)。この対応を使ってコサイン埋め込み損失を計算します。
DistilBERT は BERT と同じデータ(English Wikipedia + BookCorpus、約16GB)で学習されました。学習には8基のV100 GPUで約90時間を要しました。BERTの事前学習(同規模GPUで数日〜1週間)と比較して、蒸留の計算コストは十分に実用的です。
| タスク | BERT-base | DistilBERT | 性能維持率 |
|---|---|---|---|
| SST-2 (感情分析) | 93.5% | 91.3% | 97.6% |
| MNLI (テキスト含意) | 84.6% | 82.2% | 97.2% |
| QQP (質問重複判定) | 71.2% | 68.5% | 96.2% |
| QNLI (質問推論) | 90.5% | 89.2% | 98.6% |
| SQuAD v1.1 (QA) | 88.5 F1 | 86.9 F1 | 98.2% |
DistilBERT の成功は、蒸留モデルの研究と実用化を加速させました。
DistilBERT は分類タスクの本番環境で最も広く使われている蒸留モデルです。スパムフィルタ、感情分析、トピック分類などで BERT と同等の精度を半分以下のレイテンシで提供します。
文書の意味検索(セマンティック検索)で DistilBERT ベースの bi-encoder が広く使われています。Sentence-Transformers ライブラリの all-MiniLM-L6-v2 も DistilBERT の設計思想を踏襲しています。
スマートフォンやIoTデバイス上でのテキスト処理に DistilBERT の ONNX / TFLite 変換版が使われています。CPU のみで実用的な推論速度を実現します。
A1: はい。LLM が主流になった現在でも、分類・NER・感情分析などの決まったタスクでは DistilBERT クラスのモデルがコスト効率で優れています。LLM は1リクエストあたり数セントかかりますが、DistilBERT はCPUで毎秒数百件を処理でき、コストは実質ゼロです。
A2: DistilBERT は BERT(エンコーダ型)の蒸留で、テキスト分類・トークン分類・質問応答に特化します。GPT系蒸留(TinyLlama等)はデコーダ型で、テキスト生成・対話に特化します。用途に応じて選択してください。
A3: from transformers import pipeline; classifier = pipeline("sentiment-analysis", model="distilbert-base-uncased-finetuned-sst-2-english") の2行でSST-2感情分析が動作します。AutoModel + AutoTokenizer での利用も同様にシンプルで、BERTからの移行は通常モデル名の変更のみです。