1 简介
PTQ:Post-training Quantization,训练后量化,指浮点模型训练完成后,基于一些校准数据,直接通过工具进行模型量化的过程,相比QAT,PTQ更简单一些。
QAT:Quantization aware training,量化感知训练,指浮点模型训练完成后,在模型中插入伪量化节点再进行量化训练的过程,相比PTQ,QAT精度更有保障一些。
当然,为了方便一些用户不愿或不能使用docker,我们通过这篇文章来详细介绍如何在不使用docker又不污染本地全局Python环境的情况下,进行地平线本地PTQ环境安装,关于QAT环境本地安装请见另外一篇文章:地平线QAT环境本地安装。
量化方案 | 本地安装 | Docker容器 |
PTQ 后量化转换 | 支持,请见本文 | 同时支持 请见上文中链接:docker镜像环境部署 |
QAT 量化感知训练 | 支持,请见上文中链接: 地平线QAT环境本地安装 |
2 virtualenv简介与使用
virtualenv是Python开发中常用的虚拟环境管理工具,它可以在同一台机器上创建多个相互独立的Python环境,每个环境之间可以独立安装不同版本的Python解释器和Python库,从而避免不同项目之间因为Python版本和库版本的冲突导致的问题。
2.1 安装 virtualenv
2.2 创建虚拟环境
不指定Python版本时,将以开发机默认Python版本进行创建,建议大家先确认一下自己的Python版本
指定Python版本时(确保你的系统上已经安装了Python 3.8的可执行版本)
此时会在当前目录下创建一个名为 env_name的虚拟环境,环境里面只有pip、setuptools和wheel这三个包。
2.3 激活虚拟环境
激活虚拟环境后,就可以在该环境中安装一些自己需要的依赖了,具体安装示例可参考本文第3节。
2.4 退出虚拟环境
在完成一系列工作后,可以运行如下命令退出虚拟环境。
3 安装PTQ所需依赖
本文以horizon_j5_open_explorer_v1.1.49b-py38_20230505为例进行介绍,需要手动安装的4个whl包信息如下:
注意Python版本要对应
顺序执行下面几行指令进行安装
安装过程需要一些时间,安装完成后,可以输入 hb_mapper –-help 命令,若打印如下信息,说明环境已安装完成:
--version Show the version and exit.
-h, --help Show this message and exit.
checker check whether the model meet the requirements.
infer inference and dump output feature as float vector.
makertbin transform caffe model to quantization model, generate runtime...
接下来就可以试试PTQ的相关功能啦!

