Compartir a través de


BanditPolicy Clase

Define una directiva de terminación anticipada basada en criterios de Slack y un intervalo de frecuencia e intervalo de retraso para la evaluación.

Inicialice banditPolicy con factor de demora, slack_amount e intervalo de evaluación.

Herencia
azureml.train.hyperdrive.policy.EarlyTerminationPolicy
BanditPolicy

Constructor

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

Parámetros

Nombre Description
slack_factor

La proporción usada para calcular la distancia permitida de la ejecución del experimento con mejor rendimiento.

Valor predeterminado: None
slack_amount

La distancia absoluta permitida de la ejecución con mejor rendimiento.

Valor predeterminado: None
evaluation_interval
int

La frecuencia con la que se aplica la directiva.

Valor predeterminado: 1
delay_evaluation
int

El número de intervalos que se va a retrasar la primera evaluación de directiva. Si se especifica, la directiva se aplica a cada múltiplo de evaluation_interval que sea mayor que o igual a delay_evaluation.

Valor predeterminado: 0
slack_factor
Requerido

La proporción usada para calcular la distancia permitida de la ejecución del experimento con mejor rendimiento.

slack_amount
Requerido

La distancia absoluta permitida de la ejecución con mejor rendimiento.

evaluation_interval
Requerido
int

La frecuencia con la que se aplica la directiva.

delay_evaluation
Requerido
int

El número de intervalos que se va a retrasar la primera evaluación de directiva. Si se especifica, la directiva se aplica a cada múltiplo de evaluation_interval que sea mayor que o igual a delay_evaluation.

Comentarios

La directiva Bandit toma los parámetros de configuración siguientes:

  • slack_factor: la cantidad de margen de demora permitida con respecto a la ejecución del entrenamiento con el mejor rendimiento. Este factor especifica el margen de demora como una proporción.

  • slack_amount: la cantidad de margen de demora permitido con respecto a la ejecución del entrenamiento con el mejor rendimiento. Este factor especifica el margen de demora como una cantidad absoluta.

  • evaluation_interval: Opcional. La frecuencia con la que se aplica la directiva. Cada vez que el script de entrenamiento registra la métrica principal se considera un intervalo.

  • delay_evaluation: Opcional. Número de intervalos que va a retrasar la evaluación de la directiva. Use este parámetro para evitar la terminación prematura de las ejecuciones de entrenamiento. Si se especifica, la directiva se aplica a cada múltiplo de evaluation_interval que sea mayor que o igual a delay_evaluation.

Cualquier ejecución que no se encuentre dentro del factor de demora o la cantidad de margen de demora de la métrica de evaluación con respecto a la ejecución de mejor rendimiento se finalizará.

Considere una directiva Bandit con slack_factor = 0,2 y evaluation_interval = 100. Suponga que la ejecución X es la ejecución con mejor rendimiento con un AUC (métrica de rendimiento) de 0,8 después de 100 intervalos. Además, suponga que el mejor AUC notificado de una ejecución es Y. Esta directiva compara el valor (Y + Y * 0,2) con 0,8 y, si es menor, cancela la ejecución. Si delay_evaluation = 200, la primera vez que se aplicará la directiva es en el intervalo 200.

Ahora, considere una directiva Bandit con slack_amount = 0,2 y evaluation_interval = 100. Si la ejecución 3 es la ejecución con mejor rendimiento actualmente con un AUC (métrica de rendimiento) de 0,8 después de 100 intervalos, se finalizará cualquier ejecución con un AUC inferior a 0,6 (0,8 - 0,2) después de 100 iteraciones. Igualmente, también delay_evaluation se puede usar para retrasar la primera evaluación de la directiva de finalización de un número específico de secuencias.

Para más información sobre cómo aplicar directivas de finalización anticipada, consulte Ajuste de los hiperparámetros de un modelo.

Atributos

delay_evaluation

Devuelve el número de secuencias para las que se retrasa la primera evaluación.

Devoluciones

Tipo Description
int

Evaluación del retraso.

evaluation_interval

Devuelve el valor del intervalo de evaluación.

Devoluciones

Tipo Description
int

Intervalo de evaluación.

slack_factor

Devuelve el factor del margen demora con respecto a la ejecución del entrenamiento con el mejor rendimiento.

Devoluciones

Tipo Description

Factor del margen de demora.

POLICY_NAME

POLICY_NAME = 'Bandit'