6.1 模型量化开发
工具简介
xquant 是基于 PPQ v0.6.6+ 开发的模型量化工具,已集成适配主流芯片的量化策略。工具通过 JSON 配置文件统一调用接口,可将浮点格式的 ONNX 模型转换为 INT8 定点格式模型。
在使用 xquant 前,建议先将训练框架生成的模型转换为 ONNX 格式。目前主流框架均提供标准化的转换方案,参考 ONNX 转换教程: https://github.com/onnx/tutorials#converting-to-onnx-format
使用流程
量化流程如下图所示:
模型量化示例
以下以 Ultralytics 社区 提供的 yolov8n
模型为例,介绍 xquant 的量化操作流程。
安装量化工具包
从官方地址下载 .whl
安装包:xquant-1.2.1 下载地址
安装命令如下:
pip install xquant-1.2.1-py3-none-any.whl
安装完成后可通过以下命令 验证安装成功:
pip show xquant
成功后输出如下:
获取浮点模型
-
下载原始 YOLOv8n 模型(
.pt
格式): https://docs.ultralytics.com/zh/models/yolov8/#performance-metrics -
使用 Ultralytics 提供的导出接口将
.pt
模型转换为.onnx
: 官方导出文档:https://docs.ultralytics.com/zh/modes/export/
通常建议导出时使用如下参数:
opset_version=13
input_shape=[1, 3, 640, 640]