tensorflow TypeError:run()获得参数'feed_dict'的多个值

时间:2016-07-18 11:46:31

标签: python-3.x tensorflow multiple-value

我在tensorflow中编写了这段代码,然而,当我运行它时,标题中的错误就会出现。谁能帮助我并向我解释这个问题?谢谢你的帮助。

import tensorflow as tf
sess = tf.InteractiveSession()

import numpy as np


a = np.array([[1.0,2.0,3.0,4.0],[5.0,6.0,7.0,8.0],[9.0,10.0,11.0,12.0],[1.0,1.0,1.0,1.0]])
w = np.ones([3.0,3.0,1.0,1.0])

W_conv1 = tf.Variable(w)

def conv2d(x, W):
  return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME')


x = tf.placeholder(tf.float64, shape=[4,4])

x_image = tf.reshape(x,[1,4,4,1])

h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1))

sess.run(tf.initialize_all_variables())

i,h1 = sess.run(x_image,h_conv1, feed_dict={x:a})

1 个答案:

答案 0 :(得分:9)

问题在于您将h_conv1作为第二个运行参数传递,即feed_dict,然后指定命名参数feed_dict。如果你想要评估多个ops,你应该在第一个参数中将它们作为数组传递,如下所示:

i,h1 = sess.run([x_image, h_conv1], feed_dict={x:a})