2016-05-11 9 views
1

時系列データを予測するためにテンソルフローでLSTMを作成したいと考えています。私のトレーニングデータは、異なる長さの入出力シーケンスのセットです。同じトレーニングバッチに複数の異なる長さのシーケンスを含めることはできますか?あるいは、それらを同じ長さにする必要がありますか?もしそうなら、どうですか?Tensorflowは入力シーケンスより長いLSTMを展開します

また、展開されたRNNが入力シーケンスよりも長い場合、テンソルフローはどうなりますか? rnn()メソッドにはオプションのsequence_length引数が含まれています。この引数はこの最終的な結果を処理するように設計されていますが、それが何であるかはわかりません。

答えて

0

モデルを一から作成しますか?そうしないと、translate.pyモデルを調べることができます。 - PADシンボル(基本的にニュートラルな「情報なし」シンボル)で入力(および出力)シーケンスを埋め込む - バケット:異なる長さのグループに対して、異なるバケットを作成することができますあなたのシーケンスの長さが最長から最長まで非常に異なる場合にのみ意味があります

0

あなたは、同じ長さの入出力シーケンスを一括して一括して入力する必要があります。セルが展開されているタイムステップの数を制御するので、TFはsequence_lengthまでセルを展開しますが、ステップサイズにはなりません。

したがって、入力と出力を供給する際には、sequence_length配列に長さ私はそれぞれNPUT

tf.nn.bidirectional_rnn(fwd_stacked_lstm_cells, bwd_stacked_lstm_cells, 
          reshaped_inputs,                     
          sequence_length=sequence_length) 

.....

feed_dict={ 
    model.inputs: x, 
    model.targets: y, 
    model.sequence_length: lengths}) 

ここ

  • LEN(長さ)== BATCH_SIZE及び全てのI、長さ[I] ==長さ
  • 入力x [i](outpu y [i]の長さと同じ)
関連する問題