Udostępnij za pośrednictwem


BanditPolicy Klasa

Definiuje zasady wczesnego kończenia na podstawie kryteriów slack oraz częstotliwość i interwał opóźnienia oceny.

Zainicjuj zasady BanditPolicy za pomocą współczynnika slack, slack_amount i interwału oceny.

Dziedziczenie
azureml.train.hyperdrive.policy.EarlyTerminationPolicy
BanditPolicy

Konstruktor

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

Parametry

Nazwa Opis
slack_factor

Współczynnik używany do obliczania dozwolonej odległości od najlepiej działającego przebiegu eksperymentu.

Domyślna wartość: None
slack_amount

Bezwzględna odległość dozwolona od najlepiej działającego przebiegu.

Domyślna wartość: None
evaluation_interval
int

Częstotliwość stosowania zasad.

Domyślna wartość: 1
delay_evaluation
int

Liczba interwałów, dla których należy opóźnić pierwszą ocenę zasad. W przypadku określenia zasady stosują każdą wielokrotność evaluation_interval , która jest większa lub równa delay_evaluation.

Domyślna wartość: 0
slack_factor
Wymagane

Współczynnik używany do obliczania dozwolonej odległości od najlepiej działającego przebiegu eksperymentu.

slack_amount
Wymagane

Bezwzględna odległość dozwolona od najlepiej działającego przebiegu.

evaluation_interval
Wymagane
int

Częstotliwość stosowania zasad.

delay_evaluation
Wymagane
int

Liczba interwałów, dla których należy opóźnić pierwszą ocenę zasad. W przypadku określenia zasady stosują każdą wielokrotność evaluation_interval , która jest większa lub równa delay_evaluation.

Uwagi

Zasady Bandit pobierają następujące parametry konfiguracji:

  • slack_factor: ilość zapasu czasu dozwolona w odniesieniu do najlepszego przebiegu trenowania. Ten czynnik określa zapas czasu jako współczynnik.

  • slack_amount: ilość zapasu czasu dozwolona w odniesieniu do najlepszego przebiegu trenowania. Ten czynnik określa zapas czasu jako wartość bezwzględną.

  • evaluation_interval:Opcjonalne. Częstotliwość stosowania zasad. Za każdym razem, gdy skrypt trenowania rejestruje metryki podstawowe, jest liczone jako jeden interwał.

  • delay_evaluation:Opcjonalne. Liczba interwałów opóźnienia oceny zasad. Użyj tego parametru, aby uniknąć przedwczesnego zakończenia przebiegów trenowania. W przypadku określenia zasady stosują każdą wielokrotność evaluation_interval , która jest większa lub równa delay_evaluation.

Wszystkie przebiegi, które nie należą do współczynnika slack ani ilości zapasu metryki oceny w odniesieniu do przebiegu o najlepszej wydajności, zostaną zakończone.

Rozważ zasady Bandit z slack_factor = 0,2 i evaluation_interval = 100. Załóżmy, że uruchomienie X jest obecnie najlepszym przebiegiem z wartością AUC (metryką wydajności) wynoszącą 0,8 po 100 interwałach. Ponadto załóżmy, że najlepszym rozwiązaniem AUC zgłoszonym dla przebiegu jest Y. Te zasady porównują wartość (Y + Y * 0,2) do 0,8, a jeśli są mniejsze, anuluje przebieg. Jeśli delay_evaluation = 200, przy pierwszym zastosowaniu zasad zostanie zastosowany interwał 200.

Teraz rozważ zasady Bandit z slack_amount = 0,2 i evaluation_interval = 100. Jeśli przebieg 3 jest obecnie najlepiej działający z AUC (metryką wydajności) 0,8 po 100 interwałach, wszystkie przebiegi z wartością AUC mniejszą niż 0,6 (0,8– 0,2) po 100 iteracji zostaną zakończone. Podobnie można użyć parametru delay_evaluation , aby opóźnić pierwszą ocenę zasad zakończenia dla określonej liczby sekwencji.

Aby uzyskać więcej informacji na temat stosowania zasad wczesnego kończenia, zobacz Dostrajanie hiperparametrów dla modelu.

Atrybuty

delay_evaluation

Zwróć liczbę sekwencji, dla których pierwsza ocena jest opóźniona.

Zwraca

Typ Opis
int

Ocena opóźnienia.

evaluation_interval

Zwraca wartość interwału oceny.

Zwraca

Typ Opis
int

Interwał oceny.

slack_factor

Zwróć współczynnik slack w odniesieniu do najlepszego przebiegu trenowania.

Zwraca

Typ Opis

Współczynnik luzu.

POLICY_NAME

POLICY_NAME = 'Bandit'