我無法理解來自tf.nn.dynamic_rnn
tensorflow函數的輸出。該文件只是告訴輸出的大小,但它不能說明每行/列的含義。從文檔:來自tf.nn.dynamic_rnn tensorflow函數的輸出分析
輸出:RNN輸出
Tensor
。如果time_major == False(默認值),這將是
Tensor
shaped:[batch_size, max_time, cell.output_size]
。如果time_major == True,這將是
Tensor
shaped:[max_time, batch_size, cell.output_size]
。注意,如果
cell.output_size
是整數 或TensorShape
對象的(可能是嵌套的)元組,那麼outputs
將是具有元組
相同的結構cell.output_size
,包含具有對應於所述形狀數據中cell.output_size
形狀 張量。狀態:最終狀態。如果
cell.state_size
是一個int,則將 的形狀爲[batch_size, cell.state_size]
。如果它是
TensorShape
,這將形成[batch_size] + cell.state_size
。
如果它是一個(可能是嵌套的)int或TensorShape
的元組,則這個 是具有相應形狀的元組。
outputs
張量是一個3-D矩陣,但每行/列代表什麼?
這個,但我相信'國家'還擁有你的網絡的每一層的狀態。因此,如果您使用的是GRU,那麼您的候選層和門層的輸出就會有一個狀態,並且如果您的GRU是多層RNN的單元,則您的網絡中的每個層都會有這些狀態。 – Engineero
@Engineero是的,沒錯,謝謝。我沒有給出太多的細節,但是對於多層RNN小區的狀態將是每個單獨小區的狀態列表,因爲LSTM小區將是一對張量等等。 – jdehesa
@jdehesa - 你可以看看我提出的另一個問題嗎? https://stackoverflow.com/questions/44116689/siamese-model-with-lstm-network-fails-to-train-using-tensorflow – Mithun