2016-12-01 69 views
0

我想看看LSTM門的啓動狀態,但它似乎是不容易得到的門狀態和他們輸出到文件。
如何在tensorflow中輸出lstm門的狀態?

我可以像使用按照BasicLSTM「tf.Print」功能:
gate = tf.Print(gate, [sigmoid(gate)])
但「tf.Print」顯示此門像終端:
gate name : [0.5222222, 0.444444, 0.3333333, ...]
我不能得到的所有值這個大門,只是「......」。我必須使用redirectory將它們輸出到文件中。


謝謝@ben,我可以用tf.Print(gate, [sigmoid(gate)], summarize=10000000)來解決 「...」。但是也需要使用redirectory將它們輸出到文件中。


我也嘗試將名稱分配給BasicLSTM門:
gate = tf.identity(gate_tmp, "gate")
然後,我可以用
gate = tf.get_default_graph().get_tensor_by_name("model/RNN/while/BasicLSTMCell/gate:0")
得到此張名,而是當我sess.run(gate)
錯誤內容時發生「門是不是可提取」

所以我改變「門」給一個變量。
gate = tf.Variable(gate, trainable=False)
但是,一個新的錯誤內容時發生,「所有的輸入到節點model_1/Variable_1 /分配必須從相同的幀」。

所以,我應該怎麼做才能LSTM門的狀態?並將它們輸出到一個文件?

回答

0

tf.Print支持一種特殊參數「總結」來控制打印元件的數量:例如你可以使用

tf.Print(gate, [sigmoid(gate)], summarize=10000000) 
+0

它的工作,但我想輸出他們的文件。除了redirectory以外的其他任何方式? –