模型量化 (6):基于 PTQ 的 yolov5 量化,附完整代码说明
最编程
2024-04-02 22:54:34
...
1. Post-Training-Quantization(PTQ)流程
Post-Training-Quantization(PTQ)
是目前常用的模型量化方法之一。以INT8
量化为例,PTQ处理流程如下:
- 1). 首先在数据集上以
FP32
精度进行模型训练
,得到训练好的baseline模型
。 - 2). 使用
小部分数据
(校准集)对FP32 baseline模型进行calibration(校准
),这一步主要是得到网络各层weights
以及activation
的数据分布特性
(比如统计最大最小值); - 3). 根据2.中的数据分布特性,
计算
出网络各层、量化参数
; - 4). 使用3.中的量化参数对FP32 baseline进行量化得到
INT8模型
,并将其部署
至推理框架进行推理;
PTQ方式会使用小部分数据集
来估计网络各层weights
和activation
的数据分布,找到合适的Scale,从