在tensorboard中显示python变量

时间:2016-08-05 16:15:57

标签: tensorflow tensorboard

我想在tensorboard中显示一些python变量,但我不完成它。

我的代码到目前为止,在张量板中只显示一行有静态数字的行,如果我使用outcommented-lines,它不起作用?然后打印: ValueError:Shapes()和(?,)不兼容

有人有想法吗?

import tensorflow as tf

step = 0
session = tf.Session()

tensorboardVar = tf.Variable(0, "tensorboardVar")

pythonVar = tf.placeholder("int32", [None])

#update_tensorboardVar = tensorboardVar.assign(pythonVar)
update_tensorboardVar = tensorboardVar.assign(4)
tf.scalar_summary("myVar", update_tensorboardVar)

merged = tf.merge_all_summaries()

sum_writer = tf.train.SummaryWriter('/tmp/train/c/', session.graph)

session.run(tf.initialize_all_variables())


for i in range(100):
        _, result = session.run([update_tensorboardVar, merged])
        #_, result = session.run([update_tensorboardVar, merged], feed_dict={pythonVar: i})
        sum_writer.add_summary(result, step)
        step += 1

2 个答案:

答案 0 :(得分:1)

这是有效的:

import tensorflow as tf
import numpy as np

step = 0
session = tf.Session()

tensorboardVar = tf.Variable(0, "tensorboardVar")

pythonVar = tf.placeholder("int32", [])

update_tensorboardVar = tensorboardVar.assign(pythonVar)
tf.scalar_summary("myVar", update_tensorboardVar)

merged = tf.merge_all_summaries()

sum_writer = tf.train.SummaryWriter('/tmp/train/c/', session.graph)

session.run(tf.initialize_all_variables())


for i in range(100):
        #_, result = session.run([update_tensorboardVar, merged])
        j = np.array(i)
        _, result = session.run([update_tensorboardVar, merged], feed_dict={pythonVar: j})
        sum_writer.add_summary(result, step)
        step += 1

答案 1 :(得分:0)

另一种方法可以在Computing exact moving average over multiple batches in tensorflow的第二个答案中找到。在那里展示了如何创建自定义摘要。