我尝试在程序中加载模型,以便实时运行它。
以下是我正在尝试的方法:
保护者=
tf.train.import_meta_graph(tf.train.latest_checkpoint(model_path)+".meta")
graph = tf.get_default_graph()
outputs = graph.get_operation_by_name('output')
native = graph.get_operation_by_name('input')
sess = tf.Session()
sess.run(tf.global_variables_initializer())
sess.run(tf.local_variables_initializer())
if(tf.train.checkpoint_exists(tf.train.latest_checkpoint(model_path))):
saver.restore(sess, tf.train.latest_checkpoint(model_path))
print(tf.train.latest_checkpoint(model_path) + "Session Loaded for Testing")
我试图得到输出:
y_test_output= sess.run(outputs, feed_dict={native: x_test})
我收到以下错误:
Traceback (most recent call last):
File "testing_reality.py", line 90, in <module>
main()
File "testing_reality.py", line 62, in main
handle_client_connection(client_sock)
File "testing_reality.py", line 45, in handle_client_connection
y_train_pred= sess.run(outputs, feed_dict={native: x_test})
File "C:\Python35\lib\site-packages\tensorflow\python\client\session.py", line 929, in run
run_metadata_ptr)
File "C:\Python35\lib\site-packages\tensorflow\python\client\session.py", line 1095, in _run
'Cannot interpret feed_dict key as Tensor: ' + e.args[0])
TypeError: Cannot interpret feed_dict key as Tensor: Can not convert a Operation into a Tensor.
请让我知道在这种情况下我缺少什么。
在 Windows 10 上使用最新版本的 Tensorflow“1.12.0”。
最佳答案
feed_dict
中的keys
必须是占位符。该错误表明您正在使用 Operation
作为 feed_dict
中的键。如果input
变量确实是占位符
,则按以下方式加载它:
native = graph.get_tensor_by_name("input:0")
输出
也是如此:
outputs = graph.get_tensor_by_name("output:0")
关于python - 使用元图 tensorflow 运行模型失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54461795/