Lors de l'utilisation de TensorFlow, TensorBoard est souvent utilisé pour visualiser l'état de l'apprentissage. Il est très pratique de pouvoir voir l'état de manière interactive sur l'écran Web, mais il a fallu quelques astuces pour s'y référer depuis Google Colaboratory. TensorFlow 2.x semble être facile à utiliser sur Google Colab. Je vais donc essayer.
Utilisez Google Colaboratory.
Vous pouvez en savoir plus sur l'utilisation de TensorBoard de Google Colab sur la page officielle de TensorFlow. https://www.tensorflow.org/tensorboard/tensorboard_in_notebooks
Exécutez la commande magique d'utilisation de TensorFlow 2.x.
from __future__ import absolute_import, division, print_function, unicode_literals
try:
# %tensorflow_version only exists in Colab.
%tensorflow_version 2.x
except Exception:
pass
Exécutez ensuite la commande magique pour charger le TensorBoard.
# Load the TensorBoard notebook extension
%load_ext tensorboard
Créez un modèle simple en utilisant MNIST (données d'image de nombres souvent utilisées comme échantillon). keras est très simple.
import tensorflow as tf
from tensorflow.keras.callbacks import TensorBoard
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
Donnez à model.fit () une fonction de rappel pour TensorBoard. Cette zone est la même que la façon d'utiliser TensorBoard normalement.
tf_callback = TensorBoard(log_dir="logs", histogram_freq=1)
model.fit(x_train, y_train, epochs=5, callbacks=[tf_callback])
model.evaluate(x_test, y_test, verbose=2)
Affichez TensorBoard en spécifiant l'emplacement de stockage du journal.
%tensorboard --logdir logs
Vous pouvez afficher le TesorBoard dans votre ordinateur portable comme suit:
Il semble que cela prenne beaucoup de temps à afficher à l'heure actuelle, mais j'ai pu afficher TensorBoard sur le portable.
Recommended Posts