1. 程式人生 > >tensorflow學習筆記----TensorBoard講解

tensorflow學習筆記----TensorBoard講解

幫助 ont 分享圖片 graphs 進行 平均值 all 訓練 一個

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講解