OmniQuant: Quantizzazione Calibrata Omnidirezionale per Modelli Linguistici di Grandi Dimensioni
OmniQuant: Omnidirectionally Calibrated Quantization for Large Language Models
August 25, 2023
Autori: Wenqi Shao, Mengzhao Chen, Zhaoyang Zhang, Peng Xu, Lirui Zhao, Zhiqian Li, Kaipeng Zhang, Peng Gao, Yu Qiao, Ping Luo
cs.AI
Abstract
I modelli linguistici di grandi dimensioni (LLM) hanno rivoluzionato i compiti di elaborazione del linguaggio naturale. Tuttavia, il loro impiego pratico è ostacolato dagli enormi requisiti di memoria e calcolo. Sebbene i recenti metodi di quantizzazione post-addestramento (PTQ) siano efficaci nel ridurre l'impronta di memoria e migliorare l'efficienza computazionale degli LLM, essi definiscono manualmente i parametri di quantizzazione, il che porta a prestazioni inferiori e non riesce a gestire la quantizzazione a bit estremamente bassi. Per affrontare questo problema, introduciamo una tecnica di quantizzazione calibrata omnidirezionale (OmniQuant) per gli LLM, che ottiene buone prestazioni in diverse configurazioni di quantizzazione mantenendo l'efficienza computazionale del PTQ ottimizzando in modo efficiente vari parametri di quantizzazione. OmniQuant comprende due componenti innovative: il Ritaglio Ponderato Apprendibile (LWC) e la Trasformazione Equivalente Apprendibile (LET). LWC modula i valori estremi dei pesi ottimizzando la soglia di ritaglio. Nel frattempo, LET affronta gli outlier delle attivazioni spostando la sfida della quantizzazione dalle attivazioni ai pesi attraverso una trasformazione equivalente apprendibile. Operando all'interno di un framework differenziabile utilizzando la minimizzazione dell'errore a blocchi, OmniQuant può ottimizzare in modo efficiente il processo di quantizzazione sia per la quantizzazione solo dei pesi che per la quantizzazione pesi-attivazioni. Ad esempio, la famiglia di modelli LLaMA-2 con dimensioni da 7 a 70B può essere elaborata con OmniQuant su una singola GPU A100-40G entro 1-16 ore utilizzando 128 campioni. Esperimenti estensivi convalidano le prestazioni superiori di OmniQuant in diverse configurazioni di quantizzazione come W4A4, W6A6, W4A16, W3A16 e W2A16. Inoltre, OmniQuant dimostra efficacia nei modelli ottimizzati per istruzioni e offre miglioramenti significativi nella velocità di inferenza e nella riduzione della memoria su dispositivi reali. Codici e modelli sono disponibili all'indirizzo https://github.com/OpenGVLab/OmniQuant.
English
Large language models (LLMs) have revolutionized natural language processing
tasks. However, their practical deployment is hindered by their immense memory
and computation requirements. Although recent post-training quantization (PTQ)
methods are effective in reducing memory footprint and improving the
computational efficiency of LLM, they hand-craft quantization parameters, which
leads to low performance and fails to deal with extremely low-bit quantization.
To tackle this issue, we introduce an Omnidirectionally calibrated Quantization
(OmniQuant) technique for LLMs, which achieves good performance in diverse
quantization settings while maintaining the computational efficiency of PTQ by
efficiently optimizing various quantization parameters. OmniQuant comprises two
innovative components including Learnable Weight Clipping (LWC) and Learnable
Equivalent Transformation (LET). LWC modulates the extreme values of weights by
optimizing the clipping threshold. Meanwhile, LET tackles activation outliers
by shifting the challenge of quantization from activations to weights through a
learnable equivalent transformation. Operating within a differentiable
framework using block-wise error minimization, OmniQuant can optimize the
quantization process efficiently for both weight-only and weight-activation
quantization. For instance, the LLaMA-2 model family with the size of 7-70B can
be processed with OmniQuant on a single A100-40G GPU within 1-16 hours using
128 samples. Extensive experiments validate OmniQuant's superior performance
across diverse quantization configurations such as W4A4, W6A6, W4A16, W3A16,
and W2A16. Additionally, OmniQuant demonstrates effectiveness in
instruction-tuned models and delivers notable improvements in inference speed
and memory reduction on real devices. Codes and models are available at
https://github.com/OpenGVLab/OmniQuant.