ChatPaper.aiChatPaper

PrefixQuant: Статическая квантизация превосходит динамическую за счет предварительно заданных выбросов в LLMs

PrefixQuant: Static Quantization Beats Dynamic through Prefixed Outliers in LLMs

October 7, 2024
Авторы: Mengzhao Chen, Yi Liu, Jiahao Wang, Yi Bin, Wenqi Shao, Ping Luo
cs.AI

Аннотация

Квантование является неотъемлемым элементом развертывания больших языковых моделей (LLM), улучшая эффективность памяти и скорость вывода. Существующие методы квантования активации в основном решают проблемы каналов-выбросов, часто игнорируя выбросы по токенам, что приводит к зависимости от дорогостоящего динамического квантования на уровне токенов. Для решения этой проблемы мы представляем PrefixQuant, новую технику, которая изолирует выбросы токенов офлайн без повторного обучения. Конкретно, PrefixQuant идентифицирует выбросы токенов с высокой частотой и добавляет их в кэш KV, предотвращая генерацию выбросных токенов во время вывода и упрощая квантование. На наш взгляд, PrefixQuant первым обеспечивает эффективное статическое квантование на уровне тензоров для превосходства над дорогостоящим динамическим квантованием на уровне токенов. Например, в модели Llama-3-8B с параметрами W4A4KV4 (4 бита на вес, 4 бита на активацию и 4 бита в кэше KV), PrefixQuant с статическим квантованием на уровне тензоров достигает перплексии 7,43 на наборе данных WikiText2 и средней точности 71,08% на 5 задачах рассуждения на здравый смысл, превосходя предыдущие методы динамического квантования на уровне токенов, такие как QuaRot, с улучшением перплексии на 0,98 и повышением точности на +5,98 пункта. Кроме того, скорость вывода квантованных моделей W4A4 с использованием PrefixQuant в 1,60–2,81 раза выше, чем у моделей FP16, и превосходит модели QuaRot в 1,2–1,3 раза. Наш код доступен по адресу 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