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 | Необязательная операция для проверки инициализации переменных. Если переменные инициализированы, должна возвращать пустой одномерный строковый тензор; в противном случае — непустой одномерный строковый тензор со списком имён неинициализированных переменных. |
ready_for_local_init_op | Необязательная операция для проверки инициализации глобальных переменных и возможности запуска local_init_op. Если глобальные переменные инициализированы, должна возвращать пустой одномерный строковый тензор; в противном случае — непустой одномерный строковый тензор со списком имён неинициализированных глобальных переменных. |
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
)
Получает операцию из кэша или создаёт операцию по умолчанию.
© 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/api_docs/python/tf/compat/v1/train/Scaffold