TensorBoard 的可視化工具,可以用來展現你的 TensorFlow 圖像,繪製圖像生成的定量指標圖以及附加數據。
tensorBoard的使用設計如下幾個函數:
第一、創建一個事件文件
summary_waiter = tf.summary.FileWriter("log",tf.get_default_graph())
log是事件文件所在的目錄,這裏是工程目錄下的log目錄。第二個參數是事件文件要記錄的圖,也就是tensorflow默認的圖。
第二、向時間文件寫入數據
summary_waiter.add_summary(summary,a)
summary是要寫入的事件彙總,a是一個可選的全局計數器,用來記錄寫入的次數。
第三、構建一個要寫入事件文件的操作
tf.summary.histogram("count",state)
count是你要查看的變量的名字,state是這個變量
第四、合併事件彙總
summary_log = tf.summary.merge_all()
我們可能要查看很多的變量,這回生成很多個操作,我們使用上面的函數將其合併爲一個操作。
下面是一個計數器的例子:
import tensorflow as tf
state = tf.Variable(0, name="counter")
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value)
init_op = tf.global_variables_initializer()
tf.summary.histogram("count",state)
with tf.Session() as sess:
summary_waiter = tf.summary.FileWriter("log",tf.get_default_graph())
summary_log = tf.summary.merge_all()
sess.run(init_op)
for a in range(1000):
_,summary=sess.run([update,summary_log])
summary_waiter.add_summary(summary,a)
計數器每增加一下,就寫入一次事件。其實只寫入state 這一個變量的值。
運行程序,會在log目錄下生成一個文件,然後,運行tensorboard,如果你已經通過pip安裝了 TensorBoard,你可以通過執行更爲簡單地命令來訪問 TensorBoard
tensorboard --logdir=/path/to/log-directory
否則,你要找到tensorboard .py所在的目錄,然後使用python 來運行它。
一旦 TensorBoard 開始運行,你可以通過在瀏覽器中輸入 localhost:6006 來查看 TensorBoard。
我們的計數器會有什麼樣的圖像呢?
在Scalars中,它的圖像就是一條直線,這很容易理解。它的名字叫count,就是我們給他起的名字。
在graph一欄中,它很直觀的展示了我們描繪的圖,Assigh和add是兩個操作節點,Counter是一個Summary,也就是我們的事件彙總。
在distributions一欄中它也是一條直線。
在histograms一欄中,我就看不懂它表示的含義了,求過路人指點下…