Spec-Zone.ru › TensorFlow 2.9

tf.estimator.experimental.InMemoryEvaluatorHook

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

Хук для запуска оценки в процессе обучения без контрольной точки.

Наследуется от: SessionRunHook

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

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

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

tf.compat.v1.estimator.experimental.InMemoryEvaluatorHook

tf.estimator.experimental.InMemoryEvaluatorHook(
    estimator, input_fn, steps=None, hooks=None, name=None, every_n_iter=100
)

Пример:

def train_input_fn():
  ...
  return train_dataset

def eval_input_fn():
  ...
  return eval_dataset

estimator = tf.estimator.DNNClassifier(...)

evaluator = tf.estimator.experimental.InMemoryEvaluatorHook(
    estimator, eval_input_fn)
estimator.train(train_input_fn, hooks=[evaluator])

Текущие ограничения этого подхода:

  • Он не поддерживает многоузловую распределённую работу.
  • Он не поддерживает сохраняемые объекты, кроме переменных (такие как поддержка дерева с усилением).
  • Он не поддерживает пользовательскую логику сохранения (например, поддержку ExponentialMovingAverage).
Аргументы
estimator Экземпляр tf.estimator.Estimator для вызова evaluate.
input_fn Эквивалентно аргументу input_fn функции estimator.evaluate. Функция, которая создает входные данные для оценки. См. Создание функций ввода для получения дополнительной информации. Функция должна создать и вернуть один из следующих объектов:
  • Объект 'tf.data.Dataset': Выходы объекта Dataset должны быть кортежем (features, labels) с теми же ограничениями, что и ниже.
  • Кортеж (features, labels): где features — это Tensor или словарь из имени признака в виде строки к Tensor и labels — это Tensor или словарь из имени метки в виде строки к Tensor. И features и labels потребляются функцией model_fn. Они должны удовлетворять ожиданиям model_fn от входов.
steps Эквивалентно аргументу steps функции estimator.evaluate. Количество шагов для оценки модели. Если None, выполняется оценка до тех пор, пока input_fn не сгенерирует исключение конца ввода.
hooks Эквивалентно аргументу hooks функции estimator.evaluate. Список экземпляров подклассов SessionRunHook. Используется для обратных вызовов внутри вызова оценки.
name Эквивалентно аргументу name функции estimator.evaluate. Имя оценки, если пользователю нужно выполнить несколько оценок на разных наборах данных, например, на обучающих данных и тестовых данных. Метрики для разных оценок сохраняются в отдельных папках и отображаются отдельно в tensorboard.
every_n_iter int, выполняет оценку один раз каждые N итераций обучения.
Исключения
ValueError если every_n_iter не положительно или обучение не на одном компьютере

Методы

after_create_session

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

after_create_session(
    session, coord
)

Выполняется первый запуск, который отображает метрики оценки перед началом обучения.

after_run

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

after_run(
    run_context, run_values
)

Выполняет оценку.

before_run

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

before_run(
    run_context
)

Вызывается перед каждым вызовом run().

Вы можете вернуть из этого вызова объект SessionRunArgs, указывающий на операции или тензоры для добавления в последующий вызов run(). Эти операции/тензоры будут выполняться вместе с операциями/тензорами, изначально переданными в исходный вызов run(). Аргументы запуска, которые вы возвращаете, также могут содержать значения для добавления к вызову run().

Аргумент run_context — это объект SessionRunContext, который предоставляет информацию о предстоящем вызове run(): первоначально запрошенные операции/тензоры, сессия TensorFlow.

На этом этапе граф завершен, и вы не можете добавлять операции.

Аргументы
run_context Объект SessionRunContext.
Возвращаемое значение
None или объект SessionRunArgs.

begin

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

begin()

Построение графа оценки и восстановления операции.

end

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

end(
    session
)

Выполняет оценку для окончательной модели.

© 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/InMemoryEvaluatorHook

Spec-Zone.ru

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