错误提供浮动值张量流量

时间:2017-05-30 17:30:07

标签: python tensorflow

我正在尝试构建一个基本网络,

    # Suppress OS related warnings
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'


# Import tensorflow library
import tensorflow as tf
import numpy as np

sess = tf.Session()


# Input Data X : of placeholder Value 1.0 tf.float32
x = tf.placeholder(tf.float32, name="input")

# Variable Weight : Arbitary Value
w = tf.Variable(0.8, name='weight')

# Neuron : y = w * x
with tf.name_scope('operation'):
    y = tf.multiply(w, x, name='output')

# Actual Output
actual_output = tf.constant(0.0, name="actual_output")

# Loss function , delta square
with tf.name_scope("loss"):
    loss = tf.pow(y - actual_output, 2, name='loss')

# Training Step : Algorithm -> GradientDescentOptimizer
with tf.name_scope("training"):
    train_step = tf.train.GradientDescentOptimizer(0.025).minimize(loss)

# Ploting graph : Tensorboard
for value in [x, w, y, actual_output, loss]:
    tf.summary.scalar(value.op.name, value)

# Merging all summaries : Tensorboard
summaries = tf.summary.merge_all()

# Printing the graph : Tensorboard
summary_writer = tf.summary.FileWriter('log_simple_stats', sess.graph)

# Initialize all variables
sess.run(tf.global_variables_initializer())

for i in range(300):
    summary_writer.add_summary(sess.run(summaries), i)
    sample = np.random.uniform(low=0.0, high=400.0)
    print(sample)
    sess.run(train_step, feed_dict={x: sample})

# Output
print(sess.run([w]))

错误是

  

您必须为占位符张量输入值输入'与dtype浮动            [[Node:input = Placeholderdtype = DT_FLOAT,shape = [],_device =" / job:localhost / replica:0 / task:0 / cpu:0"]]

1 个答案:

答案 0 :(得分:1)

feed dict的键应该是占位符本身,而不是字符串。另一个问题是,在运行摘要时,您没有像使用培训时那样使用相同的Feed数据。

x = tf.placeholder(tf.float32, name="input")
... more code...
_, merged = sess.run([train_step, summaries], feed_dict={x: sample})
summary_writer.add_summary(merged, i)