Spec-Zone.ru › TensorFlow 2.3

tf.estimator.experimental.stop_if_no_decrease_hook

Просмотреть исходный код на GitHub

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

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.estimator.experimental.stop_if_no_decrease_hook

tf.estimator.experimental.stop_if_no_decrease_hook(
    estimator, metric_name, max_steps_without_decrease, eval_dir=None, min_steps=0,
    run_every_secs=60, run_every_steps=None
)

Пример использования:

estimator = ...
# Hook to stop training if loss does not decrease in over 100000 steps.
hook = early_stopping.stop_if_no_decrease_hook(estimator, "loss", 100000)
train_spec = tf.estimator.TrainSpec(..., hooks=[hook])
tf.estimator.train_and_evaluate(estimator, train_spec, ...)

Примечание: текущая реализация поддерживает раннее прекращение обучения и оценки в локальном режиме. В распределённом режиме обучение может быть остановлено, но оценка (если это отдельная задача) будет бесконечно ждать новых контрольных точек модели для оценки, поэтому вам понадобятся другие средства для обнаружения и остановки оценки. Раннее прекращение оценки в распределённом режиме требует изменений в train_and_evaluate API и будет рассмотрено в будущей версии.

Аргументы
estimator Экземпляр tf.estimator.Estimator.
metric_name str, метрика, за которой нужно следить. Например, "loss", "accuracy" и т.д.
max_steps_without_decrease int, максимальное количество шагов обучения без уменьшения заданной метрики.
eval_dir Если указано, каталог, содержащий файлы отчётов с метриками оценки. По умолчанию используется estimator.eval_dir().
min_steps int, запрос на остановку никогда не будет выполнен, если глобальный шаг меньше этого значения. По умолчанию 0.
run_every_secs Если указано, вызывает should_stop_fn с интервалом run_every_secs секунд. По умолчанию 60 секунд. Необходимо указать либо это, либо run_every_steps.
run_every_steps Если указано, вызывает should_stop_fn каждые run_every_steps шагов. Необходимо указать либо это, либо run_every_secs.
Возвращает
Хук для раннего прекращения обучения типа SessionRunHook , который периодически проверяет, не показывает ли заданная метрика уменьшение в течение заданного максимального количества шагов обучения, и инициирует раннее прекращение, если это так.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/estimator/experimental/stop_if_no_decrease_hook

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API