onnx模型的量化处理

默认是uint8量化,需要安装onnx 1.8或以上版本。

目前在ubuntu 20.04下测试通过 

#Dynamic quantization  动态量化
import onnx
from onnxruntime.quantization import quantize_dynamic, QuantType

model_fp32 = 'path/to/the/model.onnx'
model_quant = 'path/to/the/model.quant.onnx'
quantized_model = quantize_dynamic(model_fp32, model_quant, weight_type=QuantType.QUInt8)


--------------------------
# QAT quantization  QAT量化
import onnx
from onnxruntime.quantization import quantize_qat, QuantType

model_fp32 = 'path/to/the/model.onnx'
model_quant = 'path/to/the/model.quant.onnx'
quantized_model = quantize_qat(model_fp32, model_quant)

量化后使用同fp32时一样的代码进行推理,无需修改。

还有一种方法是静态量化,需要用少量数据对模型进行校准。可以参见 以下链接。

其它文章中关于静态量化时校准的信息: 模型量化(3):ONNX 模型的静态量化和动态量化_AI Studio的博客-CSDN博客_onnx模型量化

评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值