我一直在使用TensorFlow中矩陣乘法的例子。如何在TensorFlow中打印張量對象的值?
matrix1 = tf.constant([[3., 3.]])
matrix2 = tf.constant([[2.],[2.]])
product = tf.matmul(matrix1, matrix2)
當我打印的產品,它會顯示它作爲一個Tensor
對象:
<tensorflow.python.framework.ops.Tensor object at 0x10470fcd0>
但是我怎麼知道的product
價值?
以下沒有幫助:
print product
Tensor("MatMul:0", shape=TensorShape([Dimension(1), Dimension(1)]), dtype=float32)
我知道,圖表上Sessions
運行,但是是不是有什麼辦法可以檢查Tensor
對象的輸出,而不運行在session
圖?
可以在不調用Session.run()的情況下得到張量的某些屬性。例如,您可以調用tensor.get_shape()。在很多情況下,這給調試提供了足夠的信息。 –
另請參見以下關於tf.Print的答案。我一直在尋找這個stackoverflow的答案,同時搜索「tensorflow打印」,這個最重要的答案聽起來像沒有tf.Print操作。 –
我在回答中增加了一些注意事項,所以現在應該更清楚了。 (我不認爲最初的提問者有興趣獲得張量的形狀,只是價值。) – mrry