Ай Дайджест

Свежая выжимка ml и AI статей - каждый день

SVDQuant: Поглощение выбросов с помощью низкоранговых компонентов для 4-битных диффузионных моделей

Диффузионные модели, известные своей способностью генерировать высококачественные изображения, сталкиваются с серьёзными проблемами при развертывании из-за больших объёмов памяти и высокой задержки, особенно когда модели становятся всё более масштабными. В этом контексте исследователи из MIT, NVIDIA, CMU, Princeton, UC Berkeley, SJTU и Pika Labs разработали инновационный метод квантования под названием SVDQuant, который позволяет сократить использование памяти и ускорить вывод результатов моделей, сохраняя при этом высокое качество изображений.

Основные концепции SVDQuant

Квантование

Квантование — это процесс уменьшения точности чисел, используемых в моделях, чтобы уменьшить объём данных и ускорить вычисления. SVDQuant фокусируется на квантовании как весов, так и активаций модели до 4 битов, что является довольно агрессивным подходом, учитывая чувствительность диффузионных моделей к точности данных.

Проблемы с выбросами

В процессе квантования часто возникают выбросы (аномальные значения), которые могут значительно ухудшить качество генерации изображений. Традиционные методы пост-тренировочного квантования, такие как сглаживание, не всегда эффективны, особенно когда и веса, и активации квантуются до 4 битов.

SVDQuant: Новый подход

SVDQuant предлагает новый подход к обработке выбросов:

  1. Смещение выбросов: Веса и активации сначала сглаживаются, чтобы выбросы были перенесены из активаций в веса.
  2. Низкоранговое разложение: Затем используется сингулярное разложение (SVD) для выделения доминирующих компонентов в весах. Эти компоненты сохраняются в высокоточной форме (16 бит), а остаток квантуется до 4 битов.

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

Оптимизация вывода

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

Результаты и преимущества

  • Снижение памяти: SVDQuant позволяет уменьшить объём памяти, используемой моделью, в 3.5 раза по сравнению с оригинальной 16-битной моделью.
  • Ускорение: На GPU RTX 4090 модель с SVDQuant работает в 8.7 раз быстрее, чем оригинальная модель, и в 3 раза быстрее, чем модели, квантованные только по весам.
  • Качество изображений: Метод сохраняет высокое качество изображений, что подтверждается метриками LPIPS, FID и другими показателями визуальной верности.

Заключение

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

SVDQuant и инференционный движок Nunchaku доступны в открытом доступе, что позволяет исследователям и разработчикам использовать и адаптировать эти технологии для своих нужд.