2016-02-02 6 views
5

Chcę zaprojektować jednowarstwową RNN w Tensorflow, tak aby ostatnie wyjście (y(t-1)) uczestniczyło w aktualizacji ukrytego stanu.Jak mogę podać ostatnią wartość wyjściową y (t-1) jako wejście do generowania y (t) w tensorflow RNN?

h(t) = tanh(W_{ih} * x(t) + W_{hh} * h(t) + **W_{oh}y(t - 1)**) 
y(t) = W_{ho}*h(t) 

Jak mogę karmić ostatnie wejście y(t - 1) jako wejście do aktualizacji ukryte stan?

+0

Obecnie zajmuję się tym samouczkiem, który wydaje się obiecujący: https://github.com/matwork/tensorflow-seq2seq-tutorials/blob/master/2-seq2seq-advanced.ipynb –

Odpowiedz

2

Czy y (t-1) jest ostatnim wejściem lub wyjściem? W obu przypadkach nie jest to proste dopasowanie do abstrakcji komórek RNN ​​TensorFlow. Jeśli Twój RNN jest prosty, możesz sam napisać pętlę, a następnie masz pełną kontrolę. Innym sposobem, który używam jest wstępne przetworzenie swój wkład RNN np zrobić coś takiego:

processed_input [t] = tf.concat (wsad [t] wejściowego [T-1])

Następnie wywołaj komórkę RNN z process_input i podziel tam.

+1

Używa ostatnio wygenerowanego wyniku przez samo. Jak mogę napisać pętlę dla prostego RNN? W ten sposób optymalizacja za sceną jest w porządku. –

Powiązane problemy