第 17 课:激活量化与旋转变换:SmoothQuant、QuaRot 与 SpinQuant 离群值消除
本课目标与通过标准
本课产出:掌握大语言模型从 Weight-Only 显存带宽节约走向 W8A8 / W4A4 计算密集型硬件加速 的核心底层瓶颈与数学解法。深入分析激活离群值(Activation Outliers)在特定通道(Channels)高度聚集的物理成因;掌握 SmoothQuant 逐通道平滑迁移因子的推导与权重折叠;掌握 QuaRot 利用随机正交 / Walsh-Hadamard 旋转矩阵在无需修改网络的前提下抹平离群特征峰值(Outlier Smearing)的数学证明与离线权重融合;掌握 SpinQuant 学习可优化旋转矩阵的训练流程。
通过要求:唯一代码填空题通过全部断言;Q1~Q3 沿正交几何变换、通道离散方差与硬件 INT4/INT8 Tensor Core 吞吐给出因果链;能指出一个正确性不变量、一个残差基底对齐边界和一个校准数据敏感度特征;总分至少 8/10。
源码版本与阅读方法
本课程使用固定 commit 的永久链接保证行号可复现,同时链接 current docs 供核对最新变化。阅读时先建立“特征空间正交旋转保持内积不变”的几何心智模型:
| 顺序 | 核心文件与模块 | 带着什么问题读 |
|---|---|---|
| 1 | SmoothQuant 官方实现 smoothquant/smooth.py |
平滑迁移因子 中 的物理意义? |
| 2 | QuaRot 源码 quarot/functional/hadamard.py |
为什么利用快速沃尔什-阿达马变换(FWHT)可以在对数时间 内完成在线旋转? |
| 3 | SpinQuant 官方实现 facebookresearch/SpinQuant |
为什么引入 Cayley 变换或正交参数化(SO(n) 群)能够保证旋转矩阵在梯度更新中恒定正交? |
| 4 | QServe 源码 mit-han-lab/omniserve 的 omniserve/modeling/layers/quantized_linear/ |
旋转后的 W4A8KV4 为什么能消除反量化中间张量进出全局显存? |
版本基准:论文 SmoothQuant arXiv:2211.10438、QuaRot arXiv:2404.00456、SpinQuant arXiv:2405.16406、QServe arXiv:2405.04532;实现参考 mit-han-lab/smoothquant、spcl/QuaRot、facebookresearch/SpinQuant、mit-han-lab/omniserve。
本课剩余部分(核心心智模型、数值推导、代码填空题、问答题与完整参考答案)为 VIP 内容。同一张密钥可解锁全部 VIP 内容:题库、速查表、系统设计案例与全部付费课程。