tenssorboardを使って、lossとaccを可視化した例


1.try…exceptで…バージョンによって導入エラーが発生することを避ける

try:
 image_summary = tf.image_summary
 scalar_summary = tf.scalar_summary
 histogram_summary = tf.histogram_summary
 merge_summary = tf.merge_summary
 SummaryWriter = tf.train.SummaryWriter
except:
 image_summary = tf.summary.image
 scalar_summary = tf.summary.scalar
 histogram_summary = tf.summary.histogram
 merge_summary = tf.summary.merge
 SummaryWriter = tf.summary.FileWriter
2.コードをスコープに書き込む(スコープはコードの運転に影響しない)

with tf.name_scope('loss'):
 loss = -tf.reduce_sum(y * tf.log(y_conv))
 loss_summary = scalar_summary('loss', loss)
 
with tf.name_scope('accuracy'):
 accuracy = tf.reduce_mean(tf.cast(correct_prediction, 'float'))
 acc_summary = scalar_summary('accuracy', accuracy)
3.保存する変数をまとめて存在します。
またtf.merge_を使用できます。all_summares()またはtf.summary.merge_all()

merged = merge_summary([loss_summary, acc_summary])
4.保存パスを定義する(sessで完了)

writer = SummaryWriter('save-cnn20/logs', sess.graph)
5.トレーニングモデルの同時トレーニング変数集合merged(sessで完了し、counterはカウントし、トレーニング毎に1を増加する)

summary, _ = sess.run([merged, train_step], feed_dict={x:x_batch, y:y_batch})
counter += 1
writer.add_summary(summary, counter)
6.訓練が完了したら、save/logsフォルダにevents.out.先頭のファイルがあります。以下は端末で操作します。

cd save
tensorboard --logdir=logs
端末にはウェブサイトが表示されます。ブラウザにコピーして開けば、tenssorboardに保存されている画像が見えます。開いた後にデータや画像がない場合、ロゴの後のフォルダ名が間違っているか確認します。
以上のように、テナントboardを使ってlossとaccを可視化したのは、小編集が皆さんに共有している内容の全てです。参考にしていただければと思います。よろしくお願いします。