TensorBoard 計算圖的可視化實現(xiàn)
簡介
tensorflow 配套的可視化工具, 將你的計算圖畫出來.
當(dāng)訓(xùn)練一個巨大的網(wǎng)絡(luò)的時候, 計算圖既復(fù)雜又令人困惑. TensorBoard 提供了一系列的組件, 可以看到 learning rate 的變化, 看到 objective function 的變化.
tfboard 讀取 tf 運行時你記下的 events files, 來進行可視化. 這些 events files 包含了你記下的 summary data, 它是 protobuffer 格式, 并非文本文件.
推薦使用 Estimator 風(fēng)格.
類與方法
在 tf.estimator 框架下, 可以直接用 tf.summary.scalar() 這樣的方法, 不必顯式地創(chuàng)建writer并調(diào)用writer.add_summary()
tensorflow.python.summary.writer.writer.FileWriter(SummaryToEventTransformer)
類.
__init__(self, logdir, graph=None,...)
構(gòu)造函數(shù), Creates a FileWriter and an event file.
tensorflow.python.summary.summary
模塊.
scalar(name, tensor, ..) Outputs a Summary protocol buffer containing a single scalar value.
histogram(name, values, collections=None, family=None) Adding a histogram summary makes it possible to visualize your data's distribution in TensorBoard.
image
作圖, 對于grap-scale 圖來講, 0表示全黑, 255表示全白.
api, image(name, tensor, max_outputs=3, collections=None, family=None) Outputs a Summary protocol buffer with images. images are built from tensor which must be 4-D with shape [batch_size, height, width, channels] and where channels can be:
1.1-tensor is interpreted as Grayscale.
2.3-tensor is interpreted as RGB.
3.4-tensor is interpreted as RGBA.
tensor為float: 此時, tf會內(nèi)部作正規(guī)化處理, 轉(zhuǎn)換到[0,255](解析 tf_events 即可驗證), float通常對應(yīng)于 softm 之后的概率, 值域為[0,1].
tensor為uint8, 保持不變, tf 不作任何內(nèi)部轉(zhuǎn)換.
attention 可視化, attention 的權(quán)重會作 soft-max 處理, 通常img顯示的效果是, 一行看下來有深有淺, 顏色越白weight越大. 但有時后tf內(nèi)部正規(guī)化不符合預(yù)期, 出現(xiàn)一行全白的情況, 穩(wěn)妥起見自己轉(zhuǎn)unit類型.
打開web頁面
在命令行中 敲tensorboard --logdir=D:\tf_models\iris, 根據(jù)提示打開URL即可.
比如我的為http://yichu-amd:6006/.
效果截圖
圖3-1 logdir中的文件
圖3-2 炫酷的可視化效果
figure 3-3 計算圖的可視化
給出一些建議:
網(wǎng)絡(luò)也是分模塊,有結(jié)構(gòu)的, 合理使用 scope 可以讓計算圖清晰優(yōu)雅.
有些tensor來自dataset, 有些來自api中op操作的輸出, 本身沒有明確的名字, 此時用x=tf.identity(x,'name') 給tensor起名字, 便于計算圖中定位. 圖3-3 中的 memory 就是 encoder 的輸出的tensor.
以上這篇TensorBoard 計算圖的可視化實現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python re.split方法分割字符串的實現(xiàn)示例
本文主要介紹了Python re.split方法分割字符串的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08python 標(biāo)準(zhǔn)差計算的實現(xiàn)(std)
這篇文章主要介紹了python 標(biāo)準(zhǔn)差計算的實現(xiàn)(std),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07python+requests+unittest API接口測試實例(詳解)
下面小編就為大家?guī)硪黄猵ython+requests+unittest API接口測試實例(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06python通過yield實現(xiàn)數(shù)組全排列的方法
這篇文章主要介紹了python通過yield實現(xiàn)數(shù)組全排列的方法,實例分析了全排列的概念及yield實現(xiàn)的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03Python使用smtplib?實現(xiàn)單發(fā)和群發(fā)郵件驗證碼
這篇文章主要介紹了Python使用smtplib?實現(xiàn)單發(fā)和群發(fā)郵件驗證碼,文章通過使用?smtplib?模塊在?Python?中發(fā)送電子郵件,需要的小伙伴可以參考一下2022-05-05Python基于win32ui模塊創(chuàng)建彈出式菜單示例
這篇文章主要介紹了Python基于win32ui模塊創(chuàng)建彈出式菜單,結(jié)合實例形式分析了Python使用win32ui模塊創(chuàng)建彈出式菜單的具體步驟與相關(guān)操作技巧,并附帶說明了win32ui模塊的安裝命令,需要的朋友可以參考下2018-05-05Python?pyecharts?Map地圖數(shù)據(jù)不顯示的原因及完美解決
這篇文章主要給大家介紹了關(guān)于Python?pyecharts?Map地圖數(shù)據(jù)不顯示的原因及解決辦法,pyecharts是一款將python與echarts結(jié)合的強大的數(shù)據(jù)可視化工具,文中通過圖文以及代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12