TruncationSelectionPolicy Classe
Definisce un criterio di terminazione anticipata che annulla una determinata percentuale di esecuzioni a ogni intervallo di valutazione.
- Ereditarietà
-
azure.ai.ml.entities._job.sweep.early_termination_policy.EarlyTerminationPolicyTruncationSelectionPolicy
Costruttore
TruncationSelectionPolicy(*, delay_evaluation: int = 0, evaluation_interval: int = 0, truncation_percentage: int = 0)
Parametri di sole parole chiave
Nome | Descrizione |
---|---|
delay_evaluation
|
Numero di intervalli in base ai quali ritardare la prima valutazione. Il valore predefinito è 0. |
evaluation_interval
|
Intervallo (numero di esecuzioni) tra le valutazioni dei criteri. Il valore predefinito è 0. |
truncation_percentage
|
Percentuale di esecuzioni da annullare a ogni intervallo di valutazione. Il valore predefinito è 0. |
Esempio
Configurazione di un criterio di terminazione anticipata per un processo di sweep degli iperparametri tramite TruncationStoppingPolicy
from azure.ai.ml import command
job = command(
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",
)
# we can reuse an existing Command Job as a function that we can apply inputs to for the sweep configurations
from azure.ai.ml.sweep import QUniform, TruncationSelectionPolicy, Uniform
job_for_sweep = job(
kernel=Uniform(min_value=0.0005, max_value=0.005),
penalty=QUniform(min_value=0.05, max_value=0.75, q=1),
)
sweep_job = job_for_sweep.sweep(
sampling_algorithm="random",
primary_metric="best_val_acc",
goal="Maximize",
max_total_trials=8,
max_concurrent_trials=4,
early_termination_policy=TruncationSelectionPolicy(delay_evaluation=5, evaluation_interval=2),
)
Azure SDK for Python