ForecastingPipelineWrapperBase Třída

Základní třída pro obálku modelu prognózy.

Dědičnost
ForecastingPipelineWrapperBase

Konstruktor

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

Parametry

ts_transformer
výchozí hodnota: None
y_transformer
výchozí hodnota: None
metadata
výchozí hodnota: None

Metody

align_output_to_input

Zarovnejte transformovaný výstupní datový rámec se vstupním datovým rámcem.

Poznámka: Transformované bude změněno odkazem, nebude vytvářena žádná kopie. :p aram X_input: Vstupní datový rámec. :p aram transformováno: Datový rámec po transformaci. :returns: Transfotmed data frame with its original index, but sorted as in X_input.

fit

Přidělte model vstupem X a y.

forecast

Prognózu proveďte na X_pred datového rámce.

forecast_quantiles

Získejte předpověď a kvantily z fitované kanálu.

is_grain_dropped

Vrátí hodnotu true, pokud se zrno vyřadí.

preaggregate_data_set

Agregujte sadu prediktivních dat.

Poznámka: Tato metoda nezaručuje, že bude sada dat agregována. K tomu dojde pouze v případě, že datová sada obsahuje duplicitní časová razítka nebo data mimo mřížku. :p aram df: Datová sada, která se má agregovat. :p atam y: Cílové hodnoty. :p aram is_training_set: Pokud je hodnota true, data představují trénovací sadu. :return: Agregovaná nebo neporušená datová sada, pokud není agregace vyžadována.

preprocess_pred_X_y

Prezpracuje predikci X a y.

rolling_evaluation

" Vytváří prognózy pro posuvný původ dané testovací sady.

Každá iterace předpovídá další období "max_horizon" s ohledem na aktuální původ a pak posune původ o horizontální dobu trvání. Kontext předpovědi pro každou prognózu je nastaven tak, aby prognóza používala skutečné cílové hodnoty před aktuálním časem původu pro vytváření funkcí prodlevy.

Tato funkce vrátí zřetězený datový rámec se klouzavými prognózami spojených se skutečnými údaji z testovací sady.

Tato metoda je zastaralá a v budoucí verzi bude odebrána. Místo toho použijte rolling_forecast().

rolling_forecast

Vytváří prognózy při posuvné počátku testovací sady.

Každá iterace předpovídá maximální horizontální období s využitím informací až do aktuálního původu a pak posune původ o časová období kroku. Kontext předpovědi pro každou prognózu je nastaven tak, aby prognóza používala skutečné cílové hodnoty před aktuálním časem původu pro vytváření funkcí zpětného vyhledávání.

Tato funkce vrátí datový rámec klouzavých prognóz spojených se skutečnými údaji z testovací sady. Sloupce ve vrácených datových rámech jsou následující:

  • Sloupce ID timeseries (volitelné). Po zadání uživatelem se použijí zadané názvy sloupců.

  • Sloupec původu prognózy, který u každého řádku poskytuje čas počátku.

    Název sloupce: uložen jako proměnná člena objektu forecast_origin_column_name.

  • Sloupec Čas. Použije se název sloupce zadaný uživatelem.

  • Sloupec s hodnotami prognózy Název sloupce: uložen jako člen objektu forecast_column_name

  • Sloupec skutečných hodnot Název sloupce: uložen jako člen objektu actual_column_name

short_grain_handling

Vrátí hodnotu true, pokud je pro model povolená manipulace s krátkými nebo chybějícími zrny.

static_preaggregate_data_set

Agregujte sadu prediktivních dat.

Poznámka: Tato metoda nezaručuje, že bude sada dat agregována. K tomu dojde pouze v případě, že datová sada obsahuje duplicitní časová razítka nebo data mimo mřížku. :p aram ts_transformer: Přepis časových období používaný pro trénování. :p aram time_column_name: název sloupce času. :p aram grain_column_names: Seznam názvů sloupců s podrobnostmi. :p aram df: Datová sada, která se má agregovat. :p atam y: Cílové hodnoty. :p aram is_training_set: Pokud je hodnota true, data představují trénovací sadu. :return: Agregovaná nebo neporušená datová sada, pokud není agregace vyžadována.

align_output_to_input

Zarovnejte transformovaný výstupní datový rámec se vstupním datovým rámcem.

Poznámka: Transformované bude změněno odkazem, nebude vytvářena žádná kopie. :p aram X_input: Vstupní datový rámec. :p aram transformováno: Datový rámec po transformaci. :returns: Transfotmed data frame with its original index, but sorted as in X_input.

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

Parametry

X_input
Vyžadováno
transformed
Vyžadováno

fit

Přidělte model vstupem X a y.

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

Parametry

X
Vyžadováno

Zadejte X dat.

y
Vyžadováno

Vstupní data y.

forecast

Prognózu proveďte na X_pred datového rámce.

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]

Parametry

X_pred
výchozí hodnota: None

datový rámec předpovědi kombinující X_past a X_future časově spojitým způsobem. Prázdné hodnoty v X_pred budou imputovány.

y_pred
výchozí hodnota: None

cílová hodnota kombinující určité hodnoty pro y_past a chybějící hodnoty pro Y_future. Pokud žádné, předpovědi se provedou pro každou X_pred.

forecast_destination
<xref:pandas.Timestamp>
výchozí hodnota: None

Forecast_destination: hodnota časového razítka. Prognózy budou provedeny až do forecast_destination času, pro všechna zrna. Slovníkový vstup { grain -> timestamp } nebude přijat. Pokud forecast_destination není zadaný, bude imputován jako poslední výskyt v X_pred pro každé agregační intervaly.

ignore_data_errors
bool
výchozí hodnota: False

Chyby v uživatelských datech ignorujte.

Návraty

Y_pred s dílčím rámcem odpovídajícím Y_future vyplněnými příslušnými prognózami. Všechny chybějící hodnoty v Y_past budou vyplněny imputerem.

Návratový typ

forecast_quantiles

Získejte předpověď a kvantily z fitované kanálu.

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

Parametry

X_pred
výchozí hodnota: None

datový rámec předpovědi kombinující X_past a X_future časově spojitým způsobem. Prázdné hodnoty v X_pred budou imputovány.

y_pred
výchozí hodnota: None

cílová hodnota kombinující určité hodnoty pro y_past a chybějící hodnoty pro Y_future. Pokud žádné, předpovědi se provedou pro každou X_pred.

quantiles
float nebo list of <xref:floats>
výchozí hodnota: None

Seznam kvantilů, u kterých chceme předpovídat.

forecast_destination
<xref:pandas.Timestamp>
výchozí hodnota: None

Forecast_destination: hodnota časového razítka. Prognózy budou provedeny až do forecast_destination času, pro všechna zrna. Slovníkový vstup { grain -> timestamp } nebude přijat. Pokud forecast_destination není zadaný, bude imputován jako poslední výskyt v X_pred pro každé agregační intervaly.

ignore_data_errors
bool
výchozí hodnota: False

Chyby v uživatelských datech ignorujte.

Návraty

Datový rámec obsahující sloupce a předpovědi provedené v požadovaných kvantilech.

is_grain_dropped

Vrátí hodnotu true, pokud se zrno vyřadí.

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

Parametry

grain
Vyžadováno

Zrno, které se má otestovat, zda bude vyřazeno.

Návraty

Hodnota True, pokud bude agregační interval vynecháno.

preaggregate_data_set

Agregujte sadu prediktivních dat.

Poznámka: Tato metoda nezaručuje, že bude sada dat agregována. K tomu dojde pouze v případě, že datová sada obsahuje duplicitní časová razítka nebo data mimo mřížku. :p aram df: Datová sada, která se má agregovat. :p atam y: Cílové hodnoty. :p aram is_training_set: Pokud je hodnota true, data představují trénovací sadu. :return: Agregovaná nebo neporušená datová sada, pokud není agregace vyžadována.

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

Parametry

df
Vyžadováno
y
výchozí hodnota: None
is_training_set
výchozí hodnota: False

preprocess_pred_X_y

Prezpracuje predikci X a 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]]

Parametry

X_pred
výchozí hodnota: None
y_pred
výchozí hodnota: None
forecast_destination
výchozí hodnota: None

rolling_evaluation

" Vytváří prognózy pro posuvný původ dané testovací sady.

Každá iterace předpovídá další období "max_horizon" s ohledem na aktuální původ a pak posune původ o horizontální dobu trvání. Kontext předpovědi pro každou prognózu je nastaven tak, aby prognóza používala skutečné cílové hodnoty před aktuálním časem původu pro vytváření funkcí prodlevy.

Tato funkce vrátí zřetězený datový rámec se klouzavými prognózami spojených se skutečnými údaji z testovací sady.

Tato metoda je zastaralá a v budoucí verzi bude odebrána. Místo toho použijte rolling_forecast().

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

Parametry

X_pred
Vyžadováno

datový rámec předpovědi kombinující X_past a X_future časově spojitým způsobem. Prázdné hodnoty v X_pred budou imputovány.

y_pred
Vyžadováno

cílovou hodnotu odpovídající X_pred.

ignore_data_errors
výchozí hodnota: False

Chyby v uživatelských datech ignorujte.

Návraty

Y_pred s dílčím rámcem odpovídajícím Y_future vyplněnými příslušnými prognózami. Všechny chybějící hodnoty v Y_past budou vyplněny imputerem.

Návratový typ

rolling_forecast

Vytváří prognózy při posuvné počátku testovací sady.

Každá iterace předpovídá maximální horizontální období s využitím informací až do aktuálního původu a pak posune původ o časová období kroku. Kontext předpovědi pro každou prognózu je nastaven tak, aby prognóza používala skutečné cílové hodnoty před aktuálním časem původu pro vytváření funkcí zpětného vyhledávání.

Tato funkce vrátí datový rámec klouzavých prognóz spojených se skutečnými údaji z testovací sady. Sloupce ve vrácených datových rámech jsou následující:

  • Sloupce ID timeseries (volitelné). Po zadání uživatelem se použijí zadané názvy sloupců.

  • Sloupec původu prognózy, který u každého řádku poskytuje čas počátku.

    Název sloupce: uložen jako proměnná člena objektu forecast_origin_column_name.

  • Sloupec Čas. Použije se název sloupce zadaný uživatelem.

  • Sloupec s hodnotami prognózy Název sloupce: uložen jako člen objektu forecast_column_name

  • Sloupec skutečných hodnot Název sloupce: uložen jako člen objektu actual_column_name

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

Parametry

X_pred
<xref:pd.DataFrame>
Vyžadováno

Datový rámec predikce

y_pred
<xref:np.ndarray>
Vyžadováno

cílové hodnoty odpovídající řádkům v X_pred

step
int
výchozí hodnota: 1

Počet období pro přechod k intervalu prognózy v každé iteraci

ignore_data_errors
bool
výchozí hodnota: False

Chyby v uživatelských datech ignorujte.

Návraty

Datový rámec průběžných prognóz

Návratový typ

<xref:pd.DataFrame>

short_grain_handling

Vrátí hodnotu true, pokud je pro model povolená manipulace s krátkými nebo chybějícími zrny.

short_grain_handling() -> bool

static_preaggregate_data_set

Agregujte sadu prediktivních dat.

Poznámka: Tato metoda nezaručuje, že bude sada dat agregována. K tomu dojde pouze v případě, že datová sada obsahuje duplicitní časová razítka nebo data mimo mřížku. :p aram ts_transformer: Přepis časových období používaný pro trénování. :p aram time_column_name: název sloupce času. :p aram grain_column_names: Seznam názvů sloupců s podrobnostmi. :p aram df: Datová sada, která se má agregovat. :p atam y: Cílové hodnoty. :p aram is_training_set: Pokud je hodnota true, data představují trénovací sadu. :return: Agregovaná nebo neporušená datová sada, pokud není agregace vyžadována.

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]

Parametry

ts_transformer
Vyžadováno
time_column_name
Vyžadováno
grain_column_names
Vyžadováno
df
Vyžadováno
y
výchozí hodnota: None
is_training_set
výchozí hodnota: False

Atributy

actual_column_name

forecast_column_name

forecast_origin_column_name

grain_column_list

max_horizon

Vrátí maximální hiorizon použitý v modelu.

origin_col_name

Vrátí název sloupce původu.

target_lags

Vrátit prodlevy cíle, pokud k tomu dojde.

target_rolling_window_size

Vrátí velikost posuvného okna.

time_column_name

Vrátí název sloupce času.

user_target_column_name

y_max_dict

Vrácení slovníku s maximálními cílovými hodnotami podle ID časové řady

y_min_dict

Vrácení slovníku s minimálními cílovými hodnotami podle ID časové řady

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.'