Model Quantization
模型量化(Model Quantization) 是将模型中连续的浮点数值映射到离散的低精度表示(如 FP16、INT8、INT4),从而减小每个元素的位宽 。目标是在尽量保证模型精度的前提下,提升计算速度、减少存储占用、降低功耗。
Post-Training Quantization
训练后量化(Post-Training Quantization, PTQ) 在模型训练完成后,对权重和激活值进行量化(通常是将浮点数转换为低精度整数,如 INT8)。
- 目的:减少模型大小、降低计算复杂度和内存占用,适合部署到资源受限的设备(如移动端)
- 优点:简单快速,不需要重新训练
- 缺点:可能导致一定精度损失,尤其在极低位宽(如 INT4)下
Quantization-Aware Training
量化感知训练(Quantization-Aware Training, QAT) 在模型训练过程中模拟量化的效果(如低精度运算),使模型学习适应量化带来的数值误差。
- 训练时权重和激活值仍为浮点数,但会通过 伪量化(Fake Quantization) 模拟 INT8 等低精度运算的特性
- 反向传播时使用 直通估计器(Straight-Through Estimator, STE) 近似量化操作的梯度
- 相比 PTQ,QAT 通常能保留更高的模型精度,适合对精度要求较高的场景
- 代价是需要额外的训练时间
相关页面
- slime 中 FP8/INT4 QAT 在 RL 场景下的应用见 EAGLE MTP 在线训练
- 阅读导览第二章详细介绍了 slime 的低精度加速路线,见 阅读导览
Comments