SH

Soloharness

概念 · 辨析 · Agent

← 返回概念辨析

Concept Contrast Fable

量化和训练后量化

量化是把模型参数从高精度转成低精度以降低计算量和存储空间的通用技术。训练后量化是在模型训练完成之后再做量化转换——它只是量化的一种时机选择,不是量化的全部。量化还可以在训练中做(QAT),也可以在训练前就对权重做约束。看到「量化」就默认是 PTQ,会因为漏掉其他选项而在延迟和精度之间做不出最优取舍。

寓言

压图师傅和摄影师

印刷厂的齐师傅有个绝活:能把画册图片从两百兆压到二十兆,印刷效果肉眼看不出差别。新来的排版员小丁学到这个流程后,把所有需要压缩的图片都在排版结束后统一交给齐师傅处理,认为这是唯一正确的做法。

有一次印刷厂接到一本摄影年鉴,三百页全彩,每张照片四十兆 RAW 格式。小丁按老流程排版完发给齐师傅压图。齐师傅压了两天,压出来的文件还是太大,印刷机跑不动。小丁问能不能再压狠一点,齐师傅试了,严重偏色,摄影师不干。

印刷厂的技术总监老谷看了流程,发现问题不在齐师傅的压缩技术,在于「什么时候压」。RAW 文件有大量原始数据——你拍了暗光场景,RAW 里存了完整的传感器读取值,暗部细节丰富。排版时不管这些,直接拿 RAW 去排版,最后再压,等于把一辆满载的卡车开进胡同再卸货,进不去也卸不完。

老谷把流程改了。照片进排版系统之前先过一个预处理:降分辨率到印刷所需精度、裁掉出血线以外的区域、把颜色空间从十六通道转成四通道。预处理做完之后,文件已经从四十兆变成了八兆。齐师傅再压一轮,压到两兆,印刷效果不降反升——因为预处理去掉的都是印刷阶段用不到的信息。

小丁这才明白:压缩这件事可以在不同阶段做,每个阶段的取舍不同。排版后统一压缩像是「事后收尾」,好处是简单,坏处是前面所有步骤都扛着不需要的精度跑。预处理阶段压缩像是「提前瘦身」,好处是后面的工序都变轻了,坏处是你得知道哪些信息后面真的用不上。

老谷后来又引进了第三套方案:对某些重印率高的图册,直接在拍摄阶段就用较低位深出片,从源头控制数据量。小丁终于看清了全貌——压缩可以发生在一整条流水线的不同位置,介入点不同,后果也不同。

小丁在笔记本上画了一张图:横轴是流水线的不同阶段,纵轴是压缩力度。他对新来的同事说:你以前以为压缩只发生在排版结束之后,其实它可以在拍片时做、进系统前做、排版前做、排版后做。每个介入点的代价和收益都不一样,你得看具体项目选。

老谷最后补了一句:压图师傅的手艺没问题,问题是把手艺绑死在一个时间点上。你让他在卡车堵胡同之后再卸货,神仙也卸不干净。换个时机让他提前处理,同样的手艺,结果天上地下。

量化

将模型参数和计算从高精度数据格式转为低精度格式的通用技术,目标是在精度损失可接受的前提下降低计算量和存储需求。它是一类方法的统称,包含多种介入时机和实现策略。

训练后量化

在模型训练完成之后对已训练好的权重进行量化转换的具体方法。实现简单、无需重新训练,但精度损失可能较大。仅适用于某些模型架构和精度要求不极端的场景。

故事对应

  • 小丁默认所有压缩都在排版后做:把 PTQ 当成量化的唯一方式。
  • RAW 文件直接排版导致全流程负重:PTQ 的局限——前面所有环节都用全精度跑。
  • 预处理阶段先降精度再排版:量化感知训练或其他提前量化的策略。
  • 拍摄阶段就用较低位深出片:训练前量化约束,从源头控制。
  • 横轴上多个介入点:量化不是一个时间点,而是一整条可选策略链。

落到项目里

决定做量化时,先问介入时机。PTQ 是上手最快的选项,但如果你愿意投入训练资源,QAT 通常能保留更多精度;如果你的模型架构本身就支持低精度训练,还可以在训练阶段直接约束。不要在方案评估阶段就把「量化」等同于「PTQ」——否则你会错过那些需要更多工程投入但回报更大的选项。