SVDQuant 低秩残差量化算法 量化术语百科词条¶
词条类别:量化算法
英文名称:svdquant
应用领域:扩散模型量化、低比特量化精度优化
首次提出:Li et al., NeurIPS 2024
1. 概述¶
SVDQuant 是一种面向极低比特量化的低秩残差方法。它先通过平滑迁移难量化的离群信息,再利用奇异值分解把显著结构提取到高精度低秩分支,并对剩余主通路进行低比特量化;核心特征是离群值迁移、低秩高精度旁路与低比特残差协同,用于降低 W4A4 等配置中的量化误差。
2. 词条介绍¶
扩散模型的激活中存在显著的离群值,少数通道的极大值会压缩其余通道的量化精度,直接量化会导致精度严重下降。SVDQuant 观察到,将离群值先迁移到权重后,权重中的离群值呈现低秩结构,恰好适合 SVD 低秩分解提取。这种“迁移 → 分解”的配合是 SVDQuant 的核心创新:离群值先被迁移到权重,再被低秩分支吸收,从而同时解决激活和权重的量化难题。
2.1 核心思想¶
SVDQuant 的核心思想是“三阶段协同量化”:先通过离群值抑制(如 Iterative Smooth)将激活离群值迁移到权重,再对迁移后的权重进行 SVD 低秩分解,将主体结构提取为低秩分量(高精度保留),残差部分更适合量化;最后对残差权重进行低比特量化,低秩分支以高精度运行。
低秩旁路有效的原因是把最难压缩的高能量方向从低比特残差中隔离出来。
2.2 工作机制¶
SVDQuant 先通过平滑/缩放把激活中的难量化离群方向转移到权重,然后不直接把整个新权重都压到低比特,而是做 $W=L+R$ 的分解。SVD 的前 $r$ 个奇异方向形成低秩项 $L=U_r\Sigma_rV_r^T$;根据 Eckart–Young 性质,在 Frobenius 范数意义下,这一截断 SVD 是给定 rank 的最佳低秩近似,因此能够优先捕获权重中能量最大的结构方向。
剩余残差 $R=W-L$ 的幅值和结构性大成分通常被削弱,更适合作为低比特主分支;低秩项则以较高精度旁路计算,保护最难量化的方向。推理时输出由低比特残差路径和高精度低秩路径相加。rank 越大,旁路可吸收更多量化敏感能量但计算/显存开销也越高;rank 越小则更轻量,但对残差量化器的压力更大。
2.3 数学描述¶
阶段一(离群值迁移)的数学等价变换:
$$ Y = XW + b = (X \cdot \operatorname{diag}(s)^{-1}) \cdot (\operatorname{diag}(s) \cdot W) + b $$
其中缩放因子 $s$ 由激活和权重的统计信息联合计算:
$$ s = \frac{A_{\text{scale}}^{\alpha}}{W_{\text{scale}}^{1-\alpha}}, \quad s \geq s_{\min} $$
- $X$:激活矩阵
- $W$:权重矩阵
- $s$:逐通道缩放因子
- $A_{\text{scale}}$:激活值每通道的绝对最大值
- $W_{\text{scale}}$:权重每列的最大值
- $\alpha$:平衡参数,控制迁移强度
阶段二(低秩分解):对迁移后的权重 $W$ 执行 SVD 分解:
$$ W \approx (U \cdot S) \cdot V^\top, \quad R = W - (U \cdot S) \cdot V^\top $$
- $U$:左奇异向量,形状 $[\text{out_dim}, \text{rank}]$
- $S$:奇异值,形状 $[\text{rank}]$
- $V$:右奇异向量,形状 $[\text{in_dim}, \text{rank}]$
- $R$:残差权重
阶段三(残差量化):推理时双通路计算:
$$ \text{out} = Q(X \cdot \operatorname{diag}(s)^{-1}) \cdot Q(R) + (X \cdot \operatorname{diag}(s)^{-1} \cdot V) \cdot (U \cdot S)^\top \approx XW + b $$
- $Q(\cdot)$:量化操作
若奇异值按 $\sigma_1\ge\cdots\ge\sigma_p$ 排序,截断 rank-$r$ SVD 满足 Eckart–Young 定理:
$$ L_r=U_r\Sigma_rV_r^T=\arg\min_{\operatorname{rank}(L)\le r}|W-L|_F, $$
且残差能量为:
$$ |W-L_r|F^2=\sum\sigma_i^2. $$
因此增加 rank 会单调降低未量化残差的 Frobenius 能量,但最终低比特误差还取决于残差分布而不仅是总能量。推理时 $XW^T=X(L_r+R)^T=XL_r^T+XR^T$,其中只对 $R$ 使用低比特近似。
2.4 关键性质¶
- 三阶段协同:离群值迁移、低秩分解、残差量化三者协作,数学上保持输出近似等价。
- 低秩旁路:低秩分量以高精度(如 FP16)运行,残差主通路低比特量化。
- 数学等价性:双通路输出之和等价于使用原始权重 $W$ 的线性变换。
- 量化残差而非丢弃残差:低秩分量高精度保留,剩余矩阵仍参与计算,只是采用低比特表示。
从误差与适用边界看,SVD 的 Frobenius 最优性也不等价于任务损失最优性,因为它未直接使用激活 Hessian;因此校准/端到端评估仍然重要。
2.5 适用场景¶
- W4A4 等极低比特量化场景,尤其适用于扩散模型。
- 模型激活中存在显著离群值、且离群值在权重中呈现低秩结构的场景。
2.6 使用限制¶
- 主要面向二维线性变换权重,使低秩分解能够直接作用于权重矩阵。
- 离群值迁移、低秩分解和残差量化应作用于同一组目标线性层,避免某一层只经历部分阶段而破坏分解假设。
rank受算子实现限制,建议不超过 128。
3. 关联词条¶
- Iterative Smooth:前置术语,SVDQuant 使用其完成离群值迁移。
- 线性量化:配套术语,SVDQuant 使用其完成残差量化。
- SmoothQuant:同类算法,同属离群值抑制算法族。
- 浮点稀疏:对比算法,同为面向高压缩率的模型压缩方案。
4. 参考文档¶
- Li M et al. SVDQuant: Absorbing Outliers by Low-Rank Components for 4-Bit Diffusion Models. NeurIPS 2024. https://arxiv.org/abs/2411.05007
- 《SVDQuant 参数配置流程指南》