BanditPolicy Klasse

Definiert eine Richtlinie für die vorzeitige Beendigung basierend auf Slackkriterien sowie ein Häufigkeits- und Verzögerungsintervall für die Auswertung.

Initialisieren Sie eine BanditPolicy mit Slackfaktor, slack_amount und Auswertungsintervall.

Vererbung
azureml.train.hyperdrive.policy.EarlyTerminationPolicy
BanditPolicy

Konstruktor

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

Parameter

Name Beschreibung
slack_factor

Das Verhältnis, das zur Berechnung des zulässigen Abstands zur Testausführung mit der besten Leistung verwendet wird.

Standardwert: None
slack_amount

Der absolute Abstand, der von der Ausführung mit der besten Leistung zugelassen wird.

Standardwert: None
evaluation_interval
int

Die Anwendungshäufigkeit der Richtlinie.

Standardwert: 1
delay_evaluation
int

Die Anzahl der Intervalle, für die die erste Richtlinienauswertung verzögert werden soll. Sofern angegeben, wendet die Richtlinie jedes Vielfache von evaluation_interval an, das größer oder gleich delay_evaluation ist.

Standardwert: 0
slack_factor
Erforderlich

Das Verhältnis, das zur Berechnung des zulässigen Abstands zur Testausführung mit der besten Leistung verwendet wird.

slack_amount
Erforderlich

Der absolute Abstand, der von der Ausführung mit der besten Leistung zugelassen wird.

evaluation_interval
Erforderlich
int

Die Anwendungshäufigkeit der Richtlinie.

delay_evaluation
Erforderlich
int

Die Anzahl der Intervalle, für die die erste Richtlinienauswertung verzögert werden soll. Sofern angegeben, gilt die Richtlinie für jedes Vielfache von evaluation_interval, das größer oder gleich delay_evaluation ist.

Hinweise

Die Bandit-Richtlinie akzeptiert die folgenden Konfigurationsparameter:

  • slack_factor: Der bezogen auf die Trainingsausführung mit der besten Leistung zulässige Slackwert. Dieser Faktor gibt den Slackwert als Verhältnis an.

  • slack_amount: Der bezogen auf die Trainingsausführung mit der besten Leistung zulässige Slackwert. Dieser Faktor gibt den Slackwert als absoluten Betrag an.

  • evaluation_interval: Optional. Die Anwendungshäufigkeit der Richtlinie. Jede Protokollierung der primären Metrik durch das Trainingsskript zählt als ein Intervall.

  • delay_evaluation: Optional. Anzahl der Intervalle zum Verzögern der Richtlinienauswertung. Verwenden Sie diesen Parameter, um eine vorzeitige Beendigung von Trainingsausführungen zu vermeiden. Sofern angegeben, gilt die Richtlinie für jedes Vielfache von evaluation_interval, das größer oder gleich delay_evaluation ist.

Alle Ausführungen, die nicht innerhalb des Slackfaktors oder des Slackbereichs der Auswertungsmetrik in Bezug auf die Ausführungen mit der besten Leistung liegen, werden beendet.

Betrachten wir eine Bandit-Richtlinie mit slack_factor = 0,2 und evaluation_interval = 100. Angenommen, bei Ausführung X mit einer AUC (Leistungsmetrik) von 0,8 nach 100 Intervallen handelt es sich derzeit um die Ausführung mit der besten Leistung. Wenn zudem davon ausgegangen wird, dass Y die beste für eine Ausführung erfasste AUC ist, vergleicht diese Richtlinie den Wert (Y + Y × 0,2) mit 0,8 und beendet die Ausführung, wenn der Wert kleiner ist. Wenn delay_evaluation = 200 ist, wird die Richtlinie bei Intervall 200 erstmals angewendet.

Betrachten wir nun eine Bandit-Richtlinie mit slack_amount = 0,2 und evaluation_interval = 100. Wenn Ausführung 3 mit einer AUC (Leistungsmetrik) von 0,8 nach 100 Intervallen derzeit die Ausführung mit der besten Leistung ist, wird jede Ausführung beendet, deren AUC nach 100 Iterationen unter 0,6 (0,8 – 0,2) liegt. Auf ähnliche Weise kann delay_evaluation auch verwendet werden, um die erste Auswertung der Beendigungsrichtlinie für eine bestimmte Anzahl von Sequenzen zu verzögern.

Weitere Informationen zum Anwenden von Richtlinien für die vorzeitige Beendigung finden Sie unter Optimierung der Hyperparameter eines Modells.

Attribute

delay_evaluation

Gibt die Anzahl der Sequenzen zurück, für die die erste Auswertung verzögert wird.

Gibt zurück

Typ Beschreibung
int

Verzögerungsauswertung

evaluation_interval

Gibt den Wert des Auswertungsintervalls zurück.

Gibt zurück

Typ Beschreibung
int

Auswertungsintervall

slack_factor

Gibt den Slackfaktor in Bezug auf die Trainingsausführung mit der besten Leistung zurück.

Gibt zurück

Typ Beschreibung

Der Slackfaktor.

POLICY_NAME

POLICY_NAME = 'Bandit'