BanditPolicy クラス

余裕期間の条件と評価の頻度と遅延間隔に基づいて早期終了ポリシーを定義します。

継承
azure.ai.ml.entities._job.sweep.early_termination_policy.EarlyTerminationPolicy
BanditPolicy

コンストラクター

BanditPolicy(*, delay_evaluation: int = 0, evaluation_interval: int = 0, slack_amount: float = 0, slack_factor: float = 0)

キーワードのみのパラメーター

名前 説明
delay_evaluation
int

最初の評価を遅らせる間隔の数。 既定値は 0 です。

evaluation_interval
int

ポリシー評価間の間隔 (実行数)。 既定値は 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),
   )