Zing 论坛

正文

LRQuant:面向大语言模型的可学习鲁棒后训练量化方法

本文介绍了一项ACL 2024口头报告论文提出的创新量化方法LRQuant,该方法通过可学习平滑参数、基于余弦相似度的负对数损失函数以及测试时自适应技术,显著提升了大语言模型后训练量化的性能和泛化能力。

大语言模型模型量化后训练量化测试时自适应模型压缩ACL 2024机器学习深度学习推理优化边缘计算
发布时间 2026/04/06 20:41最近活动 2026/04/06 20:54预计阅读 3 分钟
LRQuant:面向大语言模型的可学习鲁棒后训练量化方法
1

章节 01

导读 / 主楼:LRQuant:面向大语言模型的可学习鲁棒后训练量化方法

本文介绍了一项ACL 2024口头报告论文提出的创新量化方法LRQuant,该方法通过可学习平滑参数、基于余弦相似度的负对数损失函数以及测试时自适应技术,显著提升了大语言模型后训练量化的性能和泛化能力。

2

章节 02

研究背景与挑战

大语言模型(Large Language Models, LLMs)的快速发展带来了前所未有的自然语言处理能力,但同时也伴随着巨大的计算和存储开销。以GPT-3、LLaMA等为代表的模型通常包含数十亿甚至上千亿参数,这使得它们在资源受限的环境中部署变得极具挑战性。模型量化技术,特别是后训练量化(Post-Training Quantization, PTQ),为解决这一问题提供了有效途径——它能够在不重新训练模型的情况下,将模型权重和激活值从浮点表示转换为低精度整数表示,从而显著加速推理并降低内存占用。

然而,现有的LLM量化方法面临着两个核心挑战。首先,当前主流的"平滑范式"(Smoothing Paradigm)虽然通过数学等价变换将激活量化的难度转移到权重量化上,但其平滑参数大多依赖手工设计,难以达到最优效果。其次,这些方法在未见过的测试数据上往往出现显著的性能下降,泛化能力有限。哈尔滨工业大学(深圳)iLearn实验室的研究团队针对这些问题,提出了LRQuant——一种创新的可学习鲁棒后训练量化框架,该成果在ACL 2024上以口头报告形式发表。

3

章节 03

核心创新点

LRQuant框架包含三项关键技术创新,分别针对上述挑战提供了系统性的解决方案。

4

章节 04

可学习平滑范式

传统平滑方法使用预定义的启发式规则来确定平滑参数,这种方法虽然简单,但忽略了不同模型架构和层之间的差异性。LRQuant引入了可学习平滑范式,将平滑参数视为可优化的变量而非固定超参数。

具体而言,研究者采用对数激活等价(Logarithmic Activation Equivalent)作为初始化策略,然后通过梯度下降优化这些参数。这种数据驱动的方法能够自动发现针对特定模型的最优平滑配置,避免了手工调参的主观性和局限性。实验表明,可学习平滑能够比固定平滑策略获得更优的量化效果,特别是在极低比特宽度(如W4A4,即4比特权重和4比特激活)设置下。

5

章节 05

基于余弦相似度的负对数损失函数

在量化优化过程中,损失函数的设计直接影响最终模型的质量。研究团队通过实证观察发现,单纯依赖均方误差(MSE)损失难以获得最优的量化结果。MSE损失虽然能够衡量全精度模型和量化模型输出之间的数值差异,但未能充分捕捉语义层面的相似性。

为此,LRQuant提出了一种新颖的损失函数——基于余弦相似度的负对数损失(Negative Logarithm of Cosine Similarity Loss, NLC Loss)。余弦相似度能够度量两个向量在方向上的接近程度,对于语言模型输出的概率分布而言,方向一致性往往比绝对数值更为重要。通过对余弦相似度取负对数,该损失函数在优化过程中对相似度变化具有更敏感的响应,从而引导量化模型更好地保持全精度模型的行为特征。

6

章节 06

测试时自适应技术

LRQuant最具前瞻性的贡献在于将测试时自适应(Test-Time Adaptation, TTA)引入LLM量化领域。传统PTQ方法在训练(校准)阶段完成后,模型参数即固定不变。然而,当面对与校准数据分布不同的测试样本时,这种静态策略往往表现不佳。

TTA允许模型在测试阶段进行快速自适应调整,根据输入样本的特性动态优化模型参数。LRQuant的TTA机制设计精巧,能够在保持计算效率的前提下,显著提升模型在分布外数据上的泛化性能。更令人惊讶的是,研究发现在某些情况下,使用TTA方法在测试集上获得的结果甚至优于直接使用测试集进行校准,同时避免了灾难性遗忘问题——这是传统微调方法难以实现的。

7

章节 07

技术实现细节

LRQuant的实现流程清晰且易于复现。以LLaMA-7B模型为例,整个量化过程分为三个主要步骤:

8

章节 08

激活统计与初始化

首先,需要生成通道级的缩放和偏移统计量,这些统计量用于初始化可学习平滑参数:

python generate_act_scale_shift.py --model /PATH/TO/llama/llama-7b

这一步通过分析模型在校准数据上的激活分布,为后续的可学习量化提供良好的初始点。