[爆卦]jetson nano優點是什麼?優點缺點精華區懶人包

為什麼這篇jetson nano優點鄉民發文收入到精華區:因為在jetson nano優點這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者atrix (班班)看板PC_Shopping標題[心得] 學習DeepLearning的初學者...



※如果DL的全貌是馬里安納海溝,
※那我大概正在游泳池游泳。

我用的是python3+tensorflow+keras,
先寫個簡單的建置歷程 證明不是鍵盤大師。

如果你是個只會用windows的人,
(修改一下)注意底下:
Windows用python3.6,
tensorflow安裝會有問題,
我移掉3.6再裝3.5.2還是會掛,
要重灌windows再裝3.5.2才正常import。
※(如果你是個不用花一個禮拜以上時間,
※就可以獨自在windows上跑gpu加速的人,
※那我想拜你為師)

如果你會用Vim寫程式,
那這篇請當作笑話略過。

如果你不知道指令cd,ls在幹嘛?
那請先了解Linux的檔案架構跟windows的差異。

如果不會用nano寫個python的開圖程式,
那請先看看vim怎麼操作,然後你會對nano很有親切感。
還有把tensorflow裝好後用matplotlib秀張圖出來。

如果不知道該怎麼開始DL的學習,
那請在github上找個簡單的CNN模型下來跑跑看,先看看別人是怎麼做的。

上面寫了我目前建置過程中的大部分keywords,事後有想到再補充。

~~~
有人說deep learning用cpu跑是開玩笑,
就我個人一個多月以來學習經驗,
這一半是開玩笑沒錯,但另一半不是。

直接講用cpu跟gpu的比較好了,

GPU優點:
快,就是快,2,3小時的train幾十分鐘就完成。

只用CPU優點:
簡單,建置快速。

初學者我強烈建議先在VM中安裝Ubuntu,
裝在VM中就不能用GPU加速了,
可初學者就不要妄想用什麼GPU了。
CPU都沒搞定還想用GPU?

※如果你真的很想用GPU加速某個model,那這篇也不是你需要看的。

用VM的好處:
裝完環境之後你可以直接匯出虛擬機當作備份,
避免新手的強力技能:[把環境崩潰掉]後,
要重新安裝系統的麻煩事。
而且可以安裝一次,創建好幾台虛擬機,
而不用準備一堆實體電腦,
去測試各種環境變數,套件的相容性,跟一堆雜七雜八的問題。

高手會用virtualenv創建不同的虛擬環境,
避免不小心搞掛系統這件事。
不過,連virtualBox都不會用的話,
我是不覺得會用virtualenv。

~~~
安裝tensrflow-cpu
就把官網的指令複製貼上,大概4個步驟,含下載15分鐘完成。

安裝tensorflow-gpu
需要CUDA® Toolkit 8.0
需要cuDNN v5.1.
以上兩個就是安裝gpu版最累人的地方,第一次我至少花了兩天時間,
NVIDIA的安裝說明我一直沒有去看懂,
試著在k600上安裝時,被煩倒在設定環境變數的部份,就不想搞了。
安裝完上面兩個後,就跟安裝cpu版是幾乎一樣的指令了。

~~~
就目前為止,用gpu的好處,
我只想到加快train,跟使用的速度,
DL的學習重點跟順序,
著重於: linux操作 〉python 〉
tensorflow跟keras 〉深度學習理論,
而且深度學習的理論非常非常非常重要!!!
除此之外,
我是不覺得gpu加速能幫助多少一個人學習DL的速度加快。

要學DL就該學DL的理論,
DL的理論不只要人聰明,還要大量時間,
寫好model後,就丟給底下的人去測試,
學DL不要把時間花在建環境上。
學DL不要把時間花在建環境上。
學DL不要把時間花在建環境上。

除非你像我一樣這麼苦命,
整個系上沒人會python,懂linux操作。

(修改)純CPU不適合:
用DL工作的人,
有人處理演算法,自己只負責測試的人,
用CPU處理的時間超過可接受的時間的人
(我的話,train的上限大概是10~14天,因為要做報告)


~~~
我推薦的DL學習最低建議:
I3,I5
(I7有點~不是那麼必要。)

32GB以上記憶體
(我目前試過約8個model,有兩個會用超過14GB記憶體,因為是在虛擬機內所以是14G不是16G

SSD
(這個看個人,因為我的數據經常要自己挑出來需要的,1萬多張300KB圖片用arc100都要好幾分鐘才能讀完縮圖)

顯卡:看看口袋多深買多貴,我只有朋友送的兩張K600。

~~~
對了,用CPU還有個好處,
可以跟Boss說東西還在跑,
進度報告先跳過我。
(deadline快到的人不適用)


~~~(新增:有錯請指教)
在windows上裝anaconda
建置GPU加速環境應該是最簡便的,
但我還沒試。

新手在Ubuntu 搞NV-GPU加速是在自虐,
不過有不少Library在windows上會很難搞。


--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.230.26.3
※ 文章網址: https://www.ptt.cc/bbs/PC_Shopping/M.1502908417.A.33F.html
※ 編輯: atrix (36.230.26.3), 08/17/2017 02:36:52
odanaga : 還在gradient descent08/17 02:41
odanaga : 除了tf以外還有一些tool是用cpu的08/17 02:43
f496328mm : 學DL+GPU蠻辛苦的,系統崩潰好幾次,而且GPU版本不08/17 02:47
f496328mm : 同,安裝方式也有些微差距,而且不同的NN,差距有點 08/17 02:47
f496328mm : 大QQ,背後一堆理論 08/17 02:47
atrix : ㄧ樓高手 08/17 02:49
atrix : 3樓我們一起QQ,理論真的看得好辛苦(痛苦) 08/17 02:50
arrenwu : DL的理論其實就是古早NN的理論吧? 08/17 02:53
jerry92277 : 這電蝦點在哪 08/17 02:53
jerry92277 : 另,windows搞不定是你功力太弱,spyder 3+tensorfl 08/17 02:53
jerry92277 : ow+cuda半小時不用就可以搞定了,根本不用重灌 08/17 02:53
arrenwu : 印象中DL理論面現在就算在學界也沒啥人想碰 08/17 02:53
arrenwu : 他的電蝦點應該是最後面的建議配備吧XD 08/17 02:53
atrix : 我並不負責我們研究題目的演算法, 08/17 02:55
atrix : 我只負責測試到能動 08/17 02:55
jerry92277 : 當初幫lab學長趕畢業救急,拿1070幫他跑spyder3寫好 08/17 02:55
jerry92277 : 的code,速度穩定i7-6700十倍,半小時就setup開始tr 08/17 02:55
jerry92277 : ain了好嗎 08/17 02:55
arrenwu : 我之前作DL的project 其實也是在Windows下面跑 08/17 02:56
arrenwu : 現在大部分人用DL是在應用層面 08/17 02:56
jerry92277 : nVidia家的東西初次架設拿linux,尤其是ubuntu根本 08/17 02:57
jerry92277 : 就是自虐 08/17 02:57
atrix : spyder3我是第一次聽到, 08/17 02:58
atrix : 要是早知道我也不用這麼累了QQ 08/17 02:58
arrenwu : Spyder 只是 IDE 對你們應該沒太大影響吧? 08/17 02:58
arrenwu : 雖然我是覺得沒有IDE寫code很痛苦就是 08/17 02:59
atrix : 我的第一目標是把別人寫的測到能動, 08/17 03:00
jerry92277 : 而且我還不是搞DL的,我做blockchain,那時候隔壁la 08/17 03:01
jerry92277 : b學長來求救,剛好我lab有一台電動機放1070,一個 08/17 03:01
jerry92277 : 中午吃飯的時間剛好train完dataset,省的他熬夜住la 08/17 03:01
jerry92277 : b 08/17 03:01
atrix : 小弟還沒能力知道整個Machine learnimg的世界長怎樣 08/17 03:02
odanaga : vscode 站出來 08/17 03:02
jerry92277 : dl的東西做testing算最簡單吧,丟下去跑,去買個雞 08/17 03:02
jerry92277 : 排,回來才收data 08/17 03:02
arrenwu : 要了解ML的世界容易啊 去找些網路課程上就可以了 08/17 03:03
arrenwu : 只要線性代數和機率部分沒卡關 ML概念算是好懂 08/17 03:03
atrix : 拿Ubuntu是自虐嗎? 08/17 03:03
atrix : 聽到前輩這樣說,我更想QQ了 08/17 03:03
jerry92277 : 紅明顯,順便警告,千萬不要用ubuntu跑cuda相關的東 08/17 03:03
jerry92277 : 西,第一次會搞驅動會到你很想死 08/17 03:03
odanaga : 去玩個kaggle爬分自虐之類的 08/17 03:04
jerry92277 : 光“搞對正確的driver版本”,而且還不是最新版,是 08/17 03:04
jerry92277 : 其中'某一版'才會動 08/17 03:04
odanaga : 還好 第一次痛 第二次爽 08/17 03:05
jerry92277 : 然後每一次賭錯就是recovery mode+cli砍掉驅動重來 08/17 03:05
jerry92277 : 搞到我現在一顆cz80專門是弄好的ubuntu cuda 測試 08/17 03:06
jerry92277 : 環境 08/17 03:06
odanaga : 我記得裝好cuda自己帶的驅動就不要動了 不然開機沒 08/17 03:06
odanaga : 畫面還得暴pirge一波 08/17 03:06
jerry92277 : 而且每次ubuntu還會很“好心”的幫你啟用內建的open 08/17 03:07
jerry92277 : source driver 08/17 03:07
f496328mm : 光是CNN就很痛苦了,要幾層,每層要多大?480*640? 08/17 03:07
f496328mm : 雖然現在有VGG跟resnet,不過完全不懂裡面在幹啥, 08/17 03:07
f496328mm : 不懂res一百多層怎麼來的 08/17 03:07
atrix : 了解ML的世界,我指的不是概念,而是像「現在走的路 08/17 03:07
atrix : 是遠路還是近路?」這種 08/17 03:07
arrenwu : 不懂裏面在幹嘛?不懂的不是只有你啊XD 08/17 03:08
arrenwu : DL performnace部分的理論現在是空的 08/17 03:09
jerry92277 : 我懶,直接nv預設的模組丟下去train,跑出來東西都 08/17 03:09
jerry92277 : 蠻漂亮的,雖然不比手動tune過的東西好 08/17 03:09
f496328mm : 還有什麼rnn、dnn,好難懂啊啊啊 08/17 03:09
arrenwu : 就算是 CVPR 裡面的paper也沒人給數學理論證明的 08/17 03:09
atrix : 沒錯!之前我有改顯卡驅動,結果就不給我登入了,登 08/17 03:10
atrix : 入了也進不去桌面... 08/17 03:10
jerry92277 : 不過比大部分寫的爛的好就夠了(攤)程式寫的太爛的 08/17 03:10
jerry92277 : 辦法 08/17 03:10
odanaga : 還好做cnn不就人家vgg我也vgg(?) 08/17 03:10
arrenwu : 他們證明自己效果好的方式就是拿些公共的data出來跑 08/17 03:10
jerry92277 : 就有人硬要踩雷,要不是有手機發文沒p幣我早就開一 08/17 03:11
jerry92277 : 篇文了(懶 08/17 03:11
f496328mm : 所以大家目前都不管理論?用套件,單純看結果嗎? 08/17 03:11
f496328mm : 很好奇google那些怎麼設計nn的 08/17 03:11
arrenwu : 他們tune架構和參數一定有理由 但多半來自經驗 08/17 03:12
jerry92277 : 是說我略懂vim, 可是我覺得這篇不好笑啊 08/17 03:12
arrenwu : 但不會是數學證明 因為這個目前大家都做不到 08/17 03:12
odanaga : 設計新架構比較難 把現有架構拿來解決舊問題比較簡 08/17 03:13
odanaga : 單 08/17 03:13
f496328mm : 對啊,cnn目前就vgg、google、res,所以大家都用一 08/17 03:13
f496328mm : 樣的? 08/17 03:13
atrix : 應該不用覺得好笑啦,這只是某個弄掉半夜終於完成一 08/17 03:14
atrix : 部份進度的研究生想寫下的 08/17 03:14
jerry92277 : 當然不是不管理論,你要知道理論才能大概估一下哪幾 08/17 03:15
jerry92277 : 組比較好用 08/17 03:15
arrenwu : 就我了解 DL的理論就只有:只要你的資料和節點夠多 08/17 03:15
arrenwu : 你的NN可以模仿一個連續函數到任何精準度 08/17 03:15
jerry92277 : 不然自己寫的要死要活,結果不如大公司寫好的套下去 08/17 03:15
jerry92277 : 你不會哭死? 08/17 03:15
jerry92277 : 是說所以原po要拜我為師了嗎,我一個小時內可以搞定 08/17 03:17
jerry92277 : 欸(x) 08/17 03:17
jerry92277 : (開玩笑的) 不過win上真的沒那麼差啦XD 08/17 03:17
f496328mm : 大家會去調整vgg的架構嗎?看看有沒有可能變好? 08/17 03:18
arrenwu : 我也覺得win上面沒有很差 08/17 03:18
f496328mm : 還是說,著重在應用方面?架構就直接用套件即可? 08/17 03:19
jerry92277 : 時間夠(沒壓力)的話,可以稍微tune看看參數,不過da 08/17 03:21
jerry92277 : taset不夠大的話小心over-fitting 08/17 03:21
arrenwu : 現在在比較的多半是妳怎麼想到一個不錯的應用 08/17 03:21
atrix : 我真的想拜師了呢~~ 08/17 03:22
atrix : 進實驗室一段時間了,但現在才要碩士班,之前弄Ardu 08/17 03:25
atrix : ino,PLC,網路設備,現在BOSS想要ML,就要去做ML~ 08/17 03:25
jerry92277 : 不過dl有個比較隱形的麻煩點就是權重的設定有可能會 08/17 03:25
jerry92277 : 導致model有bias 08/17 03:25
jerry92277 : 這個我現在一直想想不到有什麼比較好的辦法解決OTZ 08/17 03:26
odanaga : cnn又不是只能classify 08/17 03:27
Giovannie : Decker is your savor 08/17 05:29
aa2468291 : QQ 目前大多用jetson tx2弄 不過arm架構 有些不是 08/17 07:12
aa2468291 : 很好裝 08/17 07:12
n19605gh : 推 08/17 08:19
Murasaki0110: docker才是正解 08/17 08:23
celestialgod: windows anaconda 安裝tensorflow 幾分鐘就搞定了.. 08/17 08:24
celestialgod: .. 08/17 08:24
litwild : 羊還是釣客? 08/17 08:33
litwild : QQ 噓錯篇 慢點補推 08/17 08:33
m28633146 : 我也用anaconda,幾乎超級懶人包就弄好 08/17 08:35
litwild : 補推 08/17 08:35
m28633146 : 1070比i7-6700快超多的 有夠爽 08/17 08:35
m28633146 : 但我花了一週才知道我的tesla c2050 cc 2.0不能用 08/17 08:40
willy4907 : GPU版 windows簡單多了~ 08/17 08:40
rexct : 要用GPU的話,裝 nvidia-docker 用docker跑digits就 08/17 08:57
rexct : 完成環境建製了 08/17 08:57
rexct : https://github.com/nvidia/digits 是在linux 下 08/17 08:58
Ruminative : 大家討論好熱烈,學到不少,之前在mac上灌caffe也搞 08/17 09:08
Ruminative : 好久,某個套件版本不對,就要整段重來。 08/17 09:09
ACMANIAC : 如果連 Windows 裝起來都有問題,用 Ubuntu 會裝到 08/17 09:33
ACMANIAC : 不是普通的想死...這還不是裝好就沒事了 08/17 09:33
circums : windows跑TF跟CUDA比linux簡單多了 灌驅動有夠機歪 08/17 09:34
circums : windows麻煩的是python的library很多都只有linux版 08/17 09:35
ACMANIAC : CPU 唯一優點只有好裝,但是後面負擔的訓練時間多到 08/17 09:35
ACMANIAC : 你可以裝個幾十次 GPU 版 (從你剛進碩班算到畢業) 08/17 09:36
ACMANIAC : GPU 加速 絕對 不是 適合 "研究題目就是加速的人" 08/17 09:37
ACMANIAC : 而是 本身就在搞 Deep Learning 的研究生! 08/17 09:37
ACMANIAC : 因為你的研究生涯沒上百次也至少會跑個幾十次實驗! 08/17 09:39
ACMANIAC : 另外,virtualenv 也比 VirtualBox 簡單非常多... 08/17 09:45
ACMANIAC : 有在寫 Python 的使用 virtualenv 非常基本吧... 08/17 09:45
ACMANIAC : 最後,你的 CPU 的好處...在你快要口試的時候會顆顆 08/17 09:46
ACMANIAC : 尤其跑一些更 GY 的 model 好比 RNN 或 GAN 之類的 08/17 09:49
ACMANIAC : 你用 CPU 等你跑完別人都畢業了喔 08/17 09:50
winiel559 : 我用Windows啊...雖然專長是train出大便 08/17 09:50
EGsux : Ubuntu 960m 的驅動我炸了三次弄了一整天才把issue 08/17 09:51
EGsux : fix 好 08/17 09:51
EGsux : 連safe mode 我都進不去 08/17 09:53
circums : 再噓一次跑GAN真的很幹 08/17 09:56
ACMANIAC : > 就算是 CVPR 裡面的paper也沒人給數學理論證明的 08/17 10:08
ACMANIAC : 證明什麼?如果是模型的有效性應該蠻多篇的吧 08/17 10:08
ACMANIAC : CVPR 數學蠻多的啊,確實應用更多沒錯啦 08/17 10:08
ACMANIAC : 我想了一下,用數學證明模型有效性在 ICML 比較多 08/17 10:10
friedpig : 不過其實時間短的話用免費的雲計算就好了 GCP Azure 08/17 10:14
friedpig : AWS都有一些免費的額度可以玩 08/17 10:15
a1234567289 : 我沒有使用任何機器學習的模組 自己寫函式自己用 08/17 10:22
a1234567289 : 高級優化算法從頭到尾自幹 08/17 10:22
a1234567289 : 然後做出來後 幹 octave有夠慢 我要轉戰tensorflo 08/17 10:24
a1234567289 : w惹 還有 Linux系用nvidia是找死吧 你忘記Linux 08/17 10:24
a1234567289 : 的誰還直接對nvidia罵 fuck you惹碼 08/17 10:24
a1234567289 : 現在訓練神經網路怕樣本太少或參數太多導致high-bia 08/17 10:30
a1234567289 : s的話還有隨機抽離隱藏層的算法 這海超大的 08/17 10:30
ACMANIAC : Linus XDDDDD 原來是這樣 (? 08/17 10:35
ACMANIAC : 隨機抽離隱藏層是啥?是指 Dropout? 08/17 10:36
a1234567289 : 對 是dropout 我不知道是不是這樣翻XDD 阿話說 我剛 08/17 10:45
a1234567289 : 打錯 那是overfitting 想說奇怪為啥神經元太多會hig 08/17 10:45
a1234567289 : h bias XD 08/17 10:45
a1234567289 : 我有個同學自幹一個類Siri的AI系統 可是我沒了解太 08/17 10:48
a1234567289 : 多 開學的時候去問問細節 08/17 10:48
EGsux : high variance才是 overfit high bias underfit 08/17 10:56
ntueesuevan : 用atom啦 比vim好用多 08/17 10:56
EGsux : 現在大家都在用atom嗎? 08/17 10:57
soto2080 : vs code啦 08/17 11:18
a1234567289 : high bias不是參數太少嗎? high variance和overfit 08/17 11:21
a1234567289 : ting則是參數太多? 08/17 11:21
a1234567289 : 剛學 已經搞混惹 QQ 看來要複習惹 08/17 11:22
※ 編輯: atrix (101.15.131.69), 08/17/2017 13:33:37
kqalea : 推 nvidia-docker 網路神人很多~讓他們debug就好 08/17 13:34
APM99 : 等等 真的有人能看得懂理論?那已經準教授等級了吧 08/17 14:03
kobe8112 : X! 這不是PTT電蝦版嗎?講中文不行嗎? (無誤 08/17 14:10
APM99 : 西洽有一篇用GAN生成二次元頭像 很科普很中文 ....08/17 14:16
eszerfrm : 有專門的版,這裡是買PC的吧?08/17 14:53
eszerfrm : 還有,DeepLearing不是為了Gpu加速用的,妳那個要去08/17 14:54
eszerfrm : 研究平行運算 08/17 14:54
eszerfrm : 學DL就好好把DL學好,儘量跳脫「資料庫」還有把你08/17 14:56
eszerfrm : 的「去過適」做好就成功了08/17 14:56
APM99 : 專版在哪?? 08/17 14:57
eszerfrm : 不過深度學習本身就是一種過適的過程,怎麼跳脫,你08/17 14:57
eszerfrm : 要好好研究08/17 14:57
eszerfrm : 我哪知道,python版?08/17 15:00
APM99 : 你說有專門的板阿 又說你哪知道??08/17 15:03
APM99 : python就除錯版 哪有在討論這個08/17 15:04
eszerfrm : 那這個版就有討論這個的阿?08/17 15:16
eszerfrm : 算了,不吵架,樓主分享的東西是好,但是在這裡分08/17 15:17
eszerfrm : 享就怪怪的而已08/17 15:17
APM99 : 都被m文了 你還說怪怪的????版主都認可了 ok嗎?08/17 15:18
ladddddy : 好文推一個,目前也是新手,推薦可以anaconda配spy08/17 15:30
ladddddy : der,驅動cuda & tf & keras非常好安裝,大家一起08/17 15:30
ladddddy : 加油QQ08/17 15:30
anedo : 以需求來討論選擇硬體的話,類似討論都是可以的。08/17 15:33
anedo : 即使大部分方向都著重在軟體面的話。08/17 15:33
※ 編輯: atrix (36.230.26.3), 08/17/2017 15:59:39
zxc123270 : 幹最近也開始要碰這個了 08/17 16:06
eszerfrm : 我又沒說不可以.... 我只是說怪怪的,別引戰 08/17 16:23
eszerfrm : 不過樓樓上說得倒是有道理,這裡是我理虧抱歉 08/17 16:24
anedo : 畢竟板上以win採購硬體是大宗,要討論其他os也可 08/17 16:27
anedo : 使用之間的討論可以減少一些採購問題。那當然是最好 08/17 16:28
leoloveivy : tensorflow官網滿清楚的吧……… 08/17 16:57
ACMANIAC : (GPU) 官網的照做會踩到坑啦,但用 Linux 踩到的坑 08/17 17:07
ACMANIAC : 比 Windows 難太多了 08/17 17:08
f496328mm : 哈哈 我也是照官網 採到不少坑 08/17 17:46
EGsux : Linus 照官網會爆炸 主要是nv那邊的driver 08/17 18:37
APM99 : 抓到了 google都用mac 08/17 21:26
ry3298 : 推 08/17 21:36
yenhao0218 : docker 08/18 02:00
vi000246 : 我用python3一堆套件有問題 只好用2.7 08/18 19:23
vi000246 : 我用Anaconda跟keras 一天就能建好環境了 08/18 19:26
nucleargod : 完全不需要,本機直接裝ubuntu 跑 caffe 輕鬆 08/18 20:30
nucleargod : GPU 加速只是一個參數開不開的問題 08/18 20:30
nucleargod : 跑 learning 還是完全丟掉 windows 比較快 08/18 20:32
uly : windows anaconda 明明超好裝 08/18 21:08
atrix : 今天試了一下,windows上anaconda的tensorflow的確 08/24 23:38
atrix : 超好裝......... 1小時內就裝好了(又是個藍藍瘦,香 08/24 23:38
atrix : 菇的心情) 08/24 23:38
magonmonkey : 有點久了,專門來這篇推Jerry大,想當初用ubuntu裝t 01/05 03:58
magonmonkey : ensorflow裝到快哭出來了,深有同感,會遇到各種奇 01/05 03:59
magonmonkey : 形怪狀的bug,網路上的解法通常又會連到另一個bug 01/05 03:59

你可能也想看看

搜尋相關網站