ChatPaper.aiChatPaper

PrefixQuant: Quantização Estática Supera a Dinâmica através de Valores Atípicos Prefixados em LLMs

PrefixQuant: Static Quantization Beats Dynamic through Prefixed Outliers in LLMs

October 7, 2024
Autores: Mengzhao Chen, Yi Liu, Jiahao Wang, Yi Bin, Wenqi Shao, Ping Luo
cs.AI

Resumo

A quantização é essencial para implementar Modelos de Linguagem Grandes (LLMs) ao aprimorar a eficiência de memória e a velocidade de inferência. Os métodos existentes para quantização de ativação abordam principalmente os valores discrepantes por canal, muitas vezes negligenciando os valores discrepantes por token, o que leva à dependência de uma quantização dinâmica por token custosa. Para lidar com isso, introduzimos o PrefixQuant, uma técnica inovadora que isola tokens discrepantes offline sem a necessidade de retrabalho. Especificamente, o PrefixQuant identifica tokens discrepantes de alta frequência e os prefixa no cache KV, evitando a geração de tokens discrepantes durante a inferência e simplificando a quantização. Até onde sabemos, o PrefixQuant é o primeiro a permitir uma quantização estática por tensor eficiente para superar a quantização dinâmica por token cara. Por exemplo, no Llama-3-8B W4A4KV4 (peso de 4 bits, ativação de 4 bits e cache KV de 4 bits), o PrefixQuant com quantização estática por tensor alcança uma perplexidade de 7,43 no WikiText2 e uma precisão média de 71,08% em 5 tarefas de raciocínio de senso comum, superando métodos anteriores de quantização dinâmica por token como o QuaRot com uma melhoria de 0,98 na perplexidade e +5,98 pontos na precisão. Além disso, a velocidade de inferência dos modelos quantizados W4A4 usando o PrefixQuant é de 1,60x a 2,81x mais rápida do que os modelos FP16 e supera os modelos QuaRot em 1,2x a 1,3x. Nosso código está disponível em https://github.com/ChenMnZ/PrefixQuant.
English
Quantization is essential for deploying Large Language Models (LLMs) by enhancing memory efficiency and inference speed. Existing methods for activation quantization mainly address channel-wise outliers, often neglecting token-wise outliers, leading to reliance on costly per-token dynamic quantization. To address this, we introduce PrefixQuant, a novel technique that isolates outlier tokens offline without re-training. Specifically, PrefixQuant identifies high-frequency outlier tokens and prefixes them in the KV cache, preventing the generation of outlier tokens during inference and simplifying quantization. To our knowledge, PrefixQuant is the first to enable efficient per-tensor static quantization to outperform expensive per-token dynamic quantization. For instance, in W4A4KV4 (4- bit weight, 4-bit activation, and 4-bit KV cache) Llama-3-8B, PrefixQuant with per-tensor static quantization achieves a 7.43 WikiText2 perplexity and 71.08% average accuracy on 5 common-sense reasoning tasks, outperforming previous per-token dynamic quantization methods like QuaRot with 0.98 perplexity improvement and +5.98 points accuracy. Additionally, the inference speed of W4A4 quantized models using PrefixQuant is 1.60x to 2.81x faster than FP16 models and exceeds QuaRot models by 1.2x to 1.3x. Our code is available at https://github.com/ChenMnZ/PrefixQuant.

Summary

AI-Generated Summary

PDF312November 16, 2024