大規模モデルを実用化するために欠かせない『軽量化』技術。蒸留・量子化・プルーニングの3本柱を押さえましょう。
LLMって巨大すぎて、普通のPCじゃ動かないよね?
その通り。
だからモデル軽量化技術が重要なの。
3大手法が蒸留、量子化、プルーニングよ。
知識蒸留(Knowledge Distillation) は、大きな教師モデルの振る舞いを小さな生徒モデルに学習させる手法。
2015年にヒントンが提案したわ。
先生の知識を、生徒が引き継ぐんですねぇ♪
生徒モデルは単に正解ラベルだけでなく、教師モデルの出力確率分布 (ソフトラベル) を学ぶの。
これで教師の『微妙な判断』まで引き継げるのよ。
有名例はDistilBERT(Hugging Face, 2019)。
BERTの40%サイズで97%の性能を維持、推論速度は60%向上したわ。
うわっ、すごい圧縮率じゃん!
次に量子化(Quantization)。
パラメータを32bit浮動小数点から16bit、8bit、さらには4bitへと低ビット化する技術よ。
量子化の代表例がGPTQ、AWQ、llama.cppのGGUF形式など。
LLaMAやMistralを4bit量子化して、ノートPCで動かすムーブメントが起きているわ。
4bitってすごいですぅ…でも、精度は落ちないんですかぁ?
Post-Training Quantization (PTQ, 事後量子化) とQuantization-Aware Training (QAT, 量子化を考慮した学習) があって、QATの方が精度劣化が少ないわ。
実用では1-3%程度の性能低下で済むことが多いの。
3つ目がプルーニング(Pruning, 枝刈り)。
ニューロンや接続のうち重要度が低いものを削除して、パラメータ数を減らす手法ね。
あー、庭木の剪定みたいなことか!
重要度の判定には重みの絶対値、勾配、Lottery Ticket仮説などの手法があるわ。
プルーニング後にファインチューニングで性能を回復させるのが定番。
これら3手法は組み合わせて使われる。
蒸留 → 量子化 → プルーニングの順で適用すると、1/10以下のサイズに圧縮できることも。
スマホでAIが動くのも、こういう技術のおかげなんだね!
G検定では『知識蒸留 (ヒントン 2015)』『量子化 (4bit、8bit)』『プルーニング』『DistilBERT』をしっかり押さえておいてね!
確認クイズ
大きな教師モデルの知識を小さな生徒モデルに転移する軽量化手法はどれか。
- 量子化
- プルーニング
- 知識蒸留
- データ拡張
こたえを見る
正解: 3. 知識蒸留
知識蒸留 (Knowledge Distillation)は、大きな教師モデルの出力 (特にソフトラベル) を小さな生徒モデルが学習する手法です。2015年にヒントンが提案、DistilBERTなどで実用化されています。