時系列モデルを使用した予測 (Forecast Using Time Series Model) (GeoAI)

サマリー

[時系列予測モデルのトレーニング (Train Time Series Forecasting Model)] でトレーニングされたディープ ラーニング ベースの時系列予測モデルを使用して時空間キューブの各位置の値を予測します。

使用法

パラメーター

ラベル説明データ タイプ
入力時系列データ

将来の時間ステップを予測するために使用する変数を含む netCDF キューブ。 このファイルは、.nc ファイル拡張子が付加され、[ポイントの集約による時空間キューブの作成 (Create Space Time Cube By Aggregating Points)] ツール、[定義済みのロケーションから時空間キューブを作成 (Create Space Time Cube From Defined Locations)] ツール、または [多次元ラスター レイヤーから時空間キューブを作成 (Create Space Time Cube from Multidimensional Raster Layer)] ツールで作成されている必要があります。

File
モデル定義

予測の実行に使用されるトレーニング済みディープ ラーニング モデル ファイル (.dlpk または .emd)。 [時系列予測モデルのトレーニング (Train Time Series Forecasting Model)] ツールを使用してモデルをトレーニングできます。

File
出力フィーチャ

時空間キューブ内のすべてのロケーションの出力フィーチャクラスで、予測される値がフィールドとして格納されます。 レイヤーには最終的な時間ステップの予測が表示され、時系列と、各場所の予測を示すポップアップ チャートが含まれます。

Feature Class
予測する時間ステップ数

解析変数の予測に使用される、時間ステップ数を指定する正の整数。 デフォルト値は 2 です。 この値は、ワンステップ予測では、入力時空間キューブの合計時間ステップ数の 50% より大きくできません。複数ステップ予測では、[時系列予測モデルのトレーニング (Train Time Series Forecasting Model)] ツールの [シーケンス長] パラメーター値の 50% より大きくできません。

Long
説明変数の照合
(オプション)

予測セットからトレーニング セットへのフィールド名のマッピング。 このパラメーターは、トレーニング セットと予測セットのフィールド名が異なる場合に使用します。 値は、入力時系列データのフィールド名と一致する予測データセット内のフィールド名です。

Value Table
出力キューブ
(オプション)

入力時空間キューブの値を含み、予測された時間ステップが追加された、出力時空間キューブ (.nc ファイル)。 [時空間キューブを 3D で視覚化 (Visualize Space Time Cube in 3D)] ツールを使用して、観測および予測されたすべての値を同時に参照できます。

File
外れ値オプション
(オプション)

統計的に有意な時系列外れ値が特定されるかどうかを指定します。

  • なし外れ値は特定されません。 これがデフォルトです。
  • 外れ値の特定一般化 ESD 検定を使用して、外れ値が特定されます。
String
信頼度
(オプション)

時系列外れ値のテストで使用する信頼度を指定します。

  • 90%テストの信頼度は 90 パーセントになります。 これがデフォルトです。
  • 95%テストの信頼度は 95 パーセントになります。
  • 99%テストの信頼度は 99 パーセントになります。
String
外れ値の最大数

各場所で外れ値を宣言できる時間ステップの最大数。 デフォルト値は、入力時空間キューブの時間ステップ数の 5 パーセント (端数切り捨て) に相当します (1 以上の値が必ず使用されます)。 この値は、時間ステップ数の 20 パーセントを超えることはできません。

Long

arcpy.geoai.ForecastUsingTimeSeriesModel(in_cube, in_model_definition, out_features, number_of_timesteps_to_forecast, {match_explanatory_variables}, {out_cube}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers)
名前説明データ タイプ
in_cube

将来の時間ステップを予測するために使用する変数を含む netCDF キューブ。 このファイルは、.nc ファイル拡張子が付加され、[ポイントの集約による時空間キューブの作成 (Create Space Time Cube By Aggregating Points)] ツール、[定義済みのロケーションから時空間キューブを作成 (Create Space Time Cube From Defined Locations)] ツール、または [多次元ラスター レイヤーから時空間キューブを作成 (Create Space Time Cube from Multidimensional Raster Layer)] ツールで作成されている必要があります。

File
in_model_definition

予測の実行に使用されるトレーニング済みディープ ラーニング モデル ファイル (.dlpk または .emd)。 [時系列予測モデルのトレーニング (Train Time Series Forecasting Model)] ツールを使用してモデルをトレーニングできます。

File
out_features

時空間キューブ内のすべてのロケーションの出力フィーチャクラスで、予測される値がフィールドとして格納されます。 レイヤーには最終的な時間ステップの予測が表示され、時系列と、各場所の予測を示すポップアップ チャートが含まれます。

Feature Class
number_of_timesteps_to_forecast

解析変数の予測に使用される、時間ステップ数を指定する正の整数。 デフォルト値は 2 です。 この値は、ワンステップ予測では、入力時空間キューブの合計時間ステップ数の 50% より大きくできません。複数ステップ予測では、[時系列予測モデルのトレーニング (Train Time Series Forecasting Model)] ツールの sequence_length パラメーター値の 50% より大きくできません。

Long
match_explanatory_variables
[match_explanatory_variables,...]
(オプション)

予測セットからトレーニング セットへのフィールド名のマッピング。 このパラメーターは、トレーニング セットと予測セットのフィールド名が異なる場合に使用します。 値は、入力時系列データのフィールド名と一致する予測データセット内のフィールド名です。

Value Table
out_cube
(オプション)

入力時空間キューブの値を含み、予測された時間ステップが追加された、出力時空間キューブ (.nc ファイル)。 [時空間キューブを 3D で視覚化 (Visualize Space Time Cube in 3D)] ツールを使用して、観測および予測されたすべての値を同時に参照できます。

File
outlier_option
(オプション)

統計的に有意な時系列外れ値が特定されるかどうかを指定します。

  • NONE外れ値は特定されません。 これがデフォルトです。
  • IDENTIFY一般化 ESD 検定を使用して、外れ値が特定されます。
String
level_of_confidence
(オプション)

時系列外れ値のテストで使用する信頼度を指定します。

  • 90%テストの信頼度は 90 パーセントになります。 これがデフォルトです。
  • 95%テストの信頼度は 95 パーセントになります。
  • 99%テストの信頼度は 99 パーセントになります。
String
maximum_number_of_outliers

各場所で外れ値を宣言できる時間ステップの最大数。 デフォルト値は、入力時空間キューブの時間ステップ数の 5 パーセント (端数切り捨て) に相当します (1 以上の値が必ず使用されます)。 この値は、時間ステップ数の 20 パーセントを超えることはできません。

Long

コードのサンプル

ForecastUsingTimeSeriesModel の例 (スタンドアロン スクリプト)

この例では、ForecastUsingTimeSeriesModel 関数を使用する方法を示します。

# Description: Forecast a time series model on space-time cube data with the trained model 
#              obtained by the TrainTimeSeriesForecastingModel function.

# Import system modules
import arcpy
import os

# Set local variables
datapath  = "path_to_data_for_forecasting" 
out_path = "path_to_gdb_for_forecasting"

model_path = os.path.join(out_path, "model.dlpk")
in_cube = os.path.join(datapath, "test_data")
output_features = os.path.join(out_path, "forecasted_feature.gdb", "forecasted")

# Run Forecast Using Time Series Model 
r = arcpy.geoai.ForecastUsingTimeSeriesModel(
    in_cube,
    model_path,
    output_features,
    number_of_timesteps_to_forecast=2,
    match_explanatory_variables=None
)