ForecastingPipelineWrapperBase クラス
予測モデル ラッパーの基本クラス。
- 継承
-
ForecastingPipelineWrapperBase
コンストラクター
ForecastingPipelineWrapperBase(ts_transformer: TimeSeriesTransformer | None = None, y_transformer: Pipeline | None = None, metadata: Dict[str, Any] | None = None)
パラメーター
- ts_transformer
- y_transformer
- metadata
メソッド
align_output_to_input |
変換された出力データ フレームを入力データ フレームに合わせて配置します。 注: 変換は参照によって変更され、コピーは作成されません。 :param X_input: 入力データ フレーム。 :param transformed: 変換後のデータ フレーム。 :returns: 元のインデックスを持つ変換されたデータ フレームで、X_input のように並べ替えられたもの。 |
fit |
入力 X と y を使用してモデルを適合させます。 |
forecast |
データ フレーム X_pred に対して予測を行います。 |
forecast_quantiles |
フィット済みパイプラインから予測と分位点を取得します。 |
is_grain_dropped |
粒度がドロップされる場合は true を返します。 |
preaggregate_data_set |
予測データ セットを集計します。 メモ: このメソッドでは、データ セットが集計される保証はありません。 これは、データセットに重複したタイム スタンプが含まれている場合、またはグリッド外の日付が含まれている場合にのみ発生します。 :param df: 集計するデータセット。 :p atam y: ターゲット値。 :p is_training_set: true の場合、データはトレーニング セットを表します。 :return: 集約が不要な場合は、集約されたデータセットまたはそのままのデータセット。 |
preprocess_pred_X_y |
予測 X と y を前処理します。 |
rolling_evaluation |
指定されたテスト セットに対するローリング起点に対して予測を生成します。 各イテレーションでは、現在の起点に関して次の "max_horizon" 期間の予測を行い、次に起点をホライズンの期間だけ進めます。 各予測の予測コンテキストは、予測器が現在の起点時刻より前の実際のターゲット値を使用してラグ機能を構築するように設定されます。 この関数は、テスト セットの実績と結合されたローリング予測の、連結されたデータ フレームを返します。 このメソッドは非推奨であり、今後のリリースで削除される予定です。 代わりに rolling_forecast() を使用してください。 |
rolling_forecast |
テスト セット上のローリング オリジンに対して予測を生成します。 各イテレーションでは、現在の原点までの情報を使用して、最大期間の予測を行い、"ステップ" 期間で配信元を進めます。 各予測の予測コンテキストは、予測者がルックバック特徴を構築するために現在の開始時刻より前の実際のターゲット値を使用するように設定されます。 この関数は、テスト セットから実績値と結合されたローリング予測の DataFrame を返します。 返されるデータ フレーム内の列は次のとおりです。
|
short_grain_handling |
モデルに対して短いグレイン処理または存在しないグレイン処理が有効になっている場合は true を返します。 |
static_preaggregate_data_set |
予測データ セットを集計します。 メモ: このメソッドでは、データ セットが集計される保証はありません。 これは、データセットに重複したタイム スタンプが含まれている場合、またはグリッド外の日付が含まれている場合にのみ発生します。 :param ts_transformer: トレーニングに使用される時系列トランフォーマー。 :param time_column_name: 時間列の名前。 :param grain_column_names: 粒度列名の一覧。 :param df: 集計するデータセット。 :p atam y: ターゲット値。 :p is_training_set: true の場合、データはトレーニング セットを表します。 :return: 集約が不要な場合は、集約されたデータセットまたはそのままのデータセット。 |
align_output_to_input
変換された出力データ フレームを入力データ フレームに合わせて配置します。
注: 変換は参照によって変更され、コピーは作成されません。 :param X_input: 入力データ フレーム。 :param transformed: 変換後のデータ フレーム。 :returns: 元のインデックスを持つ変換されたデータ フレームで、X_input のように並べ替えられたもの。
align_output_to_input(X_input: DataFrame, transformed: DataFrame) -> DataFrame
パラメーター
- X_input
- transformed
fit
入力 X と y を使用してモデルを適合させます。
fit(X: DataFrame, y: ndarray) -> ForecastingPipelineWrapperBase
パラメーター
- X
X データを入力します。
- y
y データを入力します。
forecast
データ フレーム X_pred に対して予測を行います。
forecast(X_pred: DataFrame | None = None, y_pred: ndarray | DataFrame | None = None, forecast_destination: Timestamp | None = None, ignore_data_errors: bool = False) -> Tuple[ndarray, DataFrame]
パラメーター
- X_pred
X_past と X_future を時間的に連続して組み合わせた予測データフレーム。 X_pred の空の値が代入されます。
- y_pred
y_past の確定値と Y_future の欠落値を組み合わせたターゲット値。 None の場合、すべての X_pred に対して予測が行われます。
- forecast_destination
- <xref:pandas.Timestamp>
Forecast_destination: タイム スタンプ値。 予測は、すべての粒度に対して forecast_destination 時刻まで実行されます。 ディクショナリ入力 { grain -> timestamp } は受け入れられません。 forecast_destination が指定されていない場合は、すべての粒度に対して X_pred で最後に発生した時刻が代入されます。
戻り値
Y_pred。Y_future に対応するサブフレームにもそれぞれの予測が入力されます。 Y_past の欠損値は、代入によって埋められます。
の戻り値の型 :
forecast_quantiles
フィット済みパイプラインから予測と分位点を取得します。
forecast_quantiles(X_pred: DataFrame | None = None, y_pred: ndarray | DataFrame | None = None, quantiles: float | List[float] | None = None, forecast_destination: Timestamp | None = None, ignore_data_errors: bool = False) -> DataFrame
パラメーター
- X_pred
X_past と X_future を時間的に連続して組み合わせた予測データフレーム。 X_pred の空の値が代入されます。
- y_pred
y_past の確定値と Y_future の欠落値を組み合わせたターゲット値。 None の場合、すべての X_pred に対して予測が行われます。
- forecast_destination
- <xref:pandas.Timestamp>
Forecast_destination: タイム スタンプ値。 予測は、すべての粒度に対して forecast_destination 時刻まで実行されます。 ディクショナリ入力 { grain -> timestamp } は受け入れられません。 forecast_destination が指定されていない場合は、すべての粒度に対して X_pred で最後に発生した時刻が代入されます。
戻り値
要求された分位点で行われた列と予測を含むデータフレーム。
is_grain_dropped
粒度がドロップされる場合は true を返します。
is_grain_dropped(grain: Tuple[str] | str | List[str]) -> bool
パラメーター
- grain
ドロップされるかどうかをテストする粒度。
戻り値
粒度がドロップされる場合は True です。
preaggregate_data_set
予測データ セットを集計します。
メモ: このメソッドでは、データ セットが集計される保証はありません。 これは、データセットに重複したタイム スタンプが含まれている場合、またはグリッド外の日付が含まれている場合にのみ発生します。 :param df: 集計するデータセット。 :p atam y: ターゲット値。 :p is_training_set: true の場合、データはトレーニング セットを表します。 :return: 集約が不要な場合は、集約されたデータセットまたはそのままのデータセット。
preaggregate_data_set(df: DataFrame, y: ndarray | None = None, is_training_set: bool = False) -> Tuple[DataFrame, ndarray | None]
パラメーター
- df
- y
- is_training_set
preprocess_pred_X_y
予測 X と y を前処理します。
preprocess_pred_X_y(X_pred: DataFrame | None = None, y_pred: ndarray | DataFrame | None = None, forecast_destination: Timestamp | None = None) -> Tuple[DataFrame, DataFrame | ndarray, Dict[str, Any]]
パラメーター
- X_pred
- y_pred
- forecast_destination
rolling_evaluation
指定されたテスト セットに対するローリング起点に対して予測を生成します。
各イテレーションでは、現在の起点に関して次の "max_horizon" 期間の予測を行い、次に起点をホライズンの期間だけ進めます。 各予測の予測コンテキストは、予測器が現在の起点時刻より前の実際のターゲット値を使用してラグ機能を構築するように設定されます。
この関数は、テスト セットの実績と結合されたローリング予測の、連結されたデータ フレームを返します。
このメソッドは非推奨であり、今後のリリースで削除される予定です。 代わりに rolling_forecast() を使用してください。
rolling_evaluation(X_pred: DataFrame, y_pred: DataFrame | ndarray, ignore_data_errors: bool = False) -> Tuple[ndarray, DataFrame]
パラメーター
- X_pred
X_past と X_future を時間的に連続して組み合わせた予測データフレーム。 X_pred の空の値が代入されます。
- y_pred
X_pred に対応するターゲット値。
- ignore_data_errors
ユーザー データのエラーを無視します。
戻り値
Y_pred。Y_future に対応するサブフレームにもそれぞれの予測が入力されます。 Y_past の欠損値は、代入によって埋められます。
の戻り値の型 :
rolling_forecast
テスト セット上のローリング オリジンに対して予測を生成します。
各イテレーションでは、現在の原点までの情報を使用して、最大期間の予測を行い、"ステップ" 期間で配信元を進めます。 各予測の予測コンテキストは、予測者がルックバック特徴を構築するために現在の開始時刻より前の実際のターゲット値を使用するように設定されます。
この関数は、テスト セットから実績値と結合されたローリング予測の DataFrame を返します。 返されるデータ フレーム内の列は次のとおりです。
時系列 ID 列 (省略可能)。 ユーザーが指定すると、指定された列名が使用されます。
各行の配信元の時刻を示す予測元列。
列名: オブジェクト メンバー変数として格納forecast_origin_column_name。
時間列。 ユーザーが指定した列名が使用されます。
[予測値] 列。 列名: オブジェクト メンバーとして格納forecast_column_name
[実際の値] 列。 列名: オブジェクト メンバーとして格納actual_column_name
rolling_forecast(X_pred: DataFrame, y_pred: ndarray, step: int = 1, ignore_data_errors: bool = False) -> DataFrame
パラメーター
- X_pred
- <xref:pd.DataFrame>
予測データ フレーム
- y_pred
- <xref:np.ndarray>
X_predの行に対応するターゲット値
戻り値
ローリング予測のデータ フレーム
の戻り値の型 :
short_grain_handling
モデルに対して短いグレイン処理または存在しないグレイン処理が有効になっている場合は true を返します。
short_grain_handling() -> bool
static_preaggregate_data_set
予測データ セットを集計します。
メモ: このメソッドでは、データ セットが集計される保証はありません。 これは、データセットに重複したタイム スタンプが含まれている場合、またはグリッド外の日付が含まれている場合にのみ発生します。 :param ts_transformer: トレーニングに使用される時系列トランフォーマー。 :param time_column_name: 時間列の名前。 :param grain_column_names: 粒度列名の一覧。 :param df: 集計するデータセット。 :p atam y: ターゲット値。 :p is_training_set: true の場合、データはトレーニング セットを表します。 :return: 集約が不要な場合は、集約されたデータセットまたはそのままのデータセット。
static static_preaggregate_data_set(ts_transformer: TimeSeriesTransformer, time_column_name: str, grain_column_names: List[str], df: DataFrame, y: ndarray | None = None, is_training_set: bool = False) -> Tuple[DataFrame, ndarray | None]
パラメーター
- ts_transformer
- time_column_name
- grain_column_names
- df
- y
- is_training_set
属性
actual_column_name
forecast_column_name
forecast_origin_column_name
grain_column_list
max_horizon
モデルで使用される最大ホライズンを返します。
origin_col_name
元の列名を返します。
target_lags
ターゲットのラグを返します (ある場合)。
target_rolling_window_size
ローリング ウィンドウのサイズを返します。
time_column_name
時刻列の名前を返します。
user_target_column_name
y_max_dict
時系列 ID で最大ターゲット値を持つディクショナリを返します
y_min_dict
時系列 ID で最小のターゲット値を持つディクショナリを返します
FATAL_NO_TARGET_IMPUTER
FATAL_NO_TARGET_IMPUTER = 'No target imputers were found in TimeSeriesTransformer.'
FATAL_NO_TS_TRANSFORM
FATAL_NO_TS_TRANSFORM = 'The time series transform is absent. Please try training model again.'
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示