我已经使用Tensorflow在集群上的GPU上训练了深度CNN模型。现在,我想在笔记本电脑中加载该模型。但是,当我想使用以下命令时,会收到错误消息:
new_saver = tf.train.import_meta_graph('./3/Model_Arch3/Deep_CNN_Color_Arch8.ckpt-178000.meta')
我收到的错误是:
回溯(最近一次通话最后一次):文件“ dev_test.py”,第28行,在 new_saver = tf.train.import_meta_graph('./ 3 / Model_Arch3 / Deep_CNN_Color_Arch8.ckpt-178000.meta') 文件 “ /usr/local/lib/python2.7/dist-packages/tensorflow/python/training/saver.py”, import_meta_graph中的第1810行 ** kwargs)文件“ /usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/meta_graph.py”, 660行,在import_scoped_meta_graph中 producer_op_list = producer_op_list)文件“ /usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/importer.py”, 第285行,在import_graph_def中 引发ValueError('在定义的操作中没有操作名为%s。'%node.op)ValueError:在定义的操作中没有名为ParseSingleExample的操作 操作。
如果有人帮助我解决这个问题,我真的很感激。
答案 0 :(得分:1)
我发现了问题所在。 我正在使用python 3.5.4进行培训。然后我使用python 2.7重构了图,这就是问题所在。 感谢那些尝试提供帮助的人
答案 1 :(得分:0)
这也可能是您尝试执行的操作的延迟加载问题。
在加载图形之前,尝试添加Private Sub STRPoints_ValueChanged(sender As Object, e As EventArgs) Handles
STRPoints.ValueChanged
If val(STRPoints.Value) >= 10 Then
STRScorelbl.Text = val(STRScorelbl.Text) + (val(STRPoints.Value) Mod 10)
ElseIf STRPoints.Value < 10 Then
STRScorelbl.Text = val(STRScorelbl.Text) - (10 - val(STRPoints.Value))
End If
End Sub
一行。
供参考-在旧版TF GitHub问题中提出了类似问题 https://github.com/tensorflow/tensorflow/issues/10130
更新:
我想我现在看到了这个问题。由于您已经在GPU上进行了培训,现在您可以在常规计算机/ CPU上运行。您需要从加载的对象中清除设备。尝试将clear_devices添加为参数:
dir(tf.contrib)
最后,您的本地计算机和GPU计算机之间的TF版本可能不同步。尝试更新您的本地版本。