BanditPolicy 類別
根據寬限期準則定義早期終止原則,以及評估的頻率和延遲間隔。
使用 Slack 因數、slack_amount和評估間隔,初始化 BanditPolicy。
- 繼承
-
azureml.train.hyperdrive.policy.EarlyTerminationPolicyBanditPolicy
建構函式
BanditPolicy(evaluation_interval=1, slack_factor=None, slack_amount=None, delay_evaluation=0)
參數
名稱 | Description |
---|---|
slack_factor
|
用來計算最佳實驗執行所允許距離的比率。 預設值: None
|
slack_amount
|
最佳執行所允許的絕對距離。 預設值: None
|
evaluation_interval
|
套用原則的頻率。 預設值: 1
|
delay_evaluation
|
要延遲第一個原則評估的間隔數。
如果指定,原則會套用大於或等於 預設值: 0
|
slack_factor
必要
|
用來計算最佳實驗執行所允許距離的比率。 |
slack_amount
必要
|
最佳執行所允許的絕對距離。 |
evaluation_interval
必要
|
套用原則的頻率。 |
delay_evaluation
必要
|
要延遲第一個原則評估的間隔數。
如果指定,原則會套用大於或等於 |
備註
Bandit 原則會採用下列組態參數:
slack_factor
:最佳執行定型回合所允許的寬限時間量。 此因素會將寬限時間指定為比率。slack_amount
:最佳執行定型回合所允許的寬限時間量。 此因素會將寬限時間指定為絕對數量。evaluation_interval
:選擇性。 套用原則的頻率。 每次定型指令碼記錄主要計量都算是一個間隔。delay_evaluation
:選擇性。 延遲原則評估的間隔數目。 使用此參數以避免訓練執行提前終止。 如果指定,原則會套用大於或等於delay_evaluation
的每個倍evaluation_interval
數。
任何未落在寬限時間因素或評估計量的寬限時間量內,將會終止執行效能最佳的執行。
請考慮使用 slack_factor
= 0.2 和 evaluation_interval
= 100 的 Bandit 原則。
假設執行 X 是以 AUC (效能計量執行的最佳執行,) 100 間隔之後為 0.8。 此外,假設針對執行回報的最佳 AUC 為 Y。此原則會將值 (Y + Y * 0.2) 與 0.8 進行比較,如果較小,則會取消執行。 如果 delay_evaluation
= 200,則第一次套用原則的間隔為 200。
現在,請考慮使用 slack_amount
= 0.2 和 evaluation_interval
= 100 的 Bandit 原則。
如果 「執行 3」是目前效能最佳的執行,且 AUC (效能計量) 在 100 個間隔後為 0.8,則任何在 100 個間隔之後的 AUC 都會終止 0.6 (0.8 - 0.2) 。
同樣地, delay_evaluation
也可以用來延遲特定數目序列的第一個終止原則評估。
如需套用早期終止原則的詳細資訊,請參閱 調整模型的超參數。
屬性
delay_evaluation
evaluation_interval
slack_factor
POLICY_NAME
POLICY_NAME = 'Bandit'