1. 程式人生 > >window下啟動tensorboard

window下啟動tensorboard

原文:http://blog.csdn.net/flying_sfeng/article/details/69943260

tensorboard是TensorFlow的一個視覺化工具,能夠監控TensorFlow執行過程中的計算圖,各種指標隨著時間的變化趨勢以及訓練中使用到的影象等資訊。

先貼個總結:首先,必須在終端啟動tensorboard;其次,如果在tensorboard中發現沒找到graph,那麼一般是路徑沒匹配好,修改一下路徑即可。

按照例程,寫一個視覺化graph的程式碼:

[python]  view plain  
copy
  1. import tensorflow as tf  
  2. with tf.name_scope('input1'):  
  3.     input1 = tf.constant([1.0,2.0,3.0],name="input1")  
  4. with tf.name_scope('input2'):  
  5.     input2 = tf.Variable(tf.random_uniform([3
    ]),name="input2")  
  6. output = tf.add_n([input1,input2],name="add")  
  7. writer = tf.summary.FileWriter("/path/to/log",tf.get_default_graph())  
  8. writer.close()  

第一個問題:怎麼啟動tensorboard呢?一開始我在Python下啟動一直出錯,通過查詢資料,才發現要在終端啟動。

開啟cmd,輸入tensorboard --logdir =/path/to/log-directory,如下圖:


會得到一個網址,如下圖:


接著,在瀏覽器輸入該網址,可進入tensorboard介面:

可以發現,找不到graph,通過查詢資料,發現是路徑的原因。我們必須給logdir一個明確的路徑定義。

所以我在

[python]  view plain  copy
  1. writer = tf.summary.FileWriter("/path/to/log",tf.get_default_graph())  
中將路徑改為'D://logs'(路徑可以自己指定,但在啟動時logdir必須能明確定位到該路徑):

[python]  view plain  copy
  1. writer = tf.summary.FileWriter("D://dogs",tf.get_default_graph())  
啟動tensorboard:

重新整理原來的tensorboard介面,可以看到graph已經顯示出來了:

另外,在tensorflow1.0版本中,我一開始寫儲存graph的程式碼是:

[python]  view plain  copy
  1. writer = tf.train.SummaryWriter("D://logs",tf.get_default_graph())  

出現問題:AttributeError: module 'tensorflow.python.training.training' has no attribute 'SummaryWriter'(0.12版本不會出現該問題)

這是因為在1.0版本中,tf.train.SummaryWriter已經改為tf.summary.FileWriter;因此,程式碼必須改為:

[python]  view plain  copy
  1. writer = tf.summary.FileWriter(""D://logs",tf.get_default_graph())  

以上,便是本人在學習TensorFlow的視覺化工具tensorboard的過程中遇到的問題以及解決方法。