Partager via


HyperDriveConfig Classe

Configuration qui définit une exécution HyperDrive.

La configuration d’HyperDrive inclut des informations sur l’échantillonnage de l’espace hyperparamètre, la stratégie d’arrêt, la métrique principale, la reprise de la configuration, l’estimateur et la cible de calcul sur laquelle exécuter l’expérience s’exécute.

Initialisez HyperDriveConfig.

Constructeur

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)

Paramètres

Nom Description
estimator

Estimateur qui sera appelé avec des hyperparamètres échantillonné. Spécifiez uniquement l’un des paramètres suivants : estimator, run_configou pipeline.

Valeur par défaut: None
hyperparameter_sampling
Obligatoire

Espace d’échantillonnage des hyperparamètres.

policy

Stratégie d’arrêt anticipé à utiliser. Si aucun - valeur par défaut, aucune stratégie d’arrêt anticipé n’est utilisée.

La MedianStoppingPolicy valeur delay_evaluation de 5 est une bonne politique d’arrêt pour commencer. Il s’agit de paramètres conservateurs qui peuvent fournir 25%-35% économies sans perte sur la métrique principale (en fonction de nos données d’évaluation).

Valeur par défaut: None
primary_metric_name
Obligatoire
str

Nom de la métrique principale signalée par l’expérience s’exécute.

primary_metric_goal
Obligatoire

PrimaryMetricGoal.MINIMIZE ou PrimaryMetricGoal.MAXIMIZE. Ce paramètre détermine si la métrique principale doit être réduite ou agrandie lors de l’évaluation des exécutions.

max_total_runs
Obligatoire
int

Nombre maximal d’exécutions à créer. Il s’agit de la limite supérieure ; il peut y avoir moins d’exécutions lorsque l’espace échantillon est inférieur à cette valeur. Si max_total_runs et max_duration_minutes sont tous deux spécifiés, l’expérience d’optimisation des hyperparamètres s’arrête dès que le premier de ces deux seuils est atteint.

max_concurrent_runs
int

Nombre maximal d’exécutions à exécuter simultanément. Si aucune, toutes les exécutions sont lancées en parallèle. Le nombre d’exécutions simultanées est limité par les ressources disponibles dans la cible de calcul spécifiée. Par conséquent, vous devez vous assurer que la cible de calcul dispose des ressources disponibles pour la concurrence souhaitée.

Valeur par défaut: None
max_duration_minutes
int

Durée maximale de l’exécution d’HyperDrive. Une fois cette heure dépassée, toutes les exécutions toujours en cours d’exécution sont annulées. Si max_total_runs et max_duration_minutes sont tous deux spécifiés, l’expérience d’optimisation des hyperparamètres s’arrête dès que le premier de ces deux seuils est atteint.

Valeur par défaut: 10080
resume_from

Une exécution hyperdrive ou une liste d’exécutions hyperdrive qui seront héritées en tant que points de données pour réchauffer la nouvelle exécution.

Valeur par défaut: None
resume_child_runs
Run ou list[Run]

Une exécution enfant hyperdrive ou une liste d’exécutions enfants hyperdrive qui reprendront en tant que nouvelles exécutions enfants de la nouvelle exécution hyperdrive.

Valeur par défaut: None
run_config

Objet permettant de configurer la configuration pour les exécutions de script/notebook. Spécifiez uniquement l’un des paramètres suivants : estimator, run_configou pipeline.

Valeur par défaut: None
pipeline

Objet de pipeline permettant de configurer la configuration des exécutions de pipeline. L’objet de pipeline est appelé avec les exemples d’hyperparamètres pour envoyer des exécutions de pipeline. Spécifiez uniquement l’un des paramètres suivants : estimator, run_configou pipeline.

Valeur par défaut: None
custom_run_id
str

ID d’exécution personnalisé fourni par l’utilisateur

Valeur par défaut: None
hyperparameter_sampling
Obligatoire

Définition d’échantillonnage de l’espace hyperparamètre.

primary_metric_name
Obligatoire
str

Nom de la métrique principale signalée par l’expérience s’exécute.

primary_metric_goal
Obligatoire

PrimaryMetricGoal.MINIMIZE ou PrimaryMetricGoal.MAXIMIZE. Ce paramètre détermine si la métrique principale doit être réduite ou agrandie lors de l’évaluation des exécutions.

max_total_runs
Obligatoire
int

Nombre maximal d’exécutions à créer. Il s’agit de la limite supérieure ; il peut y avoir moins d’exécutions lorsque l’espace échantillon est inférieur à cette valeur.

max_concurrent_runs
Obligatoire
int

Nombre maximal d’exécutions à exécuter simultanément. Si aucune, toutes les exécutions sont lancées en parallèle.

max_duration_minutes
Obligatoire
int

Durée maximale de l’exécution d’HyperDrive. Une fois cette heure dépassée, toutes les exécutions toujours en cours d’exécution sont annulées.

policy
Obligatoire

Stratégie d’arrêt anticipé à utiliser. Si aucun - valeur par défaut, aucune stratégie d’arrêt anticipé n’est utilisée.

La <xref:azureml.train.hyperdrive.MedianTerminationPolicy> valeur delay_evaluation de 5 est une bonne politique d’arrêt pour commencer. Il s’agit de paramètres conservateurs qui peuvent fournir 25%-35% économies sans perte sur la métrique principale (en fonction de nos données d’évaluation).

estimator
Obligatoire

Estimateur qui sera appelé avec des paramètres Hyper échantillonné. Spécifiez uniquement l’un des paramètres suivants : estimator, run_configou pipeline.

run_config
Obligatoire

Objet permettant de configurer la configuration pour les exécutions de script/notebook. Spécifiez uniquement l’un des paramètres suivants : estimator, run_configou pipeline.

resume_from
Obligatoire

Une exécution hyperdrive ou une liste d’exécutions hyperdrive qui seront héritées en tant que points de données pour réchauffer la nouvelle exécution.

resume_child_runs
Obligatoire
Run | list[Run]

Une exécution enfant hyperdrive ou une liste d’exécutions enfants hyperdrive qui reprendront en tant que nouvelles exécutions enfants de la nouvelle exécution hyperdrive.

pipeline
Obligatoire

Objet de pipeline permettant de configurer la configuration des exécutions de pipeline. L’objet de pipeline est appelé avec les exemples d’hyperparamètres pour envoyer des exécutions de pipeline. Spécifiez uniquement l’un des paramètres suivants : estimator, run_configou pipeline.

custom_run_id
Obligatoire
str

ID d’exécution personnalisé fourni par l’utilisateur

debug_flag
Valeur par défaut: None

Remarques

L’exemple ci-dessous montre la création d’un objet HyperDriveConfig à utiliser pour le tunning hyperparamètre. Dans l’exemple, le nom de la métrique principale correspond à une valeur consignée dans le script d’entraînement.


   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)

Pour plus d’informations sur l’utilisation d’HyperDriveConfig, consultez le tutoriel Ajuster les hyperparamètres pour votre modèle.

Attributs

estimator

Retourne l’estimateur utilisé dans l’exécution d’HyperDrive.

La valeur est None si l’exécution utilise une configuration d’exécution de script ou un pipeline.

Retours

Type Description

Estimateur.

pipeline

Retournez le pipeline utilisé dans l’exécution d’HyperDrive.

La valeur est None si l’exécution utilise une configuration d’exécution de script ou un estimateur.

Retours

Type Description

Pipeline.

run_config

Retournez la configuration de script/notebook utilisée dans l’exécution d’HyperDrive.

La valeur est None si l’exécution utilise un estimateur ou un pipeline.

Retours

Type Description

Configuration de l’exécution.

source_directory

Retournez le répertoire source de la configuration à exécuter.

Retours

Type Description
str

Répertoire source