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 несовместим с выполнением в режиме eager или 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 | Если вызов выполняется с включенным режимом eager execution. |
Методы
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/api_docs/python/tf/compat/v1/summary/FileWriter