要約
拡散モデルは、高品質の画像を生成するのに非常に効果的であることが証明されています。
ただし、これらのモデルが大きくなるにつれて、必要なメモリが大幅に増加し、遅延が増加するため、展開に大きな課題が生じます。
この研究では、拡散モデルの重みと活性化を 4 ビットに量子化することで、拡散モデルを加速することを目指しています。
このような積極的なレベルでは、重みとアクティベーションの両方が非常に敏感になるため、スムージングなどの大規模な言語モデルに対する従来のトレーニング後の量子化手法では不十分になります。
この制限を克服するために、新しい 4 ビット量子化パラダイムである SVDQuant を提案します。
重みとアクティベーションの間で外れ値を再配分する平滑化とは異なり、私たちのアプローチは低ランクの分岐を使用してこれらの外れ値を吸収します。
まず、外れ値をアクティベーションから重みにシフトして統合し、次に高精度の低ランク分岐を使用して特異値分解 (SVD) で重みの外れ値を取り込みます。
このプロセスにより、両側の量子化が容易になります。
ただし、低ランクのブランチを独立して単純に実行すると、アクティベーションの余分なデータ移動により大幅なオーバーヘッドが発生し、量子化の高速化が無効になります。
これに対処するために、私たちは、低ランクのブランチのカーネルを下位ビットのブランチのカーネルに融合して冗長なメモリ アクセスを遮断する推論エンジン ヌンチャクを共同設計しました。
また、再量子化を必要とせずに、既製の低ランク アダプター (LoRA) をシームレスにサポートすることもできます。
SDXL、PixArt-$\Sigma$、および FLUX.1 に関する広範な実験により、画質の維持における SVDQuant の有効性が検証されています。
12B FLUX.1 モデルのメモリ使用量を 3.5$\times$ 削減し、16GB ラップトップ 4090 GPU の 4 ビット重みのみの量子化ベースラインと比較して 3.0$\times$ の高速化を達成し、よりインタラクティブなアプリケーションへの道を開きます。
PC上で。
当社の量子化ライブラリと推論エンジンはオープンソースです。
要約(オリジナル)
Diffusion models have been proven highly effective at generating high-quality images. However, as these models grow larger, they require significantly more memory and suffer from higher latency, posing substantial challenges for deployment. In this work, we aim to accelerate diffusion models by quantizing their weights and activations to 4 bits. At such an aggressive level, both weights and activations are highly sensitive, where conventional post-training quantization methods for large language models like smoothing become insufficient. To overcome this limitation, we propose SVDQuant, a new 4-bit quantization paradigm. Different from smoothing which redistributes outliers between weights and activations, our approach absorbs these outliers using a low-rank branch. We first consolidate the outliers by shifting them from activations to weights, then employ a high-precision low-rank branch to take in the weight outliers with Singular Value Decomposition (SVD). This process eases the quantization on both sides. However, na\'{\i}vely running the low-rank branch independently incurs significant overhead due to extra data movement of activations, negating the quantization speedup. To address this, we co-design an inference engine Nunchaku that fuses the kernels of the low-rank branch into those of the low-bit branch to cut off redundant memory access. It can also seamlessly support off-the-shelf low-rank adapters (LoRAs) without the need for re-quantization. Extensive experiments on SDXL, PixArt-$\Sigma$, and FLUX.1 validate the effectiveness of SVDQuant in preserving image quality. We reduce the memory usage for the 12B FLUX.1 models by 3.5$\times$, achieving 3.0$\times$ speedup over the 4-bit weight-only quantized baseline on the 16GB laptop 4090 GPU, paving the way for more interactive applications on PCs. Our quantization library and inference engine are open-sourced.
arxiv情報
著者 | Muyang Li,Yujun Lin,Zhekai Zhang,Tianle Cai,Xiuyu Li,Junxian Guo,Enze Xie,Chenlin Meng,Jun-Yan Zhu,Song Han |
発行日 | 2024-11-07 18:59:58+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google