Ich verwende tf.nn.dynamic_rnn
, um eine LSTM in Tensorflow auszuführen. Ich habe einen Tensor von N
Anfangszustandsvektoren und einen Tensor von M = N * n
Eingaben. Jede Serie besteht aus n
Eingabeelementen, und ich mag den i-ten Satz von Eingangsvektoren mit dem i-ten Ausgangszustandsvektor bewerten, wie unten dargestellt:LSTM Anfangszustand für jeden Artikel in der Charge in Tensorflow
inputs[0:n], initial_states[0]
inputs[n:2*n], initial_states[1]
...
Gibt es eine Möglichkeit, es mit einem zu tun Einzelruf tf.nn.dynamic_rnn
und die oben genannten Tensoren direkt, oder muss ich für jeden Ausgangszustandsvektor und seine entsprechenden Eingänge auf eine Schleife zurückgreifen (was zu len(initial_states)
Aufrufen zu tf.nn.dynamic_rnn
führt)?
Ist das nicht nur normale Dosierung? Ihr initialer [initial_state] (https://www.tensorflow.org/api_docs/python/tf/nn/dynamic_rnn) würde also eine Batch-Dimension über "N" haben, und der RNN würde für diese Stapel "n" Schritte ausführen . Sie müssen "Eingänge" nur umformen, um "[N, n]" zu sein. Oder hatten Sie etwas anderes vor? –
Ich ... wusste das nicht, danke. Bitte geben Sie diese Antwort in einer Antwort an, damit ich sie akzeptieren kann. – npit