Freigeben über


ForecastingPipelineWrapperBase Klasse

Basisklasse für den Wrapper des Prognosemodells.

Vererbung
ForecastingPipelineWrapperBase

Konstruktor

ForecastingPipelineWrapperBase(ts_transformer: TimeSeriesTransformer | None = None, y_transformer: Pipeline | None = None, metadata: Dict[str, Any] | None = None)

Parameter

Name Beschreibung
ts_transformer
Standardwert: None
y_transformer
Standardwert: None
metadata
Standardwert: None

Methoden

align_output_to_input

Ausrichten des transformierten Ausgabedatenrahmens mit dem Eingabedatenrahmen.

Hinweis: Der transformierte Datenrahmen wird durch Verweis geändert. Es wird keine Kopie erstellt. :param X_input: Der Eingabedatenrahmen. :param transformed: Der Datenrahmen nach der Transformation. :returns: Der transformierte Datenrahmen mit dem ursprünglichen Index, aber wie in „X_input“ sortiert.

fit

Passen Sie das Modell mit den Eingaben X und y an.

forecast

Durchführen der Vorhersage für den Datenrahmen „X_pred“.

forecast_quantiles

Abrufen der Vorhersage und der Quantile aus der angepassten Pipeline.

is_grain_dropped

Gibt TRUE zurück, wenn das Aggregationsintervall verworfen wird.

preaggregate_data_set

Aggregiert das Vorhersagedataset.

Hinweis: Diese Methode garantiert nicht, dass das Dataset aggregiert wird. Dies erfolgt nur, wenn das Dataset die doppelten Zeitstempel oder Datumsangaben außerhalb des Rasters enthält. :param df: das zu aggregierte Dataset. :param y: die Zielwerte. :param is_training_set: Bei TRUE stellen die Daten den Trainingssatz dar. :return: Das aggregierte oder intakte Dataset, wenn keine Aggregation erforderlich ist.

preprocess_pred_X_y

Präverarbeitung der Vorhersage X und y.

rolling_evaluation

Erzeugen von Vorhersagen für einen rollierenden Ursprung über den angegebenen Testsatz.

Jede Iteration trifft eine Vorhersage für die nächsten „max_horizon“-Zeiträume in Bezug auf den aktuellen Ursprung und erhöht dann den Ursprung um die Zeitdauer des Zeithorizonts. Der Vorhersagekontext für jede Vorhersage wird so festgelegt, dass bei der Vorhersage zum Erstellen von Verzögerungsfeatures die tatsächlichen Zielwerte vor der aktuellen Ursprungszeit verwendet werden.

Diese Funktion gibt einen verketteten Datenrahmen von rollierenden Vorhersagen zurück, die mit den tatsächlichen Daten aus dem Testsatz verknüpft sind.

Diese Methode ist veraltet und wird in einer zukünftigen Version entfernt. Verwenden Sie stattdessen rolling_forecast().

rolling_forecast

Erstellen Sie Vorhersagen für einen rollierenden Ursprung über einen Testsatz.

Jede Iteration erstellt eine Prognose der maximalen Horizontperioden im Voraus mithilfe von Informationen bis zum aktuellen Ursprung und erhöht dann den Ursprung durch "Schritt"-Zeitperioden. Der Vorhersagekontext für jede Vorhersage wird so festgelegt, dass der Forecaster die tatsächlichen Zielwerte vor der aktuellen Ursprungszeit zum Erstellen von Lookbackfeatures verwendet.

Diese Funktion gibt einen DataFrame mit rollierenden Vorhersagen zurück, die mit den Tatsächlichen aus dem Testsatz verknüpft sind. Die Spalten im zurückgegebenen Datenrahmen sind wie folgt:

  • Timeseries-ID-Spalten (Optional). Wenn sie vom Benutzer angegeben werden, werden die angegebenen Spaltennamen verwendet.

  • Vorhersage der Ursprungsspalte, die die Ursprungszeit für jede Zeile angibt.

    Spaltenname: Wird als Objektmembervariable forecast_origin_column_name gespeichert.

  • Zeitspalte. Der vom Benutzer angegebene Spaltenname wird verwendet.

  • Spalte "Prognosewerte". Spaltenname: Gespeichert als Objektmember forecast_column_name

  • Spalte "Tatsächliche Werte". Spaltenname: Gespeichert als Objektmember actual_column_name

short_grain_handling

Gibt TRUE zurück, wenn die Behandlung kurzer oder fehlender Aggregationsintervalle für das Modell aktiviert ist.

static_preaggregate_data_set

Aggregiert das Vorhersagedataset.

Hinweis: Diese Methode garantiert nicht, dass das Dataset aggregiert wird. Dies erfolgt nur, wenn das Dataset die doppelten Zeitstempel oder Datumsangaben außerhalb des Rasters enthält. :param ts_transformer: der für das Training verwendete Zeitreihentransformator. :param time_column_name: Name der Zeitspalte. :param grain_column_names: Liste der Spaltennamen im Aggregationsintervall. :param df: das zu aggregierte Dataset. :param y: die Zielwerte. :param is_training_set: Bei TRUE stellen die Daten den Trainingssatz dar. :return: Das aggregierte oder intakte Dataset, wenn keine Aggregation erforderlich ist.

align_output_to_input

Ausrichten des transformierten Ausgabedatenrahmens mit dem Eingabedatenrahmen.

Hinweis: Der transformierte Datenrahmen wird durch Verweis geändert. Es wird keine Kopie erstellt. :param X_input: Der Eingabedatenrahmen. :param transformed: Der Datenrahmen nach der Transformation. :returns: Der transformierte Datenrahmen mit dem ursprünglichen Index, aber wie in „X_input“ sortiert.

align_output_to_input(X_input: DataFrame, transformed: DataFrame) -> DataFrame

Parameter

Name Beschreibung
X_input
Erforderlich
transformed
Erforderlich

fit

Passen Sie das Modell mit den Eingaben X und y an.

fit(X: DataFrame, y: ndarray) -> ForecastingPipelineWrapperBase

Parameter

Name Beschreibung
X
Erforderlich

Geben Sie X-Daten ein.

y
Erforderlich

Geben Sie y-Daten ein.

forecast

Durchführen der Vorhersage für den Datenrahmen „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]

Parameter

Name Beschreibung
X_pred

Der Vorhersagedatenrahmen, der „X_past“ und „X_future“ in einem zeitlichen Zusammenhang kombiniert. Leere Werte in „X_pred“ werden imputiert.

Standardwert: None
y_pred

Der Zielwert, der eindeutige Werte für „y_past“ und fehlende Werte für „Y_future“ kombiniert. Bei „None“ werden Vorhersagen für jeden Wert in „X_pred“ getroffen.

Standardwert: None
forecast_destination
<xref:pandas.Timestamp>

Forecast_destination: ein Zeitstempelwert. Vorhersagen werden bis zur Zeit von forecast_destination für alle Aggregationsintervalle durchgeführt. Eine Wörterbucheingabe vom Typ { grain -> timestamp } wird nicht akzeptiert. Wenn „forecast_destination“ nicht angegeben wird, wird der letzte Zeitpunkt in „X_pred“ für jedes Aggregationsintervall angenommen.

Standardwert: None
ignore_data_errors

Ignorieren von Fehlern in Benutzerdaten.

Standardwert: False

Gibt zurück

Typ Beschreibung

„Y_pred“, wobei der Teilrahmen, der „Y_future“ entspricht, mit den jeweiligen Vorhersagen aufgefüllt wird. Alle fehlenden Werte in „Y_past“ werden vom Imputer ergänzt.

forecast_quantiles

Abrufen der Vorhersage und der Quantile aus der angepassten Pipeline.

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

Parameter

Name Beschreibung
X_pred

Der Vorhersagedatenrahmen, der „X_past“ und „X_future“ in einem zeitlichen Zusammenhang kombiniert. Leere Werte in „X_pred“ werden imputiert.

Standardwert: None
y_pred

Der Zielwert, der eindeutige Werte für „y_past“ und fehlende Werte für „Y_future“ kombiniert. Bei „None“ werden Vorhersagen für jeden Wert in „X_pred“ getroffen.

Standardwert: None
quantiles
float oder list of <xref:floats>

Die Liste der Quantile, für die wir vorhersagen möchten.

Standardwert: None
forecast_destination
<xref:pandas.Timestamp>

Forecast_destination: ein Zeitstempelwert. Vorhersagen werden bis zur Zeit von forecast_destination für alle Aggregationsintervalle durchgeführt. Eine Wörterbucheingabe vom Typ { grain -> timestamp } wird nicht akzeptiert. Wenn „forecast_destination“ nicht angegeben wird, wird der letzte Zeitpunkt in „X_pred“ für jedes Aggregationsintervall angenommen.

Standardwert: None
ignore_data_errors

Ignorieren von Fehlern in Benutzerdaten.

Standardwert: False

Gibt zurück

Typ Beschreibung

Ein Dataframe, der die Spalten und Vorhersagen enthält, die an den angeforderten Quanteln vorgenommen wurden.

is_grain_dropped

Gibt TRUE zurück, wenn das Aggregationsintervall verworfen wird.

is_grain_dropped(grain: Tuple[str] | str | List[str]) -> bool

Parameter

Name Beschreibung
grain
Erforderlich

Das Aggregationsintervall, für das getestet werden soll, ob es verworfen wird.

Gibt zurück

Typ Beschreibung

„True“, wenn das Aggregationsintervall verworfen wird.

preaggregate_data_set

Aggregiert das Vorhersagedataset.

Hinweis: Diese Methode garantiert nicht, dass das Dataset aggregiert wird. Dies erfolgt nur, wenn das Dataset die doppelten Zeitstempel oder Datumsangaben außerhalb des Rasters enthält. :param df: das zu aggregierte Dataset. :param y: die Zielwerte. :param is_training_set: Bei TRUE stellen die Daten den Trainingssatz dar. :return: Das aggregierte oder intakte Dataset, wenn keine Aggregation erforderlich ist.

preaggregate_data_set(df: DataFrame, y: ndarray | None = None, is_training_set: bool = False) -> Tuple[DataFrame, ndarray | None]

Parameter

Name Beschreibung
df
Erforderlich
y
Standardwert: None
is_training_set
Standardwert: False

preprocess_pred_X_y

Präverarbeitung der Vorhersage X und 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]]

Parameter

Name Beschreibung
X_pred
Standardwert: None
y_pred
Standardwert: None
forecast_destination
Standardwert: None

rolling_evaluation

Erzeugen von Vorhersagen für einen rollierenden Ursprung über den angegebenen Testsatz.

Jede Iteration trifft eine Vorhersage für die nächsten „max_horizon“-Zeiträume in Bezug auf den aktuellen Ursprung und erhöht dann den Ursprung um die Zeitdauer des Zeithorizonts. Der Vorhersagekontext für jede Vorhersage wird so festgelegt, dass bei der Vorhersage zum Erstellen von Verzögerungsfeatures die tatsächlichen Zielwerte vor der aktuellen Ursprungszeit verwendet werden.

Diese Funktion gibt einen verketteten Datenrahmen von rollierenden Vorhersagen zurück, die mit den tatsächlichen Daten aus dem Testsatz verknüpft sind.

Diese Methode ist veraltet und wird in einer zukünftigen Version entfernt. Verwenden Sie stattdessen rolling_forecast().

rolling_evaluation(X_pred: DataFrame, y_pred: DataFrame | ndarray, ignore_data_errors: bool = False) -> Tuple[ndarray, DataFrame]

Parameter

Name Beschreibung
X_pred
Erforderlich

Der Vorhersagedatenrahmen, der „X_past“ und „X_future“ in einem zeitlichen Zusammenhang kombiniert. Leere Werte in „X_pred“ werden imputiert.

y_pred
Erforderlich

Der Zielwert, der „X_pred“ entspricht.

ignore_data_errors

Ignorieren von Fehlern in Benutzerdaten.

Standardwert: False

Gibt zurück

Typ Beschreibung

„Y_pred“, wobei der Teilrahmen, der „Y_future“ entspricht, mit den jeweiligen Vorhersagen aufgefüllt wird. Alle fehlenden Werte in „Y_past“ werden vom Imputer ergänzt.

rolling_forecast

Erstellen Sie Vorhersagen für einen rollierenden Ursprung über einen Testsatz.

Jede Iteration erstellt eine Prognose der maximalen Horizontperioden im Voraus mithilfe von Informationen bis zum aktuellen Ursprung und erhöht dann den Ursprung durch "Schritt"-Zeitperioden. Der Vorhersagekontext für jede Vorhersage wird so festgelegt, dass der Forecaster die tatsächlichen Zielwerte vor der aktuellen Ursprungszeit zum Erstellen von Lookbackfeatures verwendet.

Diese Funktion gibt einen DataFrame mit rollierenden Vorhersagen zurück, die mit den Tatsächlichen aus dem Testsatz verknüpft sind. Die Spalten im zurückgegebenen Datenrahmen sind wie folgt:

  • Timeseries-ID-Spalten (Optional). Wenn sie vom Benutzer angegeben werden, werden die angegebenen Spaltennamen verwendet.

  • Vorhersage der Ursprungsspalte, die die Ursprungszeit für jede Zeile angibt.

    Spaltenname: Wird als Objektmembervariable forecast_origin_column_name gespeichert.

  • Zeitspalte. Der vom Benutzer angegebene Spaltenname wird verwendet.

  • Spalte "Prognosewerte". Spaltenname: Gespeichert als Objektmember forecast_column_name

  • Spalte "Tatsächliche Werte". Spaltenname: Gespeichert als Objektmember actual_column_name

rolling_forecast(X_pred: DataFrame, y_pred: ndarray, step: int = 1, ignore_data_errors: bool = False) -> DataFrame

Parameter

Name Beschreibung
X_pred
Erforderlich
<xref:pd.DataFrame>

Vorhersagedatenrahmen

y_pred
Erforderlich
<xref:np.ndarray>

Zielwerte, die Zeilen in X_pred entsprechen

step
int

Anzahl der Zeiträume, die das Prognosefenster in jeder Iteration voranbringen sollen.

Standardwert: 1
ignore_data_errors

Ignorieren von Fehlern in Benutzerdaten.

Standardwert: False

Gibt zurück

Typ Beschreibung
<xref:pd.DataFrame>

Datenrahmen rollierender Vorhersagen

short_grain_handling

Gibt TRUE zurück, wenn die Behandlung kurzer oder fehlender Aggregationsintervalle für das Modell aktiviert ist.

short_grain_handling() -> bool

static_preaggregate_data_set

Aggregiert das Vorhersagedataset.

Hinweis: Diese Methode garantiert nicht, dass das Dataset aggregiert wird. Dies erfolgt nur, wenn das Dataset die doppelten Zeitstempel oder Datumsangaben außerhalb des Rasters enthält. :param ts_transformer: der für das Training verwendete Zeitreihentransformator. :param time_column_name: Name der Zeitspalte. :param grain_column_names: Liste der Spaltennamen im Aggregationsintervall. :param df: das zu aggregierte Dataset. :param y: die Zielwerte. :param is_training_set: Bei TRUE stellen die Daten den Trainingssatz dar. :return: Das aggregierte oder intakte Dataset, wenn keine Aggregation erforderlich ist.

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]

Parameter

Name Beschreibung
ts_transformer
Erforderlich
time_column_name
Erforderlich
grain_column_names
Erforderlich
df
Erforderlich
y
Standardwert: None
is_training_set
Standardwert: False

Attribute

actual_column_name

forecast_column_name

forecast_origin_column_name

grain_column_list

max_horizon

Dient zum Zurückgeben des im Modell verwendeten maximalen Horizonts.

origin_col_name

Dient zum Zurückgeben des Namens der Spalte „origin“.

target_lags

Gibt die Zielverzögerungen zurück (sofern vorhanden).

target_rolling_window_size

Gibt die Größe des rollierenden Fensters zurück.

time_column_name

Dient zum Zurückgeben des Namens der Spalte „time“.

user_target_column_name

y_max_dict

Zurückgeben des Wörterbuchs mit maximalen Zielwerten nach Zeitreihen-ID

y_min_dict

Zurückgeben des Wörterbuchs mit minimalen Zielwerten nach Zeitreihen-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.'