BanditPolicy Classe
Définit une stratégie d’arrêt anticipé basée sur des critères de marge et une fréquence et un intervalle de retard pour l’évaluation.
Initialisez une stratégie BanditPolicy avec un facteur slack, slack_amount et un intervalle d’évaluation.
Constructeur
BanditPolicy(evaluation_interval=1, slack_factor=None, slack_amount=None, delay_evaluation=0)
Paramètres
| Nom | Description |
|---|---|
|
slack_factor
|
Ratio utilisé pour calculer la distance autorisée de l’exécution de l’expérience la plus performante. Valeur par défaut: None
|
|
slack_amount
|
Distance absolue autorisée à partir de la meilleure exécution. Valeur par défaut: None
|
|
evaluation_interval
|
Fréquence d’application de la stratégie. Valeur par défaut: 1
|
|
delay_evaluation
|
Nombre d’intervalles pour lesquels retarder la première évaluation de la stratégie.
Si elle est spécifiée, la stratégie applique chaque multiple supérieur Valeur par défaut: 0
|
|
slack_factor
Obligatoire
|
Ratio utilisé pour calculer la distance autorisée de l’exécution de l’expérience la plus performante. |
|
slack_amount
Obligatoire
|
Distance absolue autorisée à partir de la meilleure exécution. |
|
evaluation_interval
Obligatoire
|
Fréquence d’application de la stratégie. |
|
delay_evaluation
Obligatoire
|
Nombre d’intervalles pour lesquels retarder la première évaluation de la stratégie.
Si elle est spécifiée, la stratégie applique chaque multiple supérieur |
Remarques
La stratégie Bandit prend les paramètres de configuration suivants :
slack_factor: quantité de marge autorisée par rapport à la meilleure exécution d’entraînement. Ce facteur spécifie la marge sous forme de ratio.slack_amount: quantité de marge autorisée par rapport à la meilleure exécution d’entraînement. Ce facteur spécifie la marge comme une quantité absolue.evaluation_interval: facultatif. Fréquence d’application de la stratégie. Chaque journalisation de la métrique principale par le script d’entraînement compte pour un intervalle.delay_evaluation: facultatif. Nombre d’intervalles pour retarder l’évaluation de la stratégie. Utilisez ce paramètre pour éviter l’arrêt prématuré des exécutions d’entraînement. Si elle est spécifiée, la stratégie applique chaque multiple supérieurevaluation_intervalou égal àdelay_evaluation.
Toute exécution qui ne se situe pas dans le facteur slack ou la quantité de marge de la métrique d’évaluation en ce qui concerne la meilleure exécution sera arrêtée.
Considérez une stratégie Bandit avec slack_factor = 0,2 et evaluation_interval = 100.
Supposons que l’exécution X est actuellement la plus performante avec une métrique d’AUC (métrique de performances) de 0,8 après 100 intervalles. En outre, supposons que le meilleur auC signalé pour une exécution est Y. Cette stratégie compare la valeur (Y + Y * 0.2) à 0,8 et, si elle est plus petite, annule l’exécution. Si delay_evaluation = 200, la première fois que la stratégie sera appliquée est à l’intervalle 200.
À présent, envisagez une stratégie Bandit avec slack_amount = 0,2 et evaluation_interval = 100.
Si l’exécution 3 est actuellement la plus performante avec une métrique d’AUC (métrique de performances) de 0,8 après 100 intervalles, toute exécution avec une AUC inférieure à 0,6 (0,8 - 0,2) après 100 itérations sera arrêtée.
De même, il delay_evaluation peut également être utilisé pour retarder la première évaluation de la stratégie d’arrêt pour un nombre spécifique de séquences.
Pour plus d’informations sur l’application de stratégies d’arrêt anticipé, consultez Ajuster les hyperparamètres pour votre modèle.
Attributs
delay_evaluation
Retourne le nombre de séquences pour lesquelles la première évaluation est retardée.
Retours
| Type | Description |
|---|---|
|
Évaluation du délai. |
evaluation_interval
slack_factor
Retournez le facteur slack en ce qui concerne la meilleure exécution d’entraînement.
Retours
| Type | Description |
|---|---|
|
Le facteur de marge. |
POLICY_NAME
POLICY_NAME = 'Bandit'