ChatPaper.aiChatPaper

SVDQunat: Absorción de Valores Atípicos mediante Componentes de Bajo Rango para Modelos de Difusión de 4 Bits

SVDQunat: Absorbing Outliers by Low-Rank Components for 4-Bit Diffusion Models

November 7, 2024
Autores: Muyang Li, Yujun Lin, Zhekai Zhang, Tianle Cai, Xiuyu Li, Junxian Guo, Enze Xie, Chenlin Meng, Jun-Yan Zhu, Song Han
cs.AI

Resumen

Se ha demostrado que los modelos de difusión son altamente efectivos para generar imágenes de alta calidad. Sin embargo, a medida que estos modelos aumentan de tamaño, requieren significativamente más memoria y sufren una mayor latencia, lo que plantea desafíos sustanciales para su implementación. En este trabajo, nuestro objetivo es acelerar los modelos de difusión mediante la cuantización de sus pesos y activaciones a 4 bits. A un nivel tan agresivo, tanto los pesos como las activaciones son altamente sensibles, por lo que los métodos convencionales de cuantización posterior al entrenamiento para modelos de lenguaje grandes, como el suavizado, resultan insuficientes. Para superar esta limitación, proponemos SVDQuant, un nuevo paradigma de cuantización a 4 bits. A diferencia del suavizado, que redistribuye los valores atípicos entre pesos y activaciones, nuestro enfoque absorbe estos valores atípicos utilizando una rama de bajo rango. Primero consolidamos los valores atípicos desplazándolos de las activaciones a los pesos, y luego empleamos una rama de bajo rango de alta precisión para absorber los valores atípicos de los pesos mediante la Descomposición en Valores Singulares (SVD). Este proceso facilita la cuantización en ambos lados. Sin embargo, ejecutar la rama de bajo rango de forma independiente y naive incurre en una sobrecarga significativa debido al movimiento de datos adicional de las activaciones, anulando la aceleración obtenida por la cuantización. Para abordar esto, co-diseñamos un motor de inferencia, Nunchaku, que fusiona los núcleos de la rama de bajo rango con los de la rama de bajo número de bits para eliminar el acceso redundante a la memoria. También puede admitir perfectamente adaptadores de bajo rango (LoRAs) estándar sin necesidad de recuantización. Experimentos exhaustivos en SDXL, PixArt-Sigma y FLUX.1 validan la efectividad de SVDQuant para preservar la calidad de la imagen. Reducimos el uso de memoria para los modelos FLUX.1 de 12B en 3.5 veces, logrando una aceleración de 3.0 veces sobre la línea base cuantizada solo en pesos a 4 bits en una GPU laptop 4090 de 16 GB, allanando el camino para aplicaciones más interactivas en PCs. Nuestra biblioteca de cuantización y nuestro motor de inferencia son de código abierto.
English
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.5times, achieving 3.0times 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.
PDF223December 4, 2025