GPTQ(ジーピーティーキュー)
GPTモデル向けの後処理(PTQ)量子化手法。二次情報(ヘッシアン)を用いて層ごとに重みを4bit等へ量子化し、精度劣化を抑えつつGPU推論を高速化する代表的なLLM量子化方式。
概要
GPTQ(Generative Pre-trained Transformer Quantization)は、2022年に提案されたGPTモデル向けの後処理量子化(PTQ: Post-Training Quantization)手法です。学習済みモデルを再学習なしで4bit等へ量子化でき、二次情報(ヘッシアン近似)を用いて層ごとに量子化誤差を最小化します。OPTQアルゴリズムをベースに、重みを1列ずつ量子化しながら残差を補正することで、4bitでも精度劣化を小さく抑えます。AutoGPTQやExLlamaV2で実装され、GPU上での高速・省VRAM推論を実現する、AWQと並ぶGPU向け量子化の定番です。
主な特徴・仕組み
- PTQ: 再学習不要、学習済み重みを直接量子化
- 二次情報利用: ヘッシアンで量子化順序と補正を最適化
- 4bit中心: 3/4/8bitに対応、4bitが主流
- group size: 128等のグループ単位でスケールを保持し精度維持
- ExLlamaV2: 専用カーネルで高速推論
- GPU特化: 行列演算をGPUで効率実行
スペック比較表
| 項目 | GPTQ | AWQ | GGUF(Q4_K_M) |
|---|---|---|---|
| 方式 | ヘッシアンPTQ | 活性化考慮PTQ | K-quant |
| 主bit | 4bit | 4bit | 約4.8bit |
| 実行環境 | GPU | GPU | CPU/GPU |
| 速度 | 高速(ExLlama) | 高速 | 中〜高 |
具体例・対応製品
TheBloke氏が多数のGPTQモデルを公開し、Llama系・Mistral系の4bit版が広く使われました。group size 128での量子化が品質と速度のバランスで一般的です。ExLlamaV2バックエンドと組み合わせると、RTX 3090/4090で13B〜34Bモデルを高速に動かせます。
自作PCでの選び方・注意点
GPTQはGPU推論前提で、VRAMに全レイヤーが載ることが基本です。group sizeを小さくすると精度は上がりますがVRAMと速度に影響します。CPUオフロードや混在推論が必要ならGGUFが適します。AWQと比べると古い手法ですが、ExLlamaV2との組み合わせで依然高速です。
関連用語との違い
AWQが活性化の大きさを考慮して重要な重みを保護するのに対し、GPTQはヘッシアン(二次の曲率)を用いて誤差を補正します。GGUFがCPU/GPU混在・多段階量子化に向くのに対し、GPTQはGPU上の4bit高速推論に特化します。BitsAndBytesの実行時量子化と異なり、事前に量子化モデルを生成します。
よくある質問(FAQ)
Q1: 再学習は必要ですか? A: 不要です。GPTQはPTQ手法で、学習済みモデルにキャリブレーションデータを通すだけで4bit化できます。
Q2: AWQとどちらが良いですか? A: 精度はモデルにより前後しますが、AWQの方が新しく活性化を考慮します。速度はExLlamaV2併用のGPTQが優秀な場合があります。
Q3: group sizeとは? A: 重みをまとめてスケールを共有する単位です。128が一般的で、小さいほど精度が上がりVRAMと速度に影響します。
まとめ
- ヘッシアンを用いた後処理量子化(PTQ)の代表手法
- 再学習なしで4bit化、ExLlamaV2で高速GPU推論
- GPU特化、AWQと並ぶ定番だが活性化考慮はAWQが上