跳到主内容
快讯直播
AI智模界
AI 词典

PTQ(训练后量化):训练完再压缩,和 QAT 差在哪

一句话定义:PTQ(Post-Training AI 词典:Quantization">Quantization,训练后量化)是指模型训练完全结束后,用一小批数据做"校准",把权重和激活从 FP32/FP16 这类高精度格式映射到 INT8、INT4 等低精度格式,全程不重新训练、不改动原来的训练流程。

打个比方:搬家时东西已经定型了,PTQ 就是搬完之后再重新打包,换更紧的箱子装——只研究怎么塞得下,不改变家具本身。而 QAT(Quantization-Aware Training,量化感知训练)是边打包边知道自己只有这么小的箱子,于是提前调整摆放姿势,甚至把家具拆一拆。

原理上在做什么:量化的核心是给每个张量找一个缩放因子(scale)和零点(zero-point),把一段浮点区间线性映射到整数格子里。麻烦在于离群值:一个特别大的数会把区间撑开,导致绝大多数数值被挤进少数几个格子,误差陡增。所以 PTQ 必须做校准——拿几百条有代表性的样本跑一遍前向,统计每层激活的实际分布,再决定截断范围(常见做法是让量化前后的分布尽量接近),并选择粒度:粗到整个张量一个 scale(per-tensor),细到每个通道一个(per-channel),再到分组(group-wise)。针对大模型激活里的极端离群值,还有一类方法把量化难度从激活"迁移"一部分到权重上(如 SmoothQuant);GPTQ、AWQ 则是面向大语言模型的 PTQ 路线,会利用权重重要性或二阶信息做逐层补偿。具体支持哪些格式,以各推理框架的官方页面为准。

和 QAT 的关键差别:

维度PTQQAT
是否训练否,只做校准推理是,需微调若干步
数据少量无标注样本即可通常需要训练集
耗时分钟到小时级小时到天级
流程侵入性独立后处理,可插在部署链路里要改训练代码,插入伪量化节点
低比特表现8bit 往往够用,4bit 以下看方法更稳,容错空间大

该用哪个:默认顺序是"先 PTQ,不行再 QAT"。先跑 PTQ,看掉点是否在可接受范围内、目标硬件是否支持对应算子;如果掉点明显(常见于 4bit 以下、小模型、量化敏感的结构),或者精度要求极严,再上 QAT 付训练成本。反过来,如果模型迭代频繁、每周都要出新版,QAT 的重训开销很难扛,PTQ 的"一条命令搞定"就是压倒性优势。

对普通人来说,手机上的实时语音识别、本地跑的对话模型能塞进几十 GB 内存,很大程度上就是 PTQ 这类"事后压缩"的功劳。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。