核心要点

  • 讲清量化本质:用 scale/zero-point 把浮点映射到低比特整数,反量化还原

  • 区分 PTQ(训练后)与 QAT(量化感知训练),以及 GPTQ/AWQ 等代表算法

  • 说清收益(显存、带宽、吞吐)与代价(精度、离群值、硬件支持)的权衡

标准回答

原理:量化把高精度权重(FP16/BF16)映射到低比特整数。对一组数取 (scale=(max-min)/(2^b-1)),用 (q=\mathrm{round}(x/scale)+zp) 编码,推理时反量化近似还原。INT8 约省一半显存、INT4 约省四分之三,且更小的数据搬运直接提升带宽受限场景的吞吐。

主要路线

  • PTQ(训练后量化):无需重训,用少量校准数据定标,成本低,是大模型主流;
  • QAT(量化感知训练):训练中模拟量化误差,精度更高但成本大;
  • GPTQ:逐层基于二阶信息(Hessian)补偿量化误差,擅长 INT4;
  • AWQ:识别并保护“显著权重”通道,按激活分布缩放,INT4 下精度优。

代价:精度下降(尤其 INT4、小模型更敏感);激活/权重离群值难量化;需要对应硬件与 kernel 支持(如 vLLM/TensorRT-LLM 的 INT8/INT4 内核)。

详见 LLM 推理优化 与 量化。

常见误区

⚠️ 常见踩坑

量化不是“直接砍掉位数”——核心是 scale/zero-point 的标定与误差补偿;也不是越低比特越好,INT4 在小模型或敏感层上可能显著掉点,需混合精度保护关键层。

追问

追问 1GPTQ 和 AWQ 的核心区别是什么?

GPTQ 逐层贪心量化并用 Hessian 信息补偿已量化误差,偏“误差最小化”;AWQ 基于激活分布找出少量显著权重通道并缩放保护,不依赖反向传播,量化更快。两者都常用于 INT4,AWQ 在部署友好性上常更优。

追问 2只量化权重和权重+激活都量化有何不同?

仅权重量化(W4A16)省显存、实现简单、精度损失小,适合显存受限;权重+激活量化(如 W8A8)能用整数矩阵乘进一步提升算力吞吐,但激活离群值导致标定更难、更易掉点,常配合 SmoothQuant 等技术。

追问 3为什么离群值(outlier)对量化影响大?如何缓解?

少数极大激活/权重会拉大量化范围 scale,使大量正常值挤进很少的量化格、分辨率骤降。缓解手段包括按通道/分组量化、SmoothQuant 把激活难度迁移到权重、或对离群通道保留高精度(混合精度)。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。