Tensorboard機器學習可視化工具

2021-03-02 數據皮皮俠

在定義網絡模型時,需要可視化的目標變量可以通過tf.summary添加。

(1)tf.summary.scalar

顯示標量信息,主要用於記錄諸如:準確率、損失和學習率等單個值的變化趨勢。

代碼示例:

tf.summary.scalar(『loss』 , loss)tf.summary.scalar('accuracy', accuracy)

(2)tf.summary.histogramr:

顯示參數分布直方圖,如卷積核參數。

代碼示例:

tf.summary.histogram(『conv1』 , w_conv1)

(3)tf.summary.image:

接收一個tensor,顯示圖像信息,如特徵圖和卷積核,默認顯示最新的圖像信息。

代碼示例:

tf.summary.image(『feature』 , feature_map)tf.summary.image('w_conv1', w_conv1_visual_0)tf.summary.image('x_input' , x_input, 6)

(4)tf.summary.FileWriter:

生成日誌, 指定一個目錄來告訴程序把文件放到哪裡。然後運行的時候使用add_summary()來將某一步的summary數據記錄到文件中。

代碼示例:

tf.summary.FileWriter('logs/', sess.graph, flush_secs = 10)

(5)tf.summary.merge_all:

整理日誌的操作,sess.run一次就不用對上述分別run。代碼示例:

sess.run(tf.global_variables_initializer())merged = tf.summary.merge_all()

def inf(self, x):        x_input = tf.reshape(x, [-1, 28, 28, 1])

tf.summary.image('x_input', x_input, 6) with tf.name_scope('1st_layer'): w_conv1 = tf.get_variable('w_conv1', [3, 3, 1, 20]) w_conv1_visual_0 = tf.reshape(w_conv1[:,:,:,0], [1, 3, 3, 1]) w_conv1_visual_1 = tf.reshape(w_conv1[:,:,:,1], [1, 3, 3, 1]) w_conv1_visual_2 = tf.reshape(w_conv1[:,:,:,2], [1, 3, 3, 1])

tf.summary.image('w_conv1', w_conv1_visual_0) tf.summary.image('w_conv1', w_conv1_visual_1) tf.summary.image('w_conv1', w_conv1_visual_2)

tf.summary.histogram('w_conv1', w_conv1) b_conv1 = tf.get_variable('b_conv1', [20]) tf.summary.histogram('b_conv1', b_conv1) h_conv1 = tf.nn.relu(self.conv2d(x_input, w_conv1) + b_conv1) h_pool1 = self.max_pool_2x2(h_conv1)

tf.summary.image('h_pool1', h_pool1[:,:,:,:1], 6)

定義網絡過程中可以通過tf.name_scope()來劃分網絡模塊,使得可視化結果可以分塊展示,效果較為清晰。

代碼示例:

 

with tf.name_scope('2nd_layer'):            w_conv2 = tf.get_variable('w_conv2', [3, 3, 20, 40])            b_conv2 = tf.get_variable('b_conv2', [40])            h_conv2 = tf.nn.relu(self.conv2d(h_pool1, w_conv2) + b_conv2)            h_pool2 = self.max_pool_2x2 (h_conv2)            tf.summary.image('h_pool2', h_pool2[:,:,:,:1], 6)

with tf.name_scope('fc_layers'): w_fc1 = tf.get_variable('w_fc1', [7 * 7 * 40, 1024]) b_fc1 = tf.get_variable('b_fc1', [1024]) h_pool2_flat = tf.reshape(h_pool2, [-1, 7 * 7 * 40]) h_fc1 = tf.nn.relu(tf.matmul(h_pool2_flat, w_fc1) + b_fc1)

相關焦點

  • 具有PyTorch Lightning的TensorBoard
    此外,推斷事物的最佳方法是對其進行觀察(可視化)。因此,數據可視化在使我們的直覺提供更快,更準確的解決方案方面變得極為有用。實際上,數據科學和機器學習日復一日地利用它幾乎所有的機器學習愛好者都可以使用可視化工具。
  • 【Pytorch 】筆記八:Tensorboard 可視化與 Hook 機制
    今天是該系列的第八篇,這篇文章將介紹一個非常強大的可視化工具叫做 Tensorboard,這是 TensorFlow 中強大的可視化工具,支持標量,圖像,文本,音頻,視頻和 Embedding 等多種數據可視化。
  • 推出 TensorBoard.dev
    TensorBoard http://tensorflow.google.cn/tensorboard追蹤實驗指標https://tensorflow.google.cn/tensorboard/scalars_and_keras可視化模型https://tensorflow.google.cn/tensorboard
  • PyTorch Tips(FLOPs計算/參數量/計算圖可視化/相關性分析)
    來自 | 知乎地址 | https://zhuanlan.zhihu.com/p/112319391作者 | 張松陽編輯 | 機器學習算法與自然語言處理公眾號
  • 機器學習可視化
    0.簡介作為任何數據科學項目的一部分,數據可視化起著重要的作用,通過它可以了解有關可用數據的更多信息並確定任何主要模式。如果能夠使分析中的機器學習部分儘可能在視覺上變得直觀,那不是很好嗎?權重和偏差是一個免費工具,可用於為個人或團隊自動創建不同機器學習任務(例如,學習曲線,圖形模型等)的圖和日誌。1.2數據包裝器(Data Wrapper)DataWrapper是一個免費的在線工具,專門用於創建專業圖表。例如,該工具在《紐約時報》,《 Vox》和《有線》等期刊的文章中使用。無需登錄,所有過程都可以完全在線完成。
  • Python機器學習10:機器學習中的五種可視化方法(上)
    在機器學習中,通常需要先了解訓練的數據集,才能決定選擇哪種特徵預處理方法、哪種模型,以便獲得問題的最優解法。最有效的了解訓練數據集的方法是可視化訓練數據集,從各種可視化的圖中觀察訓練數據集特徵。本文將介紹如何使用Python機器學習庫Pandas可視化訓練數據集。Pandas是Python中高效的數據加載、數據分析工具,它是基於NumPy實現的,提供了很多有用的函數接口。引言本教程將介紹5中常用的機器學習可視化方法,分別如下所示。
  • PyTorch v1.1 重大更新,TensorBoard已加入豪華套餐
    近日在 2019 年 Facebook 開發者大會「F8」上,Facebook 公布了 PyTorch 的重大更新 1.1 版本,同時還發布並開源了其它多個開發工具,繼續降低機器學習/深度學習模型開發調試以及深度學習專用硬體設計的門檻。雷鋒網(公眾號:雷鋒網) AI 科技評論把更新主要內容介紹如下。
  • 機器學習項目可視化展示方法
    Streamlit是一個機器學習工程師專用的,專門針對機器學習和數據科學團隊的應用開發框架,是目前開發自定義機器學習工具的最快的方法。可以認為它的目標是取代Flask在機器學習項目中的地位,可以幫助機器學習工程師快速開發用戶交互工具。本文目錄:     1. Streamlit是什麼               2.
  • 深度學習VGG16捕魚場景分類-WEB可視化
    今天的主題是利用深度學習keras框架做捕魚場景的識別,然後利用tensoflow的tensorboard可視化。
  • 25個Java機器學習工具&庫
    本列表總結了25個Java機器學習工具&庫:1. Weka集成了數據挖掘工作的機器學習算法。
  • 資料 | 機器學習與流場數據可視化
    from=leiphonecolumn_res0910內容簡介 · · · · · ·科學計算可視化(Scientific Visualization,SciVis)是計算機圖形學的一個重要研究方向本書嘗試性地將機器學習理論應用於科學計算可視化中,大大提高了數據中特徵識別的魯棒性和準確率,同時結合流場數據可視化技術的具體實現,詳細闡述這兩個領域結合的理論和存在的關鍵問題。
  • CNN 模型的可視化
    大家都了解卷積神經網絡 CNN,但是對於它在每一層提取到的特徵以及訓練的過程可能還是不太明白,所以這篇主要通過模型的可視化來神經網絡在每一層中是如何訓練的。我們知道,神經網絡本身包含了一系列特徵提取器,理想的 feature map 應該是稀疏的以及包含典型的局部信息。
  • 機器學習核武器來了!MLWorkSpace讓機器學習很輕鬆
    引言MLWorkSpace是一個基於Web的一體化IDE,專門用於機器學習和數據科學。它易於部署,讓您在幾分鐘內就可以在自己的機器上高效地構建ML開發環境。該軟體為開發人員預裝了各種流行數據科學庫(例如,Tensorflow,PyTorch,Keras,Sklearn)和開發工具(例如,Jupyter,VS Code,Tensorboard),集機器學習和數據科學的完美配置於一身,是從事數據科學和機器學習人員的"終極大殺器"。MLWorkSpace主要功能介紹
  • PyTorch模型訓練特徵圖可視化(TensorboardX)
    0、前言本文所有代碼解讀均基於PyTorch 1.0,Python3;本文為原創文章,初次完成於2019.03,最後更新於2019.09;最近復現的一篇論文一直都難以work,上了特徵圖可視化後一下子就找到了問題所在,所以今天想梳理一下PyTorch裡面的特徵圖可視化。
  • Uber 開源 AI 可視化調試工具 Manifold,2 個工作流讓計算性能提升...
    ——Manifold,它可以讓模型迭代過程更易於操作,並能夠提供更多的信息;同時,該工具也被 Uber 用來識別機器學習模型中的一些問題。此外,它還可以顯示對於每一個數據子集,一些候選模型將有怎樣的預測準確性差異,從而為一些高級處理(如模型集成)提供數據根據。可視化設計隨著機器學習越來越成為相關業務不可分割的部分,提供使模型更透明且易於理解工具就顯得更加重要,這一工具可以使得開發者能自信自如地使用機器學習生成的預測。
  • 神經網絡結構可視化工具大全
    對於我們算法分析人員來說,機器學習和神經網絡早已不是什麼新鮮內容,搭建、訓練出來一個好的模型用於線上生產是必不可少的基礎功能,對於業務人員或者是對於模型細節並不是很清楚或者是關注的人來說,這個就顯得很抽象了,這個時候必要的可視化工作就顯得很重要了,當前比較成熟的可視化工具大致包括:matplotlib、seaborn、Chaco 、pychart 、VPython 、yellowbrick
  • 在python中使用SageMaker Debugger進行機器學習模型的開發調試
    在過去的幾十年中,軟體開發社區已經開發了許多的技術工具、IDE、代碼庫等來幫助開發者儘早地發現 Bug,以避免在產品交付的時候仍舊存在 Bug。不幸的是,機器學習開發人員和數據科學家並沒有享受到傳統軟體所提供的強大的調試工具。這就是為什麼我們中的許多人在訓練腳本中經常性使用 「print」 語句。
  • 機器學習團隊常用工具總結,人生苦短,我用Python!
    機器學習工具,初創公司最愛哪款?   近日,Reddit上一則帖子火了:發帖者詳細總結了近幾年初創公司的機器學習團隊在各個環節使用的機器學習工具,從軟體開發設置IDE,機器學習框架,到實驗管理,可視化工具等等。   評論區也一片火爆,大家紛紛作出補充,極大的豐富了現有最新主流資源。
  • Facebook發布PyTorch 1.1,開源AI模型優化簡化工具BoTorch & Ax
    發現已有的工具難以擴展或者自定義,無法滿足他們日益增長的需求。系統理解工具。交互式的可視化讓用戶可以查看代理模型、執行診斷,以及了解不同結果之間的權衡。人可參與的優化。除了支持多個 objective 和系統理解之外,Ax 的底層數據模型還使實驗者能夠在收集新數據時安全地介入其搜索空間和目標。創建自定義優化服務的能力。多個 API 使得 Ax 既可用作部署控制、收集數據的框架,也可用作可通過遠程服務調用的輕量級庫。用於評估新的自適應實驗算法的基準測試套件。