GPTVQ: The Blessing of Dimensionality for LLM Quantization
作者: Mart van Baalen, Andrey Kuzmin, Ivan Koryakovskiy, Markus Nagel, Peter Couperus, Cedric Bastoul, Eric Mahurin, Tijmen Blankevoort, Paul Whatmough
分类: cs.LG, cs.CL
发布日期: 2024-02-23 (更新: 2025-06-03)
💡 一句话要点
提出GPTVQ以提升大语言模型量化的准确性与效率
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 量化技术 大型语言模型 神经网络 后训练优化 Hessian信息 整数量化 SVD压缩
📋 核心要点
- 现有的神经网络量化方法在大小与准确性之间的权衡存在显著不足,难以满足大型语言模型的需求。
- GPTVQ方法通过增加量化维度,交替量化与更新权重,利用Hessian信息来优化量化过程。
- 实验结果表明,GPTVQ在多个大型语言模型上实现了新的最优状态,并在处理效率上也表现出色。
📝 摘要(中文)
本研究展示了通过增加量化维度,可以显著改善神经网络量化的大小与准确性权衡。我们提出了一种新的快速后训练向量量化方法GPTVQ,能够有效扩展到大型语言模型。该方法交替进行一个或多个列的量化与未量化权重的更新,利用每层输出重构均方误差的Hessian信息。量化代码本通过高效的数据感知EM算法初始化,并通过整数量化和基于SVD的压缩进一步更新和压缩。GPTVQ在多个大型语言模型上建立了新的准确性与大小权衡的最优状态,且在单个H100上处理Llama-v2-70B模型的时间为3到11小时,显示出良好的效率。
🔬 方法详解
问题定义:本论文旨在解决现有神经网络量化方法在大小与准确性权衡上的不足,尤其是在大型语言模型(LLMs)中,传统方法难以达到理想的性能与效率。
核心思路:论文提出的GPTVQ方法通过增加量化的维度,交替进行量化和未量化权重的更新,利用每层输出重构均方误差的Hessian信息来优化量化过程,从而提升模型的准确性。
技术框架:GPTVQ的整体架构包括量化代码本的初始化、权重更新和压缩三个主要模块。首先,使用高效的数据感知EM算法初始化量化代码本;然后,交替更新量化和未量化的权重;最后,通过整数量化和SVD压缩进一步优化模型。
关键创新:GPTVQ的主要创新在于通过增加量化维度和利用Hessian信息来优化量化过程,这与现有方法的单一维度量化策略形成了鲜明对比,显著提升了模型的准确性与效率。
关键设计:在设计中,GPTVQ采用了高效的数据感知EM算法进行代码本初始化,并在更新过程中引入了Hessian信息。此外,采用整数量化和SVD压缩技术,确保了模型在保持准确性的同时,能够有效减少存储空间。
🖼️ 关键图片
📊 实验亮点
实验结果显示,GPTVQ在多个大型语言模型(如Llama-v2和Mistral)上实现了新的准确性与大小权衡的最优状态。在处理Llama-v2-70B模型时,所需时间为3到11小时,显示出显著的效率提升。此外,VQ解压缩在移动CPU上的延迟优于4位整数格式,进一步验证了其优越性。
🎯 应用场景
该研究的潜在应用领域包括自然语言处理、机器翻译和对话系统等大型语言模型的优化。通过提升量化效率和准确性,GPTVQ能够在资源受限的设备上更好地部署大型模型,具有重要的实际价值和广泛的应用前景。
📄 摘要(原文)
In this work we show that the size versus accuracy trade-off of neural network quantization can be significantly improved by increasing the quantization dimensionality. We propose the GPTVQ method, a new fast method for post-training vector quantization (VQ) that scales well to Large Language Models (LLMs). Our method interleaves quantization of one or more columns with updates to the remaining unquantized weights, using information from the Hessian of the per-layer output reconstruction MSE. Quantization codebooks are initialized using an efficient data-aware version of the EM algorithm. The codebooks are then updated, and further compressed by using integer quantization and SVD-based compression. GPTVQ establishes a new state-of-the art in the size vs accuracy trade-offs on a wide range of LLMs such as Llama-v2 and Mistral. Furthermore, our method is efficient: on a single H100 it takes between 3 and 11 hours to process a Llamav2-70B model, depending on quantization setting. Lastly, with on-device timings for VQ decompression on a mobile CPU we show that VQ leads to improved latency compared to using a 4-bit integer format.