Condividi tramite


ForecastingPipelineWrapperBase Classe

Classe di base per il wrapper del modello di previsione.

Ereditarietà
ForecastingPipelineWrapperBase

Costruttore

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

Parametri

Nome Descrizione
ts_transformer
Valore predefinito: None
y_transformer
Valore predefinito: None
metadata
Valore predefinito: None

Metodi

align_output_to_input

Allineare il frame di dati di output trasformato al frame di dati di input.

Nota: la trasformazione verrà modificata in base al riferimento, non viene creata alcuna copia. :p aram X_input: frame di dati di input. :p aram trasformato: frame di dati dopo la trasformazione. :restituisce: frame di dati transfotmed con il relativo indice originale, ma ordinato come in X_input.

fit

Adattare il modello con input X e y.

forecast

Eseguire la previsione nel frame di dati X_pred.

forecast_quantiles

Ottenere le stime e i quantili dalla pipeline montata.

is_grain_dropped

Restituisce true se la granularità verrà eliminata.

preaggregate_data_set

Aggregare il set di dati di stima.

Nota: Questo metodo non garantisce che il set di dati venga aggregato. Ciò si verifica solo se il set di dati contiene i timestamp duplicati o le date fuori griglia. :p aram df: set di dati da aggregare. :p atam y: i valori di destinazione. :p aram is_training_set: se true, i dati rappresentano il set di training. :return: set di dati aggregati o intatti se non è necessaria alcuna aggregazione.

preprocess_pred_X_y

Stima pre-elaborazione X e y.

rolling_evaluation

" Produrre previsioni su un'origine in sequenza rispetto al set di test specificato.

Ogni iterazione effettua una previsione per i prossimi periodi di "max_horizon" rispetto all'origine corrente, quindi avanza l'origine in base alla durata dell'ora dell'orizzonte. Il contesto di stima per ogni previsione viene impostato in modo che il previsione usi i valori di destinazione effettivi prima del tempo di origine corrente per la costruzione di funzionalità di ritardo.

Questa funzione restituisce un dataframe concatenato di previsioni in sequenza unite alle effettive del set di test.

Questo metodo è deprecato e verrà rimosso in una versione futura. Usare invece rolling_forecast().

rolling_forecast

Produrre previsioni su un'origine in sequenza su un set di test.

Ogni iterazione effettua una previsione di periodi di orizzonte massimo in anticipo usando le informazioni fino all'origine corrente, quindi avanza l'origine in base ai periodi di tempo "passo". Il contesto di stima per ogni previsione viene impostato in modo che il previsione usi i valori di destinazione effettivi prima del tempo di origine corrente per la costruzione delle funzionalità di lookback.

Questa funzione restituisce un dataframe delle previsioni in sequenza unite agli effettivi del set di test. Le colonne nel frame di dati restituito sono le seguenti:

  • Colonne ID timeeries (facoltativo). Quando viene fornito dall'utente, verranno usati i nomi di colonna specificati.

  • Stimare la colonna di origine che fornisce il tempo di origine per ogni riga.

    Nome colonna: archiviato come variabile membro dell'oggetto forecast_origin_column_name.

  • Colonna ora. Verrà usato il nome della colonna specificato dall'utente.

  • Colonna Dei valori di previsione. Nome colonna: archiviato come membro dell'oggetto forecast_column_name

  • Colonna valori effettivi. Nome colonna: archiviato come membro dell'oggetto actual_column_name

short_grain_handling

Restituisce true se la gestione dei grani brevi o assenti è abilitata per il modello.

static_preaggregate_data_set

Aggregare il set di dati di stima.

Nota: Questo metodo non garantisce che il set di dati venga aggregato. Ciò si verifica solo se il set di dati contiene i timestamp duplicati o le date fuori griglia. :p aram ts_transformer: timeeries tranformer usato per il training. :p aram time_column_name: nome della colonna temporale. :p aram grain_column_names: elenco di nomi di colonne di granularità. :p aram df: set di dati da aggregare. :p atam y: i valori di destinazione. :p aram is_training_set: se true, i dati rappresentano il set di training. :return: set di dati aggregati o intatti se non è necessaria alcuna aggregazione.

align_output_to_input

Allineare il frame di dati di output trasformato al frame di dati di input.

Nota: la trasformazione verrà modificata in base al riferimento, non viene creata alcuna copia. :p aram X_input: frame di dati di input. :p aram trasformato: frame di dati dopo la trasformazione. :restituisce: frame di dati transfotmed con il relativo indice originale, ma ordinato come in X_input.

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

Parametri

Nome Descrizione
X_input
Necessario
transformed
Necessario

fit

Adattare il modello con input X e y.

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

Parametri

Nome Descrizione
X
Necessario

Immettere dati X.

y
Necessario

Dati di input y.

forecast

Eseguire la previsione nel frame di dati 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]

Parametri

Nome Descrizione
X_pred

il dataframe di stima che combina X_past e X_future in modo contiguo. I valori vuoti in X_pred verranno imputati.

Valore predefinito: None
y_pred

valore di destinazione che combina valori definite per y_past e valori mancanti per Y_future. Se None le stime verranno effettuate per ogni X_pred.

Valore predefinito: None
forecast_destination
<xref:pandas.Timestamp>

Forecast_destination: valore timestamp. Le previsioni verranno effettuate fino al tempo forecast_destination, per tutti i cereali. L'input del dizionario { granularità -> timestamp } non verrà accettato. Se forecast_destination non viene dato, verrà imputato come l'ultima volta che si verifica in X_pred per ogni grana.

Valore predefinito: None
ignore_data_errors

Ignorare gli errori nei dati utente.

Valore predefinito: False

Restituisce

Tipo Descrizione

Y_pred, con il sottoframe corrispondente a Y_future compilato con le rispettive previsioni. Tutti i valori mancanti in Y_past verranno riempiti da imputer.

forecast_quantiles

Ottenere le stime e i quantili dalla pipeline montata.

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

Parametri

Nome Descrizione
X_pred

il dataframe di stima che combina X_past e X_future in modo contiguo. I valori vuoti in X_pred verranno imputati.

Valore predefinito: None
y_pred

valore di destinazione che combina valori definite per y_past e valori mancanti per Y_future. Se None le stime verranno effettuate per ogni X_pred.

Valore predefinito: None
quantiles
float oppure list of <xref:floats>

Elenco di quantili in corrispondenza del quale si vuole prevedere.

Valore predefinito: None
forecast_destination
<xref:pandas.Timestamp>

Forecast_destination: valore timestamp. Le previsioni verranno effettuate fino al tempo forecast_destination, per tutti i cereali. L'input del dizionario { granularità -> timestamp } non verrà accettato. Se forecast_destination non viene dato, verrà imputato come l'ultima volta che si verifica in X_pred per ogni grana.

Valore predefinito: None
ignore_data_errors

Ignorare gli errori nei dati utente.

Valore predefinito: False

Restituisce

Tipo Descrizione

Un dataframe contenente le colonne e le stime effettuate in base ai quantili richiesti.

is_grain_dropped

Restituisce true se la granularità verrà eliminata.

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

Parametri

Nome Descrizione
grain
Necessario

Granularità da testare se verrà eliminata.

Restituisce

Tipo Descrizione

True se la grana verrà eliminata.

preaggregate_data_set

Aggregare il set di dati di stima.

Nota: Questo metodo non garantisce che il set di dati venga aggregato. Ciò si verifica solo se il set di dati contiene i timestamp duplicati o le date fuori griglia. :p aram df: set di dati da aggregare. :p atam y: i valori di destinazione. :p aram is_training_set: se true, i dati rappresentano il set di training. :return: set di dati aggregati o intatti se non è necessaria alcuna aggregazione.

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

Parametri

Nome Descrizione
df
Necessario
y
Valore predefinito: None
is_training_set
Valore predefinito: False

preprocess_pred_X_y

Stima pre-elaborazione X e 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]]

Parametri

Nome Descrizione
X_pred
Valore predefinito: None
y_pred
Valore predefinito: None
forecast_destination
Valore predefinito: None

rolling_evaluation

" Produrre previsioni su un'origine in sequenza rispetto al set di test specificato.

Ogni iterazione effettua una previsione per i prossimi periodi di "max_horizon" rispetto all'origine corrente, quindi avanza l'origine in base alla durata dell'ora dell'orizzonte. Il contesto di stima per ogni previsione viene impostato in modo che il previsione usi i valori di destinazione effettivi prima del tempo di origine corrente per la costruzione di funzionalità di ritardo.

Questa funzione restituisce un dataframe concatenato di previsioni in sequenza unite alle effettive del set di test.

Questo metodo è deprecato e verrà rimosso in una versione futura. Usare invece rolling_forecast().

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

Parametri

Nome Descrizione
X_pred
Necessario

il dataframe di stima che combina X_past e X_future in modo contiguo. I valori vuoti in X_pred verranno imputati.

y_pred
Necessario

valore di destinazione corrispondente a X_pred.

ignore_data_errors

Ignorare gli errori nei dati utente.

Valore predefinito: False

Restituisce

Tipo Descrizione

Y_pred, con il sottoframe corrispondente a Y_future compilato con le rispettive previsioni. Tutti i valori mancanti in Y_past verranno riempiti da imputer.

rolling_forecast

Produrre previsioni su un'origine in sequenza su un set di test.

Ogni iterazione effettua una previsione di periodi di orizzonte massimo in anticipo usando le informazioni fino all'origine corrente, quindi avanza l'origine in base ai periodi di tempo "passo". Il contesto di stima per ogni previsione viene impostato in modo che il previsione usi i valori di destinazione effettivi prima del tempo di origine corrente per la costruzione delle funzionalità di lookback.

Questa funzione restituisce un dataframe delle previsioni in sequenza unite agli effettivi del set di test. Le colonne nel frame di dati restituito sono le seguenti:

  • Colonne ID timeeries (facoltativo). Quando viene fornito dall'utente, verranno usati i nomi di colonna specificati.

  • Stimare la colonna di origine che fornisce il tempo di origine per ogni riga.

    Nome colonna: archiviato come variabile membro dell'oggetto forecast_origin_column_name.

  • Colonna ora. Verrà usato il nome della colonna specificato dall'utente.

  • Colonna Dei valori di previsione. Nome colonna: archiviato come membro dell'oggetto forecast_column_name

  • Colonna valori effettivi. Nome colonna: archiviato come membro dell'oggetto actual_column_name

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

Parametri

Nome Descrizione
X_pred
Necessario
<xref:pd.DataFrame>

Frame di dati di stima

y_pred
Necessario
<xref:np.ndarray>

valori di destinazione corrispondenti alle righe in X_pred

step
int

Numero di periodi per avanzare la finestra di previsione in ogni iterazione.

Valore predefinito: 1
ignore_data_errors

Ignorare gli errori nei dati utente.

Valore predefinito: False

Restituisce

Tipo Descrizione
<xref:pd.DataFrame>

Frame di dati delle previsioni in sequenza

short_grain_handling

Restituisce true se la gestione dei grani brevi o assenti è abilitata per il modello.

short_grain_handling() -> bool

static_preaggregate_data_set

Aggregare il set di dati di stima.

Nota: Questo metodo non garantisce che il set di dati venga aggregato. Ciò si verifica solo se il set di dati contiene i timestamp duplicati o le date fuori griglia. :p aram ts_transformer: timeeries tranformer usato per il training. :p aram time_column_name: nome della colonna temporale. :p aram grain_column_names: elenco di nomi di colonne di granularità. :p aram df: set di dati da aggregare. :p atam y: i valori di destinazione. :p aram is_training_set: se true, i dati rappresentano il set di training. :return: set di dati aggregati o intatti se non è necessaria alcuna aggregazione.

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]

Parametri

Nome Descrizione
ts_transformer
Necessario
time_column_name
Necessario
grain_column_names
Necessario
df
Necessario
y
Valore predefinito: None
is_training_set
Valore predefinito: False

Attributi

actual_column_name

forecast_column_name

forecast_origin_column_name

grain_column_list

max_horizon

Restituire max hiorizon usato nel modello.

origin_col_name

Restituisce il nome della colonna di origine.

target_lags

Restituisci i lag di destinazione se presenti.

target_rolling_window_size

Restituisce le dimensioni della finestra in sequenza.

time_column_name

Restituisce il nome della colonna temporale.

user_target_column_name

y_max_dict

Restituire il dizionario con valori di destinazione massimi in base all'ID serie temporale

y_min_dict

Restituire il dizionario con valori di destinazione minimi in base all'ID serie temporale

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