土法炼钢兴趣小组的算法知识备份

【Transformer 与注意力机制】51|量化、蒸馏、剪枝:让大模型跑在小硬件上

文章导航

分类入口
transformer
标签入口
#transformer#quantization#distillation#pruning#compression

目录

大模型能不能部署,不只取决于参数量。显存容量、显存带宽、KV Cache、激活峰值、batch 调度和延迟目标都会成为瓶颈。压缩模型的目标不是把文件变小这么简单,而是在质量、速度、成本和可维护性之间重新平衡。

常见压缩路线有三类:量化、蒸馏、剪枝。量化改变数值表示,蒸馏改变训练目标,剪枝改变结构稀疏性。它们可以组合使用,但每一种都有代价。

本篇能让你学会三件事:

  1. 量化、蒸馏、剪枝分别压缩什么;
  2. 为什么 4-bit 权重不等于推理延迟直接变四分之一;
  3. 为什么压缩后的模型必须重新评估长上下文、对齐和安全行为。

一、量化:降低数值精度

量化把 FP16/BF16/FP32 数值表示成 INT8、INT4 或其他低精度格式。权重占用更小,显存带宽压力更低,某些硬件上计算也更快。

weight-only quantization 只量化权重,激活仍保持较高精度。它实现相对容易,常用于 LLM 推理。activation quantization 连激活也量化,潜在收益更大,但更容易损失质量。

量化的难点是误差。不同层、不同通道、不同权重分布对低精度敏感程度不同。简单线性压缩可能让少数 outlier 破坏整体质量。


二、GPTQ、AWQ、SmoothQuant

GPTQ 是一类后训练量化方法,利用近似二阶信息逐层量化权重,尽量减少量化误差对输出的影响。它强调在不重新训练完整模型的情况下获得较好低比特权重。

AWQ 关注 activation-aware weight quantization。它观察到少数重要通道对模型输出影响很大,因此保护这些通道能显著改善低比特质量。

SmoothQuant 则通过在权重和激活之间迁移尺度,平滑激活 outlier,让 weight-activation quantization 更可行。这些方法的共同点是:量化不是简单四舍五入,而是围绕误差分布做工程和数学处理。


三、蒸馏:把行为迁移到小模型

蒸馏使用大模型作为 teacher,小模型作为 student。student 不只学习硬标签,也学习 teacher 输出分布、解释风格、推理轨迹或偏好行为。

在 LLM 场景里,蒸馏常用于把强模型能力转移到更小模型,或者生成高质量指令数据。它的价值不只是压缩参数,也能改善小模型的任务格式和回答风格。

代价是 student 的上限受模型容量、数据覆盖和 teacher 错误影响。teacher 的幻觉、偏见和风格也可能被复制。


四、剪枝:移除不重要结构

剪枝试图删除不重要的权重、head、通道、层或 FFN 中间维度。非结构化剪枝可以产生很多零,但如果硬件和 kernel 不支持稀疏加速,实际推理未必变快。

结构化剪枝更工程友好,比如删 head、删层、缩小 hidden dimension。它能直接减少矩阵大小,但也更容易影响能力。

剪枝的难点是评估“重要性”。某些组件在单一任务上看似不重要,在长上下文、工具调用或安全场景中可能很关键。


五、压缩不只压参数

LLM 推理还受 KV Cache 影响。权重量化减少参数显存,但长上下文下 cache 仍然可能占大头。KV Cache 量化、GQA/MQA、滑动窗口和 cache eviction 都是围绕运行时状态的压缩。

激活峰值也重要。训练或高并发推理中,中间激活和临时 buffer 可能成为显存峰值来源。模型文件小,不代表服务成本低。

所以压缩要看完整系统:权重、激活、cache、带宽、batch、延迟和质量。


六、什么时候不该压缩

压缩会改变模型行为。即使 perplexity 变化很小,下游任务、格式遵循、数学推理、长上下文检索和安全拒答都可能受影响。

生产系统不能只看一个平均分。尤其是医疗、法律、金融、安全等场景,压缩后的错误模式可能比原模型更难发现。

压缩是工程手段,不是默认越多越好。目标应该是满足约束下的可靠性,而不是追求最低 bit 数。


七、关键概念回顾


八、常见误解

8.1 “4-bit 模型延迟就是原来的四分之一”

不一定。延迟还受解码串行性、KV Cache、kernel、带宽和 batch 影响。

8.2 “perplexity 不变说明压缩无损”

不够。下游任务、对齐、安全和长上下文都要重新评估。

8.3 “剪枝出很多零就一定快”

非结构化稀疏如果没有硬件和 kernel 支持,可能不带来实际加速。


九、下一步

压缩让模型更容易部署,但也让我们更需要理解模型行为。下一篇进入可解释性:attention weight 到底是不是解释?


十、参考文献

  1. Frantar, E. et al. “GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers.” ICLR 2023.
  2. Lin, J. et al. “AWQ: Activation-aware Weight Quantization for LLM Compression and Acceleration.” MLSys 2024.
  3. Xiao, G. et al. “SmoothQuant: Accurate and Efficient Post-Training Quantization for Large Language Models.” ICML 2023.
  4. Hinton, G. et al. “Distilling the Knowledge in a Neural Network.” NIPS Workshop 2015.
  5. Michel, P. et al. “Are Sixteen Heads Really Better than One?” NeurIPS 2019.

← 上一篇:50|Speculative Decoding | 下一篇:52|可解释性入门

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-04-15 · transformer

【Transformer 与注意力机制】39|T5:把所有 NLP 任务统一成 Text-to-Text

T5 的核心不是又发明了一种 Transformer,而是把翻译、摘要、分类、问答都改写成“输入文本到输出文本”的统一格式。本文解释 T5 为什么选择 Encoder-Decoder 架构,span corruption 和 BERT/GPT 的目标有什么差异,C4 和系统化消融实验为什么让 T5 成为迁移学习路线的重要基准。


By .