tf.compat.v1.summary.FileWriter
Записывает протоколы Summary в файлы событий.
tf.compat.v1.summary.FileWriter(
logdir,
graph=None,
max_queue=10,
flush_secs=120,
graph_def=None,
filename_suffix=None,
session=None
)
Переход к TF2
Этот API несовместим с немедленным выполнением или tf.function. Для перехода на TF2, пожалуйста, используйте tf.summary.create_file_writer для управления сводками. Для указания шага сводки, вы можете управлять контекстом с tf.summary.SummaryWriter, который возвращается tf.summary.create_file_writer(). Либо вы можете использовать аргумент step функций сводок, таких как tf.summary.histogram. См. пример использования ниже.
Для подробного tf.summary руководства по миграции, пожалуйста, следуйте инструкциям на Страница по миграции использования tf.summary в TF 2.0.
Как сопоставить аргументы
| Имя аргумента TF1 | Имя аргумента TF2 | Примечание |
|---|---|---|
logdir | logdir | - |
graph | Не поддерживается | - |
max_queue | max_queue | - |
flush_secs |
flush_millis | Единица времени изменена с секунд на миллисекунды. |
graph_def | Не поддерживается | - |
filename_suffix | filename_suffix | - |
name | name | - |
Пример использования TF1 и TF2
TF1:
dist = tf.compat.v1.placeholder(tf.float32, [100])
tf.compat.v1.summary.histogram(name="distribution", values=dist)
writer = tf.compat.v1.summary.FileWriter("/tmp/tf1_summary_example")
summaries = tf.compat.v1.summary.merge_all()
sess = tf.compat.v1.Session()
for step in range(100):
mean_moving_normal = np.random.normal(loc=step, scale=1, size=[100])
summ = sess.run(summaries, feed_dict={dist: mean_moving_normal})
writer.add_summary(summ, global_step=step)
TF2:
writer = tf.summary.create_file_writer("/tmp/tf2_summary_example")
for step in range(100):
mean_moving_normal = np.random.normal(loc=step, scale=1, size=[100])
with writer.as_default(step=step):
tf.summary.histogram(name='distribution', data=mean_moving_normal)
Описание
Класс FileWriter предоставляет механизм для создания файла событий в заданном каталоге и добавления сводок и событий в него. Класс обновляет содержимое файла асинхронно. Это позволяет программе обучения вызывать методы для добавления данных в файл непосредственно из цикла обучения, не замедляя обучение.
При создании с параметром tf.compat.v1.Session, FileWriter вместо этого формирует слой совместимости поверх новых сводок на основе графа, чтобы упростить использование нового написания сводок с существующим кодом, который ожидает экземпляр FileWriter.
Этот класс не потокобезопасен.
| Аргументы | |
|---|---|
logdir | Строка. Каталог, в котором будет записан файл событий. |
graph | Объект Graph, такой как sess.graph. |
max_queue | Целое число. Размер очереди для ожидающих событий и сводок. |
flush_secs | Число. Как часто, в секундах, следует сбрасывать ожидающие события и сводки на диск. |
graph_def | УСТАРЕВШЕ: Используйте аргумент graph вместо него. |
filename_suffix | Строка. Каждое имя файла событий суффиксруется с suffix. |
session | Объект tf.compat.v1.Session. См. подробности выше. |
| Возбуждает | |
|---|---|
RuntimeError | Если вызвана с включенным немедленным выполнением. |
Методы
add_event
add_event(
event
)
Добавляет событие в файл событий.
| Аргументы | |
|---|---|
event | Протокол Event. |
add_graph
add_graph(
graph, global_step=None, graph_def=None
)
Добавляет Graph в файл событий.
Граф, описанный протоколом, будет отображен TensorBoard. Большинство пользователей передают граф в конструкторе вместо этого.
| Аргументы | |
|---|---|
graph | Объект Graph, такой как sess.graph. |
global_step | Число. Дополнительный глобальный счетчик шагов для записи с графом. |
graph_def | УСТАРЕЛО. Используйте параметр graph вместо него. |
| Возбуждает | |
|---|---|
ValueError | Если в метод передаются и граф, и graph_def. |
add_meta_graph
add_meta_graph(
meta_graph_def, global_step=None
)
Добавляет MetaGraphDef в файл событий.
MetaGraphDef позволяет запускать указанный граф с помощью saver.import_meta_graph().
| Аргументы | |
|---|---|
meta_graph_def | Объект MetaGraphDef, часто возвращаемый saver.export_meta_graph(). |
global_step | Число. Дополнительный глобальный счетчик шагов для записи с графом. |
| Возбуждает | |
|---|---|
TypeError | Если meta_graph_def не является экземпляром MetaGraphDef. |
add_run_metadata
add_run_metadata(
run_metadata, tag, global_step=None
)
Добавляет метаданные для одного вызова session.run().
| Аргументы | |
|---|---|
run_metadata | Объект протокола RunMetadata. |
tag | Имя тега для этих метаданных. |
global_step | Число. Дополнительный глобальный счетчик шагов для записи со StepStats. |
| Возбуждает | |
|---|---|
ValueError | Если предоставленный тег уже использовался для этого типа события. |
add_session_log
add_session_log(
session_log, global_step=None
)
Добавляет протокол SessionLog в файл событий.
Этот метод оборачивает предоставленный сеанс в протокол Event и добавляет его в файл событий.
| Аргументы | |
|---|---|
session_log | Протокол SessionLog . |
global_step | Число. Дополнительное глобальное значение шага для записи со сводкой. |
add_summary
add_summary(
summary, global_step=None
)
Добавляет протокол Summary в файл событий.
Этот метод оборачивает предоставленную сводку в протокол Event и добавляет её в файл событий.
Вы можете передать результат вычисления любого оператора сводки, используя tf.Session.run или tf.Tensor.eval, в эту функцию. В качестве альтернативы, вы можете передать протокол tf.compat.v1.Summary, который вы заполняете своими данными. Последнее обычно делается для отчёта о результатах оценки в файлах событий.
| Аргументы | |
|---|---|
summary | Протокол Summary, необязательно сериализованный как строка. |
global_step | Число. Дополнительное глобальное значение шага для записи со сводкой. |
close
close()
Сбрасывает файл событий на диск и закрывает его.
Вызовите этот метод, когда вам больше не нужен записьщик сводок.
flush
flush()
Очищает файл событий в диске.
Вызовите этот метод, чтобы убедиться, что все ожидающие события были записаны в диск.
get_logdir
get_logdir()
Возвращает каталог, в который будет записан файл событий.
reopen
reopen()
Переоткрывает EventFileWriter.
Может быть вызван после close() для добавления дополнительных событий в тот же каталог. События будут помещены в новый файл событий.
Не выполняет никаких действий, если EventFileWriter не был закрыт.
__enter__
__enter__()
Делает пригодным для использования с оператором "with".
__exit__
__exit__(
unused_type, unused_value, unused_traceback
)
Делает пригодным для использования с оператором "with".
© 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/compat/v1/summary/FileWriter