ChatPaper.aiChatPaper

FlatQuant: Die Flachheit ist wichtig für die LLM-Quantisierung.

FlatQuant: Flatness Matters for LLM Quantization

October 12, 2024
Autoren: 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

Zusammenfassung

In letzter Zeit wird Quantisierung weit verbreitet für die Kompression und Beschleunigung großer Sprachmodelle (LLMs) eingesetzt. Aufgrund der Ausreißer in LLMs ist es entscheidend, Gewichte und Aktivierungen zu glätten, um den Quantisierungsfehler mit gleichermaßen verteilten Quantisierungspunkten zu minimieren. Frühere Forschung untersucht verschiedene Vor-Quantisierungstransformationen zur Unterdrückung von Ausreißern, wie beispielsweise kanalweise Skalierung und Hadamard-Transformation. Allerdings stellen wir fest, dass diese transformierten Gewichte und Aktivierungen weiterhin steil und weitläufig bleiben können. In diesem Artikel schlagen wir FlatQuant (Schnelle und erlernbare affine Transformation) vor, einen neuen Post-Training-Quantisierungsansatz zur Verbesserung der Gleichmäßigkeit von Gewichten und Aktivierungen. Unser Ansatz identifiziert optimale affine Transformationen, die auf jeden linearen Layer zugeschnitten sind, und kalibriert sie in Stunden über ein leichtgewichtiges Ziel. Um den Laufzeitoverhead zu reduzieren, wenden wir Kronecker-Zerlegung auf die Transformationsmatrizen an und verschmelzen alle Operationen in FlatQuant zu einem einzigen Kernel. Umfangreiche Experimente zeigen, dass FlatQuant einen neuen State-of-the-Art-Quantisierungsbenchmark aufstellt. Beispielsweise erreicht es bei der W4A4-Quantisierung des LLaMA-3-70B-Modells eine Genauigkeitsminderung von weniger als 1%, was SpinQuant um 7,5% übertrifft. In Bezug auf die Inferenzlatenz reduziert FlatQuant die durch Vor-Quantisierungstransformation verursachte Verlangsamung von 0,26x bei QuaRot auf lediglich 0,07x, was eine Beschleunigung von bis zu 2,3x für Prefill und 1,7x für Decodierung bringt. Der Code ist verfügbar unter: 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

PDF152November 16, 2024