模型规模的扩大为大语言模型(LLM)的部署与推理带来了显著挑战。由于 LLM 权重存在冗余,近期研究致力于将仅权重(weight-only)量化推向极低比特(甚至低至 2 比特),以降低内存需求、优化存储成本并减少推理时的内存带宽占用。然而,受数值表示能力的限制,传统的基于标量(scalar)的权重量化难以实现如此极端的低比特。近期关于 LLM 向量量化(Vector Quantization, VQ)的研究表明,通过查找表将向量压缩为索引,可实现极低比特的模型量化。
本文提出向量训练后量化方法 VPTQ,用于 LLM 的极低比特量化。作者采用二阶优化(Second-Order Optimization)来建模 LLM 的 VQ 问题,并通过求解该优化问题来指导量化算法设计;进一步使用通道无关的二阶优化对权重进行细化,以实现更细粒度的 VQ。此外,通过分解优化问题,提出了一种简洁有效的码本初始化(codebook initialization)算法。VPTQ 还被扩展以支持残差量化(residual quantization)和离群值量化(outlier quantization),从而提升模型精度并进一步压缩模型。
实验结果表明,在 2 比特设置下,相较于当前最优方法(SOTA),VPTQ 在 LLaMA-2 上降低了 0.01–0.34 的量化困惑度,在 Mistral-7B 上降低 0.38–0.68,在 LLaMA-3 上降低 4.41–7.34;在问答任务上,平均准确率在 LLaMA-2 上提升 0.79–1.5%、Mistral-7B 上提升 1%、LLaMA-3 上提升 11–22%。此外,VPTQ 仅消耗 SOTA 方法 10.4–18.6% 的量化算法执行时间,使推理吞吐量提升 1.6–1.8 倍。