#python #r #tensorflow #tensorboard #loss-function
Вопрос:
Ответ №1:
Вы можете использовать summary_iterator для чтения файла событий, сгенерированного Tensorflow, и make_ndarray для извлечения из него значений тензора.
Установка
import tensorflow as tf
import numpy as np
TAG_NAME = "classification_loss"
writer_train = tf.summary.create_file_writer("train")
for epoch in range(200):
data = np.math.exp(-(epoch/30)) 0.1*np.random.random()
with writer_train.as_default():
tf.summary.scalar(name=TAG_NAME, data=data, step=epoch)
# output folder: train/events.out.tfevents.1618103384.eafddbceac44.283.2075165.v2
Прочитать файл события
import tensorflow as tf
import matplotlib.pyplot as plt
TAG_NAME = "classification_loss"
tf_event_file = "train/events.out.tfevents.1618103384.eafddbceac44.283.2075165.v2"
value_list = []
for e in tf.compat.v1.train.summary_iterator(tf_event_file):
for v in e.summary.value:
if v.tag == TAG_NAME:
value = tf.make_ndarray(v.tensor)
value_list.append(value)
plt.plot(value_list)
plt.grid()
plt.show()
Ответ №2:
На самом деле, лучший и самый простой способ-это загрузить данные графика в формате CSV или JSON с Tensorboard. Как только у вас появятся данные графика, вы сможете импортировать данные и построить их.