FlatQuant: l'importanza della planarità per la quantizzazione LLM
FlatQuant: Flatness Matters for LLM Quantization
October 12, 2024
Autori: Yuxuan Sun, Ruikang Liu, Haoli Bai, Han Bao, Kang Zhao, Yuening Li, Jiaxin Hu, Xianzhi Yu, Lu Hou, Chun Yuan, Xin Jiang, Wulong Liu, Jun Yao
cs.AI
Abstract
Recentemente, la quantizzazione è stata ampiamente utilizzata per la compressione e l'accelerazione dei grandi modelli linguistici~(LLM). A causa degli outlier nei LLM, è cruciale appiattire i pesi e le attivazioni per minimizzare l'errore di quantizzazione con punti di quantizzazione equamente spaziati. Ricerche precedenti esplorano varie trasformazioni pre-quantizzazione per sopprimere gli outlier, come la scalatura per canale e la trasformazione di Hadamard. Tuttavia, osserviamo che questi pesi e attivazioni trasformati possono ancora rimanere ripidi e dispersi. In questo articolo, proponiamo FlatQuant (Trasformazione Affine Veloce e Apprendibile), un nuovo approccio di quantizzazione post-training per migliorare l'appiattimento dei pesi e delle attivazioni. Il nostro approccio identifica trasformazioni affini ottimali adattate a ciascuno strato lineare, calibrate in ore attraverso un obiettivo leggero. Per ridurre l'overhead di runtime, applichiamo la decomposizione di Kronecker alle matrici di trasformazione e fondiamo tutte le operazioni in FlatQuant in un unico kernel. Estesi esperimenti mostrano che FlatQuant stabilisce un nuovo benchmark di quantizzazione all'avanguardia. Ad esempio, raggiunge una diminuzione di accuratezza inferiore al 1% per la quantizzazione W4A4 sul modello LLaMA-3-70B, superando SpinQuant del 7.5%. Per la latenza di inferenza, FlatQuant riduce il rallentamento indotto dalla trasformazione pre-quantizzazione da 0.26x di QuaRot a soli 0.07x, portando a un aumento di velocità fino a 2.3x per il prefill e 1.7x per la decodifica, rispettivamente. Il codice è disponibile su: https://github.com/ruikangliu/FlatQuant.
English
Recently, quantization has been widely used for the compression and
acceleration of large language models~(LLMs). Due to the outliers in LLMs, it
is crucial to flatten weights and activations to minimize quantization error
with the equally spaced quantization points. Prior research explores various
pre-quantization transformations to suppress outliers, such as per-channel
scaling and Hadamard transformation. However, we observe that these transformed
weights and activations can still remain steep and outspread. In this paper, we
propose FlatQuant (Fast and Learnable Affine Transformation), a new
post-training quantization approach to enhance flatness of weights and
activations. Our approach identifies optimal affine transformations tailored to
each linear layer, calibrated in hours via a lightweight objective. To reduce
runtime overhead, we apply Kronecker decomposition to the transformation
matrices, and fuse all operations in FlatQuant into a single kernel. Extensive
experiments show that FlatQuant sets up a new state-of-the-art quantization
benchmark. For instance, it achieves less than 1% accuracy drop for
W4A4 quantization on the LLaMA-3-70B model, surpassing SpinQuant by
7.5%. For inference latency, FlatQuant reduces the slowdown induced
by pre-quantization transformation from 0.26x of QuaRot to merely
0.07x, bringing up to 2.3x speedup for prefill and
1.7x speedup for decoding, respectively. Code is available at:
https://github.com/ruikangliu/FlatQuant.Summary
AI-Generated Summary