Spec-Zone.ru › TensorFlow 2.4

tf.compat.v1.train.Scaffold

Структура для создания или сбора необходимых компонентов для обучения модели.

tf.compat.v1.train.Scaffold(
    init_op=None, init_feed_dict=None, init_fn=None, ready_op=None,
    ready_for_local_init_op=None, local_init_op=None, summary_op=None, saver=None,
    copy_from_scaffold=None, local_init_feed_dict=None
)

При построении модели для обучения обычно требуются операции для инициализации переменных, механизм Saver для их сохранения, операция для сбора сводок для визуализатора и так далее.

Различные библиотеки, построенные поверх ядра TensorFlow, заботятся о создании некоторых или всех этих компонентов и хранении их в известных коллекциях графа. Класс Scaffold помогает выбрать эти компоненты из коллекций графа, создавая и добавляя их в коллекции при необходимости.

Если вы вызываете конструктор Scaffold без аргументов, он будет выбирать компоненты из коллекций, создавая значения по умолчанию при необходимости, когда scaffold.finalize() вызывается. Вы можете передать аргументы в конструктор, чтобы предоставить свои собственные компоненты. Компоненты, которые вы передаёте в конструктор, не добавляются в коллекции графа.

Следующие компоненты напрямую доступны в качестве атрибутов объекта Scaffold:

  • saver: Объект tf.compat.v1.train.Saver, отвечающий за сохранение переменных. По умолчанию выбирается из и сохраняется в коллекцию SAVERS в графе.
  • init_op: Операция для инициализации переменных. По умолчанию выбирается из и сохраняется в коллекцию INIT_OP в графе.
  • ready_op: Операция для проверки инициализации переменных. По умолчанию выбирается из и сохраняется в коллекцию READY_OP в графе.
  • ready_for_local_init_op: Операция для проверки инициализации глобального состояния и возможности запуска local_init_op. По умолчанию выбирается из и сохраняется в коллекцию READY_FOR_LOCAL_INIT_OP в графе. Это необходимо, когда инициализация локальных переменных зависит от значений глобальных переменных.
  • local_init_op: Операция для инициализации локальных переменных. По умолчанию выбирается из и сохраняется в коллекцию LOCAL_INIT_OP в графе.
  • summary_op: Операция для запуска и слияния сводок в графе. По умолчанию выбирается из и сохраняется в коллекцию SUMMARY_OP в графе.

Вы также можете передать следующие дополнительные компоненты в конструктор:

  • init_feed_dict: Словарь данных сессии, который должен использоваться при запуске операции инициализации.
  • init_fn: Вызываемый объект для выполнения дополнительных инициализаций после операции инициализации. Функция вызывается как init_fn(scaffold, session).
Аргументы
init_op Необязательная операция для инициализации переменных.
init_feed_dict Необязательный словарь данных сессии для использования при выполнении init_op.
init_fn Необязательная функция для инициализации модели после выполнения init_op. Будет вызвана как init_fn(scaffold, session).
ready_op Необязательная операция для проверки инициализации переменных. Должна возвращать пустой тензор 1D строкового типа, если переменные инициализированы, или непустой тензор 1D строкового типа, содержащий имена неинициализированных переменных.
ready_for_local_init_op Необязательная операция для проверки инициализации глобальных переменных и возможность запуска local_init_op. Должна возвращать пустой тензор 1D строкового типа, если глобальные переменные инициализированы, или непустой тензор 1D строкового типа, содержащий имена неинициализированных глобальных переменных.
local_init_op Необязательная операция для инициализации локальных переменных.
summary_op Необязательная операция для сбора всех сводок. Должна возвращать скалярный строковый тензор, содержащий сериализованный Summary протокол.
saver Необязательный объект tf.compat.v1.train.Saver для сохранения и восстановления переменных. Также может быть объектом tf.train.Checkpoint, в этом случае сохраняются контрольные точки на основе объектов. Это также загрузит некоторые контрольные точки на основе объектов, сохранённые где-то ещё, но эта загрузка может быть ненадежной, так как использует фиксированные ключи вместо выполнения полного сопоставления на основе графа. Например, если переменная имеет два пути от объекта Checkpoint из-за того, что два объекта Model используют один и тот же объект Layer, который её владеет, удаление одного объекта Model может изменить ключи и нарушить загрузку контрольных точек через этот API, в то время как сопоставление на основе графа сопоставит переменную через другой объект Model.
copy_from_scaffold Необязательный объект Scaffold для копирования полей. Его поля будут перезаписаны предоставленными полями в этой функции.
local_init_feed_dict Необязательный словарь данных сессии для использования при выполнении local_init_op.
Атрибуты
init_feed_dict
init_fn
init_op
local_init_feed_dict
local_init_op
ready_for_local_init_op
ready_op
saver
summary_op

Методы

default_local_init_op

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

@staticmethod
default_local_init_op()

Возвращает операцию, которая объединяет операции инициализации локальных переменных по умолчанию.

Эта операция используется во время инициализации сессии, когда Scaffold инициализируется без указания аргумента local_init_op. Она включает tf.compat.v1.local_variables_initializer, tf.compat.v1.tables_initializer, а также инициализирует локальные ресурсы сессии.

Возвращает
Операция инициализации локальных переменных по умолчанию Scaffold.

finalize

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

finalize()

Создаёт операции при необходимости и завершает работу с графом.

get_or_default

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

@staticmethod
get_or_default(
    arg_name, collection_key, default_constructor
)

Получить из кэша или создать операцию по умолчанию.

© 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.4/api_docs/python/tf/compat/v1/train/Scaffold

Spec-Zone.ru

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