Condividi tramite


SweepJob Classe

Processo di sweep per l'ottimizzazione dell'iperparametro.

Ereditarietà
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

Costruttore

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)

Parametri

name
str

Nome del processo.

display_name
str

Nome visualizzato del processo.

description
str

Descrizione del processo.

tags
dict[str, str]

Dizionario tag. I tag possono essere aggiunti, rimossi e aggiornati.

properties
dict[str, str]

Dizionario delle proprietà asset.

experiment_name
str

Il nome dell'esperimento verrà creato in, se None viene specificato, il processo verrà creato in "Default".

identity
Union[ManagedIdentityConfiguration, AmlTokenConfiguration, UserIdentityConfiguration]

Identità che il processo di training userà durante l'esecuzione nel calcolo.

inputs
dict

Input al comando.

outputs
dict[str, Output]

Mapping di data binding di output usati nel processo.

sampling_algorithm
str

Algoritmo di campionamento dell'iperparametro da usare sul search_space. Le impostazioni predefinite sono "casuali".

search_space
Dict

Dizionario dello spazio di ricerca dell'iperparametro. La chiave è il nome dell'iperparametro e il valore è l'espressione di parametro.

objective
Objective

Metrica da ottimizzare per.

compute
str

Destinazione di calcolo in esecuzione il processo.

trial
Union[CommandJob, CommandComponent]

Configurazione del processo per ogni versione di valutazione. Ogni versione di valutazione verrà fornita con una combinazione diversa di valori di iperparametri che i campioni di sistema dall'search_space.

early_termination
Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]

Criteri di terminazione anticipata da usare. Un processo di valutazione viene annullato quando vengono soddisfatti i criteri dei criteri specificati. Se omesso, non verranno applicati criteri di terminazione anticipata.

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

Limiti per il processo di sweep.

queue_settings
QueueSettings

Impostazioni della coda per il processo.

kwargs
dict

Dizionario di parametri di configurazione aggiuntivi.

Esempio

Creazione di un processo di sweep


   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"),
   )

Metodi

dump

Esegue il dump del contenuto del processo in un file in formato YAML.

set_limits

Impostare i limiti per il nodo Sweep. Lasciare i parametri come Nessuno se non si desidera aggiornare i valori corrispondenti.

set_objective

Impostare l'oggetto sweep.. Lasciare i parametri come Nessuno se non si desidera aggiornare i valori corrispondenti.

"ridurre al minimo", "massimizzare". :type goal: str :keyword primary_metric: nome della metrica da ottimizzare. :p aramtype primary_metric: str

dump

Esegue il dump del contenuto del processo in un file in formato YAML.

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

Parametri

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

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_limits

Impostare i limiti per il nodo Sweep. Lasciare i parametri come Nessuno se non si desidera aggiornare i valori corrispondenti.

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

Parametri

max_concurrent_trials
int

numero massimo di valutazione simultaneo.

max_total_trials
int

numero massimo di valutazione totale.

timeout
int

timeout totale in secondi per il nodo di sweep

trial_timeout
int

timeout in secondi per ogni versione di valutazione

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_objective

Impostare l'oggetto sweep.. Lasciare i parametri come Nessuno se non si desidera aggiornare i valori corrispondenti.

"ridurre al minimo", "massimizzare". :type goal: str :keyword primary_metric: nome della metrica da ottimizzare. :p aramtype primary_metric: str

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

Parametri

goal

Definisce gli obiettivi delle metriche supportati per l'ottimizzazione dell'iperparametro. I valori accettabili sono:

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

Percorso di base della risorsa.

Restituisce

Percorso di base della risorsa.

Tipo restituito

str

creation_context

Contesto di creazione della risorsa.

Restituisce

Metadati di creazione per la risorsa.

Tipo restituito

early_termination

Criteri di terminazione anticipata per il processo di sweep.

Restituisce

Criteri di terminazione anticipata per il processo di sweep.

Tipo restituito

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

id

L'ID della risorsa.

Restituisce

ID globale della risorsa, ID di Azure Resource Manager (ARM).

Tipo restituito

inputs

limits

Limiti per il processo di sweep.

Restituisce

Limiti per il processo di sweep.

Tipo restituito

log_files

File di output del processo.

Restituisce

Dizionario di nomi e URL di log.

Tipo restituito

outputs

sampling_algorithm

Algoritmo di campionamento per il processo di sweep.

Restituisce

Algoritmo di campionamento per il processo di sweep.

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

type

Tipo del processo.

Restituisce

Tipo del processo.

Tipo restituito