Spec-Zone.ru › TensorFlow 2.9

tf.estimator.experimental.stop_if_no_increase_hook

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

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

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

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

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

tf.compat.v1.estimator.experimental.stop_if_no_increase_hook

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

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

estimator = ...
# Hook to stop training if accuracy does not increase in over 100000 steps.
hook = early_stopping.stop_if_no_increase_hook(estimator, "accuracy", 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_increase 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 , который периодически проверяет, не показывает ли заданная метрика никакого увеличения в течение заданного максимального числа шагов обучения, и инициирует остановку обучения, если это так.

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

Spec-Zone.ru

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