閱讀634 返回首頁    go 阿裏雲 go 技術社區[雲棲]


數學爛也要學AI | 帶你造一個經濟試用版AI終極必殺器


0?wx_fmt=png

今天我們將建立我們自己的深度學習終極大殺器。

  • 我們會搜集最好的精華,並且把他們組合成數字終結者。

  • 我們也會討論如何把最新的深度學習軟件架構一步步安裝到Ubuntu Linux 16.04中。

在這台機器上運行神經網絡就像熱激光束穿過黃油一樣快捷流暢。你不用花超過129,000美元來購買 Nvidia’s DGX-1,這個AI超級計算機可以放在一個盒子裏。我馬上要給你展示它的性能,你絕對不可能找到比它表現更好的了。

最後,如果你的預算比較緊張,也別絕望,我會給出其他省錢的選擇。


首先一個超便宜的升級選項

注:太長可以不看

在我們深入構建一個深度學習怪獸之前,我想給你一條最容易的路——升級。

如果你不想攢一個全新的機器,你還有一個超棒的選擇。

0?wx_fmt=png


簡單地升級你的GPU(采用Titan X或GTX 1080),裝一個VMware Workstation或者使用另一種支持GPU加速的虛擬化軟件!你還可以僅安裝Ubuntu裸機,如果你需要一個Windows係統的計算機,在虛擬機中運行它就行了,這樣你的機器就火力全開,可以開始深度學習了。

安裝Ubuntu和深度學習架構需要使用的指南在本文的最後。噹噹噹!然後你隻需要買一些便宜的配件,就能搞定深度學習超級之星了。

好了,讓我們開始吧。

我會把大殺器和省錢優選這兩種類型的元件用不同的簡稱來標識一下:

MINO(不差錢兒)=終極大殺器

ADAD(兜裏隻剩一塊錢,胸中還有一個夢)=經濟試用版


終極大殺器元件大聚會

GPU們先來

CPU不再是宇宙中心。人工智能的應用反轉了劇本。如果你曾經攢過普通的遊戲裝備,可能試過把史上最差的英特爾芯片拔出來。

但是時代變了,英偉達成了新的“英特爾”。

深度學習世界中最重要的元件是GPU(們)。

雖然AMD在過去幾年的虛擬貨幣挖掘中遙遙領先,但在人工智能領域仍無建樹。這種狀況很快會改變,因為他們正在快馬加鞭在這個快速擴張的新興領域攻城掠池,然而現在英偉達仍是王者。當然他們也不會頂著“新英特爾”這個光環停滯不前。他們收購了Nervana係統,並且計劃在2017年推出他們自己的深度學習專門集成芯片。

0?wx_fmt=png

深度學習的GPU首選

讓我們從MINO開始介紹。終極GPU是Titan X,它無可匹敵。

它采用3584個 CUDA核心,1531MHZ,還擁有12GB容量的G5X,據說存儲速度可達10Gbps。

在深度學習中,核心數量很重要,那些核心附近的存儲量也同樣。

深度學習其實也沒什麼,就是一堆線性代數。想象著它是一個超級無敵大的EXCEL表格。處理所有這些數字會把一個標準的4或8核心英特爾CPU累癱。

把數據移進和移出存儲器是一個很大的瓶頸,所以在芯片上布置更多的存儲器可以解決這個問題,這就是為什麼Titan X是這個世界的王者。

你能以建議零售價1200美元的價格從英偉達買到Titan X。不幸的是,你隻能買兩個。但這可是終極大殺器啊,我們要買四個!那才是真正的四卡合一!

為了實現這個目標,你要花一點高價從第三方零售商那裏購買。我覺得從英偉達買兩個再從亞馬遜買兩個很容易實現。這樣花費就到了5300美元,這也是到目前為止這個工作站的最大開支。

如果你打算運行Minecraft遊戲,它可能還是看起來滿屏像素,但如果你想訓練一個模型來戰勝癌症,這正是你要的顯卡。:)

遊戲硬件參考網站會告訴你,任何超過兩張圖形處理卡顯卡的計算機都是遠遠超過處理性能需求的,但這隻是遊戲! 對於人工智能來說,你隻會想把顯卡裝得越多越好。當然,人工智能也有效益平衡點,但是數量接近於幾十個或者幾百個(取決於算法),不是四個。所以繼續加吧,我的朋友。

請注意,你絕對不需要SLI橋,除非你還打算用這台機器玩遊戲。這玩意僅僅適用於圖形渲染,而我們現在的圖形處理很少,這和在matplotlib繪製的大量圖表不一樣。


省錢版GPU

0?wx_fmt=png

你的ADAD顯卡是GeForce GTX 1080基本版。1080包括2560個CUDA核心,比Titan X少了許多,但是隻需花費一半的價錢,建議零售價是699美元。

它的RAM也更少,隻有8GB而不是12GB。

我已經在使用EVGA了,表現很好,所以在你的機器上加裝四個這家夥吧。2797與5300美元相比較,節省了許多經費,性能表現卻幾乎相同。

ADAD的第二優選是GeForce GTX 1070。它裝備了1920個CUDA核心,所以也是一個很好的選擇。它的建議零售價是499美元,但是超頻版的EVGA 1070s隻需花389美元,所以價格是更實惠的1556美元。非常可行。

當然,如果你沒有這麼多錢,可以買兩或三張卡。甚至隻有一個也能讓你朝正確的方向前進。

讓我們算個數,用兩三張顯卡達到最佳目的。

3 個Titan X = 10,752 CUDA 核心, 36GB 的 GPU RAM = $3800

  • 2 個 Titan X = 7,167 CUDA 核心, 24 GB 的GPU RAM = $2400

  • 3 個 GTX 1080 = 7,680 CUDA 核心, 24GB的GPU RAM = $2097

  • 2 個 GTX 1080 = 5,120 CUDA 核心, 16GB 的 GPU RAM = $1398

  • 3 個 GTX 1070 = 5,760 CUDA 核心, 24GB 的 GPU RAM = $1167

  • 2個GTX 1070 = 3,840 CUDA 核心, 16GB 的GPU RAM = $778


最佳選擇是3 GTX的1080s。使用一半的價格隻減了3072個核心。獨家揭秘:我就是這樣建立我的工作站的。


固態硬盤和連續運轉驅動

0?wx_fmt=png

你需要一個固態硬盤,特別是當你構建卷積神經網絡並處理大量圖像數據時。三星的850 EVO型的1 TB固態硬盤是當前的至尊極品。更妙的是,固態硬盤的價格最近幾年出現了暴跌,所以不會破費太多。1 TB 的850型現在隻要大約319美元。

ADAD版本的850是250GB的版本,你花98美元就可以輕易地買到它。

您還需要一個連續運轉驅動器來存儲下載的數據。 深度學習中的數據集可能很大。一台4 TB的希捷Barracuda就能搞定。


主板


0?wx_fmt=png


因為我們想把四個顯卡集成到你的機箱中,你可選擇的主板就很少了。為了滿足在四個顯卡的情形下主板能支持最高的總線速度,我們需要微星的超級遊戲 X99A SLI Plus。

你也可以選擇華碩X99 Deluxe II。

如果你的顯卡少於4個,你就有了更多的選項。對於主板來說,我覺得穩定性最重要。這是血的教訓,在攢虛擬貨幣挖掘裝備時我就吃了大虧。 如果你經常運行你的GPU,不穩定的主板會把你的機器很快燒毀。技嘉公司製作出非常耐用的主板產品係列。X99 Ultra Gaming產品絕對穩如磐石,價格237美元。


機箱

0?wx_fmt=png

Cooler Master Cosmos II是終極完美的全塔式機箱。它采用鋁和鋼製成,設計成和賽車類似的流線型風格,是台美麗的機器。

如果你想要一個中塔式機箱,用Cooler Master Maker 5T絕對錯不了。

我怎麼也不會讚同買一台便宜機箱。如果這樣,一旦打開機箱檢修故障,你就會發覺當初真是腦子進了水。無需修理的機箱才是好機箱。有許多高性價比的機箱,所以提前做好功課吧。

CPU(中央處理器)

你的深度學習機器不需要太高的CPU性能。大多數應用程序是單線程的,而從應用中加載數據的GPU才是需要多核心工作的地方。所以別把錢花在這兒。

0?wx_fmt=png

也就是說,你也可以使處理器達到最快的處理速度,對於i7-6700K來說就是4GHz。你可以用風扇讓它一直維持這個速度。但坦率說,這是可笑的過分要求,但是價格已經降了很多,而我隻需要單線程性能。這就是你要的CPU了。

如果你想安靜一點,可以選擇液體散熱的CPU,但是你一般也不會把CPU用那麼厲害。大多數的風扇噪音都是從GPU那裏來的。

這裏沒有ADAD的替代品了。3.5GHz頻率的i5處理器帶液體製冷,它的價位和4GHz的i7相同,所以何必麻煩呢?


電源

要配置一套支持雙卡四芯的頂級設備,EVGA的Supernova G2 1600W電源將會是最好的投資,而它大概會花上你305美元。

Titan X高達250W的熱設計功率可輕鬆占去1000W,那麼

留給CPU、內存和係統的功率就不太多了,所以最好配備承受範圍內功率最大的電源,這樣能留出來的部分就更多一些。

如果你的預算有些緊張,那就選擇性價比更高的1300W電源吧,隻需184美金就能到手。


軟件配置

目前硬件的部分就完成了,我們來看看軟件部分吧。

你有三個選擇

  • 利用Docker容器(注:一個開源的應用容器引擎)

  • 使用虛擬機

  • 安裝裸機


若是選擇使用Docker,那麼建議從Nvidia-Docker項目入手( the official Nvidia-Docker)。不過,要想真正把框架庫文件和編程語言都搞定的話,你還得在此鏡像基礎上安裝很多東西。

你可以選擇一款集成式的深度學習容器,比如Github上的Docker。

本來我還挺喜歡這個集成Docker鏡像,不過它有些小毛病,想想安裝設置的過程那麼複雜,倒也沒什麼奇怪的了。

我找到了其中一個問題(libopenjpeg2 現在在Ubuntu 16.04 LTS中是 libopenjpeg5)的解決辦法,但是不高興再想怎麼解決其他的了,所以目前為止我還在等官方來搞定。如果你是那種熱衷解決Dockerfiles漏洞並反饋給Github的人,我真心鼓勵你去給這個集成項目幫幫忙。

另一個比較大的問題就是這個Docked 鏡像文件實在是太大了,大到因為下載超時沒辦法直接從 Dockerhub上找資源。這就意味著你必須自己動手構建一個,然而這麼做要花上好幾個小時去編譯、搭新層、調試,這麼多的時間都差不多足夠倒騰裸機了。

最後還要說一點,有些我想用的東西Docker也不提供,比如Anaconda Python。

所以最終我還是決定參考教程the all-in-one bare metal tutorial(集成裸機指南),並且在它的基礎上升級一下,再加入一些個性化配置。

虛擬機

和我之前在太長可以不看那個部分裏的說的一樣,你是絕對可以通過安裝支持虛擬GPU的專業VMware 工作站(注:一款虛擬機軟件)來提升手頭上的遊戲電腦性能的,而且這麼做還不用花多少錢,太適合預算有限的人了。除此之外,VMware 工作站還有許多優點,比如它支持在一台主機上同時運行、切換多個虛擬機,你甚至可以用快照來記錄當前的配置環境,在後續的操作過程中若是出現錯誤,就能夠通過它來還原到出錯誤之前的狀態。雖說用VMware虛擬機沒有Docker上手快,不過目前VM技術已經非常成熟了,熟悉之後你就會發現有很多工具可用,使用體驗絕對一流。

裸機

最後我還是選擇了裸機。這個方法有點土了,不過作為資深係統管理員,我覺得還是它最靠譜,畢竟一切都在掌控之中。

開始之前,我先說幾個關於深度學習軟件的重點。

其實絕大部分的AI研究都是用Python寫的,因為它簡單易學好操作。我不敢保證在AI正式進入人們的生產生活之後 Python會成為最主要的語言,但就目前來說Python是很有必要掌握的。有不少重要框架在它的基礎上運行,而且Python有著非常強大而豐富的庫,這是其他語言不能比的。

此外,R語言和Scala也很受歡迎,對它們也要多多重視。

下麵這個清單列出了設置裸機時我們主要需要的東西。

語言  

  • Anaconda(對應Python 3.6擴展版)-Anaconda是一個性能非常強大的Python發行版本,包含了100多個數據科學適用的Python,R語言和Scala的熱門安裝包。

  • R-用於統計計算和統計繪圖的語言和操作環境

  • Scala -Scala全稱為Scalable Language,是一門類似於JAVA而且性能極佳的的模塊化語言。


驅動和應用程序編程接口

  • Nvidia驅動程序

  • CUDA-一種由Nvidia推出的通用並行計算架構和應用程序編程接口模型。 

  • cuDNN-一套Nvidia專門為深度神經網絡設計的GPU計算加速庫。

輔助應用程序

  • Jupyter-一個超級讚的web應用程序,便於用戶共享文檔並且支持實時代碼。

框架/庫

  • TensorFlow-穀歌的開源DL框架,可以說支撐起了部分產品,比如穀歌翻譯。

  • Theano-一個靠譜而且受歡迎的機器學習框架。

  • Caffe-來自伯克利的深度學習框架。

  • Torch-一個GPU優先的科學計算框架,廣泛支持機器學習算法。

  • MXNET-可擴展性極強的DL係統,得到了亞馬遜和一些大學的支持。

優秀的抽象庫

  • Keras-一個很棒的用Python語言編寫的神經網絡庫,基於TensorFlow或Theano開發 

  • Lasagne-用於構造和訓練神經網絡的輕量庫。

Python庫

基本上任何科學的計算係統都需要大量的庫來保證運行效率,所以我們馬上來裝上一些最常用的庫吧。

  • Pip=Python安裝包管理工具

  • Pandas=高性能數據分析庫

  • Scikit-learn =強大機器學習庫

  • Numpy=Python的一種開源的數字擴展

  • Matplotlib=可視化庫(注:Python的2D繪圖庫)

  • Scipy=數值計算庫

  • IPython =交互式Python 

  • Scrappy=網絡數據爬取框架

  • NLTK=自然語言工具箱

  • Pattern=網絡挖掘庫

  • Seaborn=統計數據可視化

  • OpenCV=計算機視覺庫

  • Rpy2=R語言接口

  • Py-graphviz=統計數據繪圖

  • OpenBLAS =線性代數庫


設置Linux工作站

要解決科技前沿問題,最新版本的Ubuntu LTS是必要的選擇。(在我寫下這篇文章時的版本是16.04)我很期待在將來能夠看到更多教程詳細介紹Red Hat Enterprise Linux和它的重新編譯產品,像是CentOS和Scientific Linux,不過就現在來說,我們還是用Ubuntu來研究深度學習吧。當然了,之後我可能會繼續討論以Red Hat Enterprise Linux為中心的構造。

用Rufus把Ubuntu裝進U盤裏。

在統一的可擴展固件接口(UEFI)模式下安裝好Ubuntu。


第一次boot

第一次boot之後會黑屏,這是因為開源驅動跟不上最新、最好的芯片。按照以下步驟解決:

電腦在boot的時候,打開TTY設備:

Ctrl + Alt + F1

打開最新的Nvidia驅動,然後reboot:

  • 登陸TTY中的root賬號

  • 運行 sudo apt-get purge nvidia-*

  • 運行 sudo add-apt-repository ppa:graphics-drivers/ppa  之後是 sudo apt-get update

  • 運行sudo apt-get install nvidia-375

  • Reboot,這時圖像的問題應該就解決了。


升級電腦

打開計算機終端,輸入下麵的代碼:

sudo apt-get update -y

sudo apt-get upgrade -y

sudo apt-get install -y build-essential cmake g++ gfortran git pkg-config python-dev software-properties-common wget

sudo apt-get autoremove

sudo rm -rf /var/lib/apt/lists/*


CUDA

從英偉達官網上下載CUDA 8安裝包,打開下載目錄然後安裝好CUDA。

sudo dpkg -i cuda-repo-ubuntu1604-8-0-local.deb

sudo apt-get update -y

sudo apt-get install -y cuda

加載CUDA為環境變量

echo ‘export PATH=/usr/local/cuda/bin:$PATH’ >> ~/.bashrc

echo ‘export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH’ >> ~/.bashrc

source ~/.bashrc

檢查以確認安裝的CUDA版本正確:

nvcc –V

重啟電腦:

sudo shutdown -r now

檢查CUDA安裝情況

首先,安裝CUDA樣本:/usr/local/cuda/bin/cuda-install-samples-*.sh ~/cuda-samples

cd ~/cuda-samples/NVIDIA*Samples

make -j $(($(nproc) + 1))

然後在命令結果上做記錄,用+1表示電腦所具有的GPU數量,如果出現多於一個的情況,隻要把數字加上去就可以了,這樣不論是安裝還是編譯,速度都會快上很多。

接著運行deviceQuery並確保顯卡的情況能夠順利被檢測,還要保證測試被通過:

bin/x86_64/linux/release/deviceQuery


cuDNN

cuDNN是DNN的GPU加速庫,不幸的是,你沒辦法從repo裏下一個,要在Nvidia上注冊並申請獲得許可,點擊此鏈接前往申請。等待獲批的時間少則幾個小時,多則幾天,拿到許可之後請下載版本4或5,在這個教程中我安裝的是版本5。

進行下一步之前,請耐心等待直到裝好cuDNN為止,否則其他以cuDNN為基礎的框架可能會安裝失敗。

提取並複製文件:

cd ~/Downloads/

tar xvf cudnn*.tgz

cd cuda

sudo cp */*.h /usr/local/cuda/include/

sudo cp */libcudnn* /usr/local/cuda/lib64/

sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

輸入以下代碼以做檢查:

nvidia-smi

順利的話,計算機會輸出一些GPU數據。


Python

sudo apt-get install -y python-pip python-dev

sudo apt-get update && apt-get install -y python-numpy python-scipy python-nose python-h5py python-skimage python-matplotlib python-pandas python-sklearn python-sympy libfreetype6-dev libpng12-dev libopenjpeg5

sudo apt-get clean && sudo apt-get autoremove

rm -rf /var/lib/apt/lists/*

現在通過Pip(安裝包工具)將其餘庫安裝完畢

pip install seaborn rpy2 opencv-python pygraphviz pattern nltk scrappy


Tensorflow

一句話搞定,爽!

測試Tensorflow

$ python
 ...
 >>> import tensorflow as tf
 >>> hello = tf.constant('Hello, TensorFlow!')
 >>> sess = tf.Session()
 >>> print(sess.run(hello))
 Hello, TensorFlow!
 >>> a = tf.constant(10)
 >>> b = tf.constant(32)
 >>> print(sess.run(a + b))
 42
 >>>


OpenBLAS

sudo apt-get install -y libblas-test libopenblas-base libopenblas-dev


Jupyter

Juypter是一個超級棒的代碼共享腳本,你可以輕鬆地用它分享含有代碼和教程的“筆記”。在下一篇文章裏我會詳細介紹它的功能。

pip install -U ipython[all] jupyter


Theano

準備好需要的配置之後就可以安裝Theano了

sudo apt-get install -y python-numpy python-scipy python-dev python-pip python-nose g++ python-pygments python-sphinx python-nose

sudo pip install Theano

是的沒錯,Theano首字母確實要大寫。

測試一下有沒有裝好Theano,要是安裝成功的話在執行輸入命令的時候不會有任何警告和錯誤:

python
>>> import theano
>>> exit()

nosetests theano


Keras

Keras是一款能夠基於Theano 和 Tensorflow開發的抽象包裝類,非常棒而且很受歡迎。它的安裝過程和用法簡單的不能再簡單了,甚至有點無聊。

sudo pip install keras


Lasagne

Lasagne是另一款被廣泛使用的優秀包裝器,它比起Keras還要更靈活一些,這樣你就可以輕輕鬆鬆天馬行空、腦洞大開。如果說Keras的受追捧表示對深度學習的研究開始步入正軌,那麼Lasagne也許會引領下一個階段。下麵是它的安裝指南:

pip install -r https://raw.githubusercontent.com/Lasagne/Lasagne/v0.1/requirements.txt


MXNET

MXNET是一個由亞馬遜支持,可擴展性極強的框架。點擊鏈接跳轉至安裝教程。另外,Python 適用的MXNet安裝腳本鏈接在這。

在Ubuntu上安裝MXNET

來自網頁:

MXNet目前支持Python, R, Julia, 和 Scala語言。在Ubuntu操作係統上,MXNet提供一套可以安裝所有需要的MXNet依賴項和庫的Git Bash腳本給使用Python和R語言的用戶。這一簡易安裝腳本可以在運行Ubuntu 12或更高版本的電腦上完成Python及 R語言適用的MXNet設置。該腳本將把MXNet安裝在您的home文件夾~/mxnet中。

給Python安裝MXNet

克隆MXNet的庫,在終端運行以下命令(沒有”sudo”)

git clone https://github.com/dmlc/mxnet.git ~/mxnet --recursive

我們在使用GPU,所以要加入一些配置到config.mk file中去。

cd ~/mxnet

cp make/config.mk .

echo "USE_CUDA=1" >>config.mk

echo "USE_CUDA_PATH=/usr/local/cuda" >>config.mk

echo "USE_CUDNN=1" >>config.mk

添加到路徑:

source ~/.bashrc

安裝R語言適用的MXNet

我們之後會用到R語言的,所以現在就一起裝了吧。點擊鏈接跳轉至R語言適用的MXNet的安裝腳本。在設置好R語言之後下麵的這些步驟可以調用腳本。

首先添加R repo:

sudo echo “deb https://cran.rstudio.com/bin/linux/ubuntu xenial/” | sudo tee -a /etc/apt/sources.list

其次把R添加到Ubuntu Keyring:

gpg — keyserver keyserver.ubuntu.com — recv-key E084DAB9

gpg -a — export E084DAB9 | sudo apt-key add –

然後安裝R-Base:

sudo apt-get install r-base r-base-dev

再安裝R-Studio(如果版本號不同要修改命令)

sudo apt-get install -y gdebi-core

wget https://download1.rstudio.org/rstudio-0.99.896-amd64.deb

sudo gdebi -n rstudio-0.99.896-amd64.deb

rm rstudio-0.99.896-amd64.deb

最後安裝R 適用的MXNet :

cd ~/mxnet/setup-utils

bash install-mxnet-ubuntu-r.sh


Caffe

安裝指導來自the Caffe 網站,我發現他們有些迷之飄忽不定,不過每個人的受益可能不同。坦白說,我不怎麼用Caffe,而且其他很多新手教程也不太講它,所以如果你覺得這部分有些操蛋,那就直接跳過好了,哪天需要的時候再來看就好。

安裝前提:

sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

sudo apt-get install -y --no-install-recommends libboost-all-dev

sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev

克隆Caffe repo:

cd ~/git

git clone https://github.com/BVLC/caffe.git

cd caffe

cp Makefile.config.example Makefile.config

在Makefile中用cuDNN 設置參數: USE_CUDNN := 1 :

sed -i ‘s/# USE_CUDNN := 1/USE_CUDNN := 1/‘ Makefile.config

修改BLAS的open參數值:

sed -i 's/BLAS := atlas/BLAS := open/' Makefile.config

安裝好所需的東西,然後構建Caffe,構建測試並確保順利通過所有測試。記住這些工作將花費一些時間。另外再次記住+1表示構造Caffe 所需GPU的數量,數量超過一個的時候要加上去。

sudo pip install -r python/requirements.txt

make all -j $(($(nproc) + 1))

make test -j $(($(nproc) + 1))

make runtest -j $(($(nproc) + 1))

搭建PyCaffe,Python到Caffe的接口

make pycaffe -j $(($(nproc) + 1))

加載Caffe為環境變量

echo ‘export CAFFE_ROOT=$(pwd)’ >> ~/.bashrc

echo ‘export PYTHONPATH=$CAFFE_ROOT/python:$PYTHONPATH’ >> ~/.bashrc

source ~/.bashrc

測試以確認Caffe安裝成功。要是成功的話在執行輸入命令的時候不會有任何警告和錯誤:

ipython
>>> import caffe
>>> exit()


Torch

下麵是Torch安裝指南,我個人在安裝這個框架的時候遇到一些問題,不過基本上絕大部分人用它都沒問題的。

git clone https://github.com/torch/distro.git ~/git/torch — recursive

cd torch; bash install-deps;

./install.sh


Scala

sudo apt-get -y install scala


Anaconda

下載 Anaconda for Python 3.6 ,同時也提供2.7.x版本選擇。

安裝:

sudo bash Anaconda3–4.3.0-Linux-x86_64.sh

千萬不要把它添加到bashrc文件,否則當你reboot的時候,Python就會係統預置為Anaconda。這個操作在腳本中是被係統預設為“no”的,但你可能還是會像我最初那樣被鬼迷了心竅。千萬別,相信我,你會希望保持係統預置的,因為有一堆依賴項依賴於Ubuntu的Python。

此外,Anaconda支持用戶創造版本之間靈活切換的環境。

讓我們創建兩個Anaconda環境:

conda create -n py2 python=2.7

conda create -n py3 python=3.6

激活py3的環境:

source activate py3

source activate py3

完成所有包的安裝:

conda install pip pandas scikit-learn scipy numpy matplotlib ipython-notebook seaborn opencv scrappy nltk pattern

然後通過pip安裝Conda(Anaconda的管理工具)內不提供的pygraphviz和R語言橋:

pip install pygraphviz rpy2

Reboot:

sudo shutdown -r now


給Anaconda安裝Tensorflow, Theano, 和 Keras

你要給Python 2和3兩個版本的Anaconda安裝這些庫,他們自帶性能最優化,所以用這些Anaconda支持的庫能獲得更好的效果。

讓我們從Python 3開始:

source activate py3

pip install tensorflow Theano keras

接著休眠Python 3,激活py2環境。

source deactivate

激活py2環境:

source activate py2

給py2安裝:

pip install tensorflow Theano keras

休眠環境:

source deactivate

憑借我們為與Ubuntu匹配的標準Python所安裝的所有框架,最後你得到的就是內置Python 2.7.x的標準Ubuntu框架。


結論

終於搞定了。跟著這個教程一步步做下來,現在你應該已經有了一台頂級機器,或者是實惠一點的經濟適用版。當然,最新、最好的適合深度學習的軟件也已經裝好了。

那麼,準備好打幾場硬仗吧。仔細研究研究教程,就可以動手了! 要密切留意這一係列我的下一篇文章哦,我將會深挖Kaggle數據科學界的超級碗 。2017年競賽主題是尋找戰勝肺癌的可能,獎金總計高達一百萬美元!

原文發布時間為:2014-04-26

本文來自雲棲社區合作夥伴“大數據文摘”,了解相關信息可以關注“BigDataDigest”微信公眾號

最後更新:2017-05-17 11:02:28

  上一篇:go  理解深度學習的局限性
  下一篇:go  rails流程圖