HIGGS: Новый алгоритм квантования нейросетей

от автора

С развитием LLM, более актуальной становится проблема сокращения вычислительных затрат. Одним из самых эффективных решений является квантование — представление параметров модели в низкой точности (например, 4 бита вместо 32). Однако существующие методы квантования страдают от отсутствия строгого теоретического обоснования и оптимальности. HIGGS — новый подход, который решает эти проблемы, основываясь на доказанной авторами теореме линейности.
Статья на arXiv
HuggingFace

Что такое квантование и почему оно важно?

Квантование — один из наиболее эффективных способов уменьшения размера и вычислительных затрат больших моделей (таких как Llama и Qwen). Базовый подход предполагает разбиение задачи на отдельные послойные задачи:

  • Каждый слой l модели представлен весовой матрицейW_l \in \mathbb{R}^{d_{in} \times d_{out}}

  • Квантование слоя сводится к выбору квантованных весов \hat{W}_l, минимизирующих некоторую ошибку (обычно MSE).

Пример квантизации весов из 32-bit в 16-bit

Пример квантизации весов из 32-bit в 16-bit

Подробнее про квантизацию можно посмотреть здесь (очень подробное объяснение с картинками)

Однако до сих пор оставался неясным вопрос, как послойная ошибка влияет на общую точность модели (например, perplexity). На практике разные слои по-разному влияют на общую ошибку модели, и текущие методы не учитывают это различие в значимости слоев.

Что такое perplexity?

Метрика perplexity отражает, насколько хорошо модель предсказывает выборку текста. Чем меньше значение perplexity, тем лучше модель справляется с предсказанием. Perplexity вычисляется по формуле:

\text{Perplexity}(W) = \exp\left(-\frac{1}{N}\sum_{i=1}^{N}\log p(w_i|w_{1}, w_{2}, \dots, w_{i-1})\right),

где:

  • W = (w_1, w_2, ..., w_N) — это последовательность слов (или токенов) в тестовой выборке;

  • p(w_i|w_{1}, w_{2}, \dots, w_{i-1}) — вероятность того, что модель предскажет слово w_i , зная предыдущие слова;

  • N — количество слов в тестовой выборке.

Perplexity связана с понятием кросс-энтропии и энтропии информации. Кросс-энтропия характеризует разницу между двумя распределениями вероятностей: истинным распределением данных и распределением, предсказанным моделью. Perplexity является экспонентой от кросс-энтропии, выраженной в битах. Таким образом, чем меньше perplexity, тем ближе распределение, предсказанное моделью, к истинному распределению данных, и тем меньше энтропия, возникающая при генерации следующего слова.

Оценка сложности языковой модели для последовательности токенов.

Оценка сложности языковой модели для последовательности токенов.

Теорема линейности

Авторы статьи формулируют и доказывают ключевую теорему линейности, связывающую ошибки квантования отдельных слоёв с ростом общей perplexity модели. Теорема утверждает следующее:

При условии, что ошибки квантования относительно малы, среднее значение perplexity квантованной модели \hat{W} может быть аппроксимировано формулой:

E[\text{PPL}(\hat{W})] \approx \text{PPL}(W^*) + \sum_{l=1}^{L} \alpha_l t_l^2,

где:

  • W^*— исходные веса предобученной модели.

  • \hat{W}— квантованные веса.

  • a_l — коэффициенты, зависящие только от исходных весов слоя l.

  • t_l^2— относительная ошибка квантования слоя:

t_l^2 = \frac{E[\|\hat{W}_l - W^*_l\|_F^2]}{\|W^*_l\|_F^2}.

Почему это важно?

Эта теорема впервые чётко показывает, что глобальная ошибка (perplexity) линейно зависит от послойных ошибок квантования. Это открывает два новых направления:

1. Оптимальное послойное квантование: минимизация perplexity сводится к минимизации ошибок MSE послойно.

2. Динамическое квантование: выбор разной битности квантования для каждого слоя с учётом его значимости.

Метод HIGGS

Основываясь на теореме линейности, строится новый метод квантования HIGGS (Hadamard Incoherence with Gaussian MSE-optimal GridS), состоящий из двух шагов:

  • Предварительное преобразование (Random Hadamard Transform, RHT):

Весовая матрица W_l умножается на случайную матрицу Адамара H, в результате чего распределение весов становится близким к гауссовскому:

W'_l = H \cdot W_l

  • Квантование с MSE-оптимальной сеткой:

Весам W'_l присваиваются значения ближайшей точки из заранее вычисленной оптимальной сетки, минимизирующей среднеквадратичную ошибку для нормального распределения:

\hat{W}'_l = RoundToNearest(W'_l, G_n^p).

Такое сочетание даёт минимальную ошибку квантования и, благодаря теореме линейности, минимальное увеличение общей perplexity.

Оптимальное распределение битности

Теорема линейности позволяет сформулировать задачу динамического распределения битности следующим образом:

Нужно выбрать битность b_j для каждого слоя так, чтобы минимизировать рост perplexity при заданной средней разрядности b_{max}. Формально это записывается как задача оптимизации:

\min_{\{b_j\}} \sum_{l=1}^{L} \alpha_l t_{l,j}^2, \quad \text{при условии} \quad \sum_{l=1}^{L} b_j d^l \leq b_{max} \cdot d,

где d^l — размер слоя, d — суммарное число параметров.

Эта задача решается методами динамического программирования, что позволяет найти оптимальное решение за считанные секунды даже для огромных моделей.

Зависимость результатов на PPL WikiText-2 от разрядности

Зависимость результатов на PPL WikiText-2 от разрядности b_{max}

Результаты экспериментов

Авторы проверили HIGGS и динамическое квантование на моделях Llama 3 и Qwen:

  • Метод HIGGS стабильно показывает меньшую perplexity, чем популярные подходы NF (Normal Float) и AF(Abnormal Float), особенно в 3-4 бита.

  • Динамическое квантование даёт дополнительный прирост качества.

  • Использование FLUTE GPU-ядер показало ускорение в 2–3 раза по сравнению с FP16, почти без потери точности.

Итог

Таким образом HIGGS решает старые проблемы квантования моделей, основываясь не на эмпирических наблюдениях, а на строгой математически доказанной теореме линейности.

Если вам интересны такого рода посты, можете подписаться на мой канал в telegram, там я пишу посты поменьше. В основном я затрагиваю темы применения математики (от базовой до нейросетей) в видеоиграх, но также уделяю внимание видеоиграм как области искусства. Но и про разборы статей не забываю.


ссылка на оригинал статьи https://habr.com/ru/articles/900696/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *