FlatQuant: De vlakheid is belangrijk voor LLM kwantisatie.
FlatQuant: Flatness Matters for LLM Quantization
October 12, 2024
Auteurs: 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
Samenvatting
Recentelijk is kwantisatie veel gebruikt voor de compressie en versnelling van grote taalmodellen~(LLM's). Vanwege de uitschieters in LLM's is het cruciaal om gewichten en activaties af te vlakken om de kwantisatiefout te minimaliseren met evenredig verdeelde kwantisatiepunten. Eerdere onderzoeken verkennen verschillende voor-kwantisatie transformaties om uitschieters te onderdrukken, zoals per-kanaal schaling en Hadamard transformatie. We merken echter op dat deze getransformeerde gewichten en activaties nog steeds steil en wijdverspreid kunnen blijven. In dit artikel stellen we FlatQuant (Snelle en Leerzame Affiene Transformatie) voor, een nieuwe post-training kwantisatiebenadering om de vlakheid van gewichten en activaties te verbeteren. Onze benadering identificeert optimale affiene transformaties op maat voor elke lineaire laag, gekalibreerd in uren via een lichtgewicht doel. Om de uitvoeringsoverhead te verminderen, passen we Kronecker-decompositie toe op de transformatiematrices, en fuseren we alle operaties in FlatQuant tot een enkele kernel. Uitgebreide experimenten tonen aan dat FlatQuant een nieuwe state-of-the-art kwantisatiebenchmark opzet. Zo behaalt het bijvoorbeeld minder dan 1% nauwkeurigheidsdaling voor W4A4 kwantisatie op het LLaMA-3-70B model, waarbij het SpinQuant overtreft met 7.5%. Voor inferentievertraging vermindert FlatQuant de vertraging veroorzaakt door voor-kwantisatie transformatie van 0.26x van QuaRot tot slechts 0.07x, wat respectievelijk tot 2.3x versnelling voor voorvullen en 1.7x versnelling voor decoderen oplevert. De code is beschikbaar op: 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