【问题标题】:ONNX Quantized Model Type Error: Type 'tensor(float16)'ONNX 量化模型类型错误:类型 'tensor(float16)'
【发布时间】:2021-03-10 07:51:12
【问题描述】:

我使用此脚本将 onnx 模型从 float32 转换为 float16。

from onnxruntime_tools import optimizer
optimized_model = optimizer.optimize_model("model_fixed.onnx", model_type='bert_tf', num_heads=12, hidden_size=768, opt_level=99)
optimized_model.use_dynamic_axes()
optimized_model.convert_model_float32_to_float16()
optimized_model.save_model_to_file("model_fixed_fp16.onnx")

但在推理时我得到了这个错误。

[ONNXRuntimeError] : 10 : INVALID_GRAPH : Load model from 
./model_fixed_fp16.onnx failed:This is an invalid model. 
Type Error: Type 'tensor(float16)' of input parameter 
(conv2d_1/convolution__24:0) of operator (Conv) in node (batch_normalization_1/FusedBatchNormV3_1:0_nchwc) is invalid

我还使用这个将输入 dtype 更改为 float 16

pimage = np.array(np.expand_dims(pimage, axis=0), dtype=np.float16)

但仍然出现同样的错误。我必须做些什么来解决这个问题?

【问题讨论】:

    标签: python tensorflow deep-learning onnx onnxruntime


    【解决方案1】:

    您能否尝试在此处运行转换脚本: https://github.com/microsoft/onnxconverter-common/blob/master/onnxconverter_common/float16.py

    如果您仍然遇到问题,请在该 repo 上打开一个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 2018-05-01
      相关资源
      最近更新 更多