ホームページ > バックエンド開発 > Python チュートリアル > Keras LSTM で使用するために時系列データを再形成するにはどうすればよいですか? また、ステートフル LSTM とパラメータ「タイム ステップ」および「特徴」の重要性は何ですか?

Keras LSTM で使用するために時系列データを再形成するにはどうすればよいですか? また、ステートフル LSTM とパラメータ「タイム ステップ」および「特徴」の重要性は何ですか?

Patricia Arquette
リリース: 2024-11-24 05:03:08
オリジナル
431 人が閲覧しました

How do I reshape time series data for use with Keras LSTMs, and what is the significance of stateful LSTMs and the parameters

Keras LSTM について

時系列分析のためのデータの再構成

Keras では、時系列データは通常、ディメンション [サンプル、タイム ステップ、特徴]。この形式は、時間の経過とともにデータを順次処理する LSTM レイヤーに必要です。

  • サンプル: データセット内のシーケンスの数
  • タイム ステップ: 各シーケンスの長さ (時間数)ステップ)
  • 特徴: 各タイム ステップでの入力特徴の数

たとえば、それぞれ 10 のタイム ステップと 1 つのタイム ステップを持つ 5 つのトレーニング シーケンスがあるとします。この機能を使用すると、データは (5, 10, 1) に再形成されます。

ステートフルLSTM

ステートフル LSTM を使用すると、モデルはバッチ間で内部状態を維持できます。これは、モデルがバッチの処理後に隠れた状態を記憶し、それを次のバッチの入力として使用することを意味します。これは、現在の出力が前の入力に依存するシーケンシャル データを扱う場合に特に便利です。

提供した Keras コードでは、stateful=True が True に設定されており、LSTM がステートフルであることを示しています。 Batch_size は 1 に設定されます。これは、モデルが一度に 1 つのシーケンスを処理することを意味します。モデルはトレーニング実行間でセル メモリ値を保持するため、データ内の長期的な依存関係を学習できます。

時間ステップと特徴

  • 時間ステップ: 入力データのタイム ステップ数は、考慮されているシーケンスの長さを表します。画像では、ピンクのボックスはシーケンスの長さを表します。
  • 特徴: 各タイム ステップには、LSTM で使用される値である多数の入力特徴があります。画像では、特徴の数は、各ピンクのボックス内の緑色のボックスの数です。

各時間ステップに複数の入力特徴 (株価など) がある多変量時系列を使用している場合)、特徴の数は 1 より大きくなります。

LSTM アーキテクチャを理解する

提供した Keras LSTM 実装4 つのユニットと True の戻りシーケンスを持つ単一の LSTM 層があります。これは、LSTM が入力タイム ステップごとに長さ 4 のシーケンスを出力することを意味します。

その後、モデルは平均二乗誤差損失関数と Adam オプティマイザーを使用してコンパイルされます。トレーニング ループは、バッチ サイズ 1 で 100 エポック繰り返します。

この LSTM モデルは、前のタイム ステップに基づいて次のタイム ステップを予測するように設計されていることに注意することが重要です。ただし、出力層や損失関数を変更することで、シーケンス分類や言語モデリングなどの他のタスク用にモデルを変更できます。

以上がKeras LSTM で使用するために時系列データを再形成するにはどうすればよいですか? また、ステートフル LSTM とパラメータ「タイム ステップ」および「特徴」の重要性は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート