2017-01-16 45 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]) 

的情況下,你知道這是一個「矩陣形」張量提前。