問題タブ [lstm-stateful]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
98 参照

keras - ステートフル vs ステートレス LSTM

Keras で LSTM を使用しようとしていますが、ステートフルまたはステートレス LSTM のどちらを使用すべきかわかりません。オンラインで多くのリソースを読みましたが、私のケースには当てはまらないようです。

長い予測系列X=[X1,X2,....,Xn]と長い応答系列がありy=[0,0,...,1,1,0,...0]ます。それらは同じ長さを持ち、応答は値 1 または 0 のみを取ることができます。私の計画は、長い予測子系列をサブサンプリングし、短い系列 (長さ 4) を使用して次の 3 時点の応答を予測することです。だから私のトレーニングデータはこれを見て

利用可能なこれらの短いシリーズ (サンプル) をすべて使用する場合は、ステートフルを選択する必要があると思います。ただし、1 に比べて 0 の方が多いためy、短い応答系列で 1 を含むすべてのサンプルを保持します (例: このサンプルを保持します[y5=0,y6=1,y7=0]) が、データを作成するためだけに他の多くのサンプルをランダムに削除します残高。

一部の短いシリーズは互いに非常に離れている可能性があるため、ここでステートフルを使用する必要があるかどうかはわかりません。

0 投票する
1 に答える
1161 参照

tensorflow - ステートフル LSTM Tensorflow 無効な Input_h 形状エラー

TensorFlow を使用して、時系列回帰問題でステートフル LSTM を試しています。データセットを共有できないことをお詫び申し上げます。以下は私のコードです。

上記のコードを実行すると、最初のエポックの終了後に次のようなエラーが発生します。

ただし、batch_size を 1に変更し、モデル トレーニングのコードを次のように変更すると、モデルは正常にトレーニングされます。

ただし、非常に大きなデータ (100 万行) では、batch_size が 1 であるため、モデルのトレーニングに非常に長い時間がかかります。

それで、無効なinput_h形状エラーを取得せずに、バッチサイズが1より大きい(たとえば64)ステートフルLSTMをトレーニングするにはどうすればよいでしょうか?

回答ありがとうございます。