1

TensorflowでRNNを実装してテキスト予測をしようとしています。私は私が正しく理解していれば、出力活性化h_tとLSTMの活性化c_tは、我々は新しいシーケンス(つまりを入力するたびにリセットされ、それらが更新されている100RSTNのc_tとh_tをRNNのシーケンスの2つ置きにリセット

の系列長で、この目的のためにBasicLSTMCellを使用していますシーケンスに沿って100回ですが、一度バッチ内の次のシーケンスに移動すると、それらは0にリセットされます)。

Tensorflowを使用してこれを防ぐ方法はありますか?つまり、更新されたc_th_tをバッチ内のすべてのシーケンスに沿って使用し続けますか? (そして、次のバッチに移動するときにそれらをリセットする)。

+0

[this]の可能な複製(http://stackoverflow.com/questions/38241410/tensorflow-remember-lstm-state-for-next-batch-stateful-lstm) – Kh40tiK

答えて

2

バッチの各例は独立している必要があるので、私はそうしたくないと思います。そうでない場合は、1のバッチサイズと100 * batch_sizeの長さのシーケンスを持つ必要があります。バッチ間に状態を保存することがよくあります。この場合、変数にRNN状態を保存する必要があります。または、ユーザーがプレースホルダを使用してフィードを入力できるようにする必要があります。

+0

Kerasには 'stateful_rnn'があります。様々な長さのシーケンスを扱うなどの目的を持っています。 – Kh40tiK

+0

はい、それは私が言ったようなバッチの間にそれを保存し、バッチの次のシーケンスに状態を適用しません。 – chasep255

+0

バッチ設定のために 'stateful_rnn'が必要ないと私はほとんど同意します。しかし、長いシーケンスと長いシーケンスのバッチがメモリにうまく収まらないことがあります。 – Kh40tiK

関連する問題