AutoMLConfig Classe
Rappresenta la configurazione per l'invio di un esperimento di Machine Learning automatizzato in Azure Machine Learning.
Questo oggetto di configurazione contiene e rende persistenti i parametri per la configurazione dell'esecuzione dell'esperimento, nonché i dati di training da usare in fase di esecuzione. Per indicazioni sulla selezione delle impostazioni, vedere https://aka.ms/AutoMLConfig.
Creare un autoMLConfig.
- Ereditarietà
-
builtins.objectAutoMLConfig
Costruttore
AutoMLConfig(task: str, path: str | None = None, iterations: int | None = None, primary_metric: str | None = None, positive_label: Any | None = None, compute_target: Any | None = None, spark_context: Any | None = None, X: Any | None = None, y: Any | None = None, sample_weight: Any | None = None, X_valid: Any | None = None, y_valid: Any | None = None, sample_weight_valid: Any | None = None, cv_splits_indices: List[List[Any]] | None = None, validation_size: float | None = None, n_cross_validations: int | str | None = None, y_min: float | None = None, y_max: float | None = None, num_classes: int | None = None, featurization: str | FeaturizationConfig = 'auto', max_cores_per_iteration: int = 1, max_concurrent_iterations: int = 1, iteration_timeout_minutes: int | None = None, mem_in_mb: int | None = None, enforce_time_on_windows: bool = True, experiment_timeout_hours: float | None = None, experiment_exit_score: float | None = None, enable_early_stopping: bool = True, blocked_models: List[str] | None = None, blacklist_models: List[str] | None = None, exclude_nan_labels: bool = True, verbosity: int = 20, enable_tf: bool = False, model_explainability: bool = True, allowed_models: List[str] | None = None, whitelist_models: List[str] | None = None, enable_onnx_compatible_models: bool = False, enable_voting_ensemble: bool = True, enable_stack_ensemble: bool | None = None, debug_log: str = 'automl.log', training_data: Any | None = None, validation_data: Any | None = None, test_data: Any | None = None, test_size: float | None = None, label_column_name: str | None = None, weight_column_name: str | None = None, cv_split_column_names: List[str] | None = None, enable_local_managed: bool = False, enable_dnn: bool | None = None, forecasting_parameters: ForecastingParameters | None = None, **kwargs: Any)
Parametri
Nome | Descrizione |
---|---|
task
Necessario
|
Tipo di attività da eseguire. I valori possono essere "classificazione", "regressione" o "previsione" a seconda del tipo di problema di Machine Learning automatizzato da risolvere. |
path
Necessario
|
Percorso completo della cartella del progetto di Azure Machine Learning. Se non specificato, il valore predefinito consiste nell'usare la directory corrente o ".". |
iterations
Necessario
|
Numero totale di combinazioni di algoritmi e parametri diversi da testare durante un esperimento di Machine Learning automatizzato. Se non specificato, il valore predefinito è 1000 iterazioni. |
primary_metric
Necessario
|
Metrica ottimizzata da Machine Learning automatizzato per la selezione del modello. Machine Learning automatizzato raccoglie più metriche di quanto possa essere ottimizzato. È possibile usare get_primary_metrics per ottenere un elenco di metriche valide per l'attività specificata. Per altre informazioni sul modo in cui vengono calcolate le metriche, vedere https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric. Se non specificato, l'accuratezza viene usata per le attività di classificazione, per le attività di previsione e regressione viene usata la precisione per la classificazione delle immagini e la classificazione con più etichette immagine e per la precisione media media viene usata per il rilevamento degli oggetti immagine. |
positive_label
Necessario
|
Etichetta di classe positiva con cui verrà usato Machine Learning automatizzato per calcolare le metriche binarie. Le metriche binarie vengono calcolate in due condizioni per le attività di classificazione:
Per altre informazioni sulla classificazione, vedere le metriche di estrazione per gli scenari di classificazione. |
compute_target
Necessario
|
Destinazione di calcolo di Azure Machine Learning in cui eseguire l'esperimento di Machine Learning automatizzato. Per altre informazioni sulle destinazioni di calcolo, vedere https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote . |
spark_context
Necessario
|
<xref:SparkContext>
Contesto spark. Applicabile solo se usato all'interno dell'ambiente Azure Databricks/Spark. |
X
Necessario
|
Le funzionalità di training da usare durante l'adattamento delle pipeline durante un esperimento. Questa impostazione è deprecata. Usare invece training_data e label_column_name. |
y
Necessario
|
Etichette di training da usare durante l'adattamento delle pipeline durante un esperimento. Questo è il valore che verrà stimato dal modello. Questa impostazione è deprecata. Usare invece training_data e label_column_name. |
sample_weight
Necessario
|
Il peso da assegnare a ogni campione di training durante l'esecuzione di pipeline di adattamento, ogni riga deve corrispondere a una riga in dati X e y. Specificare questo parametro quando si |
X_valid
Necessario
|
Funzionalità di convalida da usare durante l'adattamento delle pipeline durante un esperimento. Se specificato, |
y_valid
Necessario
|
Etichette di convalida da usare durante l'adattamento delle pipeline durante un esperimento. Sia che |
sample_weight_valid
Necessario
|
Il peso da assegnare a ogni campione di convalida durante l'esecuzione di pipeline di assegnazione dei punteggi, ogni riga deve corrispondere a una riga in dati X e y. Specificare questo parametro quando si |
cv_splits_indices
Necessario
|
Indici in cui suddividere i dati di training per la convalida incrociata. Ogni riga è una piega incrociata separata e all'interno di ogni crossfold, forniscono 2 matrici numpy, la prima con gli indici per i campioni da usare per i dati di training e la seconda con gli indici da usare per i dati di convalida. ad esempio [[t1, v1], [t2, v2], ...] dove t1 è gli indici di training per la prima piega incrociata e v1 è l'indice di convalida per la prima piega incrociata. Per specificare i dati esistenti come dati di convalida, usare |
validation_size
Necessario
|
Frazione dei dati da mantenere per la convalida quando i dati di convalida utente non sono specificati. Deve essere compreso tra 0,0 e 1,0 non inclusi. Specificare Per altre informazioni, vedere Configurare le divisioni dei dati e la convalida incrociata in Machine Learning automatizzato. |
n_cross_validations
Necessario
|
Numero di convalide incrociate da eseguire quando i dati di convalida utente non sono specificati. Specificare Per altre informazioni, vedere Configurare le divisioni dei dati e la convalida incrociata in Machine Learning automatizzato. |
y_min
Necessario
|
Valore minimo di y per un esperimento di regressione. La combinazione di e |
y_max
Necessario
|
Valore massimo di y per un esperimento di regressione. La combinazione di e |
num_classes
Necessario
|
Numero di classi nei dati delle etichette per un esperimento di classificazione. Questa impostazione è deprecata. Questo valore verrà invece calcolato dai dati. |
featurization
Necessario
|
str oppure
FeaturizationConfig
'auto' / 'off' / FeaturizationConfig Indicator per stabilire se il passaggio di definizione delle caratteristiche deve essere eseguito automaticamente o meno o se è necessario usare la definizione delle caratteristiche personalizzate. Nota: se i dati di input sono di tipo sparse, la definizione delle caratteristiche non può essere attivata. Il tipo di colonna viene rilevato automaticamente. In base alla pre-elaborazione/definizione delle caratteristiche del tipo di colonna rilevata, viene eseguita come segue:
Per altre informazioni, vedere l'articolo Configurare esperimenti di Machine Learning automatizzato in Python. Per personalizzare il passaggio della definizione delle caratteristiche, specificare un oggetto FeaturizationConfig. La funzionalità personalizzata supporta attualmente il blocco di un set di trasformatori, l'aggiornamento dello scopo della colonna, la modifica dei parametri del trasformatore e l'eliminazione di colonne. Per altre informazioni, vedere Personalizzare la progettazione delle funzionalità. Nota: le funzionalità timeseries vengono gestite separatamente quando il tipo di attività è impostato per prevedere indipendentemente da questo parametro. |
max_cores_per_iteration
Necessario
|
Numero massimo di thread da usare per una determinata iterazione di training. Valori accettabili:
|
max_concurrent_iterations
Necessario
|
Rappresenta il numero massimo di iterazioni che verrebbero eseguite in parallelo. Il valore predefinito è 1.
|
iteration_timeout_minutes
Necessario
|
Tempo massimo in minuti per cui ogni iterazione può essere eseguita prima che venga terminata. Se non specificato, viene utilizzato un valore di 1 mese o 43200 minuti. |
mem_in_mb
Necessario
|
Utilizzo massimo della memoria per cui ogni iterazione può essere eseguita prima che venga terminata. Se non specificato, viene utilizzato un valore pari a 1 PB o 1073741824 MB. |
enforce_time_on_windows
Necessario
|
Indica se applicare un limite di tempo al training del modello a ogni iterazione in Windows. Il valore predefinito è True. Se si esegue da un file di script Python (con estensione py), vedere la documentazione per consentire i limiti delle risorse in Windows. |
experiment_timeout_hours
Necessario
|
Quantità massima di tempo, in ore, che tutte le iterazioni combinate possono impiegare prima che l'esperimento venga terminato. Può essere un valore decimale come 0,25 che rappresenta 15 minuti. Se non specificato, il timeout predefinito dell'esperimento è di 6 giorni. Per specificare un timeout minore o uguale a 1 ora, assicurarsi che le dimensioni del set di dati non siano maggiori di 10.000.000 (colonne di righe) o i risultati di un errore. |
experiment_exit_score
Necessario
|
Punteggio di destinazione per l'esperimento. L'esperimento termina dopo il raggiungimento di questo punteggio. Se non viene specificato (nessun criterio), l'esperimento viene eseguito fino a quando non viene eseguito alcun ulteriore progresso sulla metrica primaria. Per altre informazioni sui criteri di uscita, vedere questo articolo. |
enable_early_stopping
Necessario
|
Indica se abilitare la terminazione anticipata se il punteggio non migliora a breve termine. Il valore predefinito è True. Logica di arresto anticipato:
|
blocked_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Elenco di algoritmi da ignorare per un esperimento. Se |
blacklist_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Il parametro deprecato usa invece blocked_models. |
exclude_nan_labels
Necessario
|
Indica se escludere righe con valori NaN nell'etichetta. Il valore predefinito è True. |
verbosity
Necessario
|
Livello di dettaglio per la scrittura nel file di log. Il valore predefinito è INFO o 20. I valori accettabili sono definiti nella libreria di registrazione Python. |
enable_tf
Necessario
|
Parametro deprecato per abilitare/disabilitare gli algoritmi Tensorflow. Il valore predefinito è False. |
model_explainability
Necessario
|
Indica se abilitare la spiegazione del modello AutoML migliore alla fine di tutte le iterazioni di training di AutoML. Il valore predefinito è True. Per altre informazioni, vedere Interpretabilità: spiegazioni dei modelli in Machine Learning automatizzato. |
allowed_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Elenco di nomi di modello da cercare per un esperimento. Se non specificato, tutti i modelli supportati per l'attività vengono usati meno gli eventuali modelli specificati nei |
whitelist_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Il parametro deprecato usa invece allowed_models. |
enable_onnx_compatible_models
Necessario
|
Indica 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. |
forecasting_parameters
Necessario
|
Oggetto ForecastingParameters per contenere tutti i parametri specifici della previsione. |
time_column_name
Necessario
|
Nome della colonna temporale. Questo parametro è necessario quando si prevede di specificare la colonna datetime nei dati di input usati per compilare la serie temporale e dedurre la relativa frequenza. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
max_horizon
Necessario
|
Orizzonte di previsione massimo desiderato in unità di frequenza delle serie temporali. Il valore predefinito è 1. Le unità sono basate sull'intervallo di tempo dei dati di training, ad esempio mensile, settimanale che il forecaster deve prevedere. Quando si prevede il tipo di attività, questo parametro è obbligatorio. Per altre informazioni sull'impostazione dei parametri di previsione, vedere Eseguire il training automatico di un modello di previsione delle serie temporali. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
grain_column_names
Necessario
|
Nomi delle colonne utilizzate per raggruppare un intervallo di tempo. Può essere usato per creare più serie. Se la granularità non è definita, si presuppone che il set di dati sia una serie temporale. Questo parametro viene usato con la previsione del tipo di attività. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
target_lags
Necessario
|
Numero di periodi precedenti di ritardo dalla colonna di destinazione. Il valore predefinito è 1. Questa impostazione è deprecata. Usare invece forecasting_parameters. 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. |
feature_lags
Necessario
|
Flag per la generazione di ritardi per le funzionalità numeriche. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
target_rolling_window_size
Necessario
|
Numero di periodi passati usati per creare una media della finestra mobile della colonna di destinazione. Questa impostazione è deprecata. Usare invece forecasting_parameters. 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. |
country_or_region
Necessario
|
Paese/area geografica utilizzata per generare le funzionalità delle festività. Devono essere codice paese/area geografica ISO 3166 a due lettere, ad esempio "US" o "GB". Questa impostazione è deprecata. Usare invece forecasting_parameters. |
use_stl
Necessario
|
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. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
seasonality
Necessario
|
Impostare la stagionalità delle serie temporali. Se la stagionalità è impostata su "auto", verrà dedotta. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
short_series_handling_configuration
Necessario
|
Parametro che definisce la modalità di gestione di serie temporali brevi da parte di AutoML. Valori possibili: 'auto' (impostazione predefinita), 'pad', 'drop' e None.
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 N/D 55.1 2019-12-30 0 N/D 55.6 2019-12-31 0 N/D 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 handling_configuration gestione risultante handling_configuration risultante Vero auto True auto True pad True 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 |
freq
Necessario
|
Frequenza di previsione. Durante la previsione, questo parametro rappresenta il periodo con cui si desidera 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 impostarlo su maggiore (ma non minore) rispetto alla frequenza del set di dati. I dati verranno aggregati e generati in base alla frequenza di previsione. Ad esempio, per i dati giornalieri, è possibile impostare la frequenza su giornaliera, settimanale o mensile, ma non su base 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_aggregation_function
Necessario
|
Funzione da utilizzare per aggregare la colonna di destinazione della serie temporale in modo che sia conforme a una frequenza specificata dall'utente. Se il target_aggregation_function è impostato, ma il parametro freq non è impostato, viene generato l'errore. Le possibili funzioni di aggregazione di destinazione sono: "sum", "max", "min" e "mean". Freq target_aggregation_function Meccanismo di correzione della regolarità dei dati Nessuno (Predefinito) Nessuno (Predefinito) L'aggregazione non viene applicata. Se la frequenza valida non può essere terminata, verrà generato l'errore. Valore Nessuno (Predefinito) L'aggregazione non viene applicata. Se il numero di punti dati conformi alla griglia di frequenza specificata è inferiore al 90%, questi punti verranno rimossi, altrimenti verrà generato l'errore. Nessuno (Predefinito) Funzione di aggregazione Errore relativo ai parametri di frequenza mancanti generati. Valore Funzione di aggregazione Aggregazione alla frequenza tramite la funzione providedaggregation. |
enable_voting_ensemble
Necessario
|
Indica se abilitare o disabilitare l'iterazione VotingEnsemble. Il valore predefinito è True. Per altre informazioni sugli insiemi, vedere Configurazione dell'ensemble. |
enable_stack_ensemble
Necessario
|
Indica se abilitare/disabilitare l'iterazione StackEnsemble. Il valore predefinito è none. 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 insiemi, vedere Configurazione dell'ensemble. |
debug_log
Necessario
|
File di log in cui scrivere informazioni di debug. Se non specificato, viene usato 'automl.log'. |
training_data
Necessario
|
Dati di training da usare all'interno dell'esperimento.
Deve contenere sia le funzionalità di training che una colonna etichetta (facoltativamente una colonna pesi di esempio).
Se
|
validation_data
Necessario
|
Dati di convalida da usare all'interno dell'esperimento.
Deve contenere sia le funzionalità di training che la colonna etichetta (facoltativamente una colonna pesi di esempio).
Se
|
test_data
Necessario
|
Dataset oppure
TabularDataset
La funzionalità Test del modello che usa set di dati di test o suddivisioni dei dati di test è una funzionalità in stato di anteprima e può cambiare in qualsiasi momento. Dati di test da usare per un'esecuzione di test che verrà avviata automaticamente al termine del training del modello. L'esecuzione del test otterrà stime usando il modello migliore e calcola le metriche date queste stime. Se questo parametro o il |
test_size
Necessario
|
La funzionalità Test del modello che usa set di dati di test o suddivisioni dei dati di test è una funzionalità in stato di anteprima e può cambiare in qualsiasi momento. Frazione dei dati di training da contenere per i dati di test per un'esecuzione di test che verrà avviata automaticamente al termine del training del modello. L'esecuzione del test otterrà stime usando il modello migliore e calcola le metriche date queste stime. Deve essere compreso tra 0,0 e 1,0 non inclusi.
Se Per le attività basate sulla regressione, viene usato il campionamento casuale. Per le attività di classificazione, viene usato il campionamento stratificato. La previsione non supporta attualmente la specifica di un set di dati di test tramite una divisione di training/test. Se questo parametro o il |
label_column_name
Necessario
|
Nome della colonna dell'etichetta. Se i dati di input provengono da un pandas. È possibile usare invece i dataframe che non hanno nomi di colonna, gli indici di colonna possono essere espressi come numeri interi. Questo parametro è applicabile ai |
weight_column_name
Necessario
|
Nome della colonna peso campione. Machine Learning automatizzato supporta una colonna ponderata come input, causando l'aumento o la riduzione delle righe nei dati. Se i dati di input provengono da un pandas. È possibile usare invece i dataframe che non hanno nomi di colonna, gli indici di colonna possono essere espressi come numeri interi. Questo parametro è applicabile ai |
cv_split_column_names
Necessario
|
Elenco di nomi delle colonne che contengono la divisione di convalida incrociata personalizzata. Ognuna delle colonne di divisione CV rappresenta una divisione CV in cui ogni riga è contrassegnata come 1 per il training o 0 per la convalida. Questo parametro è applicabile al
Per altre informazioni, vedere Configurare le divisioni dei dati e la convalida incrociata in Machine Learning automatizzato. |
enable_local_managed
Necessario
|
Parametro disabilitato. Le esecuzioni gestite locali non possono essere abilitate in questo momento. |
enable_dnn
Necessario
|
Indica se includere modelli basati su DNN durante la selezione del modello. Il valore predefinito init è Nessuno. Il valore predefinito, tuttavia, è True per le attività NLP della rete neurale di rete e false per tutte le altre attività AutoML. |
task
Necessario
|
Tipo di attività da eseguire. I valori possono essere "classificazione", "regressione" o "previsione" a seconda del tipo di problema di Machine Learning automatizzato da risolvere. |
path
Necessario
|
Percorso completo della cartella del progetto di Azure Machine Learning. Se non specificato, il valore predefinito consiste nell'usare la directory corrente o ".". |
iterations
Necessario
|
Numero totale di combinazioni di algoritmi e parametri diversi da testare durante un esperimento di Machine Learning automatizzato. Se non specificato, il valore predefinito è 1000 iterazioni. |
primary_metric
Necessario
|
Metrica ottimizzata da Machine Learning automatizzato per la selezione del modello. Machine Learning automatizzato raccoglie più metriche di quanto possa essere ottimizzato. È possibile usare get_primary_metrics per ottenere un elenco di metriche valide per l'attività specificata. Per altre informazioni sul modo in cui vengono calcolate le metriche, vedere https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric. Se non specificato, l'accuratezza viene usata per le attività di classificazione, per le attività di previsione e regressione viene usata la precisione per la classificazione delle immagini e la classificazione con più etichette immagine e per la precisione media media viene usata per il rilevamento degli oggetti immagine. |
positive_label
Necessario
|
Etichetta di classe positiva con cui verrà usato Machine Learning automatizzato per calcolare le metriche binarie. Le metriche binarie vengono calcolate in due condizioni per le attività di classificazione:
Per altre informazioni sulla classificazione, vedere le metriche di estrazione per gli scenari di classificazione. |
compute_target
Necessario
|
Destinazione di calcolo di Azure Machine Learning in cui eseguire l'esperimento di Machine Learning automatizzato. Per altre informazioni sulle destinazioni di calcolo, vedere https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote . |
spark_context
Necessario
|
<xref:SparkContext>
Contesto spark. Applicabile solo se usato all'interno dell'ambiente Azure Databricks/Spark. |
X
Necessario
|
Le funzionalità di training da usare durante l'adattamento delle pipeline durante un esperimento. Questa impostazione è deprecata. Usare invece training_data e label_column_name. |
y
Necessario
|
Etichette di training da usare durante l'adattamento delle pipeline durante un esperimento. Questo è il valore che verrà stimato dal modello. Questa impostazione è deprecata. Usare invece training_data e label_column_name. |
sample_weight
Necessario
|
Il peso da assegnare a ogni campione di training durante l'esecuzione di pipeline di adattamento, ogni riga deve corrispondere a una riga in dati X e y. Specificare questo parametro quando si |
X_valid
Necessario
|
Funzionalità di convalida da usare durante l'adattamento delle pipeline durante un esperimento. Se specificato, |
y_valid
Necessario
|
Etichette di convalida da usare durante l'adattamento delle pipeline durante un esperimento. Sia che |
sample_weight_valid
Necessario
|
Il peso da assegnare a ogni campione di convalida durante l'esecuzione di pipeline di assegnazione dei punteggi, ogni riga deve corrispondere a una riga in dati X e y. Specificare questo parametro quando si |
cv_splits_indices
Necessario
|
Indici in cui suddividere i dati di training per la convalida incrociata. Ogni riga è una piega incrociata separata e all'interno di ogni crossfold, fornire 2 matrici numpy, la prima con gli indici da usare per i dati di training e la seconda con gli indici da usare per i dati di convalida. ad esempio[[t1, v1], [t2, v2], ...] dove t1 è l'indice di training per la prima piega incrociata e v1 è l'indice di convalida per la prima piega incrociata. Questa opzione è supportata quando i dati vengono passati come set di dati Di funzionalità separati e colonna Etichetta. Per specificare i dati esistenti come dati di convalida, usare |
validation_size
Necessario
|
Frazione dei dati da tenere per la convalida quando i dati di convalida utente non sono specificati. Ciò deve essere compreso tra 0,0 e 1,0 non inclusivo. Specificare Per altre informazioni, vedere Configurare le suddivisioni dei dati e la convalida incrociata in Machine Learning automatizzato. |
n_cross_validations
Necessario
|
Numero di convalida incrociate da eseguire quando i dati di convalida utente non sono specificati. Specificare Per altre informazioni, vedere Configurare le suddivisioni dei dati e la convalida incrociata in Machine Learning automatizzato. |
y_min
Necessario
|
Valore minimo di y per un esperimento di regressione. La combinazione di e |
y_max
Necessario
|
Valore massimo di y per un esperimento di regressione. La combinazione di e |
num_classes
Necessario
|
Numero di classi nei dati dell'etichetta per un esperimento di classificazione. Questa impostazione è deprecata. Questo valore verrà invece calcolato dai dati. |
featurization
Necessario
|
str oppure
FeaturizationConfig
'auto' / 'off' / FeaturizationConfig Indicatore per se il passaggio di funzionalità deve essere eseguito automaticamente o meno o se è necessario usare la funzionalità personalizzata. Nota: se i dati di input sono sparse, la funzionalità non può essere attivata. Il tipo di colonna viene rilevato automaticamente. In base al tipo di colonna rilevato la pre-elaborazione/funzionalità viene eseguita come indicato di seguito:
Altre informazioni sono disponibili nell'articolo Configurare esperimenti di MACHINE automatizzati in Python. Per personalizzare il passaggio di funzionalità, specificare un oggetto FeaturizationConfig. La funzionalità personalizzata supporta attualmente il blocco di un set di trasformatori, l'aggiornamento dello scopo della colonna, la modifica dei parametri del trasformatore e l'eliminazione di colonne. Per altre informazioni, vedere Personalizzare la progettazione delle funzionalità. Nota: le funzionalità timeeries vengono gestite separatamente quando il tipo di attività è impostato per la previsione indipendente da questo parametro. |
max_cores_per_iteration
Necessario
|
Numero massimo di thread da usare per un'iterazione di training specificata. Valori accettabili:
|
max_concurrent_iterations
Necessario
|
Rappresenta il numero massimo di iterazioni che verranno eseguite in parallelo. Il valore predefinito è 1.
|
iteration_timeout_minutes
Necessario
|
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. |
mem_in_mb
Necessario
|
Utilizzo massimo della memoria per cui ogni iterazione può essere eseguita prima che venga terminata. Se non specificato, viene usato un valore pari a 1 PB o 1073741824 MB. |
enforce_time_on_windows
Necessario
|
Se applicare un limite di tempo per il training del modello in ogni iterazione in Windows. Il valore predefinito è True. Se viene eseguito da un file di script Python (.py), vedere la documentazione per consentire i limiti delle risorse in Windows. |
experiment_timeout_hours
Necessario
|
Quantità massima di tempo, in ore, che tutte le iterazioni combinate possono impiegare prima che l'esperimento venga terminato. Può essere un valore decimale come 0,25 che rappresenta 15 minuti. 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 righe) o risultati di errore. |
experiment_exit_score
Necessario
|
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 this >> |
enable_early_stopping
Necessario
|
Se abilitare la terminazione anticipata se il punteggio non migliora a breve termine. Il valore predefinito è True. Logica di arresto anticipato:
|
blocked_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Elenco di algoritmi da ignorare per un esperimento. Se |
blacklist_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Parametro deprecato, usare invece blocked_models. |
exclude_nan_labels
Necessario
|
Se escludere righe con valori NaN nell'etichetta. Il valore predefinito è True. |
verbosity
Necessario
|
Livello di verbosità per la scrittura nel file di log. Il valore predefinito è INFO o 20. I valori accettabili sono definiti nella libreria di registrazione Python. |
enable_tf
Necessario
|
Se abilitare/disabilitare gli algoritmi TensorFlow. Il valore predefinito è False. |
model_explainability
Necessario
|
Se abilitare la spiegazione del modello AutoML migliore alla fine di tutte le iterazioni di training autoML. Il valore predefinito è True. Per altre informazioni, vedere Interpretazione: spiegazioni dei modelli in Machine Learning automatizzato. |
allowed_models
Necessario
|
list(str) oppure
list(Classification) <xref:for classification task> oppure
list(Regression) <xref:for regression task> oppure
list(Forecasting) <xref:for forecasting task>
Elenco dei nomi dei modelli da cercare per un esperimento. Se non specificato, tutti i modelli supportati per l'attività vengono usati meno eventuali elementi specificati in |
allowed_models
Necessario
|
Elenco dei nomi dei modelli da cercare per un esperimento. Se non specificato, tutti i modelli supportati per l'attività vengono usati meno eventuali elementi specificati in |
whitelist_models
Necessario
|
Parametro deprecato, usare invece allowed_models. |
enable_onnx_compatible_models
Necessario
|
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. |
forecasting_parameters
Necessario
|
Oggetto per contenere tutti i parametri specifici di previsione. |
time_column_name
Necessario
|
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. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
max_horizon
Necessario
|
Orizzonte di previsione massimo desiderato in unità di frequenza della serie temporale. Il valore predefinito è 1. Questa impostazione è deprecata. Usare invece forecasting_parameters. 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. |
grain_column_names
Necessario
|
Nomi di colonne usate per raggruppare un timeeries. Può essere usato per creare più serie. Se la granularità non è definita, si presuppone che il set di dati sia una serie temporale. Questo parametro viene usato con la previsione dei tipi di attività. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
target_lags
Necessario
|
Numero di periodi passati da cui eseguire il ritardo dalla colonna di destinazione. Il valore predefinito è 1. Questa impostazione è deprecata. Usare invece forecasting_parameters. Quando si prevede, questo parametro rappresenta il numero di righe per il ritardo dei valori di destinazione in base alla frequenza dei dati. Questo valore viene rappresentato come elenco o intero singolo. Il ritardo deve essere usato quando la relazione tra le variabili indipendenti e la variabile dipendente non corrispondono o correlano 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 della serie temporale. |
feature_lags
Necessario
|
Contrassegno per la generazione di ritardi per le funzionalità numeriche. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
target_rolling_window_size
Necessario
|
Numero di periodi precedenti usati per creare una media di finestra in sequenza della colonna di destinazione. Questa impostazione è deprecata. Usare invece forecasting_parameters. Quando si prevede, 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. |
country_or_region
Necessario
|
Paese/area geografica usata per generare funzionalità di vacanza. Questi devono essere ISO 3166 codici paese/area geografica, ad esempio "US" o "GB". Questa impostazione è deprecata. Usare invece forecasting_parameters. |
use_stl
Necessario
|
Configurare la sTL Decomposition 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. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
seasonality
Necessario
|
Impostare la stagionalità delle serie temporali. Se la stagionalità è impostata su -1, verrà dedotto. Se use_stl non è impostato, questo parametro non verrà usato. Questa impostazione è deprecata. Usare invece forecasting_parameters. |
short_series_handling_configuration
Necessario
|
Parametro che definisce come se AutoML deve gestire serie temporali brevi. Valori possibili: 'auto' (impostazione predefinita), 'pad', 'drop' e Nessuno.
Data numeric_value string target 2020-01-01 23 green 55 L'output presupponendo un numero minimo di valori è quattro: +————+—————+———-+—-+ | Data | numeric_value | stringa | destinazione | +============+===============+==========+========+ | 2019-12-29 | 0 | NA | 55.1 | +————+—————+———-+——–+ | 2019-12-30 | 0 | NA | 55,6 | +————+—————+———-+——–+ | 2019-12-31 | 0 | NA | 54.5 | +————+—————+———-+——–+ | 2020-01-01 | 23 | verde | 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 handling_configuration gestione risultante handling_configuration risultante True auto True auto True pad Vero auto True drop Vero auto Vero Nessuno Falso Nessuno Falso auto Falso Nessuno Falso pad Falso Nessuno Falso drop Falso Nessuno Falso Nessuno Falso Nessuno |
freq
Necessario
|
Frequenza di previsione. Durante la previsione, questo parametro rappresenta il periodo con cui si desidera 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 impostarlo su maggiore (ma non minore) rispetto alla frequenza del set di dati. I dati verranno aggregati e generati in base alla frequenza di previsione. Ad esempio, per i dati giornalieri, è possibile impostare la frequenza su giornaliera, settimanale o mensile, ma non su base 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_aggregation_function
Necessario
|
Funzione da utilizzare per aggregare la colonna di destinazione della serie temporale in modo che sia conforme a una frequenza specificata dall'utente. Se il target_aggregation_function è impostato, ma il parametro freq non è impostato, viene generato l'errore. Le possibili funzioni di aggregazione di destinazione sono: "sum", "max", "min" e "mean". Freq target_aggregation_function Meccanismo di correzione della regolarità dei dati Nessuno (Predefinito) Nessuno (Predefinito) L'aggregazione non viene applicata. Se la frequenza valida non può essere terminata, verrà generato l'errore. Valore Nessuno (Predefinito) L'aggregazione non viene applicata. Se il numero di punti dati conformi alla griglia di frequenza specificata è inferiore al 90%, questi punti verranno rimossi, altrimenti verrà generato l'errore. Nessuno (Predefinito) Funzione di aggregazione Errore relativo ai parametri di frequenza mancanti generati. Valore Funzione di aggregazione Aggregazione alla frequenza tramite la funzione providedaggregation. |
enable_voting_ensemble
Necessario
|
Indica se abilitare o disabilitare l'iterazione VotingEnsemble. Il valore predefinito è True. Per altre informazioni sugli insiemi, vedere Configurazione dell'ensemble. |
enable_stack_ensemble
Necessario
|
Indica se abilitare/disabilitare l'iterazione StackEnsemble. Il valore predefinito è none. 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 insiemi, vedere Configurazione dell'ensemble. |
debug_log
Necessario
|
File di log in cui scrivere informazioni di debug. Se non specificato, viene usato 'automl.log'. |
training_data
Necessario
|
Dati di training da usare all'interno dell'esperimento.
Deve contenere sia le funzionalità di training che una colonna etichetta (facoltativamente una colonna pesi di esempio).
Se
|
validation_data
Necessario
|
Dati di convalida da usare all'interno dell'esperimento.
Deve contenere sia le funzionalità di training che la colonna etichetta (facoltativamente una colonna pesi di esempio).
Se
|
test_data
Necessario
|
Dataset oppure
TabularDataset
La funzionalità Test del modello che usa set di dati di test o suddivisioni dei dati di test è una funzionalità in stato di anteprima e può cambiare in qualsiasi momento. Dati di test da usare per un'esecuzione di test che verrà avviata automaticamente al termine del training del modello. L'esecuzione del test otterrà stime usando il modello migliore e calcola le metriche date queste stime. Se questo parametro o il |
test_size
Necessario
|
La funzionalità Test del modello che usa set di dati di test o suddivisioni dei dati di test è una funzionalità in stato di anteprima e può cambiare in qualsiasi momento. Frazione dei dati di training da contenere per i dati di test per un'esecuzione di test che verrà avviata automaticamente al termine del training del modello. L'esecuzione del test otterrà stime usando il modello migliore e calcola le metriche date queste stime. Deve essere compreso tra 0,0 e 1,0 non inclusi.
Se Per le attività basate sulla regressione, viene usato il campionamento casuale. Per le attività di classificazione, viene usato il campionamento stratificato. La previsione non supporta attualmente la specifica di un set di dati di test tramite una divisione di training/test. Se questo parametro o il |
label_column_name
Necessario
|
Nome della colonna dell'etichetta. Se i dati di input provengono da un pandas. È possibile usare invece i dataframe che non hanno nomi di colonna, gli indici di colonna possono essere espressi come numeri interi. Questo parametro è applicabile ai |
weight_column_name
Necessario
|
Nome della colonna peso campione. Machine Learning automatizzato supporta una colonna ponderata come input, causando l'aumento o la riduzione delle righe nei dati. Se i dati di input provengono da un pandas. È possibile usare invece i dataframe che non hanno nomi di colonna, gli indici di colonna possono essere espressi come numeri interi. Questo parametro è applicabile ai |
cv_split_column_names
Necessario
|
Elenco di nomi delle colonne che contengono la divisione di convalida incrociata personalizzata. Ognuna delle colonne di divisione CV rappresenta una divisione CV in cui ogni riga è contrassegnata come 1 per il training o 0 per la convalida. Questo parametro è applicabile al
Per altre informazioni, vedere Configurare le divisioni dei dati e la convalida incrociata in Machine Learning automatizzato. |
enable_local_managed
Necessario
|
Parametro disabilitato. Le esecuzioni gestite locali non possono essere abilitate in questo momento. |
enable_dnn
Necessario
|
Indica se includere modelli basati su DNN durante la selezione del modello. Il valore predefinito init è Nessuno. Il valore predefinito, tuttavia, è True per le attività NLP della rete neurale di rete e false per tutte le altre attività AutoML. |
Commenti
Il codice seguente illustra un esempio di base per la creazione di un oggetto AutoMLConfig e l'invio di un esperimento per la regressione:
automl_settings = {
"n_cross_validations": 3,
"primary_metric": 'r2_score',
"enable_early_stopping": True,
"experiment_timeout_hours": 1.0,
"max_concurrent_iterations": 4,
"max_cores_per_iteration": -1,
"verbosity": logging.INFO,
}
automl_config = AutoMLConfig(task = 'regression',
compute_target = compute_target,
training_data = train_data,
label_column_name = label,
**automl_settings
)
ws = Workspace.from_config()
experiment = Experiment(ws, "your-experiment-name")
run = experiment.submit(automl_config, show_output=True)
Un esempio completo è disponibile in Regressione
Di seguito sono riportati alcuni esempi di uso di AutoMLConfig per la previsione:
Esempi di uso di AutoMLConfig per tutti i tipi di attività sono disponibili in questi notebook di Machine Learning automatizzati.
Per informazioni di base su Machine Learning automatizzato, vedere gli articoli seguenti:
Configurare esperimenti di Machine Learning automatizzati in Python. In questo articolo sono disponibili informazioni sui diversi algoritmi e sulle metriche primarie usate per ogni tipo di attività.
Eseguire il training automatico di un modello di previsione delle serie temporali. In questo articolo sono disponibili informazioni sui parametri del costruttore e
**kwargs
usati nella previsione.
Per altre informazioni sulle diverse opzioni per la configurazione delle divisioni di dati di training/convalida e la convalida incrociata per machine learning automatizzato, AutoML, esperimenti, vedere Configurare le divisioni dei dati e la convalida incrociata in Machine Learning automatizzato.
Metodi
as_serializable_dict |
Convertire l'oggetto in dizionario. |
get_supported_dataset_languages |
Ottenere le lingue supportate e i codici di lingua corrispondenti in ISO 639-3. |
as_serializable_dict
Convertire l'oggetto in dizionario.
as_serializable_dict() -> Dict[str, Any]
get_supported_dataset_languages
Ottenere le lingue supportate e i codici di lingua corrispondenti in ISO 639-3.
get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]
Parametri
Nome | Descrizione |
---|---|
cls
Necessario
|
Oggetto classe di AutoMLConfig. |
use_gpu
Necessario
|
booleano che indica se il calcolo gpu è in uso o meno. |
Restituisce
Tipo | Descrizione |
---|---|
dizionario di formato {: }. Il codice del linguaggio è conforme allo standard ISO 639-3, fare riferimento a https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes |