Маркус Нагель из Qualcomm о квантовании трансформеров и оптимизации ИИ для мобильных устройств

The TWIML AI Podcast 864 52 мин 4 мин 26.12.2023
Главное

В условиях стремительного роста популярности больших языковых моделей (LLM) вопрос их вычислительной эффективности становится критическим для индустрии. Маркус Нагель, научный сотрудник Qualcomm AI Research, в беседе с Сэмом Чаррингтоном обсуждает прорывные методы оптимизации трансформеров, которые позволяют запускать сложнейшие нейросети на мобильных устройствах без потери точности и значительных затрат энергии.

🚀 Дилемма выбросов: почему трансформеры сложно квантовать 4:45

Одной из центральных тем обсуждения стало исследование Qualcomm, представленное на конференции NeurIPS, посвященное проблеме «выбросов» (outliers) в активациях трансформеров . Квантование — процесс перевода весов и активаций нейросети из формата с плавающей точкой (FP16/32) в целочисленный формат низкой разрядности (например, INT8), что критично для работы на смартфонах .

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

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

🧠 Феномен «пустого» внимания: корень проблемы найден 8:45

Исследователи Qualcomm обнаружили, что выбросы возникают не случайно. Они стабильно появляются в одних и тех же каналах и привязаны к специфическим токенам, таким как знаки пунктуации (точки, запятые), разделители или фоновые фрагменты в Vision Transformers .

Ключевые выводы команды Нагеля:

🛠️ Решение: ClipSoftmax и Gated Attention 11:50

Для решения проблемы Qualcomm предложила два метода, которые позволяют головам внимания «законно» ничего не делать, не раздувая значения активаций :

  1. ClipSoftmax: Модифицированная функция активации. Выход Softmax слегка растягивается (например, от -0.01 до 1.01) и затем обрезается (clip) до диапазона [0, 1]. Это позволяет достигать аппаратного нуля с конечным входным диапазоном .
  2. Gated Attention: Добавление явного «затвора» (gate) в механизм внимания. Один нейрон с функцией сигмоиды может полностью обнулить строку матрицы внимания .

В ходе экспериментов было установлено, что оба метода сохраняют точность модели в FP32, но при переходе к INT8 показывают результаты, близкие к оригиналу, в то время как стандартные модели практически перестают работать (уровень точности падает до случайного угадывания) . Наиболее стабильным на разных типах моделей (BERT, OPT, ViT) оказался метод Gated Attention .

⚖️ Прунинг против Квантования: что эффективнее? 20:15

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

Основные тезисы сравнения:

🧬 Геометрическая алгебра и диффузионные модели 31:55

Нагель также кратко осветил работу своих коллег, в частности, Тако Коэна и Макса Веллинга, в области эквивариантных нейронных сетей .

📱 Stable Diffusion на смартфоне менее чем за секунду 43:07

Одним из самых впечатляющих достижений Qualcomm стала демонстрация работы Stable Diffusion на мобильном чипе со скоростью менее 600 миллисекунд (в начале года это занимало 12-15 секунд) . По словам спикера, такой прогресс достигнут благодаря «полностековой оптимизации» :

  1. Эффективный UNet: Удаление избыточных блоков внимания в структуре нейросети .
  2. Guidance Distillation: Обучение модели предсказывать результат сразу, без необходимости запускать сеть дважды (условная и безусловная генерация) на каждом шагу .
  3. Step Distillation: Сокращение количества шагов диффузии с 20 до 6 за счет обучения модели «прыгать» через несколько шагов без потери качества .

Маркус Нагель подчеркивает, что хотя низкоуровневые оптимизации (компиляция под аппаратное обеспечение) универсальны, такие глубокие изменения в архитектуре требуют индивидуальной «ручной» настройки для каждой задачи .


💬 Цитаты

«Выбросы на самом деле связаны с тем, что головы внимания хотят выполнять поведение 'без обновления'.»

Маркус Нагель 06:58

«Квантование значительно лучше прунинга в большинстве случаев.»

Маркус Нагель 22:58
👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
Квантование (Quantization)
Снижение точности представления чисел (например, с 32 бит до 8 бит) для ускорения работы нейросети.
Выбросы (Outliers)
Экстремально большие значения в активациях нейросети, мешающие эффективному сжатию данных.
Прунинг (Pruning)
Метод оптимизации, при котором из нейросети удаляются наименее важные веса (связи).
Дистилляция знаний (Knowledge Distillation)
Техника обучения маленькой модели ('ученика') на основе предсказаний большой и точной модели ('учителя').
📊 Цифры
🗓 Хронология
  1. 2017 Qualcomm приобретает стартап Scyfer, в котором работал Маркус Нагель.
  2. Февраль 2023 Первая демонстрация Stable Diffusion на мобильном устройстве (скорость 12-15 секунд).
  3. Декабрь 2023 Презентация новых методов квантования и оптимизации на конференции NeurIPS.
⚖️ Другая сторона
Искусственный интеллект Qualcomm AI Research Markus Nagel Quantization Transformer Stable Diffusion