以下是我使用TensorFlow的代码,我已经尝试了两天来调试这个错误…
changed_result = y_conv.eval(feed_dict={x: pixelNew, keep_prob: 1.0})
以及:
changed_result = tf.Variable([0.0],tf.float32)
我尝试过将changed_result设为张量,或者不进行声明,但这两种方法都不起作用。
以下是完整的错误描述:
Traceback (most recent call last): File “deepMnist.py”, line 235, in tf.app.run(main=main, argv=[sys.argv[0]] + unparsed)
File “/Users/ximinlin/anaconda/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/platform/app.py”, line 43, in run sys.exit(main(sys.argv[:1] + flags_passthrough))
File “deepMnist.py”, line 162, in main changed_result = y_conv.eval(feed_dict={x: pixelNew, keep_prob: 1.0}) File “/Users/ximinlin/anaconda/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/framework/ops.py”, line 575, in eval return _eval_using_default_session(self, feed_dict, self.graph, session)
File “/Users/ximinlin/anaconda/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/framework/ops.py”, line 3633, in _eval_using_default_session return session.run(tensors, feed_dict)
File “/Users/ximinlin/anaconda/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/client/session.py”, line 766, in run run_metadata_ptr)
File “/Users/ximinlin/anaconda/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/client/session.py”, line 921, in _run + e.args[0]) TypeError: Cannot interpret feed_dict key as Tensor: Can not convert a int into a Tensor.
以下是x和keep_pro的定义:
x = tf.placeholder(tf.float32, [None, 784])keep_prob = 0
keep_prob和x实际上是来自TensorFlow教程的代码,我只是将它们复制到我的代码中
回答:
您展示的上下文信息不足以给出非常具体的答案,但您的错误是x
或keep_prob
在您调用它们的地方不是张量,而是一个整数(如果您之前将它们定义为张量,您可能已经覆盖了它们)。
因此,错误在于x
或keep_prob
,而不是changed_result
。