Мобильная квантизация: дружелюбная к мобильным устройствам квантизация для языковых моделей на устройствах.
MobileQuant: Mobile-friendly Quantization for On-device Language Models
August 25, 2024
Авторы: Fuwen Tan, Royson Lee, Łukasz Dudziak, Shell Xu Hu, Sourav Bhattacharya, Timothy Hospedales, Georgios Tzimiropoulos, Brais Martinez
cs.AI
Аннотация
Большие языковые модели (LLM) революционизировали обработку языка, достигая выдающихся результатов в различных приложениях. Однако развертывание LLM на периферийных устройствах ставит несколько вызовов в плане памяти, энергии и вычислительных затрат, что ограничивает их широкое использование в устройствах, таких как мобильные телефоны. Перспективным решением является сокращение количества бит, используемых для представления весов и активаций. Хотя существующие работы добились частичного успеха в квантовании LLM до меньших разрядностей, например, весов 4 бита, квантование активаций более 16 бит часто приводит к значительным вычислительным накладным расходам из-за недостаточной поддержки квантования на устройстве или значительного снижения точности. Тем не менее, активации 8 бит очень привлекательны для развертывания на устройствах, поскольку они позволили бы LLM полностью использовать аппаратное обеспечение, дружественное к мобильным устройствам, например, блоки обработки нейронов (NPU). В данной работе мы предпринимаем первую попытку облегчить развертывание LLM на устройствах с использованием только целочисленного квантования. Сначала мы исследуем ограничения существующих методов квантования для развертывания на устройствах, с особым вниманием на квантование активаций. Затем мы устраняем эти ограничения, представляя простой метод квантования после обучения, названный MobileQuant, который расширяет предыдущие работы по преобразованию эквивалентных весов, оптимизируя одновременно преобразование весов и параметры диапазона активаций в единой системе. MobileQuant демонстрирует превосходные возможности по сравнению с существующими методами, обеспечивая: 1) практически без потерь квантование на широком спектре бенчмарков LLM, 2) снижение задержки и энергопотребления на 20\%-50\% по сравнению с текущими стратегиями квантования на устройстве, 3) требование ограниченного вычислительного бюджета, 4) совместимость с вычислительными блоками, дружественными к мобильным устройствам, например, NPU.
English
Large language models (LLMs) have revolutionized language processing,
delivering outstanding results across multiple applications. However, deploying
LLMs on edge devices poses several challenges with respect to memory, energy,
and compute costs, limiting their widespread use in devices such as mobile
phones. A promising solution is to reduce the number of bits used to represent
weights and activations. While existing works have found partial success at
quantizing LLMs to lower bitwidths, e.g. 4-bit weights, quantizing activations
beyond 16 bits often leads to large computational overheads due to poor
on-device quantization support, or a considerable accuracy drop. Yet, 8-bit
activations are very attractive for on-device deployment as they would enable
LLMs to fully exploit mobile-friendly hardware, e.g. Neural Processing Units
(NPUs). In this work, we make a first attempt to facilitate the on-device
deployment of LLMs using integer-only quantization. We first investigate the
limitations of existing quantization methods for on-device deployment, with a
special focus on activation quantization. We then address these limitations by
introducing a simple post-training quantization method, named MobileQuant, that
extends previous weight equivalent transformation works by jointly optimizing
the weight transformation and activation range parameters in an end-to-end
manner. MobileQuant demonstrates superior capabilities over existing methods by
1) achieving near-lossless quantization on a wide range of LLM benchmarks, 2)
reducing latency and energy consumption by 20\%-50\% compared to current
on-device quantization strategies, 3) requiring limited compute budget, 4)
being compatible with mobile-friendly compute units, e.g. NPU.Summary
AI-Generated Summary