【问题标题】:Onnx Model Save Problem 'tuple' object has no attribute 'graph'Onnx 模型保存问题 \'tuple\' object has no attribute \'graph\'
【发布时间】:2023-02-22 04:59:49
【问题描述】:

在将keras模型改成onnx的过程中,使用onnx发现报错“'tuple' object has no attribute 'graph'” 我的代码如下,请帮助我

import tf2onnx
import onnx
from tensorflow.python.keras import models

model = models.load_model("model.h5")   

onnx_model = tf2onnx.convert.from_keras(model, opset=13)

onnx.save(model, 'test.onnx')

“C:\Users\test\PycharmProjects\OnnxTest\main.py”,第 13 行,在 onnx.save(onnx_model, 'test.onnx') 文件“C:\Users\bigpicture\anaconda3\lib\site-packages\onnx_在里面_.py”,第 195 行,在 save_model 中 proto = write_external_data_tensors(原型,基本路径) 文件“C:\Users\test\anaconda3\lib\site-packages\onnx\external_data_helper.py”,第 276 行,在 write_external_data_tensors 中 对于 _get_all_tensors(model) 中的张量: 文件“C:\Users\test\anaconda3\lib\site-packages\onnx\external_data_helper.py”,第 207 行,在 _get_initializer_tensors 从 _get_initializer_tensors_from_graph(onnx_model_proto.graph) 中产生AttributeError:“元组”对象没有属性“图形”

【问题讨论】:

    标签: tensorflow keras onnx


    【解决方案1】:

    tf2onnx.convert.from_keras 返回 2 个值。您只接受 1 个返回值,因此该方法将这两个值作为单个元组返回。添加逗号和下划线以接收和忽略额外返回值的这个小改动将解决问题:

    onx, _ = tf2onnx.convert.from_keras(模型)

    更多信息:https://bobbyhadz.com/blog/python-return-multiple-values-use-only-one

    【讨论】:

      猜你喜欢
      • 2014-05-18
      • 1970-01-01
      • 2018-03-12
      • 1970-01-01
      • 1970-01-01
      • 2021-12-23
      • 2022-11-20
      • 2022-12-01
      • 2021-04-09
      相关资源
      最近更新 更多