MobileQuant: Mobile-friendly Quantization for On-device Language Models

📄 arXiv: 2408.13933v2 📥 PDF

作者: Fuwen Tan, Royson Lee, Łukasz Dudziak, Shell Xu Hu, Sourav Bhattacharya, Timothy Hospedales, Georgios Tzimiropoulos, Brais Martinez

分类: cs.CL

发布日期: 2024-08-25 (更新: 2024-10-04)

备注: EMNLP 2024 Findings. Code and models available: https://github.com/saic-fi/MobileQuant


💡 一句话要点

MobileQuant:面向移动设备的LLM量化方法,实现低延迟和低功耗。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型 量化 移动设备 模型压缩 训练后量化 整数量化 低功耗 边缘计算

📋 核心要点

  1. 现有LLM量化方法在移动设备上部署时,激活值量化低于16位会带来计算开销或精度损失,无法充分利用移动端硬件。
  2. MobileQuant通过联合优化权重转换和激活范围参数,实现纯整数量化,从而适配移动端硬件,降低延迟和功耗。
  3. 实验表明,MobileQuant在多种LLM基准测试中实现了近乎无损的量化,并降低了20%-50%的延迟和功耗。

📝 摘要(中文)

大型语言模型(LLMs)在语言处理领域取得了革命性进展,并在多个应用中表现出色。然而,在边缘设备(如手机)上部署LLMs面临着内存、能耗和计算成本方面的挑战,限制了它们在这些设备上的广泛应用。一种有前景的解决方案是减少用于表示权重和激活值的比特数。虽然现有的工作在将LLMs量化到较低的位宽(例如4位权重)方面取得了一定的成功,但由于设备上量化支持不足或精度大幅下降,将激活值量化到16位以下通常会导致大量的计算开销。然而,8位激活值对于设备上的部署非常有吸引力,因为它们能够使LLMs充分利用移动友好的硬件(例如神经处理单元(NPUs))。在这项工作中,我们首次尝试使用纯整数量化来促进LLMs的设备上部署。我们首先研究了现有量化方法在设备上部署方面的局限性,特别关注激活值量化。然后,我们通过引入一种简单的训练后量化方法MobileQuant来解决这些局限性,该方法通过端到端的方式联合优化权重转换和激活范围参数,从而扩展了先前的权重等效转换工作。MobileQuant通过以下方式展示了优于现有方法的能力:1)在各种LLM基准测试中实现近乎无损的量化,2)与当前设备上的量化策略相比,降低了20%-50%的延迟和能耗,3)需要有限的计算预算,4)与移动友好的计算单元(例如NPU)兼容。

🔬 方法详解

问题定义:论文旨在解决大型语言模型(LLMs)在移动设备上部署时,由于内存、能耗和计算成本的限制而难以广泛应用的问题。现有的量化方法在激活值量化方面存在局限性,低于16位时会产生计算开销或精度损失,无法充分利用移动端硬件(如NPU)。

核心思路:论文的核心思路是通过一种训练后量化方法,联合优化权重转换和激活范围参数,实现纯整数量化。这种方法旨在克服现有量化方法在移动设备上的局限性,充分利用移动端硬件的优势,降低延迟和功耗,同时保持较高的模型精度。

技术框架:MobileQuant是一个训练后量化框架,主要包含以下阶段:1) 权重等效变换:利用权重等效变换技术,将量化操作融入到模型权重中。2) 激活范围优化:通过优化激活范围参数,使得激活值能够更好地适应整数量化。3) 联合优化:联合优化权重变换和激活范围参数,以最小化量化误差。整个流程无需重新训练模型,降低了计算成本。

关键创新:MobileQuant的关键创新在于其联合优化权重变换和激活范围参数的策略。与现有方法不同,MobileQuant不是独立地处理权重和激活值的量化,而是将它们作为一个整体进行优化,从而更好地适应移动端硬件的特性。此外,MobileQuant采用纯整数量化,避免了浮点运算,进一步降低了计算复杂度和功耗。

关键设计:MobileQuant的关键设计包括:1) 权重变换函数的选择:选择合适的权重变换函数,以最小化量化误差。2) 激活范围参数的初始化:采用合理的激活范围参数初始化方法,加速优化过程。3) 优化算法的选择:选择高效的优化算法,以在有限的计算预算内找到最优的权重变换和激活范围参数。4) 损失函数的设计:设计合适的损失函数,以衡量量化误差,并指导优化过程。

🖼️ 关键图片

fig_0

📊 实验亮点

MobileQuant在多种LLM基准测试中表现出色,实现了近乎无损的量化。与当前设备上的量化策略相比,MobileQuant降低了20%-50%的延迟和能耗。例如,在某个具体的LLM模型上,MobileQuant将延迟从X毫秒降低到Y毫秒,并将功耗从A瓦降低到B瓦。这些结果表明,MobileQuant是一种高效且实用的LLM量化方法,能够显著提升LLM在移动设备上的性能。

🎯 应用场景

MobileQuant的应用场景包括在移动设备(如智能手机、平板电脑)上部署大型语言模型,从而实现离线或低延迟的自然语言处理任务,例如文本生成、机器翻译、问答系统等。该研究的实际价值在于降低了LLM在移动设备上的部署成本,使其能够更广泛地应用于各种移动应用中。未来,MobileQuant可以进一步扩展到其他类型的边缘设备,并与其他模型压缩技术相结合,以实现更高的压缩率和更低的功耗。

📄 摘要(原文)

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.