LLM最適化・軽量化

量子化(モデル) りょうしか(もでる)

量子化QuantizationINT8INT4モデル軽量化推論効率化
量子化について教えて

簡単に言うとこんな感じ!

AIのパラメータ(重み)を「32ビット浮動小数点」から「8ビット整数」などに圧縮する技術だよ!データを4分の1のサイズに減らせるから、普通はA100 GPUが必要なモデルをゲーム用のGPUで動かせるようになる。品質は少し落ちるけど、コスト削減効果は絶大なんだ!


量子化(モデル)とは

量子化(Quantization) とは、ニューラルネットワークのパラメータ(重み)や活性化値を、高精度な浮動小数点(FP32やFP16)から低ビット数の整数(INT8やINT4)などに変換する最適化手法です。ビット数が減るほどメモリ使用量と計算量が削減され、推論速度が向上します。

例えば70Bパラメータのモデルをそのまま(FP16)使うと140GBのGPUメモリが必要ですが、INT4量子化では約35GBに削減でき、個人用のGPUサーバーでも動作可能になります。精度低下は避けられませんが、高品質な量子化手法(GPTQAWQ等)を使えば多くのタスクで影響を最小限に抑えられます。


ビット数と性能・サイズの関係

ビット数精度メモリ(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. 静的量子化: 事前にキャリブレーションデータで量子化
   → より高精度・高速

関連用語