Tensorboard v1.0 - 直方图选项卡解释

时间:2017-04-28 03:26:16

标签: tensorflow histogram tensorboard

我正在学习通过张量板可视化张量,但是,我不知道如何在直方图选项卡中解释图表。我使用下面的代码来可视化:

sess = tf.Session()
tf.summary.histogram('test', tf.constant([1, 1, 2, 2, 3, 4, 4, 4, 4]))
summary = tf.summary.merge_all()

train_writer = tf.summary.FileWriter('../tmp/train', sess.graph)
for i in range(10):
    sum = sess.run(summary)
    train_writer.add_summary(sum, i)

我从tensorboard得到了这张图表:

直方图模式:偏移 enter image description here

直方图模式:叠加 enter image description here

我知道x轴是值,y轴是时间步长,我不知道的是z轴的值。根据{{​​3}}问题,

  

这是标准化的密度。我不会将其描述为概率密度,   虽然我认为称之为一个是合理的。

任何人都可以解释更多(即如何计算密度)?

1 个答案:

答案 0 :(得分:1)

这里的情节大致显示了应该显示的内容。峰值为1, 2, 3, 4。最大的峰值是4,最小的是3。你会看到这样一个奇怪的结果,因为你选择看到输出的分布很难看作分布(就像看起来不那么令人印象深刻在三维程序中的圆圈)。

绘制实际分布,将更容易理解。这是一个例子:

import tensorflow as tf
import numpy as np

v = np.random.normal(loc=5,  scale=3.0, size=100000)
a = tf.constant(v)
s = tf.summary.histogram('normal', a)

merged = tf.summary.merge_all()
with tf.Session() as sess:
    writer = tf.summary.FileWriter('logs', sess.graph)
    for i in xrange(10):
        summary = sess.run(merged)
        writer.add_summary(summary, i)

    writer.close()

在这里,您可以看到正态分布,均值为5,std = 3。 enter image description here

现在,从0到9的10个堆积直方图来自您的循环。它们都是相同的,因为值a没有任何内容。在实际工作中,您将看到每次训练后你的张量的直方图。

关于你的图像,我认为它们使输出变得平滑,这就是你看到这样结果的原因。