它会报告 TypeError:Feed的值不能是tf.Tensor对象。可接受的Feed值包括Python标量,字符串,列表或numpy ndarray。当运行我的tensorflow代码 我的代码下面是否有一些错误?我使用feed_dict类型转换张量类型。为什么它仍然失败?
with tf.Session() as sess:
tf.initialize_all_variables().run()
coord = tf.train.Coordinator()
threads = tf.train.start_queue_runners(coord=coord)
print('Initialized!')
for step in xrange(150000):
data,label = read_data(FLAGS.train_file)
feed_dict = {train_data_node: data,
train_labels_node: label}
_, l, lr, predictions = sess.run([optimizer, loss_value, learning_rate, train_prediction],feed_dict=feed_dict)
答案 0 :(得分:1)
错误说明:Feed的值不能是tf.Tensor
您的Feed是:
feed_dict = {train_data_node: data,
train_labels_node: label}
因此,data
&之间的一个(或两个) label
是tf.Tensor
对象。
您必须将值提取到此对象中,从而获得可接受的Feed值。
要执行此操作,您必须先将run
(或eval
)对象传递给Feed。
<强>铊; DR:强>
feed_dict = {train_data_node: data.eval(),
train_labels_node: label.eval()}