TensorBoard:Visualizing Learning 學習筆記

爲了更方便的理解、調試和優化TF程序,咱們能夠使用TensorBoard(可視化工具)。能夠使用TensorBoard查看graph,繪製圖表執行過程當中的定量指標。TensorBoard是徹底可配置的。node

 

1 序列化數據(Serializing the data)到磁盤

TensorBoard經過讀取TF事件文件進行操做,該文件包含了在TF運行過程當中產生的摘要數據(summary data)python

首先建立從中要收集摘要數據的TF圖,並決定圖中的哪些點(nodes)須要summary operations。好比須要記錄隨時間進行,學習率的變化和目標函數的改變。咱們能夠分別將學習率輸出節點和損失輸出節點加上tf.summary.scalar操做。並給每一個scalar_summary一個有含義的標記,如‘learning rate’和‘loss function’。git

或者想看看特定層的激活函數的分佈,或梯度和權重的分佈。經過將tf.summary.histogram分別附加到梯度輸出和權重的變量,來收集數據。github

全部的summary operations:瀏覽器

  • tf.summary.tensor_summary
  • tf.summary.scalar
  • tf.summary.histogram
  • tf.summary.audio
  • tf.summary.image
  • tf.summary.merge
  • tf.summary.merge_all

Class for writing Summaries函數

  • tf.summary.FileWriter
  • tf.summary.FileWriterCache

爲了產生這些摘要數據,咱們須要運行這些summary nodes。單獨管理這些節點比較麻煩,所以使用tf.summary.merge_all將它們合併爲一個單獨的操做,來產生全部的摘要數據。最後經過tf.summary.FileWriter將摘要數據寫到磁盤。工具

手寫字體識別例子的源代碼:學習

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/tutorials/mnist/mnist_with_summaries.py字體

其中程序的最後一段:優化

parser.add_argument('--data_dir', type=str, default='/tmp/tensorflow/mnist/input_data',
                      help='Directory for storing input data')
 parser.add_argument('--log_dir', type=str, default='/tmp/tensorflow/mnist/logs/mnist_with_summaries',
                      help='Summaries log directory')

注:上面代碼中路徑的寫法,絕對路徑爲該python文件所在的磁盤根路徑+default指定的路徑。好比該python在C:\XXX\XXX,則default='C:/tmp/tensorflow/mnist/logs/mnist_with_summaries'

 

能夠在程序中根據須要改成自定義的路徑如:

default='C:\\TMP\\TF\\MNIST_data'

(或者default='C:/TMP/TF/MNIST_data')

 

default='C:\\TMP\\TF\\logs\\mnist_with_summaries'

(或者default='C:/TMP/TF/logs/mnist_with_summaries')

  

或者在命令行運行程序時,指定自定義路徑如:

python xx.py --data_dir=C:\\TMP\\TF\\MNIST_data --log_dir=C:\\TMP\\TF\\logs\\mnist_with_summaries

(或者python xx.py --data_dir=C:/TMP/TF/MNIST_data --log_dir=C:/TMP/TF/logs/mnist_with_summaries)

  

 

2  啓動TensorBoard

在命令行運行以下命令:tensorboard --logdir=path/to/log-directory

 

在本例中:

tensorboard --logdir=C:/TMP/TF/logs/mnist_with_summaries --debug

(或者tensorboard --logdir=/TMP/TF/logs/mnist_with_summaries --debug)

  

注意:tensorborad的啓動命令的根目錄須要和日誌的根目錄保持一致。

 

在瀏覽器中輸入地址localhost:6006

 

能夠看到有7大模塊:

  • SCALARS
  • IMAGES
  • AUDIO
  • GRAPHS
  • DISTRIBUTIONS
  • HISTOGRAMS
  • EMBEDDINGS
相關文章
相關標籤/搜索