BanditPolicy Класс
Определяет политику раннего завершения на основе критериев slack, частоты и интервала задержки для оценки.
Инициализировать BanditPolicy с коэффициентом slack, slack_amount и интервалом оценки.
Конструктор
BanditPolicy(evaluation_interval=1, slack_factor=None, slack_amount=None, delay_evaluation=0)
Параметры
Имя | Описание |
---|---|
slack_factor
|
Соотношение, используемое для вычисления допустимого расстояния от оптимального выполнения эксперимента. Default value: None
|
slack_amount
|
Абсолютное расстояние, допустимое от оптимального выполнения. Default value: None
|
evaluation_interval
|
Частота применения политики. Default value: 1
|
delay_evaluation
|
Число интервалов, для которых откладывается первая оценка политики.
Если задано, политика применяет каждую из этих значений Default value: 0
|
slack_factor
Обязательно
|
Соотношение, используемое для вычисления допустимого расстояния от оптимального выполнения эксперимента. |
slack_amount
Обязательно
|
Абсолютное расстояние, допустимое от оптимального выполнения. |
evaluation_interval
Обязательно
|
Частота применения политики. |
delay_evaluation
Обязательно
|
Число интервалов, для которых откладывается первая оценка политики.
Если задано, политика применяет каждую из этих значений |
Комментарии
Политика bandit принимает следующие параметры конфигурации:
slack_factor
: объем slack, разрешенный в отношении оптимального выполнения обучения. Этот фактор указывает slack в качестве коэффициента.slack_amount
: объем slack, разрешенный в отношении оптимального выполнения обучения. Этот фактор указывает slack как абсолютную сумму.evaluation_interval
: необязательно. Частота применения политики. Каждый раз, когда сценарий обучения регистрирует основную метрику, это считается одним интервалом.delay_evaluation
: необязательно. Количество интервалов для задержки оценки политики. Используйте этот параметр, чтобы избежать преждевременного завершения выполнения обучения. Если задано, политика применяет каждую из этих значенийevaluation_interval
больше или равноdelay_evaluation
.
Любой запуск, который не попадает в коэффициент slack или объем метрики оценки в отношении оптимального выполнения, будет завершен.
Рассмотрим политику bandit с slack_factor
= 0,2 и evaluation_interval
= 100.
Предположим, что запуск X — это наиболее эффективное выполнение с помощью AUC (метрики производительности) 0,8 после 100 интервалов. Кроме того, предположим, что лучший AUC, сообщающийся для запуска, является Y. Эта политика сравнивает значение (Y + Y * 0.2) с 0,8, а если меньше, отменяет выполнение. Если delay_evaluation
= 200, то при первом применении политики интервал 200.
Теперь рассмотрим политику банда с slack_amount
= 0,2 и evaluation_interval
= 100.
Если запуск 3 — это наиболее эффективное выполнение с помощью AUC (метрики производительности) 0,8 после 100 интервалов, то все запуски с AUC меньше 0,6 (0,8 – 0,2) после 100 итераций будут завершены.
Аналогичным образом delay_evaluation
можно также использовать для задержки первой оценки политики завершения для определенного количества последовательностей.
Дополнительные сведения о применении политик раннего завершения см. в разделе "Настройка гиперпараметров" для модели.
Атрибуты
delay_evaluation
Возвращает количество последовательностей, для которых отложена первая оценка.
Возвращаемое значение
Тип | Описание |
---|---|
Оценка задержки. |
evaluation_interval
slack_factor
Возвращает коэффициент slack в отношении оптимального выполнения обучения.
Возвращаемое значение
Тип | Описание |
---|---|
Коэффициент slack. |
POLICY_NAME
POLICY_NAME = 'Bandit'