
Quantization-Aware Healing:为什么 4-bit 压缩模型能超过自己的 BF16 版本
大模型压缩通常连续经历两次损伤:先删除层、通道或参数得到较小结构,再把权重从 BF16 压到 4-bit。传统流程往往先把结构裁剪后的模型“修好”,最后再做低比特量化;结果是恢复阶段没有见过量化噪声,真正部署时又损失一次。
Multiverse Computing 团队公布的 Quantization-Aware Healing(QAH) 改变了顺序:学生模型在恢复训练期间就以目标 4-bit 格式参与前向计算,并始终向原始、未压缩教师的输出分布学习。团队在 GPT‑OSS 120B 压缩到 60B、权重采用 MXFP4 的实验中报告,最终 4-bit QAH 模型在 9 个 benchmark 中有 7 个超过了同结构的 BF16 恢复版本。
这不意味着“4-bit 普遍比 BF16 更聪明”。它说明当监督来源与训练目标设计得当,量化噪声可以成为恢复训练的一部分,强教师提供的分布信息可能补偿结构裁剪与低精度共同造成的损失。
四种方法的差异
| 方法 | 训练时是否看见量化 | 教师是谁 | 主要修复对象 |
|---|---|---|---|
| PTQ | 否,训练后直接量化 | 无 | 用校准与缩放降低量化误差 |
| QAT | 是,训练中模拟低精度 | 通常用标签或自监督目标 | 让权重适应量化噪声 |
| 普通知识蒸馏 | 不一定 | 原始大模型 | 把教师行为迁移到学生结构 |
| QAH | 是,目标格式参与前向 | 原始未压缩教师 | 同时修复结构压缩与量化损伤 |
QAH 最关键的选择,是不把已经受损的“恢复后学生”当教师。原始教师保留更多能力,它输出的不只是正确 token,还包含候选 token 之间的相对概率。学生即使结构不同,也能通过 logits 对齐学习这种分布。
训练一般保留可更新的高精度主权重,在前向时伪量化到目标格式,反向传播让权重主动落到对低精度更稳健的位置。部署产物则真正导出为 4-bit。
为什么 KL 蒸馏比单一答案更有信息
普通交叉熵只告诉模型目标 token 是什么。KL divergence 比较教师与学生的完整输出分布:当教师认为多个候选都合理时,学生能学习细微排序;当教师对某个答案高度确定时,学生也能感知置信度。
对于结构已经砍半的学生,这种“暗知识”尤其重要。它无法逐层复制教师的隐藏状态,也不需要两者层数和宽度一致,只需输出词表可比较。QAH 还使用 chunked KL 处理长序列,避免一次保存 32K 上下文每个位置的完整 logits 造成显存爆炸。
但 chunking 不是免费的:块大小影响峰值显存、通信和 kernel 效率;教师前向仍然昂贵。QAH 减少的是最终推理成本,不代表恢复训练成本很低。
4-bit 超过 BF16 的三个可能原因
第一,QAH 的监督更强。若 BF16 对照只从较弱目标或较少步骤恢复,而 QAH 持续向原始教师蒸馏,性能差异不能全部归因于量化本身。
第二,量化感知训练具有正则化效果。离散化噪声可能迫使模型学习更稳健的表示,减少恢复阶段对小数据的过拟合,类似受控噪声训练。
第三,评价是有限 benchmark。4-bit 模型可能在七项指标领先,同时在长尾知识、校准、长上下文或生成稳定性上退化。只有任务级验证才能判断优势是否覆盖实际使用范围。
因此正确表述是:在这套 GPT‑OSS 120B→60B、MXFP4、指定恢复数据与九项评测的实验中,QAH 4-bit 学生多数指标高于其 BF16 对照。 不能外推成任意架构、量化格式或任务都成立。
参数减半与显存四分之一是两种收益
原模型从 120B 变为 60B,结构规模减半;同一个 60B 学生从 BF16 权重变为 4-bit,理论权重存储约再降到四分之一。粗略忽略量化元数据:
60B × 2 bytes ≈ 120 GB BF16 权重
60B × 0.5 byte ≈ 30 GB 4-bit 权重
实际部署还包括 scale、元数据、embedding、KV Cache、激活、运行时 workspace 和并行冗余,不能把 30GB 当整机显存需求。长上下文服务中,KV Cache 可能成为主要容量;如果硬件没有高效 MXFP4 kernel,权重更小也未必带来对应吞吐。
部署验收不能止于九个分数
一份完整验收矩阵应同时比较原始教师、压缩 BF16 学生、PTQ 4-bit 学生和 QAH 4-bit 学生:
- 质量:领域任务、指令遵循、结构化输出、工具调用、事实性与多语言;
- 长上下文:不同长度下的召回、位置鲁棒性和生成漂移;
- 校准:置信度、拒答、幻觉与安全策略是否改变;
- 系统:首 token、token 间延迟、吞吐、峰值显存、功耗与冷启动;
- 稳定性:不同温度、随机种子和批大小的方差;
- 兼容性:目标 GPU/NPU 是否原生支持格式,是否发生反量化开销。
尤其要检查“压缩后更敢答”的现象。模型可能在 benchmark 上准确,却降低不确定性表达或安全拒答。量化误差也可能集中伤害低频 token、数值推理或工具参数,一项平均分看不出来。
我的判断
QAH 的价值不是证明低精度天然优于高精度,而是把模型压缩从串行后处理变成联合恢复问题:学生在训练时就面对未来部署格式,并从能力更完整的原始教师获取软目标。这比“裁剪完修一次、量化后祈祷不掉点”更符合工程现实。
如果结果能在更多模型、硬件和任务上复现,它会让结构压缩与低比特部署形成一条更可靠的流水线。现阶段最稳健的采用方式,是把 QAH 当成候选压缩策略,在自己的硬件和验收集上与 PTQ/QAT 做完整对照,而不是只因为“4-bit 超过 BF16”就跳过系统验证。