tensorflow學習筆記----TensorBoard講解
TensorBoard簡介
TensorBoard是TensorFlow自帶的一個強大的可視化工具,也是一個Web應用程序套件。TensorBoard目前支持7種可視化,Scalars,Images,Audio,Graphs,Distributions,Histograms和Embeddings。其中可視化的主要功能如下。
(1)Scalars:展示訓練過程中的準確率、損失值、權重/偏置的變化情況。
(2)Images:展示訓練過程中記錄的圖像。
(3)Audio:展示訓練過程中記錄的音頻。
(4)Graphs:展示模型的數據流圖,以及訓練在各個設備上消耗的內存和時間。
(5)Distributions:展示訓練過程中記錄的數據的分部圖。
(6)Histograms:展示訓練過程中記錄的數據的柱狀圖。
(7)Embeddings:展示詞向量後的投影分部。
TensorBoard通過運行一個本地服務器,來監聽6006端口。在瀏覽器發出請求時,分析訓練時記錄的數據,繪制訓練過程中的圖像。TensorBoard的可視化界面如下圖所示
如圖相冊的菜單所示,可以依次繪制出主要功能的界面圖像,下面分別介紹這些菜單頁面具體功能,這裏采用的是mnist_with_summaries的例子
Scalars面板
scalars面板的左側是一些選項,包括Ignore outlines in chart scaling(不按照整表的範文顯示)、data downloadlinks(數據下載鏈接),smoothing(圖像的曲線平滑程度)以及Horizontal Axis
(水平軸)的表示,其中水平軸的表示分為3種(STEP代表叠代次數,RELATIVE代表按照訓練集和測試集的相對值,WALL代表按照時間)如下圖所測所示,右側給出了準確率
和交叉熵損失函數值的變化曲線(叠代次數是1000次)。
Scalars面板中還繪制了每一層的偏置(biases)和權重(weights)的變化曲線,包括每次叠代的最大值、最小值、平均值和標準差等,如下圖所示
IMAGES面板
下圖展示了訓練數據及和測試數據集進過預處理後圖片的樣子
AUDIO面板
AUDIO面板是展示訓練過程中處理的音頻數據。mnist_with_summaries中不含有音頻例子,這裏不做展示。
GRAPHS面板
GRAPHS面板是對理解神經網絡結構最優幫助的一個面板,他直觀的展示了數據流圖。下圖界面中結點之間的連線即為數據流,連線
越粗,說明兩個結點之間流動的張量(tensor)越多。
在graph面板的左側,可以選擇叠代步驟。可以用不同的顏色來表示不同的Structrue(整個數據流圖的結構),或者用不同的Color來表示不同的Device(設備)。例如
使用多個GPU時,各個節點分別使用的GPU不同。
當選擇特定的某次叠代(如第899次)時,可以顯示出各個節點的Compute time(計算時間)以及Memory(內存消耗),如下圖所示
DISTRIBUTIONS面板
distributions面板和histograms面板類似,只不過是用平面來表示來自特定層的激活前後、權重和偏置的分布。下圖展示的是激活之前和激活之後
數據分布。
HISTOGRAMS面板
histograms面板立體的展來自特頂層的激活前後、權重和偏置的分布。下圖展示的是激活之前和激活之後的分布數據。
EMBEDDINGS面板
EMBEDDINGS面板在minst例子中無法展示。在以後的可視化例子中會有展示,這裏先不做介紹。
以上就是tensorboard主要面板的介紹,下一次進行可視化例子的介紹。
tensorflow學習筆記----TensorBoard講解