Журнал · Rit.work

Квантование LLM: какую ошибку исправляют веса, а какую — только преобразования

Разбор ошибки W4A4-квантования показывает, когда достаточно скорректировать веса, а когда нужны вращение, случайные знаки и масштабирование каналов.

Rit.work
Студия разработки
21 сентября 2026 г.3 мин чтения

Материал подготовлен автоматически по первоисточникам: ссылки на них — в конце статьи.

Оптимизация квантованных весов исправляет лишь часть ошибки, которая возникает при сжатии весов и активаций LLM до четырёх бит. В препринте Yamato Narita и Issei Sato, который не прошёл рецензирование и где все числа получили сами авторы, предложенная конфигурация дала наименьшую перплексию на всех восьми проверенных моделях и лучшую среднюю точность на пяти из них. Это позволяет выбирать вращение и масштабирование по структуре ошибки, а не собирать схему квантования из независимых эвристик.

Коррекция весов не затрагивает ортогональный остаток

Работа рассматривает локальную ошибку линейного слоя: насколько выход после квантования отличается от выхода в исходной точности. Авторы точно делят её на две части — ошибку, которую можно уменьшить коррекцией весов с учётом квантованных активаций, и ортогональный остаток.

Первая часть лежит в пространстве квантованных активаций. Поэтому GPTQ-подобный алгоритм может подобрать веса так, чтобы приблизить выход слоя к исходному. Если активации тоже искажены, целевое значение весов должно учитывать это искажение; в экспериментах такую компенсацию выполняет GPTAQ.

Ортогональный остаток устроен иначе. При фиксированном преобразовании входа изменение весов его не уменьшает. Если после хорошей коррекции весов качество всё ещё падает, дополнительная настройка того же оптимизатора не решает основную проблему: нужно менять представление активаций до квантования.

Остаток связан с двумя типами значений. Постоянные выбросы возникают в каналах, которые остаются крупными для многих токенов и раздувают диапазон квантования. Остальные активации образуют регулярную часть, где важнее общий разброс значений и то, насколько соответствующие столбцы весов усиливают ошибку.

Случайные знаки гасят выбросы, масштабирование выравнивает остальные каналы

Для постоянных выбросов работа объясняет пользу преобразования Hadamard. Оно распределяет каждый исходный канал между всеми новыми координатами, но при фиксированных знаках вклады нескольких крупных каналов могут складываться. Случайная смена знаков перед вращением мешает такому согласованному сложению.

Один случайный вариант не обязательно окажется удачным для конкретной модели. Поэтому авторы предлагают взять несколько наборов знаков, быстро отсеять слабые варианты обычным округлением весов, а финалистов проверить с GPTAQ на калибровочных данных. Знаки совместно выбирают для офлайн-преобразований, выходов внимания, понижающих проекций полносвязного блока, а также запросов и ключей после RoPE.

Регулярную часть ошибки уменьшает отдельное масштабирование каналов. Коэффициент выбирают по балансу между среднеквадратичным размером активаций и соответствующим столбцом весов: крупный канал активаций сжимают, пока перенесённая на веса сложность не станет слишком высокой. Масштабирование применяют перед понижающей проекцией полносвязного блока и объединяют с соседними весами, поэтому само оно не добавляет операций при выводе.

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

Планы стоит менять для W4A4, но не для любого сжатия модели

Эксперименты охватывают модели Llama и Mistral разных размеров. Веса и активации линейных слоёв квантовали до четырёх бит, так же сжимали кэш ключей и значений. Качество проверяли по перплексии WikiText-2 и C4 — чем она ниже, тем лучше модель предсказывает следующий токен, — а также по задачам без примеров в запросе.

На Llama3-8B базовый QuaRot получил перплексию 7,45, а сочетание знакового вращения, отбора знаков и масштабирования снизило её до 7,20. Сравнение проводили с QuaRot, SmoothRot и SpinQuant при одинаковом алгоритме квантования весов. В отличие от SpinQuant, новая конфигурация не обучает матрицы вращения методом обратного распространения ошибки.

Для команды, которая планирует W4A4-квантование, работа меняет порядок действий. Сначала имеет смысл применить компенсацию весов, затем отдельно подобрать преобразования для остатка: вращение — против устойчивых выбросов, масштабирование — для регулярных каналов. Если обучение вращений усложняет конвейер или требует лишней памяти, отбор нескольких наборов знаков даёт альтернативу без градиентной настройки.

Границы результата задаёт сама постановка. Теория разбирает локальную ошибку одного линейного слоя с динамическим симметричным квантованием активаций, а практическая проверка использует конкретный конвейер GPTAQ и калибровочные данные WikiText-2. Для квантования только весов или для другого типа квантователя выводы не превращаются автоматически в готовую конфигурацию, но разложение ошибки остаётся полезным способом понять, куда уходит качество.

Источники

Пауза в чтении

Похоже на вашу задачу?

Расскажите, что собираете. За полчаса разложим на этапы и назовём сроки — это бесплатно и ни к чему не обязывает.

Rit.work

Студия разработки

Собираем мобильные приложения и помогаем командам получать от AI реальную пользу. Основатель и команда, работаем удалённо — с клиентами в России и за рубежом.

Ко всем материалам
Понравилось? Обсудим вашу задачу