CANN/AMCT保存量化模型 save_model【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明训练后量化接口根据量化因子记录文件record_file以及修改后的模型插入AscendQuant、AscendDequant等算子然后保存为可以在ONNX Runtime环境进行精度仿真的fake_quant模型和可以在AI处理器做推理的部署模型。函数原型save_model(modfied_onnx_file, record_file, save_path)参数说明参数名输入/输出说明modfied_onnx_file输入含义文件名存储融合后模型的onnx格式。数据类型stringrecord_file输入含义量化因子记录文件路径及名称。数据类型stringsave_path输入含义模型存放路径。该路径需要包含模型名前缀例如./quantized_model/*model。数据类型string返回值说明无约束说明在网络推理的batch数目达到batch_num后再调用该接口否则量化因子不正确量化结果不正确。该接口只接收quantize_model接口产生的ONNX类型模型文件。该接口需要输入量化因子记录文件量化因子记录文件在quantize_model阶段生成在模型推理阶段填充有效值。调用示例import amct_pytorch as amct # 进行网络推理期间完成量化 for i in batch_num: output calibration_model(input_batch) # 插入API将量化的模型存为ONNX文件 amct.save_model(modfied_onnx_file./tmp/modfied_model.onnx, record_file./tmp/scale_offset_record.txt, save_path./results/model)落盘文件说明精度仿真模型文件ONNX格式的模型文件模型名中包含fake_quant可以在ONNX Runtime环境进行精度仿真。部署模型文件ONNX格式的模型文件模型名中包含deploy经过ATC转换工具转换后可部署到AI处理器。可选*.external文件包括*deploy.external和*fakequant.external只有保存的精度仿真模型以及部署模型文件大小2GB才会生成该类文件且与压缩后的*.onnx模型文件生成在同级目录用于保存Tensor中的数据每个Tensor数据单独保存一份*.external文件文件名与Tensor相同例如_conv1.weight__deploy.external和_conv1.weight__fakequant.external。后续通过ATC工具加载压缩后的*.onnx部署模型文件进行模型转换时会自动读取同级目录下*.external文件中的Tensor数据。重新执行量化时该接口输出的上述文件将会被覆盖。【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考