Partager via


SweepJob Classe

Tâche de balayage pour le réglage des hyperparamètres.

Héritage
azure.ai.ml.entities._job.job.Job
SweepJob
azure.ai.ml.entities._job.sweep.parameterized_sweep.ParameterizedSweep
SweepJob
azure.ai.ml.entities._job.job_io_mixin.JobIOMixin
SweepJob

Constructeur

SweepJob(*, name: str | None = None, description: str | None = None, tags: Dict | None = None, display_name: str | None = None, experiment_name: str | None = None, identity: ManagedIdentityConfiguration | AmlTokenConfiguration | UserIdentityConfiguration | None = None, inputs: Dict[str, int | str | float | bool | Input] | None = None, outputs: Dict[str, Output] | None = None, compute: str | None = None, limits: SweepJobLimits | None = None, sampling_algorithm: str | SamplingAlgorithm | None = None, search_space: Dict[str, Choice | LogNormal | LogUniform | Normal | QLogNormal | QLogUniform | QNormal | QUniform | Randint | Uniform] | None = None, objective: Objective | None = None, trial: CommandJob | CommandComponent | None = None, early_termination: BanditPolicy | MedianStoppingPolicy | TruncationSelectionPolicy | None = None, queue_settings: QueueSettings | None = None, **kwargs: Any)

Paramètres

name
str

Nom du travail.

display_name
str

Nom d’affichage du travail.

description
str

Description du travail.

tags
dict[str, str]

Dictionnaire de balises. Les balises peuvent être ajoutées, supprimées et mises à jour.

properties
dict[str, str]

Dictionnaire de propriétés de ressource.

experiment_name
str

Nom de l’expérience sous laquelle le travail sera créé. Si Aucun est fourni, le travail sera créé sous l’expérience « Par défaut ».

identity
Union[ManagedIdentityConfiguration, AmlTokenConfiguration, UserIdentityConfiguration]

Identité que le travail d’entraînement utilisera lors de l’exécution sur le calcul.

inputs
dict

Entrées dans la commande.

outputs
dict[str, Output]

Mappage des liaisons de données de sortie utilisées dans le travail.

sampling_algorithm
str

Algorithme d’échantillonnage des hyperparamètres à utiliser sur le search_space. La valeur par défaut est « random ».

search_space
Dict

Définir l’espace de recherche d’hyperparamètres. La clé est le nom de l’hyperparamètre, et la valeur est l’expression de paramètre.

objective
Objective

Métrique pour laquelle optimiser.

compute
str

Cible de calcul sur laquelle le travail s’exécute.

trial
Union[CommandJob, CommandComponent]

Configuration du travail pour chaque version d’évaluation. Chaque essai sera fourni avec une combinaison différente de valeurs d’hyperparamètre que le système échantillonne à partir du search_space.

early_termination
Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]

Stratégie d’arrêt anticipé à utiliser. Un travail d’évaluation est annulé quand les critères de la stratégie spécifiée sont satisfaits. En cas d’omission, aucune stratégie d’arrêt anticipé n’est appliquée.

limits
<xref:azure.ai.ml.entities.SweepJobLimits>

Limites du travail de balayage.

queue_settings
QueueSettings

Paramètres de file d’attente pour le travail.

kwargs
dict

Dictionnaire des paramètres de configuration supplémentaires.

Exemples

Création d’une tâche de balayage


   from azure.ai.ml.entities import CommandJob
   from azure.ai.ml.sweep import BayesianSamplingAlgorithm, Objective, SweepJob, SweepJobLimits

   command_job = CommandJob(
       inputs=dict(kernel="linear", penalty=1.0),
       compute=cpu_cluster,
       environment=f"{job_env.name}:{job_env.version}",
       code="./scripts",
       command="python scripts/train.py --kernel $kernel --penalty $penalty",
       experiment_name="sklearn-iris-flowers",
   )

   sweep = SweepJob(
       sampling_algorithm=BayesianSamplingAlgorithm(),
       trial=command_job,
       search_space={"ss": Choice(type="choice", values=[{"space1": True}, {"space2": True}])},
       inputs={"input1": {"file": "top_level.csv", "mode": "ro_mount"}},
       compute="top_level",
       limits=SweepJobLimits(trial_timeout=600),
       objective=Objective(goal="maximize", primary_metric="accuracy"),
   )

Méthodes

dump

Vide le contenu du travail dans un fichier au format YAML.

set_limits

Définissez des limites pour le nœud Balayage. Conservez la valeur Aucun si vous ne souhaitez pas mettre à jour les valeurs correspondantes.

set_objective

Définissez l’objet balayage.. Conservez la valeur Aucun si vous ne souhaitez pas mettre à jour les valeurs correspondantes.

« réduire », « agrandir ». :type goal : str :mot clé primary_metric : Nom de la métrique à optimiser. :p aramtype primary_metric : str

dump

Vide le contenu du travail dans un fichier au format YAML.

dump(dest: str | PathLike | IO, **kwargs) -> None

Paramètres

dest
Union[<xref:PathLike>, str, IO[AnyStr]]
Obligatoire

Chemin d’accès local ou flux de fichiers dans lequel écrire le contenu YAML. Si dest est un chemin de fichier, un nouveau fichier est créé. Si dest est un fichier ouvert, le fichier est écrit directement dans.

kwargs
dict

Arguments supplémentaires à passer au sérialiseur YAML.

Exceptions

Déclenché si dest est un chemin de fichier et que le fichier existe déjà.

Déclenché si dest est un fichier ouvert et que le fichier n’est pas accessible en écriture.

set_limits

Définissez des limites pour le nœud Balayage. Conservez la valeur Aucun si vous ne souhaitez pas mettre à jour les valeurs correspondantes.

set_limits(*, max_concurrent_trials: int | None = None, max_total_trials: int | None = None, timeout: int | None = None, trial_timeout: int | None = None) -> None

Paramètres

max_concurrent_trials
int

nombre maximal d’essais simultanés.

max_total_trials
int

nombre total maximal d’essais.

timeout
int

délai d’expiration total en secondes pour le nœud de balayage

trial_timeout
int

délai d’expiration en secondes pour chaque version d’évaluation

Exceptions

Déclenché si dest est un chemin de fichier et que le fichier existe déjà.

Déclenché si dest est un fichier ouvert et que le fichier n’est pas accessible en écriture.

set_objective

Définissez l’objet balayage.. Conservez la valeur Aucun si vous ne souhaitez pas mettre à jour les valeurs correspondantes.

« réduire », « agrandir ». :type goal : str :mot clé primary_metric : Nom de la métrique à optimiser. :p aramtype primary_metric : str

set_objective(*, goal: str | None = None, primary_metric: str | None = None) -> None

Paramètres

goal

Définit des objectifs de métriques pris en charge pour le réglage des hyperparamètres. Les valeurs possibles sont :

Exceptions

Déclenché si dest est un chemin de fichier et que le fichier existe déjà.

Déclenché si dest est un fichier ouvert et que le fichier n’est pas accessible en écriture.

Attributs

base_path

Chemin d’accès de base de la ressource.

Retours

Chemin d’accès de base de la ressource.

Type de retour

str

creation_context

Contexte de création de la ressource.

Retours

Métadonnées de création pour la ressource.

Type de retour

early_termination

Stratégie de résiliation anticipée pour le travail de balayage.

Retours

Stratégie de résiliation anticipée pour le travail de balayage.

Type de retour

<xref:azure.ai.ml.entities._job.sweep.early_termination_policy.EarlyTerminationPolicy>

id

ID de la ressource.

Retours

ID global de la ressource, id Azure Resource Manager (ARM).

Type de retour

inputs

limits

Limites du travail de balayage.

Retours

Limites du travail de balayage.

Type de retour

log_files

Fichiers de sortie de travail.

Retours

Dictionnaire des noms de journaux et des URL.

Type de retour

outputs

sampling_algorithm

Algorithme d’échantillonnage pour le travail de balayage.

Retours

Algorithme d’échantillonnage pour le travail de balayage.

Type de retour

status

État du travail.

Les valeurs courantes retournées sont « Exécution en cours (Running) », « Terminé (Finished) » et « Échec (Failed) ». Toutes les valeurs possibles sont les suivantes :

  • NotStarted : il s’agit d’un état temporaire dans lequel se trouvent les objets Run côté client avant la soumission cloud.

  • Démarrage : l’exécution a commencé à être traitée dans le cloud. L’appelant a un ID d’exécution à ce stade.

  • Approvisionnement : le calcul à la demande est en cours de création pour une soumission de travail donnée.

  • Préparation : l’environnement d’exécution est en cours de préparation et se trouve dans l’une des deux étapes suivantes :

    • Build d’image Docker

    • Configuration de l’environnement Conda

  • Mis en file d’attente : le travail est mis en file d’attente sur la cible de calcul. Par exemple, dans BatchAI, le travail est dans un état mis en file d’attente

    en attendant que tous les nœuds demandés soient prêts.

  • En cours d’exécution : le travail a commencé à s’exécuter sur la cible de calcul.

  • Finalisation : l’exécution du code utilisateur est terminée et l’exécution est en phase de post-traitement.

  • CancelRequested : l’annulation a été demandée pour le travail.

  • Terminé : l’exécution s’est terminée avec succès. Cela inclut à la fois l’exécution et l’exécution du code utilisateur

    Étapes de post-traitement.

  • Failed (Échec) : l’exécution a échoué. En règle générale, la propriété Error d’une exécution fournit des détails sur la raison de l’échec.

  • Annulé : suit une demande d’annulation et indique que l’exécution a bien été annulée.

  • NotResponding : pour les exécutions pour lesquelles des pulsations sont activées, aucune pulsation n’a été envoyée récemment.

Retours

État du travail.

Type de retour

studio_url

Point de terminaison Azure ML Studio.

Retours

URL de la page des détails du travail.

Type de retour

type

Type du travail.

Retours

Type du travail.

Type de retour