В условиях стремительного роста популярности больших языковых моделей (LLM) вопрос их вычислительной эффективности становится критическим для индустрии. Маркус Нагель, научный сотрудник Qualcomm AI Research, в беседе с Сэмом Чаррингтоном обсуждает прорывные методы оптимизации трансформеров, которые позволяют запускать сложнейшие нейросети на мобильных устройствах без потери точности и значительных затрат энергии.
🚀 Дилемма выбросов: почему трансформеры сложно квантовать 4:45
Одной из центральных тем обсуждения стало исследование Qualcomm, представленное на конференции NeurIPS, посвященное проблеме «выбросов» (outliers) в активациях трансформеров . Квантование — процесс перевода весов и активаций нейросети из формата с плавающей точкой (FP16/32) в целочисленный формат низкой разрядности (например, INT8), что критично для работы на смартфонах .
Маркус Нагель объясняет, что в трансформерах активации распределены неравномерно: основная масса значений находится в узком диапазоне, но существуют отдельные каналы с экстремально высокими значениями . Это создает «компромисс между диапазоном и точностью»:
- Если включить выбросы в диапазон квантования, точность основной массы данных резко падает из-за высокого шага квантования .
- Если отсечь выбросы, теряется важная информация, что разрушает работу модели.
По словам Нагеля, большинство предыдущих работ пытались лишь «сгладить» проблему, оставляя часть данных в формате с плавающей точкой, что усложняет аппаратную реализацию .
🧠 Феномен «пустого» внимания: корень проблемы найден 8:45
Исследователи Qualcomm обнаружили, что выбросы возникают не случайно. Они стабильно появляются в одних и тех же каналах и привязаны к специфическим токенам, таким как знаки пунктуации (точки, запятые), разделители или фоновые фрагменты в Vision Transformers .
Ключевые выводы команды Нагеля:
- Гипотеза «нулевого обновления»: На глубоких слоях LLM модель часто уже сформировала представление о токене и не нуждается в его обновлении. Однако архитектура трансформера не имеет простого механизма «ничего не делать» .
- Механизм возникновения выбросов: Чтобы имитировать отсутствие обновления, головы внимания направляют веса на «бессмысленные» токены (точки, разделители), значения которых в матрице Value близки к нулю .
- Математический тупик: Для достижения почти нулевого веса через функцию Softmax требуется огромный динамический диапазон входных данных. Поскольку слоевая нормализация (LayerNorm) гасит этот диапазон, веса в предыдущих слоях вынуждены расти до бесконечности, создавая те самые выбросы .
🛠️ Решение: ClipSoftmax и Gated Attention 11:50
Для решения проблемы Qualcomm предложила два метода, которые позволяют головам внимания «законно» ничего не делать, не раздувая значения активаций :
- ClipSoftmax: Модифицированная функция активации. Выход Softmax слегка растягивается (например, от -0.01 до 1.01) и затем обрезается (clip) до диапазона [0, 1]. Это позволяет достигать аппаратного нуля с конечным входным диапазоном .
- Gated Attention: Добавление явного «затвора» (gate) в механизм внимания. Один нейрон с функцией сигмоиды может полностью обнулить строку матрицы внимания .
В ходе экспериментов было установлено, что оба метода сохраняют точность модели в FP32, но при переходе к INT8 показывают результаты, близкие к оригиналу, в то время как стандартные модели практически перестают работать (уровень точности падает до случайного угадывания) . Наиболее стабильным на разных типах моделей (BERT, OPT, ViT) оказался метод Gated Attention .
⚖️ Прунинг против Квантования: что эффективнее? 20:15
Второе исследование Нагеля посвящено сравнению двух столпов оптимизации весов: прунинга (удаления лишних связей) и квантования . Команда стремилась выяснить, какой метод при одинаковой степени сжатия дает меньшую ошибку (SNR — отношение сигнала к шуму) .
Основные тезисы сравнения:
- В большинстве случаев квантование значительно превосходит прунинг по точности .
- Прунинг (прореживание) выигрывает только в экстремальных случаях: при очень низкой разрядности (2-3 бита), что соответствует 85-90% разреженности весов, и при очень высоком уровне выбросов в весах .
- Исследование ввело понятие «верхней границы SNR», которое доказывает, что даже будущие, еще не изобретенные алгоритмы прунинга вряд ли превзойдут текущие методы квантования в стандартных сценариях .
🧬 Геометрическая алгебра и диффузионные модели 31:55
Нагель также кратко осветил работу своих коллег, в частности, Тако Коэна и Макса Веллинга, в области эквивариантных нейронных сетей .
- Edgy (Equivariant Diffusion): Применение диффузионных моделей для планирования действий роботов. Учет геометрических симметрий (вращение, сдвиг) делает обучение роботов в разы более эффективным за счет исключения избыточности в данных .
- Geometric Algebra Transformers (GATr): Объединение концепций алгебры Клиффорда, эквивариантности и трансформеров. Метод позволяет эффективно обрабатывать облака точек и сложные сетки (meshes) . Особенность GATr — высокая масштабируемость: он справляется с сетками объемом до 7000 узлов, что ранее было технически затруднительно для подобных архитектур .
📱 Stable Diffusion на смартфоне менее чем за секунду 43:07
Одним из самых впечатляющих достижений Qualcomm стала демонстрация работы Stable Diffusion на мобильном чипе со скоростью менее 600 миллисекунд (в начале года это занимало 12-15 секунд) . По словам спикера, такой прогресс достигнут благодаря «полностековой оптимизации» :
- Эффективный UNet: Удаление избыточных блоков внимания в структуре нейросети .
- Guidance Distillation: Обучение модели предсказывать результат сразу, без необходимости запускать сеть дважды (условная и безусловная генерация) на каждом шагу .
- Step Distillation: Сокращение количества шагов диффузии с 20 до 6 за счет обучения модели «прыгать» через несколько шагов без потери качества .
Маркус Нагель подчеркивает, что хотя низкоуровневые оптимизации (компиляция под аппаратное обеспечение) универсальны, такие глубокие изменения в архитектуре требуют индивидуальной «ручной» настройки для каждой задачи .