很多深度學習的實踐者們渴望在有生之年搭建自己的深度學習機器,擺脫云的魔掌,這樣的時代就到來了。云計算是開展深度學習的理想選擇,它往往是訓練大規模深度學習模型的最佳答案。但是,在云計算和自建的深度學習機器之間還有一個廣闊的空間,在這里你自己搭建的深度學習機器明顯更具成本效益。
不是說它很便宜。你將在足以支持深度學習模型的計算機和高端GPU上花費1500到2000美元,甚至更高的價格。但是,如果你每次都要花數天時間進行廣泛的模型訓練,那么擁有自己的專用設備可以在三到四個月內回本——尤其是當你將計算時間與云存儲和進入成本等因素都一起考慮時。
在本文中,我將逐步向你展示我今年早些時候搭建的深度學習機器,描述在建立這樣一臺機器時你會遇到的一些選擇以及你可能要付出的成本。價格是自2017年12月以來亞馬遜的直接報價。
如果你想進一步深探深度學習——無論是對大型數據集進行研究還是參加Kaggle比賽,或者兩者兼而有之,搭建自己的深度學習機器都是非常有意義的。在你致力于龐大的數據集,并需要數十個GPU來進行培訓之前,先在自己的機器上運行模型可能是最好的方法。
一旦你達到了這樣的程度,云會再次成為你的朋友。你可能還需要一個有錢的朋友來支付所有的計算時間。
深度學習PC構建:GPU和CPU
決定使用哪種顯卡,以及購買哪種GPU可能是構建自己的機器時要做的最重要(也是最昂貴的)決定。但當前,這個選擇是相當容易的。假如你不會因700到900美元的價格而退縮,那么你應該購買英偉達的GeForce GTX 1080 Ti。英偉達的1080 Ti的性能不如它的新的Volta代的GPU,它們現在只出現在主要的云提供商中,但它足以滿足你對Kaggle的所有需求。
1080 Ti是基于與英偉達最新的Titan X卡相同的Pascal架構,但它速度更快,成本更低。大量的內核(3584個內核)和大量的內存(11GB)意味著你可以運行更大的神經網絡,并在1080 Ti上以快于目前市面上所有其它消費級顯卡的速度訓練它們。如果你想突破深度學習框的極限,那么使用你能買到的1000美元以下的最好的CPU是有意義的。
1080 Ti有Founder版(是英偉達的公版)或顯卡制造商的定制版。這些卡通常會有多個散熱器和(背離了他們的游戲初衷)超頻GPU的設施。就個人而言,我對發熱過渡有點偏執,所以選擇了有三個散熱器的價值895美元的顯卡,但是你可以通過購買一張Founder版的顯卡來節省100美元。
如果你覺得1080Ti的價格說不過去,那英偉達的GeForce GTX 1080是一個不錯的備胎。它比1080 Ti慢,內存更少(8GB對11GB),但是它可以為你節省大約200美元。我想推薦AMD的新系列GPU,但是它們對PyTorch和Tensorflow等主流庫的支持還不夠。隨著AMD繼續開展ROCm工作,這個情況可能會在2018年發生變化,屆時Radeon RX Vega Instinct和Frontier看起來會非常吸引人,特別當英偉達忽略從Volta平臺上將其來自Volta平臺的Tensor Core引入其消費級產品線。
盡管GPU將成為你的系統的主力,但你還需要一個功能強大的CPU來運行應用程序并處理數據工程任務(例如增強)。如果你有機會在未來擴展機器以包含多個GPU,那么你應該可以獲得一個能夠處理多達40條PCIe Express通道的CPU。第七代英特爾酷睿i7-7700K是一個不錯的選擇。你不必追求最新的技術,還有,你不需要神秘的水冷卻或類似的東西。酷冷至尊的售價30美元的Hyper 212 EVO就不錯了。
深度學習PC構建:存儲和內存
現在,你可以豁出去花500美元購買1TB的M.2接口的固態硬盤。固態硬盤很棒,對不對?但想一想,在訓練數據模型時,你不會使用所有的高速存儲。在當前培訓的“熱”(固態硬盤)和非活動項目的“冷”(盤片)之間分配存儲空間才能更有效地利用你的資金。一個2TB的硬盤將花費70美元左右,一個250GB的固態硬盤將花費130美元左右,讓你以一半不到的價格擁有兩倍的存儲空間。
至于內存,我建議32GB,未來可能會進一步擴展到64GB,所以要購買16GB的內存條。你能看到的大多數主板都用DDR4內存。在DIMM插槽上插上兩條16GB內存將花費你300到400美元。
深入學習PC構建:主板,電源和案例
現在你已經擁有了所有有趣的東西,你還需要一些相對枯燥的零部件來把所有東西組裝在一起。如果你遵循我的建議,買了第七代英特爾CPU,那么你應選擇一個基于Z270的主板。如果你因為喜歡閃亮的新東西而購買了第八代CPU,那么你需要一個基于Z370的主板。不要搞混了,因為第七代CPU不能在Z370主板上工作(仔細檢查以確保你的主板和CPU是否兼容)。如果你認為未來可能會獲得另一個GPU,請檢查你選擇的主板是否支持。在這里我沒有遵循自己的建議,所以如果我決定添加第二塊GeForce GTX 1080 Ti,我就需要升級主板。
電源可能是構建自己的機器最無趣的部分,但有一點需要記住的是,你將需要相當多的電力。花85美元你就能買到850瓦的電源,并給你一些擴展的空間。
現在,我上一次搭建的臺式電腦已經是10幾年前的事了,所以機箱的美好新世界,我完全沒有做好準備。我并不期待閃閃發亮的LED、刺激的曲線、或者散熱器,只要眼睛能看見就行。作為一名內斂人士兼英國人,我喜歡一個相當無聊的白色塔式設計,但它有側透的玻璃窗。你要確保機箱有足夠的空間來裝滿所有的零部件。散熱器和顯卡的突出部分都會比你想像的要高。如果你堅持要用標準的ATX全塔或中塔機箱也無妨。
深入學習PC的搭建:組裝和軟件安裝
因為我已經有好多年沒組裝過個人電腦了,所以涉及到組裝時我有點擔心會不知所措。但是,你需要的只是一把像樣的螺絲刀、防靜電帶和YouTube。對于系統的幾乎每一個部分,都會有大量的在線演示視頻,手把手教你怎么進行。視頻真的一路指導我到固態硬盤和內存安裝步驟,在這個步驟我要確保將內存插入主板時不會用力過猛而損壞內存芯片。
一旦你擁有了所有的東西,所有的指示燈都亮了,你將需要一個操作系統。你可以隨便安裝帶Windows的雙系統以便玩游戲,但你應該選擇Linux來開展深度學習的任務。在撰寫本文時,我建議使用Ubuntu 17.04,因為它的英偉達驅動程序的設置很簡單(英偉達的下載頁面還沒有更新到Ubuntu 17.10)。在安裝Linux之前要記住的一件事是進入你的機器的BIOS,確保它使用的是集成顯卡,而不是1080Ti,否則在安裝過程中會遇到問題。
按照Ubuntu的指南設置英偉達的驅動程序。另外,由于Tensorflow在1.5之前的版本都不支持CUDA 9,所以要從CUDA的網站上獲取CUDA 8庫。
對于Python,我推薦使用Anaconda。使用Anaconda安裝Tensorflow和Keras就像使用以下這些命令一樣簡單:
conda install -c anaconda tensorflow-gpu
conda install -c anaconda keras
And PyTorch is almost as simple:
conda install pytorchtorchvision -c pytorch
另外,Anaconda默認安裝了Jupyter,所以此時此刻,使用定制的深度學習機器所需要的東西,該有的你都有了。
深度學習PC的搭建:總成本
最后,讓我們來看看這一切需要花費多少成本。我從亞馬遜購買了所有的設備。你可能會使用Newegg或TigerDirect等網站找到更好的價錢,或者通過易趣查找二手零件。還有,你可以通過選擇英偉達的Founder版或普通的GTX 1080卡在GPU上節省100美元或200美元。
在不到2100美元的價格(請記住,這還是稅前價),深度學習的個人電腦肯定是一項重大的投資。但是如果你逐漸對月度云賬單上的成本上漲感到不安,搭建自己的機器是否比在AWS、Google Cloud或微軟Azure上啟用GPU實例能更好地利用你的時間和金錢,這值得研究。至少我是賺回來了。
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。