核心要点

  • 剪枝(Pruning):移除冗余权重/通道/注意力头,结构化剪枝才能真正加速,需重训恢复精度

  • 量化(Quantization):用低精度(INT8/INT4)表示权重激活,省显存提吞吐,分 PTQQAT

  • 蒸馏(Distillation):用大教师模型的软标签(含类间相对概率)训练小学生模型,迁移暗知识

  • 三者可叠加:常先蒸馏得到小模型,再量化部署,剪枝按硬件是否支持稀疏决定

标准回答

剪枝

去掉对输出贡献小的权重或结构。非结构化剪枝(单个权重置零)压缩率高但需硬件支持稀疏才能加速;结构化剪枝(整通道/整头)直接缩小矩阵,能在通用硬件上提速,通常剪枝后需微调恢复精度。

量化

把 FP32/FP16 权重和激活降到 INT8、INT4 等低精度,直接减少显存与带宽、提升吞吐。PTQ(训练后量化)无需重训、部署快,低比特时精度损失较大;QAT(量化感知训练)在训练中模拟量化误差,精度更高但成本高。

蒸馏

让小学生模型拟合大教师模型输出的软标签——软标签携带类别间的相对概率(暗知识),信息量大于硬标签,使小模型获得接近大模型的能力。

如何取舍

  • 追求即插即用、快速上线:优先 PTQ 量化;
  • 精度敏感、可承担训练成本:QAT 或蒸馏;
  • 想减小模型结构本身:结构化剪枝或蒸馏到更小架构。
    工程上常组合:先蒸馏出小模型,再量化部署。

常见误区

⚠️ 常见踩坑

以为非结构化剪枝必然加速——无稀疏硬件支持时只省存储不提速;混淆 PTQ 与 QAT,或忽略剪枝后通常需微调才能恢复精度。

追问

追问 1蒸馏中的「软标签」为什么比硬标签更有用?

硬标签只给出正确类别,软标签是教师 softmax 输出的完整概率分布,携带了类别之间的相似关系(如「猫」对「狗」的概率高于对「汽车」),即暗知识。学生学习这种相对结构能更快收敛、泛化更好;常配合温度参数 T 软化分布以放大暗知识。

追问 2INT4 量化为什么比 INT8 更难?

位宽越低可表示的数值越少,量化误差越大,尤其权重/激活中的离群值会被严重压缩,导致精度明显下降。INT4 通常需分组量化、离群值单独处理(如 AWQGPTQ)或量化感知训练等技术,才能在大模型上保持可接受的精度。

延伸学习

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

🛠️ AI 工具

  • Pytorch

    Meta 开源的深度学习框架,100K+ stars。以动态计算图和 Pythonic 风格著称,在学术界和工业界都有广泛应用,支持分布式训练、移动端部署和 ONNX 导出