量子化(モデル) りょうしか(もでる)
量子化QuantizationINT8INT4モデル軽量化推論効率化
量子化について教えて
簡単に言うとこんな感じ!
AIのパラメータ(重み)を「32ビット浮動小数点」から「8ビット整数」などに圧縮する技術だよ!データを4分の1のサイズに減らせるから、普通はA100 GPUが必要なモデルをゲーム用のGPUで動かせるようになる。品質は少し落ちるけど、コスト削減効果は絶大なんだ!
量子化(モデル)とは
量子化(Quantization) とは、ニューラルネットワークのパラメータ(重み)や活性化値を、高精度な浮動小数点(FP32やFP16)から低ビット数の整数(INT8やINT4)などに変換する最適化手法です。ビット数が減るほどメモリ使用量と計算量が削減され、推論速度が向上します。
例えば70Bパラメータのモデルをそのまま(FP16)使うと140GBのGPUメモリが必要ですが、INT4量子化では約35GBに削減でき、個人用のGPUサーバーでも動作可能になります。精度低下は避けられませんが、高品質な量子化手法(GPTQ・AWQ等)を使えば多くのタスクで影響を最小限に抑えられます。
ビット数と性能・サイズの関係
| ビット数 | 精度 | メモリ(70B) | 品質 |
|---|---|---|---|
| FP32 | 最高 | 280 GB | ベースライン |
| FP16 / BF16 | 高い | 140 GB | ほぼ同等 |
| INT8 | 良い | 70 GB | 若干低下 |
| INT4 | 中程度 | 35 GB | 一部低下 |
| INT2 | 低い | 17 GB | 大幅低下 |
歴史と背景
- 2017年:TensorFlow Liteで量子化がモバイルAI推論に普及
- 2021年:INT8量子化がTransformerに適用され実用化(bitsandbytes等)
- 2022年:GPTQ・LLM.intによってLLMへのINT4量子化が実用化
- 2023年:llama.cppがINT4量子化でM1 Macでも13Bモデルが動作可能に
- 現在:INT4が実用的な標準となりつつあり、さらに低ビットの研究も進行
量子化の方式
1. Post-Training Quantization(PTQ): 学習後に量子化
→ GPTQ・AWQ等。ファインチューニング不要で手軽
2. Quantization-Aware Training(QAT): 学習中に量子化を考慮
→ より高品質だが学習コストが高い
3. 動的量子化: 推論時にリアルタイムで量子化
→ 実装が簡単だが速度メリットが小さい
4. 静的量子化: 事前にキャリブレーションデータで量子化
→ より高精度・高速