Spec-Zone.ru › TensorFlow 1.15

tf.estimator.experimental.InMemoryEvaluatorHook

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

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

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

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

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

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

tf.compat.v1.estimator.experimental.InMemoryEvaluatorHook, `tf.compat.v2.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().

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

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

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

begin

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

begin()

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

end

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

end(
    session
)

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

© 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/r1.15/api_docs/python/tf/estimator/experimental/InMemoryEvaluatorHook

Spec-Zone.ru

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