ホームページ  >  記事  >  バックエンド開発  >  少量のコードで大量の時系列特徴を抽出する

少量のコードで大量の時系列特徴を抽出する

王林
王林転載
2023-04-25 14:40:081261ブラウズ

従来の機械学習アルゴリズムでは、時系列データの時間的順序を捉えることができません。データ サイエンティストは、関連する特徴量エンジニアリングを実行して、データの重要な特性をいくつかの指標に取り込む必要があります。多数の時系列特徴を生成し、それらから関連する特徴を抽出することは、時間のかかる退屈な作業です。

几行 Python 代码就可以提取数百个时间序列特征

#Python の tsfresh パッケージは、時系列データの何百もの標準的な共通特徴を生成できます。この記事では、tsfresh パッケージの使用方法について詳しく説明します。

tsfresh は、数百もの関連する時系列特徴を生成できるオープン ソース パッケージです。 tsfresh から生成された機能を使用して、分類、予測、外れ値検出のユースケースを解決できます。

tsfresh パッケージは、時系列データに対して特徴エンジニアリングを実行するためのさまざまな機能を提供します。

  • 特徴生成
  • 特徴選択
  • および Bigデータ互換性

tsfresh のインストールも非常に簡単です。pip と conda の公式インストール方法が提供されています:

pip install -U tsfresh# orconda install -c conda-forge tsfresh

1. 機能生成

tsfresh パッケージ1 つの時系列変数から 750 以上の関連特徴を生成できる自動特徴生成 API。以下を含む幅広い範囲の特徴が生成されます。

  • 記述統計 (平均、最大、相関など)
  • 物理ベースの非線形性と複雑性のメトリクス
  • デジタル信号処理関連関数
  • 履歴圧縮機能

tsfresh.extract_features() 関数を使用すると、1 つの時系列変数に対して複数のドメインから 789 個の特徴を生成できます。

import pandas as pdfrom tsfresh import select_features# Read the time-series datadf = pd.read_excel("train.xlsx", parse_dates=['date']).set_index('date')# automated feature generationfeatures = tsfresh.extract_features(df, column_, column_sort="date")

機能が多すぎるため、すべての機能の詳細な紹介については公式ドキュメントを参照してください。

2. 特徴選択

tsfresh パッケージは、ターゲット変数の関連する特徴を識別するために使用できる、仮説検定に基づく特徴選択の実装も提供します。無関係な特徴の数を制限するために、tsfresh にはフレッシュ アルゴリズムが含まれています (フレッシュはスケーラブルな仮説テストに基づく特徴抽出を表します)。

tsfresh.select_features() 関数ユーザーは機能選択を実装できます。

3. ビッグデータとの互換性

大量の時系列データがある場合。 tsfresh は、特徴の生成/抽出と、大量のデータに対する特徴選択の実装を拡張するための API も提供します。

  • マルチスレッド処理: デフォルトの tsfresh パッケージは、特徴の生成/抽出と特徴の選択を並列化できます。複数のコアで実装します。
  • 分散フレームワーク: tsfresh は、特徴計算を複数のマシンに分散して計算を高速化する独自の分散フレームワークも実装しています。
  • Spark との互換性: tsfresh は、Spark または Dask を使用して非常に大きなデータを処理することもできます。

最後に、tsfresh は、数行の Python コードで時系列特徴に関連する特徴を生成して選択できます。時間ベースのデータ サンプルの複数のドメインから、実際にテストされた 750 個の特徴を自動的に抽出して選択します。これにより、データ サイエンティストが特徴量エンジニアリングで無駄にしている作業時間が大幅に削減されます。

また、時系列データは非常に大きいため、tsfresh はマルチスレッドを使用し、単一のマシンでは処理できない大きなデータ サンプルを処理するために dask と Spark をサポートしています。

以上が少量のコードで大量の時系列特徴を抽出するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。