0
我正在嘗試爲Seq2Seq實現多層雙向編碼器。Tensorflow中用於Seq2Seq的多層雙向編碼器
我現在正在做的是以下幾點:
cell = tf.contrib.rnn.LSTMCell(num_size)
cell = tf.nn.bidirectional_dynamic_rnn(cell_fw =encoder_cell, cell_bw =encoder_cell, ....)
這將創建一個雙向RNN而是如何使它多層?
我試圖實現的是遵循架構,其中每個LSTM塊是雙向的,並且第n層編碼器的輸出進入第n層解碼器。
我使用Tensorflow 1.0,並使用tf.contrib.seq2seq
庫解碼器。
細胞= tf.contrib.rnn.LSTMCell(num_size) 細胞= tf.contrib.rnn.MultiRNNCell([在範圍(num_layers爲_細胞)]) 你建議使用在bidirectional_dynamic_rnn函數此細胞? MultiRnnCell只返回最後一層的輸出。但是解碼器需要每層編碼器的output_state,對嗎?如何實現這一目標? –
MultiRNNCell返回一個單元(層)列表,每個單元具有與給定單元參數所指定的相同的網絡結構。您可以閱讀我引用的發佈說明以瞭解詳細信息。 –
它是否也適用於TF 1.0?我正在使用 –