ForecastingJob Classe
Configurazione per l'attività di previsione autoML.
Inizializzare una nuova attività di previsione autoML.
- Ereditarietà
-
azure.ai.ml.entities._job.automl.tabular.automl_tabular.AutoMLTabularForecastingJob
Costruttore
ForecastingJob(*, primary_metric: str | None = None, forecasting_settings: ForecastingSettings | None = None, **kwargs)
Parametri
- forecasting_settings
- Optional[ForecastingSettings]
Impostazioni per l'attività di previsione.
Metodi
dump |
Esegue il dump del contenuto del processo in un file in formato YAML. |
set_data |
Definire la configurazione dei dati. |
set_featurization |
Definire la configurazione della progettazione delle funzionalità. |
set_forecast_settings |
Gestire i parametri usati dalle attività di previsione. |
set_limits |
Impostare i limiti per il processo. |
set_training |
Metodo per configurare le impostazioni correlate al training previsto. |
dump
Esegue il dump del contenuto del processo in un file in formato YAML.
dump(dest: str | PathLike | IO, **kwargs) -> None
Parametri
Percorso locale o flusso di file in cui scrivere il contenuto YAML. Se il massimo è un percorso di file, verrà creato un nuovo file. Se il massimo è un file aperto, il file verrà scritto direttamente.
- kwargs
- dict
Argomenti aggiuntivi da passare al serializzatore YAML.
Eccezioni
Generato se il numero massimo è un percorso di file e il file esiste già.
Generato se il massimo è un file aperto e il file non è scrivibile.
set_data
Definire la configurazione dei dati.
set_data(*, training_data: Input, target_column_name: str, weight_column_name: str | None = None, validation_data: Input | None = None, validation_data_size: float | None = None, n_cross_validations: str | int | None = None, cv_split_column_names: List[str] | None = None, test_data: Input | None = None, test_data_size: float | None = None) -> None
Parametri
- training_data
- Input
Dati di training.
- target_column_name
- str
Nome colonna della colonna di destinazione.
Dimensioni dei dati di convalida, impostazione predefinita none
Eccezioni
Generato se il numero massimo è un percorso di file e il file esiste già.
Generato se il massimo è un file aperto e il file non è scrivibile.
set_featurization
Definire la configurazione della progettazione delle funzionalità.
set_featurization(*, blocked_transformers: List[BlockedTransformers | str] | None = None, column_name_and_types: Dict[str, str] | None = None, dataset_language: str | None = None, transformer_params: Dict[str, List[ColumnTransformer]] | None = None, mode: str | None = None, enable_dnn_featurization: bool | None = None) -> None
Parametri
- blocked_transformers
- Optional[List[Union[BlockedTransformers, str]]]
Elenco di nomi di trasformatori da bloccare durante la funzionalità, impostazione predefinita su Nessuno
Dizionario dei nomi delle colonne e dei tipi di funzionalità usati per aggiornare lo scopo della colonna , impostazione predefinita su Nessuno
Codice ISO 639-3 di tre caratteri per i linguaggi contenuti nel set di dati. Le lingue diverse dall'inglese sono supportate solo se si usa il calcolo abilitato per la GPU. L'language_code 'mul' deve essere usato se il set di dati contiene più lingue. Per trovare codici ISO 639-3 per lingue diverse, fare riferimento a https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes, per impostazione predefinita none
- transformer_params
- Optional[Dict[str, List[ColumnTransformer]]]
Dizionario di trasformatori e parametri di personalizzazione corrispondenti , impostazione predefinita none
"off", "auto", impostazione predefinita su "auto", impostazione predefinita su None
Indica se includere metodi di progettazione delle funzionalità basati su DNN, impostazione predefinita none
Eccezioni
Generato se il numero massimo è un percorso di file e il file esiste già.
Generato se il massimo è un file aperto e il file non è scrivibile.
set_forecast_settings
Gestire i parametri usati dalle attività di previsione.
set_forecast_settings(*, time_column_name: str | None = None, forecast_horizon: str | int | None = None, time_series_id_column_names: str | List[str] | None = None, target_lags: str | int | List[int] | None = None, feature_lags: str | None = None, target_rolling_window_size: str | int | None = None, country_or_region_for_holidays: str | None = None, use_stl: str | None = None, seasonality: str | int | None = None, short_series_handling_config: str | None = None, frequency: str | None = None, target_aggregate_function: str | None = None, cv_step_size: int | None = None, features_unknown_at_forecast_time: str | List[str] | None = None) -> None
Parametri
Nome della colonna temporale. Questo parametro è necessario quando si prevede di specificare la colonna datetime nei dati di input usati per la compilazione della serie temporale e l'inferenza della frequenza.
- forecast_horizon
Orizzonte di previsione massimo desiderato in unità di frequenza della serie temporale. Il valore predefinito è 1.
Le unità si basano sull'intervallo di tempo dei dati di training, ad esempio mensile, settimanale che il previsionere deve prevedere. Quando si prevede il tipo di attività, è necessario questo parametro. Per altre informazioni sull'impostazione dei parametri di previsione, vedere Training automatico di un modello di previsione della serie temporale.
Nomi di colonne usate per raggruppare una serie temporale. Può essere usato per creare più serie. Se i nomi di colonna ID serie temporale non sono definiti o le colonne dell'identificatore specificate non identificano tutte le serie nel set di dati, gli identificatori delle serie temporali verranno creati automaticamente per il set di dati.
- target_lags
Numero di periodi precedenti di ritardo dalla colonna di destinazione. Per impostazione predefinita, i ritardi sono disattivati.
Durante la previsione, questo parametro rappresenta il numero di righe per il ritardo dei valori di destinazione in base alla frequenza dei dati. Questo valore è rappresentato come un elenco o un singolo numero intero. Il ritardo deve essere usato quando la relazione tra le variabili indipendenti e la variabile dipendente non corrispondono o correlate per impostazione predefinita. Ad esempio, quando si tenta di prevedere la richiesta di un prodotto, la richiesta per un mese specifico può dipendere dal prezzo di determinati prodotti nei tre mesi precedenti. In questo esempio, è possibile che si voglia ritardare la destinazione (richiesta) negativamente di tre mesi, in modo che il modello sia in grado di eseguire il training sulla relazione corretta. Per altre informazioni, vedere Eseguire il training automatico di un modello di previsione delle serie temporali.
Si noti il rilevamento automatico dei lag di destinazione e delle dimensioni della finestra in sequenza. Vedere i commenti corrispondenti nella sezione della finestra in sequenza. Viene usato l'algoritmo successivo per rilevare la dimensione ottimale del ritardo di destinazione e della finestra mobile.
Stimare l'ordine massimo di ritardo per la selezione della funzionalità di ricerca. In questo caso è il numero di periodi fino alla granularità della frequenza di data successiva, ad esempio se la frequenza è giornaliera, sarà una settimana (7), se è una settimana, sarà mensile (4). I valori moltiplicati per due sono i valori più grandi possibili di lag/finestre in sequenza. Negli esempi si considererà rispettivamente l'ordine massimo di ritardo di 14 e 8.
Creare una serie de-stagionalizzata aggiungendo componenti di tendenza e residui. Verrà usato nel passaggio successivo.
Stimare la funzione PACF - Correlazione automatica parziale sui dati da (2) e cercare punti, in cui la correlazione automatica è significativa, ovvero il valore assoluto è superiore a 1,96/square_root(valore di ritardo massimo), che corrisponde al significato del 95%.
Se tutti i punti sono significativi, riteniamo che sia forte stagionalità e non crei caratteristiche di lookback.
I valori PACF vengono a partire dall'inizio e il valore prima che la prima correlazione automatica insignificante designi il ritardo. Se il primo elemento significativo (valore correlato con se stesso) è seguito da insignificante, il ritardo sarà 0 e non useremo le funzionalità di lookback.
Flag per la generazione di ritardi per le funzionalità numeriche con 'auto' o Nessuna.
Numero di periodi passati usati per creare una media della finestra mobile della colonna di destinazione.
Durante la previsione, questo parametro rappresenta n periodi cronologici da usare per generare valori previsti, <= dimensioni del set di training. Se omesso, n è la dimensione massima del set di training. Specificare questo parametro quando si vuole considerare solo una certa quantità di dati cronologici durante il training del modello. Se impostato su "auto", la finestra in sequenza verrà stimata come ultimo valore in cui il PACF è maggiore della soglia di significatività. Per informazioni dettagliate, vedere la sezione target_lags.
Paese/area geografica utilizzata per generare le funzionalità delle festività. Devono essere codici ISO 3166 paese/area geografica a due lettere, ad esempio "US" o "GB".
- use_stl
Configurare la scomposizione STL della colonna di destinazione della serie temporale. use_stl può accettare tre valori: Nessuno (impostazione predefinita) - nessuna stl decomposition, 'season' - genera solo componente stagione e season_trend - genera componenti di stagione e di tendenza.
Impostare la stagionalità delle serie temporali come numero intero multiplo della frequenza della serie. Se la stagionalità è impostata su "auto", verrà dedotta. Se è impostata su Nessuno, si presuppone che la serie temporale non sia stagionale equivalente a stagionalità=1.
- short_series_handling_config
Parametro che definisce la modalità di gestione di serie temporali brevi da parte di AutoML.
Valori possibili: 'auto' (impostazione predefinita), 'pad', 'drop' e None.
- auto short series verrà riempito se non ci sono serie lunghe,
in caso contrario, le serie brevi verranno eliminate.
- pad tutte le serie brevi saranno riempite.
- drop all the short series will be dropped".
- Nessuna serie breve non verrà modificata.
Se impostato su "pad", la tabella verrà riempita con gli zeri e i valori vuoti per i regreditori e i valori casuali per la destinazione con la media media di valore di destinazione per un id serie temporale specificato. Se la median è maggiore o uguale a zero, il valore riempimento minimo verrà ritagliato per zero: Input:
Data
numeric_value
string
target
2020-01-01
23
green
55
L'output presupponendo che il numero minimo di valori sia quattro:
Data
numeric_value
string
target
2019-12-29
0
ND
55.1
2019-12-30
0
ND
55.6
2019-12-31
0
ND
54.5
2020-01-01
23
green
55
Nota: Sono disponibili due parametri short_series_handling_configuration e short_series_handling legacy. Quando vengono impostati entrambi i parametri, vengono sincronizzati come illustrato nella tabella seguente (short_series_handling_configuration e short_series_handling per brevità vengono contrassegnati rispettivamente come handling_configuration e gestione).
gestione
handlingconfiguration
risultantehandling
risultanteconfigurazionehandling
Vero
auto
Vero
auto
Vero
pad
Vero
auto
Vero
drop
Vero
auto
Vero
Nessuno
Falso
Nessuno
Falso
auto
Falso
Nessuno
Falso
pad
Falso
Nessuno
Falso
drop
Falso
Nessuno
Falso
Nessuno
Falso
Nessuno
- frequency
Frequenza di previsione.
Quando si prevede, questo parametro rappresenta il periodo con cui è desiderata la previsione, ad esempio giornaliera, settimanale, annuale e così via. La frequenza di previsione è la frequenza del set di dati per impostazione predefinita. Facoltativamente, è possibile impostarla su maggiore (ma non minore) rispetto alla frequenza del set di dati. Aggregare i dati e generare i risultati in base alla frequenza di previsione. Ad esempio, per i dati giornalieri, è possibile impostare la frequenza per essere giornaliera, settimanale o mensile, ma non oraria. La frequenza deve essere un alias di offset pandas. Per altre informazioni, vedere la documentazione di Pandas: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
- target_aggregate_function
Funzione da utilizzare per aggregare la colonna di destinazione della serie temporale in modo che sia conforme a una frequenza specificata dall'utente. Se la target_aggregation_function è impostata, ma il parametro freq non è impostato, viene generato l'errore. Le possibili funzioni di aggregazione di destinazione sono: "sum", "max", "min" e "mean".
I valori di colonna di destinazione vengono aggregati in base all'operazione specificata. In genere, la somma è appropriata per la maggior parte degli scenari.
Le colonne di stima numerica nei dati vengono aggregate in base alla somma, alla media, al valore minimo e al valore massimo. Di conseguenza, ml automatizzato genera nuove colonne suffisso con il nome della funzione di aggregazione e applica l'operazione di aggregazione selezionata.
Per le colonne di stima categorica, i dati vengono aggregati in modalità, la categoria più importante nella finestra.
Le colonne di stima della data vengono aggregate in base al valore minimo, al valore massimo e alla modalità.
Freq
target_aggregation_function
Meccanismo di regolarità dei dati
Nessuno (Predefinito)
Nessuno (Predefinito)
Le aggregazioni non vengono applicate. Se la validfrequency non può essere interrotta, verrà generato l'errore.
Alcuni valori
Nessuno (Predefinito)
Le aggregazioni non vengono applicate. Se il numero di punti dati conformi agiven frequencygrid non è valido, il 90%questi punti verranno spostati, altrimenti verrà generato l'errore.
Nessuno (Predefinito)
Funzione di aggregazione
Viene generato l'errore relativo amissingfrequencyparameter.
Alcuni valori
Funzione di aggregazione
Aggregare tofrequency usandoprovidedaggregationfunction.
Numero di periodi tra il origin_time di una piega cv e la successiva piega. Ad esempio, se n_step = 3 per i dati giornalieri, il tempo di origine per ogni piega sarà di tre giorni a parte.
Colonne di funzionalità disponibili per il training ma sconosciute al momento della previsione/inferenza. Se features_unknown_at_forecast_time è impostato su un elenco vuoto, si presuppone che tutte le colonne di funzionalità del set di dati siano note in fase di inferenza. Se questo parametro non è impostato il supporto per le funzionalità future non è abilitato.
Eccezioni
Generato se il numero massimo è un percorso di file e il file esiste già.
Generato se il massimo è un file aperto e il file non è scrivibile.
set_limits
Impostare i limiti per il processo.
set_limits(*, enable_early_termination: bool | None = None, exit_score: float | None = None, max_concurrent_trials: int | None = None, max_cores_per_trial: int | None = None, max_nodes: int | None = None, max_trials: int | None = None, timeout_minutes: int | None = None, trial_timeout_minutes: int | None = None) -> None
Parametri
Indica se abilitare la terminazione anticipata se il punteggio non migliora a breve termine, il valore predefinito è Nessuno.
Logica di arresto anticipato:
Nessuna interruzione anticipata per le prime 20 iterazioni (punti di riferimento).
La finestra di arresto anticipato inizia l'iterazione del 21° e cerca early_stopping_n_iters iterazioni
(attualmente impostato su 10). Ciò significa che la prima iterazione in cui l'arresto può verificarsi è il 31°.
AutoML pianifica ancora 2 iterazioni di ensemble DOPO l'arresto anticipato, che potrebbero comportare punteggi superiori.
L'arresto anticipato viene attivato se il valore assoluto del punteggio migliore calcolato è lo stesso per il passato
early_stopping_n_iters iterazioni, ovvero se non esiste alcun miglioramento del punteggio per le iterazioni early_stopping_n_iters.
Punteggio di destinazione per l'esperimento. L'esperimento termina dopo aver raggiunto questo punteggio. Se non è specificato (nessun criterio), l'esperimento viene eseguito fino a quando non viene effettuato alcun ulteriore avanzamento sulla metrica primaria. Per altre informazioni sui criteri di uscita, vedere questo articolo , impostazione predefinita none
Si tratta del numero massimo di iterazioni che verranno eseguite in parallelo. Il valore predefinito è 1.
- I cluster AmlCompute supportano un'iterazione in esecuzione per nodo.
Per più esecuzioni padre dell'esperimento AutoML eseguite in parallelo in un singolo cluster AmlCompute, la somma dei max_concurrent_trials
valori per tutti gli esperimenti deve essere minore o uguale al numero massimo di nodi. In caso contrario, le esecuzioni verranno accodate fino a quando non sono disponibili nodi.
- DSVM supporta più iterazioni per nodo.
max_concurrent_trials
Dovrebbe
essere minore o uguale al numero di core nella DSVM. Per più esperimenti eseguiti in parallelo in una singola DSVM, la somma dei max_concurrent_trials
valori per tutti gli esperimenti deve essere minore o uguale al numero massimo di nodi.
- Databricks:
max_concurrent_trials
deve essere minore o uguale al numero di
nodi di lavoro in Databricks.
max_concurrent_trials
non si applica alle esecuzioni locali. In precedenza, questo parametro è stato denominato concurrent_iterations
.
Numero massimo di thread da usare per un'iterazione di training specificata. Valori accettabili:
Maggiore di 1 e minore o uguale al numero massimo di core nella destinazione di calcolo.
Uguale a -1, che significa usare tutti i core possibili per iterazione per esecuzione figlio.
Uguale a 1, l'impostazione predefinita.
[Sperimentale] Numero massimo di nodi da usare per il training distribuito.
Per la previsione, ogni modello viene sottoposto a training usando nodi max(2, int(max_nodes/max_concurrent_trials)).
Per la classificazione/regressione, ogni modello viene sottoposto a training usando i nodi max_nodes.
Nota: questo parametro è in anteprima pubblica e potrebbe cambiare in futuro.
Numero totale di combinazioni di parametri e algoritmi diversi da testare durante un esperimento di ML automatizzato. Se non specificato, il valore predefinito è 1000 iterazioni.
Quantità massima di tempo, in minuti, che tutte le iterazioni combinate possono impiegare prima che l'esperimento venga terminato. Se non specificato, il timeout dell'esperimento predefinito è di 6 giorni. Per specificare un timeout minore o uguale a 1 ora, assicurarsi che le dimensioni del set di dati non siano superiori a 10.000.000 (colonna di righe) o a un risultato di errore, il valore predefinito è None
Tempo massimo in minuti per cui ogni iterazione può essere eseguita prima che venga terminata. Se non specificato, viene usato un valore pari a 1 mese o 43200 minuti, il valore predefinito è None
Eccezioni
Generato se il numero massimo è un percorso di file e il file esiste già.
Generato se il massimo è un file aperto e il file non è scrivibile.
set_training
Metodo per configurare le impostazioni correlate al training previsto.
set_training(*, enable_onnx_compatible_models: bool | None = None, enable_dnn_training: bool | None = None, enable_model_explainability: bool | None = None, enable_stack_ensemble: bool | None = None, enable_vote_ensemble: bool | None = None, stack_ensemble_settings: StackEnsembleSettings | None = None, ensemble_model_download_timeout: int | None = None, allowed_training_algorithms: List[str] | None = None, blocked_training_algorithms: List[str] | None = None, training_mode: str | TrainingMode | None = None) -> None
Parametri
- enable_onnx_compatible_models
Se abilitare o disabilitare l'applicazione dei modelli compatibili con ONNX. Il valore predefinito è False. Per altre informazioni su Open Neural Network Exchange (ONNX) e Azure Machine Learning, vedere questo articolo.
Se includere modelli basati su DNN durante la selezione del modello. Tuttavia, il valore predefinito è True per le attività NLP DNN e è False per tutte le altre attività AutoML.
- enable_model_explainability
Se abilitare la spiegazione del modello AutoML migliore alla fine di tutte le iterazioni di training autoML. Per altre informazioni, vedere Interpretazione: spiegazioni dei modelli in Machine Learning automatizzato. , impostazione predefinita su Nessuno
- enable_stack_ensemble
Se abilitare/disabilitare l'iterazione stackEnsemble. Se viene impostato enable_onnx_compatible_models flag, l'iterazione stackEnsemble verrà disabilitata. Analogamente, per le attività Timeseries, l'iterazione stackEnsemble verrà disabilitata per impostazione predefinita, per evitare rischi di overfitting a causa di un piccolo set di training usato per adattare il meta learner. Per altre informazioni sugli ensemble, vedere Configurazione dell'ensemble , impostazione predefinita su Nessuno
- enable_vote_ensemble
Se abilitare/disabilitare l'iterazione VotingEnsemble. Per altre informazioni sugli ensemble, vedere Configurazione dell'ensemble , impostazione predefinita su Nessuno
- stack_ensemble_settings
- Optional[StackEnsembleSettings]
Impostazioni per l'iterazione stackEnsemble, impostazione predefinita none
Durante la generazione di modelli VotingEnsemble e StackEnsemble, vengono scaricati più modelli montati dalle esecuzioni figlio precedenti. Configurare questo parametro con un valore superiore a 300 sec, se è necessario più tempo, il valore predefinito è None
Elenco dei nomi dei modelli da cercare per un esperimento. Se non specificato, tutti i modelli supportati per l'attività vengono usati meno eventuali modelli specificati in blocked_training_algorithms
o deprecati tensorFlow, impostazione predefinita su None
Elenco di algoritmi da ignorare per un esperimento, impostazione predefinita none
- training_mode
[Sperimentale] Modalità di training da usare. I valori possibili sono-
distributed: consente il training distribuito per gli algoritmi supportati.
non_distributed- disabilita il training distribuito.
auto- Attualmente, è uguale a non_distributed. In futuro, questo potrebbe cambiare.
Nota: questo parametro è in anteprima pubblica e può cambiare in futuro.
Eccezioni
Generato se il numero massimo è un percorso di file e il file esiste già.
Generato se il massimo è un file aperto e il file non è scrivibile.
Attributi
base_path
creation_context
Contesto di creazione della risorsa.
Restituisce
Metadati di creazione per la risorsa.
Tipo restituito
featurization
Ottenere le impostazioni di funzionalità tabulari per il processo AutoML.
Restituisce
Impostazioni di funzionalità tabulari per il processo AutoML
Tipo restituito
forecasting_settings
Restituisce le impostazioni di previsione.
Restituisce
impostazioni di previsione.
Tipo restituito
id
L'ID della risorsa.
Restituisce
ID globale della risorsa, ID di Azure Resource Manager (ARM).
Tipo restituito
inputs
limits
Ottenere i limiti tabulari per il processo AutoML.
Restituisce
Limiti tabulari per il processo AutoML
Tipo restituito
log_files
File di output del processo.
Restituisce
Dizionario di nomi e URL di log.
Tipo restituito
log_verbosity
Ottenere la verbosità del log per il processo AutoML.
Restituisce
verbosità del log per il processo AutoML
Tipo restituito
outputs
primary_metric
Restituire la metrica primaria da usare per la selezione del modello.
Restituisce
Metrica primaria per la selezione del modello.
Tipo restituito
status
Stato del processo.
I valori comuni restituiti includono "Running", "Completed" e "Failed". Tutti i valori possibili sono:
NotStarted: questo è uno stato temporaneo in cui gli oggetti Run lato client si trovano prima dell'invio nel cloud.
Avvio: l'esecuzione è stata avviata nell'elaborazione nel cloud. Il chiamante ha un ID di esecuzione a questo punto.
Provisioning: l'elaborazione su richiesta viene creata per un invio di processo specificato.
Preparazione: l'ambiente di esecuzione è in fase di preparazione ed è in una delle due fasi seguenti:
Compilazione di immagini Docker
configurazione dell'ambiente conda
Accodato: il processo viene accodato nella destinazione di calcolo. Ad esempio, in BatchAI il processo si trova in uno stato in coda
in attesa che tutti i nodi richiesti siano pronti.
Esecuzione: il processo è stato avviato per l'esecuzione nella destinazione di calcolo.
Finalizzazione: l'esecuzione del codice utente è stata completata e l'esecuzione è in fasi di post-elaborazione.
CancelRequested: l'annullamento è stato richiesto per il processo.
Completato: l'esecuzione è stata completata correttamente. Ciò include sia l'esecuzione del codice utente che l'esecuzione
fasi di post-elaborazione.
Impossibile: l'esecuzione non è riuscita. In genere la proprietà Error in un'esecuzione fornisce informazioni dettagliate sul motivo.
Annullata: segue una richiesta di annullamento e indica che l'esecuzione è stata annullata correttamente.
NotResponding: per le esecuzioni abilitate per Heartbeat, non è stato inviato di recente alcun heartbeat.
Restituisce
Stato del processo.
Tipo restituito
studio_url
Endpoint di Azure ML Studio.
Restituisce
URL della pagina dei dettagli del processo.
Tipo restituito
task_type
Ottenere il tipo di attività.
Restituisce
Tipo di attività da eseguire. I valori possibili includono: "classificazione", "regressione", "previsione".
Tipo restituito
test_data
training
Restituisce le impostazioni di training di previsione.
Restituisce
impostazioni di training.
Tipo restituito
training_data
type
validation_data
Azure SDK for Python