Condividi tramite


HyperDriveConfig Classe

Configurazione che definisce un'esecuzione di HyperDrive.

La configurazione di HyperDrive include informazioni sul campionamento dello spazio iperparametri, sui criteri di terminazione, sulla metrica primaria, sulla ripresa da configurazione, stima e destinazione di calcolo per eseguire l'esperimento in esecuzione.

Inizializzare HyperDriveConfig.

Ereditarietà
builtins.object
HyperDriveConfig

Costruttore

HyperDriveConfig(hyperparameter_sampling, primary_metric_name, primary_metric_goal, max_total_runs, max_concurrent_runs=None, max_duration_minutes=10080, policy=None, estimator=None, run_config=None, resume_from=None, resume_child_runs=None, pipeline=None, debug_flag=None, custom_run_id=None)

Parametri

Nome Descrizione
estimator

Oggetto di stima che verrà chiamato con iperparametri campionati. Specificare solo uno dei parametri seguenti: estimator, run_configo pipeline.

valore predefinito: None
hyperparameter_sampling
Necessario

Spazio di campionamento dell'iperparametro.

policy

Criteri di terminazione anticipata da usare. Se None: il valore predefinito non verrà usato alcun criterio di terminazione anticipata.

Il MedianStoppingPolicy con delay_evaluation 5 è un buon criterio di terminazione da iniziare. Queste sono impostazioni conservatrici, che possono offrire risparmi del 25%-35% senza perdita sulla metrica primaria (in base ai dati di valutazione).

valore predefinito: None
primary_metric_name
Necessario
str

Nome della metrica primaria segnalata dall'esperimento.

primary_metric_goal
Necessario

PrimaryMetricGoal.MINIMIZE o PrimaryMetricGoal.MAXIMIZE. Questo parametro determina se la metrica primaria deve essere ridotta al minimo o ingrandita durante la valutazione.

max_total_runs
Necessario
int

Numero massimo di esecuzioni da creare. Questo è il limite superiore; potrebbero essere presenti meno esecuzioni quando lo spazio di esempio è minore di questo valore. Se si specificano sia max_total_runs che max_duration_minutes, l'esperimento di ottimizzazione degli iperparametri viene terminato quando viene raggiunta la prima di queste due soglie.

max_concurrent_runs
int

Numero massimo di esecuzioni da eseguire simultaneamente. Se None, tutte le esecuzioni vengono avviate in parallelo. Il numero di esecuzioni simultanee è limitato dalle risorse disponibili nella destinazione di calcolo specificata. È quindi necessario verificare che la destinazione di calcolo disponga di risorse sufficienti per la concorrenza desiderata.

valore predefinito: None
max_duration_minutes
int

Durata massima dell'esecuzione di HyperDrive. Una volta superata questa volta, le esecuzioni ancora in esecuzione vengono annullate. Se si specificano sia max_total_runs che max_duration_minutes, l'esperimento di ottimizzazione degli iperparametri viene terminato quando viene raggiunta la prima di queste due soglie.

valore predefinito: 10080
resume_from

Esecuzione hyperdrive o elenco di esecuzioni di hyperdrive ereditate come punti dati per avviare la nuova esecuzione.

valore predefinito: None
resume_child_runs
Run oppure list[Run]

Esecuzione figlio hyperdrive o elenco di esecuzioni figlio di hyperdrive che verranno riprese come nuove esecuzioni figlio della nuova esecuzione di hyperdrive.

valore predefinito: None
run_config

Oggetto per configurare la configurazione per le esecuzioni di script/notebook. Specificare solo uno dei parametri seguenti: estimator, run_configo pipeline.

valore predefinito: None
pipeline

Oggetto pipeline per configurare la configurazione per le esecuzioni della pipeline. L'oggetto pipeline verrà chiamato con gli iperparametri di esempio per inviare le esecuzioni della pipeline. Specificare solo uno dei parametri seguenti: estimator, run_configo pipeline.

valore predefinito: None
custom_run_id
str

ID di esecuzione personalizzato fornito dall'utente

valore predefinito: None
hyperparameter_sampling
Necessario

Definizione di campionamento dello spazio di iperparametri.

primary_metric_name
Necessario
str

Nome della metrica primaria segnalata dall'esperimento.

primary_metric_goal
Necessario

PrimaryMetricGoal.MINIMIZE o PrimaryMetricGoal.MAXIMIZE. Questo parametro determina se la metrica primaria deve essere ridotta al minimo o ingrandita durante la valutazione.

max_total_runs
Necessario
int

Numero massimo di esecuzioni da creare. Questo è il limite superiore; potrebbero essere presenti meno esecuzioni quando lo spazio di esempio è minore di questo valore.

max_concurrent_runs
Necessario
int

Numero massimo di esecuzioni da eseguire simultaneamente. Se None, tutte le esecuzioni vengono avviate in parallelo.

max_duration_minutes
Necessario
int

Durata massima dell'esecuzione di HyperDrive. Una volta superata questa volta, le esecuzioni ancora in esecuzione vengono annullate.

policy
Necessario

Criteri di terminazione anticipata da usare. Se None: il valore predefinito non verrà usato alcun criterio di terminazione anticipata.

Il <xref:azureml.train.hyperdrive.MedianTerminationPolicy> con delay_evaluation 5 è un buon criterio di terminazione da iniziare. Queste sono impostazioni conservatrici, che possono offrire risparmi del 25%-35% senza perdita sulla metrica primaria (in base ai dati di valutazione).

estimator
Necessario

Valore di stima che verrà chiamato con parametri hyper di esempio. Specificare solo uno dei parametri seguenti: estimator, run_configo pipeline.

run_config
Necessario

Oggetto per configurare la configurazione per le esecuzioni di script/notebook. Specificare solo uno dei parametri seguenti: estimator, run_configo pipeline.

resume_from
Necessario

Esecuzione hyperdrive o elenco di esecuzioni di hyperdrive ereditate come punti dati per avviare la nuova esecuzione.

resume_child_runs
Necessario
Run | list[Run]

Esecuzione figlio hyperdrive o elenco di esecuzioni figlio di hyperdrive che verranno riprese come nuove esecuzioni figlio della nuova esecuzione di hyperdrive.

pipeline
Necessario

Oggetto pipeline per configurare la configurazione per le esecuzioni della pipeline. L'oggetto pipeline verrà chiamato con gli iperparametri di esempio per inviare le esecuzioni della pipeline. Specificare solo uno dei parametri seguenti: estimator, run_configo pipeline.

custom_run_id
Necessario
str

ID di esecuzione personalizzato fornito dall'utente

debug_flag
valore predefinito: None

Commenti

L'esempio seguente mostra la creazione di un oggetto HyperDriveConfig da usare per la tunning di iperparametri. Nell'esempio il nome della metrica primaria corrisponde a un valore registrato nello script di training.


   hd_config = HyperDriveConfig(run_config=src,
                    hyperparameter_sampling=ps,
                    policy=early_termination_policy,
                    primary_metric_name='validation_acc',
                    primary_metric_goal=PrimaryMetricGoal.MAXIMIZE,
                    max_total_runs=4,
                    max_concurrent_runs=4)

Per altre informazioni sull'uso di HyperDriveConfig, vedere l'esercitazione Ottimizzare gli iperparametri per il modello.

Attributi

estimator

Restituire lo strumento di stima usato nell'esecuzione di HyperDrive.

Valore none se l'esecuzione usa una configurazione di esecuzione di script o una pipeline.

Restituisce

Tipo Descrizione

Stimare.

pipeline

Restituire la pipeline usata nell'esecuzione di HyperDrive.

Valore none se l'esecuzione usa una configurazione di esecuzione di script o un stimatore.

Restituisce

Tipo Descrizione

Pipeline.

run_config

Restituire la configurazione dello script/notebook usata nell'esecuzione di HyperDrive.

Valore none se l'esecuzione usa un stimatore o una pipeline.

Restituisce

Tipo Descrizione

Configurazione dell'esecuzione.

source_directory

Restituire la directory di origine dalla configurazione da eseguire.

Restituisce

Tipo Descrizione
str

Directory di origine