Квантование Матрёшка
Matryoshka Quantization
February 10, 2025
Авторы: Pranav Nair, Puranjay Datta, Jeff Dean, Prateek Jain, Aditya Kusupati
cs.AI
Аннотация
Квантование весов модели является ключевым для снижения затрат на коммуникацию и вывод больших моделей. Однако квантование моделей, особенно до низких точностей, таких как int4 или int2, требует компромисса в качестве модели; в частности, известно, что int2 серьезно снижает качество модели. В результате практики часто вынуждены поддерживать несколько моделей с разными уровнями квантования или обслуживать одну модель, которая лучше всего удовлетворяет баланс между качеством и задержкой. С другой стороны, целочисленные типы данных, такие как int8, имеют вложенную (Матрешка) структуру, где меньшие целочисленные типы, такие как int4 или int2, вложены в старшие биты. В данной статье предлагается техника квантования Матрешка (MatQuant), новаторская многомасштабная техника квантования, которая решает проблему необходимости нескольких квантованных моделей. Она позволяет обучать и поддерживать только одну модель, которая затем может обслуживаться на разных уровнях точности. Более того, благодаря регуляризации совместного обучения и совместной дистилляции, предоставленной MatQuant, модели точности int2, извлеченные MatQuant, могут быть на 10% более точными, чем стандартное квантование int2 (с использованием техник, таких как QAT или OmniQuant). Это представляет собой значительный прогресс в квантовании моделей, что подтверждается тем, что с тем же подходом модель Gemma-2 9B FFN, квантованная int2, более точна, чем модель Gemma-2 2B FFN, квантованная int8.
English
Quantizing model weights is critical for reducing the communication and
inference costs of large models. However, quantizing models -- especially to
low precisions like int4 or int2 -- requires a trade-off in model quality;
int2, in particular, is known to severely degrade model quality. Consequently,
practitioners are often forced to maintain multiple models with different
quantization levels or serve a single model that best satisfies the
quality-latency trade-off. On the other hand, integer data types, such as int8,
inherently possess a nested (Matryoshka) structure where smaller bit-width
integers, like int4 or int2, are nested within the most significant bits. This
paper proposes Matryoshka Quantization (MatQuant), a novel multi-scale
quantization technique that addresses the challenge of needing multiple
quantized models. It allows training and maintaining just one model, which can
then be served at different precision levels. Furthermore, due to the
co-training and co-distillation regularization provided by MatQuant, the int2
precision models extracted by MatQuant can be up to 10% more accurate than
standard int2 quantization (using techniques like QAT or OmniQuant). This
represents significant progress in model quantization, demonstrated by the fact
that, with the same recipe, an int2 FFN-quantized Gemma-2 9B model is more
accurate than an int8 FFN-quantized Gemma-2 2B model.Summary
AI-Generated Summary