Golang模型会话上的Tensorflow运行错误:无操作。如果输出是使用Scope对象创建的,请参阅Scope.Err()了解详细信息
iam使用golang和tensorflow模型。使用此代码: ``` ``` 但显示错误:Golang模型会话上的Tensorflow运行错误:无操作。如果输出是使用Scope对象创建的,请参阅Scope.Err()了解详细信息,tensorflow,go,Tensorflow,Go,iam使用golang和tensorflow模型。使用此代码: ``` ``` 但显示错误: 2019/01/07 18:07:48 http:panic service[::1]:55262:nil操作。如果输出是使用Scope对象创建的,请参阅Scope.Err()了解详细信息。 我已经在检查图像文件中的张量包含张量。 有什么建议吗?无论如何,还是要感谢错误表明输出属性(某个节点的)是一个nil操作 因此graphModel.Operation(“input”).Operation(0)
2019/01/07 18:07:48 http:panic service[::1]:55262:nil操作。如果输出是使用Scope对象创建的,请参阅Scope.Err()了解详细信息。
我已经在检查图像文件中的张量
包含张量。
有什么建议吗?无论如何,还是要感谢错误表明
输出属性(某个节点的)是一个nil操作
因此graphModel.Operation(“input”).Operation(0)
或graphModel.Operation(“output”).output(0)
返回nil
要更正此问题,您必须引用图中的现有节点,因为图中没有名为input
的张量或名为output
的张量
从用于导出模型的python代码中,可以找到输入和输出张量的完整名称。只需访问输入占位符和输出节点的.name
属性,即可获得在Go中使用的正确名称
此外,Go绑定使用起来很复杂,特别是如果您想对输入图像运行一些预处理操作。我建议你用
不要直接使用绑定(请注意,我是本报告的作者)。我想为@nessuno添加一个很棒的答案,我需要这样做:my_model.inputs
和my_model.outputs
,以获得正确的名称。例如:
> my_model.inputs
[<tf.Tensor 'dense_1_input:0' shape=(?, 7) dtype=float32>
> my_model.outputs
[<tf.Tensor 'my_output/BiasAdd:0' shape=(?, 2) dtype=float32>
>my_model.inputs
[
>my_model.outputs
[
因此,我的输入和输出节点是densite\u 1\u input
和my\u output/BiasAdd
(不是my\u output
!)非常感谢@nessuno先生。Yo save my life:)嗨,你是如何找到我的模型的。输入是从python来的吗?我试着使用saved\u model\u pb2.SavedModel()
object的ParseFromString
方法来读取保存的\u model.pb
。我正在寻找输入标签和输出标签,我可以使用它们来指定操作(“标签”)
。我还研究了保存的\u model.pb的张力板可视化
> my_model.inputs
[<tf.Tensor 'dense_1_input:0' shape=(?, 7) dtype=float32>
> my_model.outputs
[<tf.Tensor 'my_output/BiasAdd:0' shape=(?, 2) dtype=float32>