2017-01-16 44 views
5

我正在尝试使张量板中的张量摘要可视化。然而,我看不到董事会的张量摘要。这里是我的代码:如何可视化张量板中的张量摘要

 out = tf.strided_slice(logits, begin=[self.args.uttWindowSize-1, 0], end=[-self.args.uttWindowSize+1, self.args.numClasses], 
           strides=[1, 1], name='softmax_truncated') 
     tf.summary.tensor_summary('softmax_input', out) 

其中out是一个多维张量。我想我的代码一定有问题。可能我错误地使用了tensor_summary函数。

+0

这很可能与此相关https://stackoverflow.com/questions/42329059/how-is-tf-summary-tensor-summary-meant-to-be-used –

回答

1

你要做的是创建一个摘要操作,但是不要调用它并且不要写摘要(参见documentation)。 实际创建你需要做以下总结:

# Create a summary operation 
summary_op = tf.summary.tensor_summary('softmax_input', out) 

# Create the summary 
summary_str = sess.run(summary_op) 

# Create a summary writer 
writer = tf.train.SummaryWriter(...) 

# Write the summary 
writer.add_summary(summary_str) 

明确写摘要(最后两行)是唯一必要的,如果你没有一个更高级别的帮手像Supervisor。否则你调用

sv.summary_computed(sess, summary_str) 

和主管会处理它。

更多信息,参见: How to manually create a tf.Summary()

+6

如何查看生成的摘要这个张量。 Tensorboard似乎没有张量摘要选项卡。 – Ashok

+0

@Ashok你知道该怎么做吗?我在某处读到它正在开发中。 – user3813674

+1

我不认为张量板支持可视化张量的值。 –

0

不知道这是否是有点明显,但你可以使用类似

def make_tensor_summary(tensor, name='defaultTensorName'): 
    for i in range(tensor.get_shape()[0]: 
     for j in range(tensor.get_shape()[1]: 
      tf.summary.scalar(Name + str(i) + '_' + str(j), tensor[i, j]) 

的情况下,你知道这是一个“矩阵形”张量提前。