4

我在 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})
4

1 回答 1

12

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

i,h1 = sess.run([x_image, h_conv1], feed_dict={x:a})
于 2016-07-18T11:55:59.793 回答