TruncationSelectionPolicy Class
Defines an early termination policy that cancels a given percentage of runs at each evaluation interval.
Constructor
TruncationSelectionPolicy(*, delay_evaluation: int = 0, evaluation_interval: int = 0, truncation_percentage: int = 0)
Keyword-Only Parameters
Name | Description |
---|---|
delay_evaluation
|
Number of intervals by which to delay the first evaluation. Defaults to 0. |
evaluation_interval
|
Interval (number of runs) between policy evaluations. Defaults to 0. |
truncation_percentage
|
The percentage of runs to cancel at each evaluation interval. Defaults to 0. |
Examples
Configuring an early termination policy for a hyperparameter sweep job using 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),
)
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.
Azure SDK for Python