C'est juste maintenant, mais j'ai essayé de déplacer TensorBoard pendant un moment. À cette époque, la page Utilisation la plus basique de TensorBoard était très utile. La meilleure partie était que l'échantillon était très simple et facile à essayer.
Cependant, comme vous pouvez le voir dans les commentaires, il semble qu'il existe diverses différences selon la version, et c'est le contenu que j'ai essayé de l'exécuter dans le dernier environnement. Donc, après avoir regardé la page Omoto, j'espère que vous pouvez voir cela comme une référence, mais comme les bases ne sont qu'un copier-coller de la page Omoto, il n'est peut-être pas nécessaire de s'y référer. Peut être. Réimpression: Utilisation la plus basique de TensorBoard
$ pip list | grep tens
tensorboard          1.14.0
tensorflow           1.14.0
tensorflow-estimator 1.14.0
Quand,
tensorboard          2.0.1
tensorflow           2.0.0
tensorflow-estimator 2.0.1
#Importer les bibliothèques requises
import tensorflow as tf
import numpy as np
#Définition variable
dim = 5
LOGDIR = './logs'
x = tf.compat.v1.placeholder(tf.float32, [None, dim + 1], name='X')
w = tf.Variable(tf.zeros([dim+1,1]), name='weight')
y = tf.matmul(x,w, name='Y')
t = tf.compat.v1.placeholder(tf.float32, [None, 1], name='TEST')
sess = tf.compat.v1.Session()
#Définition de la fonction de perte et méthode d'apprentissage
loss = tf.reduce_sum(tf.square(y - t))
train_step = tf.compat.v1.train.AdamOptimizer().minimize(loss)
#Définir les variables à suivre avec TensorBoard
with tf.name_scope('summary'):
	#Utiliser le retour
	loss_summary = tf.compat.v1.summary.scalar('loss', loss)
	if tf.io.gfile.exists(LOGDIR):
		tf.io.gfile.rmtree(LOGDIR) # ./Supprimer si logdir existe
	writer = tf.compat.v1.summary.FileWriter(LOGDIR, sess.graph)
#Initialisation de session et préparation des données d'entrée
sess.run(tf.compat.v1.global_variables_initializer())
train_t = np.array([5.2, 5.7, 8.6, 14.9, 18.2, 20.4,25.5, 26.4, 22.8, 17.5, 11.1, 6.6])
train_t = train_t.reshape([12,1])
train_x = np.zeros([12, dim+1])
for row, month in enumerate(range(1, 13)):
	for col, n in enumerate(range(0, dim+1)):
		train_x[row][col] = month**n
#Apprentissage
i = 0
for _ in range(100000):
	i += 1
	sess.run(train_step, feed_dict={x: train_x, t: train_t})
	if i % 10000 == 0:
		#Perte obtenue ci-dessus_Passer estival
		s, loss_val = sess.run([loss_summary, loss] , feed_dict={x: train_x, t: train_t})
		print('Step: %d, Loss: %f' % (i, loss_val))
		#Cela produira SCALARS
		writer.add_summary(s, global_step=i)
--Image GRAPHIQUES

Il sera plus facile à comprendre si vous lui donnez un nom.
--Graphe SCALARS

Au fait, si vous faites ressembler à ce qui suit, il semble que vous n'ayez pas à changer autant le code existant. Puisqu'il est décrit dans le document tensorflow, il s'agit d'une méthode de description appropriée.
import tensorflow.compat.v1 as tf
Alors, changeons le style d'écriture ici. En outre, le point de v2 est que la façon d'écrire Variable a changé. De plus, ce que je ne comprends pas vraiment, c'est la partie Eager Tensors. Pour le moment, j'ai spécifié session comme avec.
#Importer les bibliothèques requises
import tensorflow.compat.v1 as tf
import numpy as np
#Définition variable
dim = 5
LOGDIR = './logs'
with tf.Session() as sess:
	x = tf.placeholder(tf.float32, [None, dim + 1], name='X')
	with tf.variable_scope('weight'):
		w = tf.get_variable("weight", shape=[dim+1,1], initializer=tf.zeros_initializer())
	y = tf.matmul(x,w, name='Y')
	t = tf.placeholder(tf.float32, [None, 1], name='TEST')
	#Définition de la fonction de perte et méthode d'apprentissage
	loss = tf.reduce_sum(tf.square(y - t))
	train_step = tf.train.AdamOptimizer().minimize(loss)
	#Définir les variables à suivre avec TensorBoard
	with tf.name_scope('summary'):
		loss_summary = tf.summary.scalar('loss', loss)
		if tf.io.gfile.exists(LOGDIR):
			tf.io.gfile.rmtree(LOGDIR) # ./Supprimer si logdir existe
		writer = tf.summary.FileWriter(LOGDIR, sess.graph)
	#Initialisation de session et préparation des données d'entrée
	sess.run(tf.global_variables_initializer())
	train_t = np.array([5.2, 5.7, 8.6, 14.9, 18.2, 20.4,25.5, 26.4, 22.8, 17.5, 11.1, 6.6])
	train_t = train_t.reshape([12,1])
	train_x = np.zeros([12, dim+1])
	for row, month in enumerate(range(1, 13)):
		for col, n in enumerate(range(0, dim+1)):
			train_x[row][col] = month**n
	#Apprentissage
	i = 0
	for _ in range(100000):
		i += 1
		sess.run(train_step, feed_dict={x: train_x, t: train_t})
		if i % 10000 == 0:
			s, loss_val = sess.run([loss_summary, loss] , feed_dict={x: train_x, t: train_t})
			print('Step: %d, Loss: %f' % (i, loss_val))
			writer.add_summary(s, global_step=i)
--Graphe SCALARS
Il semble que la partie Y soit différente.
        Recommended Posts