可训练的平滑旋转变换与学习到的通道缩放用于LLM量化

arXiv cs.LG 论文

摘要

本文提出了可训练的平滑旋转变换,结合分位数鲁棒缩放和基于梯度的优化,以改进LLM的训练后量化,在LLaMA-3.2-1B的W4A4量化下实现了显著的误差降低。

arXiv:2606.09927v1 公告类型:新 摘要:训练后量化(PTQ)是降低大型语言模型(LLM)服务成本最实用的方法之一,但由于离群值主导的通道导致较大的量化误差,激活量化仍然困难。本文研究了这种退化是否部分由基于缩放的等效变换中的过度迁移引起。我们为SmoothRot风格的变换引入了一种分位数鲁棒的缩放策略,用高分位数替代基于最大值的激活统计量,并辅以通道缩放的约束梯度优化。在LLaMA-3.2-1B的W4A4量化下,仅分位数策略搜索相比SmoothRot基线将选定层的误差降低了11.1%,联合(alpha, q)搜索降低了12%,而训练达到了18.5%。将最佳选定层策略重放到所有解码器块的下投影层,将相应的全层平均误差从97.51降低到78.08(19.9%)。结果表明,稳健的迁移控制和轻量级缩放学习在保持等效变换框架的同时,相比基于最大值的固定策略提供了一致的改进。
查看原文
查看缓存全文

缓存时间: 2026/06/10 06:18

# 可训练平滑旋转变换与学习通道缩放因子用于大语言模型量化

来源:https://arxiv.org/html/2606.09927
Patrik Czakó   Doctoral School of Applied Informatics and Applied Mathematics, Obuda University Budapest, Hungary   czako\.patrik@stud\.uni\-obuda\.hu  
Gábor Kertész   John von Neumann Faculty of Informatics, Obuda University Budapest, Hungary   kertesz\.gabor@nik\.uni\-obuda\.hu  
Sándor Szénási   John von Neumann Faculty of Informatics, Obuda University Budapest, Hungary   szenasi\.sandor@nik\.uni\-obuda\.hu  

###### 摘要

训练后量化(PTQ)是降低大语言模型(LLM)服务成本最实用的方法之一,但激活值量化仍然困难,因为异常值主导的通道会导致较大的量化误差。本文研究了这种退化是否部分由基于缩放因子的等效变换中的过度迁移引起。我们为SmoothRot风格的变换引入了一种基于分位数鲁棒的缩放策略,用高分位数替代基于最大值的激活统计量,并通过约束梯度优化对通道缩放因子进行补充。在LLaMA-3.2-1B的W4A4量化设置下,仅使用分位数策略的搜索在选定层误差上比SmoothRot基线降低了11.1%,联合搜索(α,q)(α,q) 降低了12%,训练则达到了18.5%的改进。将最佳选定层策略重放到所有解码器块的下投影层,相应的全层平均误差从97.51降至78.08(降低19.9%)。结果表明,鲁棒的迁移控制和轻量级的缩放因子学习,在保持等效变换框架的同时,相较于基于最大值的固定策略能够带来一致的收益。

## I. 引言

大语言模型(LLM)在生成和推理任务中取得了显著进展,但其部署仍然面临严峻的内存和延迟约束[13 (https://arxiv.org/html/2606.09927#bib.bib19)]。因此,训练后量化(PTQ)是一个核心优化方向,因为它不需要昂贵的全模型重训练[6 (https://arxiv.org/html/2606.09927#bib.bib6),18 (https://arxiv.org/html/2606.09927#bib.bib7)]。然而,在低位宽设置下,由于涌现出的异常值[6 (https://arxiv.org/html/2606.09927#bib.bib6),1 (https://arxiv.org/html/2606.09927#bib.bib8),19 (https://arxiv.org/html/2606.09927#bib.bib9)],激活值量化仍然比权重量化困难得多。

等效变换是缓解此问题的一种广泛使用的方法。通道级缩放可以减小激活值范围,但可能将量化困难转移到权重上[18 (https://arxiv.org/html/2606.09927#bib.bib7)]。旋转将大值重新分布到各个通道,在许多情况下是有效的[1 (https://arxiv.org/html/2606.09927#bib.bib8),10 (https://arxiv.org/html/2606.09927#bib.bib10)]。我们之前的研究详细考察了这些机制,随后将其组合在SmoothRot架构中[5 (https://arxiv.org/html/2606.09927#bib.bib2),4 (https://arxiv.org/html/2606.09927#bib.bib3)]。特别是,我们观察到缩放组件可能是有益的,但可能过于激进地将量化困难迁移到权重,导致性能次优。

基于这一观察,本研究专注于更鲁棒地控制迁移强度,并测试这是否能解决基于最大值的缩放的一个关键失效模式。我们的贡献有三方面:(i) 我们推广了SmoothQuant风格的缩放因子公式[18 (https://arxiv.org/html/2606.09927#bib.bib7)],引入了一个分位数参数以减少对罕见激活峰值的敏感性;(ii) 我们引入了一种策略结构化的优化协议,将无训练和训练机制分开;(iii) 我们提供了在LLaMA-3.2-1B[7 (https://arxiv.org/html/2606.09927#bib.bib16)] (W4A4)上的受控证据,表明该策略能从选定层到全网络重放带来一致的收益。核心发现是,在无训练机制下,鲁棒的缩放估计比仅调整alpha贡献更大,而有约束的缩放因子学习则提供了最强的最终改进。

## II. 相关工作

低位宽训练后量化进展迅速,但LLM中仅权重量化与权重-激活值量化质量之间仍然存在持续差距[8 (https://arxiv.org/html/2606.09927#bib.bib11),17 (https://arxiv.org/html/2606.09927#bib.bib12),16 (https://arxiv.org/html/2606.09927#bib.bib5),3 (https://arxiv.org/html/2606.09927#bib.bib1)]。主要原因是激活值分布高度不均匀,包含的异常值会显著增加量化误差[3 (https://arxiv.org/html/2606.09927#bib.bib1),18 (https://arxiv.org/html/2606.09927#bib.bib7),19 (https://arxiv.org/html/2606.09927#bib.bib9),15 (https://arxiv.org/html/2606.09927#bib.bib13)]。

等效变换是一种主要的缓解方法家族。通道级缩放(平滑)通过重新平衡激活值和权重的幅度来减小激活值范围[18 (https://arxiv.org/html/2606.09927#bib.bib7),14 (https://arxiv.org/html/2606.09927#bib.bib14)]。基于旋转的方法使用正交变换(通常具有Hadamard结构)将大值分散到各个通道[1 (https://arxiv.org/html/2606.09927#bib.bib8),10 (https://arxiv.org/html/2606.09927#bib.bib10),9 (https://arxiv.org/html/2606.09927#bib.bib15)]。虽然这两种方法在许多情况下都是有效的,但它们对系统性异常值与大规模异常值的行为不同[3 (https://arxiv.org/html/2606.09927#bib.bib1)],最佳策略取决于模型/层级特征和量化方案。

先前的工作[5 (https://arxiv.org/html/2606.09927#bib.bib2)]分析了逐层量化误差的形成,并提出将通道级缩放与旋转相结合,以平衡它们互补的优势。该论文提供了数学直觉,解释了为什么平滑在极端异常值情况下可以通过在正交混合之前部分重新分配困难来帮助旋转。SmoothRot[4 (https://arxiv.org/html/2606.09927#bib.bib3)]将此思想集成到完整的LLM架构中,并在多个模型的W4A4KV4设置下展示了端到端的收益,同时保留了纯旋转技术的低延迟特性。

本文针对这一研究方向中一个更具体但尚未解决的关键问题:*退化是否有时是由缩放导致的过度迁移而非变换选择本身造成的?*因此,我们专注于缩放强度的策略结构化优化,并引入了一种基于分位数的细化,用于先前使用的缩放因子公式。此外,我们提出在受控训练框架中对这些缩放参数进行梯度引导的优化。

## III. 方法

### III-A 问题定义

对于线性投影层,假设激活张量 X∈Rn×cin\\mathbf{X}\\in\\mathbb{R}^{n\\times c_{\\mathrm{in}}} 和权重矩阵 W∈Rcin×cout\\mathbf{W}\\in\\mathbb{R}^{c_{\\mathrm{in}}\\times c_{\\mathrm{out}}},则该层的输出为 Y=XW\\mathbf{Y}=\\mathbf{X}\\mathbf{W}。这里,nn 是序列长度,而 cinc_{\\mathrm{in}} 和 coutc_{\\mathrm{out}} 分别表示输入和输出通道数。在本文中,遵循SmoothRot,我们仅对每个解码器块中的*下投影*线性层应用等效变换,因为极端的激活异常值主要出现在这里。其他投影保持不变,不在本文讨论范围内。令 Qb(⋅)Q_{b}(\\cdot) 表示 bb 位量化。量化后的输出为 Y^=Qb(X)Qb(W)\\hat{\\mathbf{Y}}=Q_{b}(\\mathbf{X})Q_{b}(\\mathbf{W})。我们使用线性输出误差

E(Y,Y^)=∥Y−Y^∥F,E\\!\\left(\\mathbf{Y},\\hat{\\mathbf{Y}}\\right)=\\left\\|\\mathbf{Y}-\\hat{\\mathbf{Y}}\\right\\|_{F}, (1)

及其归一化变体

E~(Y,Y^)=E(Y,Y^)∥Y∥F+ε,\\tilde{E}\\!\\left(\\mathbf{Y},\\hat{\\mathbf{Y}}\\right)=\\frac{E\\!\\left(\\mathbf{Y},\\hat{\\mathbf{Y}}\\right)}{\\left\\|\\mathbf{Y}\\right\\|_{F}+\\varepsilon}, (2)

其中 ε\\varepsilon 是一个防止数值不稳定的小常数。等效变换方法旨在找到一个可逆线性变换,通过在低位宽量化下减轻激活异常值来减少这些误差。该变换矩阵记为 A∈Rcin×cin\\mathbf{A}\\in\\mathbb{R}^{c_{\\mathrm{in}}\\times c_{\\mathrm{in}}}。将 A\\mathbf{A} 应用于输入,其逆应用于权重,得到等效表示:

Y=XW=X(AA−1)⏟IW=(XA)⏟X^⋅(A−1W)⏟W^。\\mathbf{Y}=\\mathbf{X}\\mathbf{W}=\\mathbf{X}\\underbrace{\\left(\\mathbf{A}\\mathbf{A}^{-1}\\right)}_{\\mathbb{I}}\\mathbf{W}=\\underbrace{\\left(\\mathbf{X}\\mathbf{A}\\right)}_{\\hat{\\mathbf{X}}}\\cdot\\underbrace{\\left(\\mathbf{A}^{-1}\\mathbf{W}\\right)}_{\\hat{\\mathbf{W}}}。 (3)

目标是选择 A\\mathbf{A},使得在低位宽对称量化下,(X^,W^)(\\hat{\\mathbf{X}},\\hat{\\mathbf{W}}) 的量化误差降低。

### III-B 参数化变换

我们使用SmoothRot风格的参数化,包含通道级平滑和正交旋转。变换矩阵构造为

A=(HΛ)−1,\\mathbf{A}=\\left(\\mathbf{H}\\mathbf{\\Lambda}\\right)^{-1}, (4)

其中 H\\mathbf{H} 是正交的Hadamard矩阵,Λ=diag(s)\\mathbf{\\Lambda}=\\mathrm{diag}(\\mathbf{s}) 是一个对角线元素均为正的对角矩阵,由所谓的缩放因子 s∈Rcin\\mathbf{s}\\in\\mathbb{R}^{c_{in}} 构造。这种顺序先应用平滑,然后通过 (3) 中的等效变换旋转激活值。

先前的研究[18 (https://arxiv.org/html/2606.09927#bib.bib7),4 (https://arxiv.org/html/2606.09927#bib.bib3)] 使用激活值和权重的通道级最大值,并结合固定的迁移强度 α∈[0,1]\\alpha\\in[0,1] 来控制两者之间的平衡,从而得到 s\\mathbf{s}。然而,这种启发式方法对激活异常值敏感,导致缩放次优。因此,我们引入一个更鲁棒的公式,该公式通过使用分位数替代基于最大值的统计量来推广SmoothQuant[18 (https://arxiv.org/html/2606.09927#bib.bib7)]:

sj(α,q)=Qq(∥X:,j∥)α(maxk∥Wj,k∥)1−α,s_{j}(\\alpha,q)=\\frac{\\mathcal{Q}_{q}\\!\\left(\\|\\mathbf{X}_{:,j}\\|\\right)^{\\alpha}}{\\left(\\max_{k}\\|\\mathbf{W}_{j,k}\\|\\right)^{1-\\alpha}}, (5)

其中 Qq(⋅)\\mathcal{Q}_{q}(\\cdot) 是经验分位数,分位数水平为 qq。当 q→1q\\to 1 时,这接近于基于最大值的校准;保持 q<1q<1 使得估计值较少受罕见异常值主导。

### III-C 基于梯度的优化

先前的工作[14 (https://arxiv.org/html/2606.09927#bib.bib14)] 已经表明,可学习的平滑可以进一步减少量化误差。遵循这一思路,我们也包含了通过梯度下降优化 s\\mathbf{s} 的实验系列。然而,由于量化的不可微性,这种优化具有挑战性,因此我们使用直通估计器(STE)[2 (https://arxiv.org/html/2606.09927#bib.bib4)] 通过反向传播通过量化运算来优化 s\\mathbf{s}。具体来说,我们使用归一化误差作为尺度不变的目标来优化直通替代目标:

LSTE=1∣S∣∑ℓ∈SE~(XℓWℓ,Qb(X^ℓ)Qb(W^ℓ))。\\mathcal{L}_{\\mathrm{STE}}=\\frac{1}{|\\mathcal{S}|}\\sum_{\\ell\\in\\mathcal{S}}\\tilde{E}\\!\\left(\\mathbf{X}_{\\ell}\\mathbf{W}_{\\ell},\\;Q_{b}(\\hat{\\mathbf{X}}_{\\ell})Q_{b}(\\hat{\\mathbf{W}}_{\\ell})\\right)。 (6)

其中 ℓ\\ell 索引解码器块,S\\mathcal{S} 根据实验系列的不同,要么是选定层集合,要么是全部解码器块下投影层的集合。

## IV. 实验设置

本研究侧重于在可达到的精度保持方面探索SmoothRot量化方法的极限。为此,我们提出了一个详细的实验协议,旨在系统地评估和优化我们提出的技术。

### IV-A 基线和约束

我们在主要实验中评估了所提出的方法与SmoothRot的对比,并加入了仅旋转的QuaRot作为基线,以观察优化缩放带来的额外改进。所有报告的值均从同一组运行中复现,确保了公平比较。QuaRot通过设置 s=1\\mathbf{s}=\\mathbf{1} 实现,而SmoothRot使用原始的启发式基于最大值的缩放(q=1.0q=1.0)。尽管我们的协议可以应用于各种模型和架构,但我们专注于单个模型和量化设置,以保持分析环境的受控性。我们选择了LLaMA-3.2[7 (https://arxiv.org/html/2606.09927#bib.bib16)] 的1B参数变体,因为它包含与更大LLM相同的架构构建块,也存在激活异常值问题,同时能实现更快的实验。量化设置固定为4位权重和激活值(W4A4),这是高效推理的常见设置。对于训练和评估,我们使用Wikitext-2数据集[12 (https://arxiv.org/html/2606.09927#bib.bib17)],因为它是语言建模任务的标准基准,提供了大量多样化的文本数据。总共,我们取256个样本,每个样本128个token,并以80/20的比例划分为独立的训练集和测试集。

### IV-B 确定性层选择

遵循[5 (https://arxiv.org/html/2606.09927#bib.bib2)],本文中的所有基线和策略均在每个解码器块的下投影线性层上进行评估。极端的激活异常值主要出现在这些下投影层,因此我们将排序、选择和优化限制在它们之上。

我们的协议首先使用原始SmoothRot变换(α=0.5,q=1.0\\alpha=0.5,q=1.0)在测试集上运行全层基线,并根据 (1) 中定义的下投影线性输出误差对解码器块进行排序。然后,固定选定层集合 Ssel\\mathcal{S}_{\\mathrm{sel}},由误差最高的3个关键层加上2个正常层组成。

### IV-C 实验系列

编排流程包括基线捕获/排序、选定层策略推导、无训练扫描、训练扫描和全层重放。协议组织为无训练系列(N1–N3)和训练系列(T1–T3),具体系列配置如下:

#### N1: 基于最大值的α\\alpha 缩放敏感性

N1在基于最大值的统计量(q=1q=1)下测试SmoothQuant启发式缩放,同时改变迁移强度α\\alpha:

minα∈AN1⁡1∣Ssel∣∑ℓ∈SselEℓ(α,q=1),αi=0.25+0.025i,i=0,...,20,\\begin{split}\\min_{\\alpha\\in\\mathcal{A}_{\\mathrm{N1}}}\\;\\frac{1}{|\\mathcal{S}_{\\mathrm{sel}}|}\\sum_{\\ell\\in\\mathcal{S}_{\\mathrm{sel}}}E_{\\ell}(\\alpha,q=1),\\\\ \\alpha_{i}=0.25+0.025i,\\quad i=0,\\dots,20,\\end{split} (7)

其中 Eℓ(α,q)E_{\\ell}(\\alpha,q) 表示应用相应的等效变换和量化后的线性输出误差。

#### N2: 分位数鲁棒的qq 缩放

N2用分位数替代基于最大值的激活统计量,以减少对罕见峰值的敏感性:

minq∈QN2⁡1∣Ssel∣∑ℓ∈SselEℓ(α=0.5,q),\\min_{q\\in\\mathcal{Q}_{\\mathrm{N2}}}\\;\\frac{1}{|\\mathcal{S}_{\\mathrm{sel}}|}\\sum_{\\ell\\in\\mathcal{S}_{\\mathrm{sel}}}E_{\\ell}(\\alpha=0.5,q), (8)

缩放由下式给出:

相似文章

大逆转与格式协同设计:LLM量化的线性变换

arXiv cs.LG

本文综述了200项关于大语言模型量化的工作,形式化了“大逆转”原则,该原则对比了编码中的能量集中与量化中的组内平坦化,并基于部署方案与MXFP4、NVFP4等格式提供了线性变换选择指南。