1. 程式人生 > >學習筆記︱Nvidia DIGITS網頁版深度學習框架——深度學習版SPSS

學習筆記︱Nvidia DIGITS網頁版深度學習框架——深度學習版SPSS

DIGITS: Deep Learning GPU Training
System1,是由英偉達(NVIDIA)公司開發的第一個互動式深度學習GPU訓練系統。目的在於整合現有的Deep
Learning開發工具,實現深度神經網路(Deep Neural
Network,DNN)設計、訓練和視覺化等任務變得簡單化。DIGITS是基於瀏覽器的介面,因而通過實時的網路行為的視覺化,可以快速設計最優的DNN。DIGITS是開源軟體,可在GitHub上找到,因而開發人員可以擴充套件和自定義DIGITS。
Github介面:https://github.com/NVIDIA/DIGITS/tree/master/docs

筆者還有話說: 筆者是從傳統統計學過來的,我覺得Nvidia
DIGITS就是接下來深度學習的SPSS,這是一個開端,筆者覺得接下來會有很多框架會有這樣的視覺化操作介面。
特別是Tensorflow是基於節點流進行編譯演算法,編譯起來又特別麻煩,筆者覺得tensorflow如果可以效仿SPSS
Modeler一樣流運作,也是極好的~

這裡寫圖片描述

一、安裝基本環境

本節會簡單介紹一下安裝需求,其實如果有GPU,後續也就順理成章的可以安裝出來了。一般在安裝、並配置好caffe之後,直接再安裝DIGITS即可。

  • 1、如官方所述,DIGITS現在僅支援Ubuntu,當然也在其它Linux系統上測試成功,未見有在Windows上配置的案例;
  • 2、DIGITS嘗試囊括更多的開源Deep Learning 框架,當前(digits-2.0)僅包括:Caffe, Torch, Theano, and BIDMach.

採用原始碼安裝DIGITS前,事先要安裝CUDA(必須)、cuDNN(用於GPU加速,建議安裝),Caffe(執行DIGITS至少要有一個Deep Learning framework,也可以安裝Theano,這裡不介紹)。

  • 作業系統:Ubuntu 14.04 LTS 64 bit(ubuntu-14.04.3-desktop-amd64.iso)
  • CUDA:CUDA-7.0(cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb),支援CUDA的GPU
  • cuDNN:cuDNN-7.0(cudnn-7.0-linux-x64-v3.0-rc.tgz)
  • Caffe:Caffe-0.13.0(caffe-master.zip,必須是NVIDIA’s fork,原因點此)
  • DIGITS:DIGITS-2.0(原始碼安裝,DIGITS-master.zip)

二、詳細的安裝過程

本文只是筆記,就不累述安裝配置過程。可見部落格以下幾類部落格:

還有一個BUG!就是supervessel超能雲伺服器上已經幫你配置好DITIGS,不過筆者在嘗試的時候並沒有嘗試成功,之後會開貼說一下supervessel: supervessel-免費雲映象︱GPU加速的Caffe深度學習開發環境

三、一些DIGITS實際執行案例

其中機器之心翻譯文章很棒!!強推!!:機器學習初學者入門實踐:怎樣輕鬆創造高精度分類網路,非常棒,入門級!!

四、視覺化介面介紹

幾個比較好的功能點,貼圖貼真相:

  • 1、點選式選單介面
  • 2、而且可視化了深度學習訓練過程
  • 3、報錯都直接幫你顯示出來
  • 4、分類結果的視覺化

這裡寫圖片描述

點選式選單介面,而且可視化了深度學習訓練過程。
這裡寫圖片描述

報錯都直接幫你顯示出來,以便查看出錯在哪:
這裡寫圖片描述
分類結果的視覺化:

這裡寫圖片描述

參考文獻:
NVIDIA DIGITS 學習筆記(NVIDIA DIGITS-2.0 + Ubuntu 14.04 + CUDA 7.0 + cuDNN 7.0 + Caffe 0.13.0)
http://blog.csdn.net/enjoyyl/article/details/47397505#安裝digits

.
.

延伸一:深度學習調參網頁版HyperBoard

HyperBoard 是一個輔助深度學習調參的網頁端視覺化工具,不依賴於特定的深度學習框架(如 Tensorflow),能夠在遠端伺服器訓練模型的同時在本地瀏覽器進行視覺化。
目前支援訓練曲線的實時更新,可以方便地按照超引數組合對幾十上百條訓練曲線進行篩選和隱藏,下一步計劃支援動態的統計直方圖和向量視覺化功能。

介面區域性如下所示:
這裡寫圖片描述

延伸二:DIGITS安裝實踐

開始的方式,在瀏覽器鍵入,或者有以下幾種方式:

http://localhost/
http://<EC2_INSTANCE_PUBLIC_IP>
#參考:https://github.com/bitfusionio/amis/tree/master/awsmrkt-ubuntu-digits

啟動Digits服務:

% sudo start nvidia-digits-server

關閉Digits服務:

% sudo stop nvidia-digits-server
  • 報錯一:
/usr/share/lua/5.1/cunn/THCUNN.lua:7: libcusparse.so.7.5: cannot open shared object file: No such file or directory

最簡單的修復的方式:

sudo apt-get install cuda-cusparse-7-5
sudo ldconfig
  • 報錯二:
now i have a new problem ,like tihs
[email protected]:~/digits$ ./digits-devserver 
Default value for caffe_root "<PATHS>" invalid:
    caffe binary not found in PATH
==================================== Caffe =====================================
Where is caffe installed?

    Suggested values:
    (P*) [PATH/PYTHONPATH] <PATHS>
>> ~/caffe
ERROR: Library at "libcaffe.so.1.0.0-rc3" does not have expected suffix "-nv". Are you using the NVIDIA/caffe fork?
Invalid input

.

延伸三:一般伺服器使用步驟

一般在公司伺服器,只要連線的是公司的網路,只要伺服器一直開著並啟動digits就可以公司內伺服器連用。
1、啟動
來到digits資料夾的尋找並鍵入:

sudo ./digits-devserver

2、鍵入地址
如果是伺服器本機,鍵入:

0.0.0.0:5000/

如果其他機器訪問,則先得到該伺服器的內網IP

http://xxx.xxx.xxx.xxx:5000/

相關推薦

學習筆記Nvidia DIGITS網頁深度學習框架——深度學習SPSS

DIGITS: Deep Learning GPU Training System1,是由英偉達(NVIDIA)公司開發的第一個互動式深度學習GPU訓練系統。目的在於整合現有的Deep Learning開發工具,實現深度神經網路(Deep Ne

Nvidia DIGITS網頁深度學習框架——深度學習SPSS

連結http://blog.csdn.net/sinat_26917383/article/details/54022715 DIGITS: Deep Learning GPU Training System1,是由英偉達(NVIDIA)公司開發的第一個互

NVIDIA深度學習工具箱NVIDIA DIGITS:視覺化訓練

NVIDIA公佈了其深度學習工具箱,https://developer.nvidia.com/digits,視覺化整個訓練的過程,並自動呼叫GPU及cuDNN,是我等深度學習入門者的福音啊。 提供了兩種安裝方式: 2. 下載後web安裝。註冊了NVIDIA對應的開發者賬號

[學習筆記—Objective-C]《Objective-C-基礎教程 第2》第十一章 屬性

變量名 erl .text nonatomic syn split view 不能 -name 11.1 使用屬性值 @property float rainHandling; //表明此類具有float類型的屬性,其名稱為rainHandling

吳恩達深度學習筆記(3)-神經網路如何實現監督學習

神經網路的監督學習(Supervised Learning with Neural Networks) 關於神經網路也有很多的種類,考慮到它們的使用效果,有些使用起來恰到好處,但事實表明,到目前幾乎所有由神經網路創造的經濟價值,本質上都離不開一種叫做監督學習的機器學習類別,讓我們舉例看看。

Python3學習筆記(四):用Python實現深度優先

這裡主要是用Python實現下深度優先的概念,由於程式碼寫得比較隨意,就沒有封裝成類,而是寫成一個函式 用一個列表做為實驗資料,模擬成二叉樹結構,用遞迴的方式不斷獲取二叉樹上的左節點,一直到左節點 序號超出列表範圍,然後迴歸獲取右節點,以此來實現深度優先。 以下是程式碼

學習筆記之湯小丹《計算機作業系統第四》----第三章 處理機排程與死鎖

處理機排程的層次: 高階排程(作業排程、長程排程):排程物件為作業(還不是程序),為它們建立程序,分配必要的資源,並將它們放入就緒佇列(從外存 --->記憶體) 低階排程(程序排程、短程排程):決定就緒佇列中的哪個程序應獲得處理機 中級排程(記憶體排程):提高記

學習筆記之湯小丹《計算機作業系統第四》----第二章 程序的描述與控制

前趨圖:起始結點,終止結點,重量(終止時間) 順序執行特徵:順序性、封閉性、可再現性 程式間可併發執行,只要程式間不存在前趨關係。如 其中,s1: a = x + 2; s2: b = y + 4; s3:c = a + b; s4:d = c + b  因

JS學習筆記 - fgm練習 - 網頁換膚

  自己做的: 總結: 1. 點選按鈕,div內部變色,邊框保持顏色不變。 實現原理:其實本來就把background 和 border 分別設定了同一個顏色,看似是一個整體,其實本來就是分開的。 那麼點選的時候,只需要更改background 的顏色。  border 部分不需

深度學習筆記(基礎篇)——(一)機器學習深度學習簡介

  機器學習是最基礎的(當下初創公司和研究實驗室的熱點領域之一)。深度學習是非常嶄新和有影響力的前沿領域。 一、定義 1、機器學習    從樣本中學習的智慧程式。是資料驅動的。90年代初提出。強調的是給計算機程式(或者機器)輸入一些資料後,它學習這些資料,而

Unity學習筆記(3)-----製作一個模擬星系(複雜)【Step1】

繼續學習Unity3D  這周任務之一是要做一個太陽系,如下圖: 而這次筆記的重點不在作業上~.~, 而是在於如何建立一個, 真正意義上的  “星系”。 上過課都知道, 作業簡單用以下兩條語句即可搞定: Planet.gameObject.transform.Rotat

RabbitMQ學習筆記二:rabbitmq傳送接收訊息Helloworld(Java

一 引入rabbitmq java client 前面我們已經在本地(windows下)安裝配置好了RabbitMQ server。現在我們引入rabbitmq Java client。 在eclipse中建立一個maven專案,在pom.xml檔案中加

Unity學習筆記(3)-----製作一個模擬星系(複雜)【Step3】

行星的軌道離心率普遍較低。 首先來看傾斜角的問題。 前面提到過, 只要將行星產生的位置約束於X軸附近, 再加上初始受到的動量方向, 就可以基本控制住行星運動的傾角。兩個函式程式碼如下: Vector3 ProperArea(float min, float max) { float x = (max

Deep Learning.ai學習筆記_第三門課_結構化機器學習專案

目錄 第一週 機器學習策略(1) 第二週 機器學習策略(2)   目標:學習一些機器學習優化改進策略,使得搭建的學習模型能夠朝著最有希望的方向前進。 第一週 機器學習策略(1) 搭建機器學習系統的挑戰:嘗試和改變的東西太多,比如超引數。   什麼是正交化?

QNX學習筆記 [IMX6Q/TQIMX6Q]QNX HAM 高可用框架

1.HAM概念 Hign Availability Framework 類似於軟體看門狗,可以檢測系統任意程序的狀態,並在指定的事件發生後(如程序死亡),作出特定的動作(如程序重啟),從而使得關鍵程序失敗後可以迅速恢復,保證全系統的可用性。 2.HAM基本元素 (1)Entiti

tensorflow學習筆記(二十八):collection tensorflow學習筆記(二十八):collection

tensorflow學習筆記(二十八):collection 2016年12月27日 11:53:06 閱讀數:11346 tensorflow collection tensorflow的collection提供一個

學習筆記之——基於pytorch的SFTGAN(xintao程式碼學習,及資料處理部分的學習

程式碼的框架仍然是——《https://github.com/xinntao/BasicSR》 給出SFTGAN的論文《Recovering Realistic Texture in Image Super-resolution by Deep Spatial Feature Transfo

Spring學習筆記(五):Spring JDBC 框架及應用示例

JDBC 框架概述 在使用普通的 JDBC 資料庫時,就會很麻煩的寫不必要的程式碼來處理異常,開啟和關閉資料庫連線等。但 Spring JDBC 框架負責所有的低層細節,從開始開啟連線,準備和執行 SQL 語句,處理異常,處理事務,到最後關閉連線。 所以當從資料庫中獲取資

Java第十六天學習筆記(基本資料物件、集合框架

基本資料物件 基本資料型別物件包裝類          * 為了方便操作基本資料型別值,將其封裝成了物件,在物件中定義了屬性和行為豐富了該資料的操作。          * 用

學習筆記(自己知道的一些入門者java學習的網站,和學習方向)

1、慕課網 https://www.imooc.com/course/list?c=java&type=3,這個網站有很多免費的視訊但作為初學者的我感覺一臉矇蔽,不懂現在的前沿技術和各種框架,連什麼是Spring boot都不知道 裡面有一個職業路徑,是各種收費的