Поделиться через


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
int

Частота применения политики.

Default value: 1
delay_evaluation
int

Число интервалов, для которых откладывается первая оценка политики. Если задано, политика применяет каждую из этих значений evaluation_interval больше или равно delay_evaluation.

Default value: 0
slack_factor
Обязательно

Соотношение, используемое для вычисления допустимого расстояния от оптимального выполнения эксперимента.

slack_amount
Обязательно

Абсолютное расстояние, допустимое от оптимального выполнения.

evaluation_interval
Обязательно
int

Частота применения политики.

delay_evaluation
Обязательно
int

Число интервалов, для которых откладывается первая оценка политики. Если задано, политика применяет каждую из этих значений 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

Возвращает количество последовательностей, для которых отложена первая оценка.

Возвращаемое значение

Тип Описание
int

Оценка задержки.

evaluation_interval

Возвращает значение интервала оценки.

Возвращаемое значение

Тип Описание
int

Интервал оценки.

slack_factor

Возвращает коэффициент slack в отношении оптимального выполнения обучения.

Возвращаемое значение

Тип Описание

Коэффициент slack.

POLICY_NAME

POLICY_NAME = 'Bandit'