tensorboard實現訓練的可視化


  tensorboard是tensorflow自帶的可視化工具

  輸入命令可以啟動tensorboard服務。

tensorboard --logdir=your log dir

  通過瀏覽器localhost:6006進入可視化界面,可以看到能夠進行可視化的選項,包括

  • SCALARS:顯示訓練過程中的損失值、准確率、權重偏置變化
  • IMAGES:顯示訓練的圖像
  • AUDIO:顯示訓練的音頻
  • GRAPHS:可視化模型
  • DISTRIBUTIONS:記錄數據的分布
  • HISTOGRAMS:數據的直方圖
  • EMBEDDINGS:詞向量的投影

 

  想用tensorboard展示哪些量,只需要在變量后添加tf.summary底下相應的函數即可,舉個栗子

1 def loss(logits,label_batches):
2     cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits,labels=label_batches)
3     cost = tf.reduce_mean(cross_entropy)
4     tf.summary.scalar("loss",cost)
5     return cost

  在scalars中展示損失值,只需要添加第4行所示代碼即可。其余功能可以去官網查看。

  最后,在想要可視化的地方進行匯總,一行代碼就可以匯總截止到該代碼之前的所有summary,添加代碼:

 

summary_op = tf.summary.merge_all()

 

  然后,使用如下代碼,將summary保存下來,最終在目錄下生成events.out....的文件。

train_writer = tf.summary.FileWriter(log_dir,sess.graph)

  再session中執行的時候,使用下面兩行代碼運行匯總操作,第2行中的step是匯總的步數,你也可以規定多少個step后進行一次匯總。

1 summary = sess.run(summary_op)
2 train_writer.add_summary(summary,step)

 

實際展示的結果如下

SCALARS

IMAGES

GRAPHS

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM