BanditPolicy クラス

Slack 条件に基づく早期終了ポリシーと評価の頻度および遅延間隔を定義します。

余裕期間、slack_amount、評価間隔を使用して BanditPolicy を初期化します。

継承
azureml.train.hyperdrive.policy.EarlyTerminationPolicy
BanditPolicy

コンストラクター

BanditPolicy(evaluation_interval=1, slack_factor=None, slack_amount=None, delay_evaluation=0)

パラメーター

名前 説明
slack_factor

最高パフォーマンスの実験の実行からの許容される距離を計算するために使用される比率。

既定値: None
slack_amount

最高パフォーマンスの実行からの許容される絶対距離。

既定値: None
evaluation_interval
int

ポリシーを適用する頻度。

既定値: 1
delay_evaluation
int

最初のポリシー評価を遅延する間隔の数。 指定されている場合、delay_evaluation 以上の evaluation_interval の倍数ごとにポリシーが適用されます。

既定値: 0
slack_factor
必須

最高パフォーマンスの実験の実行からの許容される距離を計算するために使用される比率。

slack_amount
必須

最高パフォーマンスの実行からの許容される絶対距離。

evaluation_interval
必須
int

ポリシーを適用する頻度。

delay_evaluation
必須
int

最初のポリシー評価を遅延する間隔の数。 指定した場合、delay_evaluation 以上の evaluation_interval の倍数ごとにポリシーが適用されます。

注釈

このバンディット ポリシーでは、次の構成パラメーターを指定できます。

  • slack_factor: パフォーマンスが最高のトレーニング実行に関して許可される Slack の量。 この係数は、Slack を比率として指定します。

  • slack_amount: パフォーマンスが最高のトレーニング実行に関して許可される Slack の量。 この係数は、Slack を絶対量として指定します。

  • evaluation_interval:任意。 ポリシーを適用する頻度。 トレーニング スクリプトによってログに記録されるたびに、主要メトリックは 1 間隔としてカウントされます。

  • delay_evaluation:任意。 ポリシー評価を遅延する間隔の数。 トレーニングの実行が早期に終了しないようにするには、このパラメーターを使用します。 指定した場合、delay_evaluation 以上の evaluation_interval の倍数ごとにポリシーが適用されます。

最高のパフォーマンスの実行に関して、評価メトリックの Slack 係数または Slack 量に分類されない実行は終了します。

slack_factor = 0.2 と evaluation_interval = 100 のバンディット ポリシーを検討してください。 100 の間隔の後に AUC (パフォーマンス メトリック) が 0.8 である現在最もパフォーマンスの高い実行が、実行 X だと仮定します。 さらに、実行に対して報告された最高の AUC が Y であると想定します。このポリシーでは、値 (Y + Y * 0.2) を 0.8 と比較し、小さい場合は実行を取り消します。 delay_evaluation ⁼ 200 の場合、ポリシーが初めて適用される時間は間隔 200 です。

ここで、slack_amount = 0.2 と evaluation_interval = 100 のバンディット ポリシーについて考えます。 実行 3 が、100 の間隔の後に AUC (パフォーマンス メトリック) が 0.8 である現在最もパフォーマンスの高い実行である場合、100 回の反復の後に AUC が 0.6 (0.8 - 0.2) 未満の実行は終了します。 同様に、delay_evaluation を使用して、特定の数のシーケンスの分だけ最初の終了ポリシーの評価を遅らせることもできます。

早期終了ポリシーの適用の詳細については、「モデルに合わせてハイパーパラメーターを調整する」を参照してください。

属性

delay_evaluation

最初の評価が遅れているシーケンス数を返します。

戻り値

説明
int

遅延の評価。

evaluation_interval

評価の間隔の値を返します。

戻り値

説明
int

評価の間隔。

slack_factor

パフォーマンスが最高のトレーニング実行に関する Slack 係数を返します。

戻り値

説明

Slack 係数。

POLICY_NAME

POLICY_NAME = 'Bandit'