你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
BanditPolicy 类
基于延迟条件以及评估的频率和延迟间隔定义提前终止策略。
- 继承
-
azure.ai.ml.entities._job.sweep.early_termination_policy.EarlyTerminationPolicyBanditPolicy
构造函数
BanditPolicy(*, delay_evaluation: int = 0, evaluation_interval: int = 0, slack_amount: float = 0, slack_factor: float = 0)
仅限关键字的参数
名称 | 说明 |
---|---|
delay_evaluation
|
延迟第一次评估的间隔数。 默认值为 0。 |
evaluation_interval
|
策略评估之间的间隔 () 运行次数。 默认值为 0。 |
slack_amount
|
与性能最佳的运行允许的绝对距离。 默认值为 0。 |
slack_factor
|
与性能最佳的运行之间的允许距离的比率。 默认值为 0。 |
示例
在 Command 作业上配置超参数扫描的 BanditPolicy 提前终止。
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 Uniform
job_for_sweep = job(
kernel=Uniform(min_value=0.0005, max_value=0.005),
penalty=Uniform(min_value=0.9, max_value=0.99),
)
from azure.ai.ml.sweep import BanditPolicy
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=BanditPolicy(slack_factor=0.15, evaluation_interval=1, delay_evaluation=10),
)