LSTM のタイム ステップと特徴について
LSTM モデルでは、タイム ステップと特徴は入力データの次元を指します。タイム ステップはシーケンス内のデータ ポイントの数を表し、特徴量は各データ ポイント内のさまざまな変数または次元を表します。
この例では、入力データは次の次元の 3D 配列に再形成されます。
したがって、各サンプルは 3 つのデータ ポイントのシーケンスであり、各データ ポイントは 1 つの入力で構成されます。変数。
ステートフルLSTM
ステートフル LSTM は、タイム ステップごとに更新される非表示の状態を維持します。これにより、モデルは過去の入力から学習し、コンテキストに基づいて予測を行うことができます。 stateful=True の場合、LSTM はバッチ間の非表示状態を記憶するため、連続データに役立ちます。
コードでは、バッチ サイズ 1 を使用し、モデルを 100 エポックトレーニングしています。ただし、model.reset_states() を使用して各エポックの後に状態をリセットすることもできます。これは、モデルが実際にはバッチ間の過去の入力から学習しておらず、基本的に各バッチを新しいシーケンスとして扱っていることを意味します。
ステートフル LSTM を正しくトレーニングするには、トレーニング中に状態をリセットしないようにする必要があります。代わりに、新しいシーケンスを開始する場合、または新しいデータ ポイントで予測を行う場合にのみ状態をリセットする必要があります。
展開された図
提供した図は、LSTM ネットワークの展開されたアーキテクチャを示しています。どちらの場合も、赤いボックスは入力ステップを表し、緑のボックスは非表示の状態を表します。
編集 1:
次の図は、最初に展開された図に対応します。あなたが提供した図:
[タイム ステップごとに 1 つの入力ステップを持つ展開された図の画像]
あなたが提供した図2 番目の展開図に対応します:
[すべての入力ステップを一度に展開した展開図の画像]
編集 2:
タイム ステップとfeature 引数は LSTM モデルに不可欠です。詳細については、元の投稿とコメントで提供されているリソースを参照してください。
追加メモ:
以上がタイム ステップと機能は LSTM モデルのパフォーマンスとステートフル トレーニングにどのような影響を与えますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。