深度學習的三種硬體方案ASICs、FPGAs 和GPU,開發者需要知道什麼?

導語:深度學習的不同運算場景,分別適合何種硬體?今年三月AlphaGo和李世石的「世紀之戰」炒紅了深度學習—— AlphaGo採用了人工神經網絡技術,充分挖掘了深度學習的潛力。簡單來說,深度學習是一個包含了許多層級數據處理的神經網絡,以自動化方式組合起來解決問題。人機大戰之前,相當多的人並不看好AlphaGo,包括許多圍棋、AI業內人士。但公眾並不清楚的是:當時谷歌手中握著一張王牌—— AlphaGo的計算設備搭載了特製硬體,一個被谷歌稱為「Tensor Processing Unit」(TPU)的計算卡。 谷歌TPU人機大戰落幕後的兩個月,谷歌硬體工程師Norm Jouppi才公開了它的存在。在博客中,他解釋道,谷歌給數據中心裝備這些加速器卡已經有超過一年的時間。雖然谷歌對技術細節嚴格保密,但已透露它們專為谷歌開源項目TensorFlow而優化;並且,它採取了一個越來越流行的深度學習運算加速方式:ASICs。它全稱為應用型專用集成電路(application-specific integrated circuit)。而微軟採用了另一種逐漸流行起來的方式:FPGAs(現場可編程門陣列,field-programmable gate arrays)。它的優勢是,如果計算機需要改變,它可以被重新裝配。但是,最通用、最主流的方案仍舊是使用GPU,以並行處理大量數學運算。不出預料,GPU方案的主要推動者是該市場的霸主英偉達。 NVIDIA Tesla P100事實上, 2009年之後人工神經網絡的複興與GPU有緊密聯繫—— 那一年,幾名史丹福的學者向世界展示,使用GPU可以在合理的時間內訓練深度神經網絡。這直接引發了GPU通用計算——GPGPU的浪潮。英偉達首席科學家、史丹福並發VLSI 架構小組的負責人 William J. Dally 表示:「行內每個人現在都在做深度學習,這方面,GPU 幾乎已經達到了最好。」深度學習的三種運算任務William Dally 進一步解釋,深度學習硬體的選擇有三個不同領域要考慮。 1. 「數據中心的訓練」第一個被他稱之為「在數據中心訓練」。這裡,他指的是任何深度學習系統需要做的第一步:調整神經元之間的數百萬連接,讓神經網絡來執行分配的任務。對於這方面的硬體,行業領頭羊是一家最近被英特爾收購的公司NervanaSystems。該公司的計算機學者Scott Leishman透露,他們開發出的ASIC深度學習加速器Nervana Engine,將於2017年中投產。他注意到,另外一項需要大量計算的任務——比特幣挖礦,正從一開始在CPU上運行,轉移到GPU,再到FPGAs,最終到ASICs。這是由於提升的能耗效率。他說:「在深度學習領域我觀察到了同樣的趨勢」。2. 「數據中心的推理(inference)」第二個深度學習硬體的任務是,「數據中心的推理(inference)」。推理在這裡指代的是,基於雲端、被訓練來處理特定任務的神經網絡的連續運行。每天,谷歌的神經網絡都要運行天文數字級別的推理計算,來進行圖片分類,語言翻譯,語音識別。雖然現在的信息不足以證實,但據我們所知,業內人士普遍推測谷歌的TPU是為這些任務而定製。 訓練和推理通常需要不同的技能組合。對訓練來說,計算機往往需要以較高的精確度運算,一般使用32 位浮點運算。對於推理,精確度可以適當犧牲,換取更快的速度和更低的能耗。對此,Leishman表示:「這是一個熱門研究領域,能耗到底可以降低到什麼程度?」 William Dally 拒絕透露英偉達的深度學習產品計劃,而是強調如今做出的成績。他說,英偉達的GPU 在不斷進化。上代Mazwell 架構可以進行雙精度(64 位)或者單精度(32 位)運算,而這一代的帕斯卡( Pascal )架構能以單精度運算兩倍的吞吐量和效率進行16 位運算。我們能想像,英偉達很可能最終會發布能進行8 位運算的GPU 。對於雲端的推理計算來說,這十分理想,因為能耗對於降低成本十分關鍵。3. 「嵌入式設備的推理」第三個深度學習運算需要考慮的是「嵌入式設備的推理」,比如智慧型手機、攝像頭和平板電腦。這類應用的核心是低能耗的ASICs。近年來,深度學習軟體越來越多地集成入手機應用。它已經被用來查殺惡意軟體和翻譯圖片中的文字。 近期消息,大疆已經在精靈4中應用了類似於深度學習ASIC的東西:使用加州公司Movidius的視覺處理晶片來識別障礙。順便說一句,Movidius是最近另一家被英特爾收購的神經網絡公司。另外,高通也在旗艦晶片820中加入了優化深度學習計算的特殊電路。今天,各家公司有極強的商業動機,去開發能加速深度神經網絡的硬體。但這裡有一個很大的風險:如果技術疊代太快,為昨天的神經網絡而設計的晶片,可能在最終生產、鋪貨時就已經過時了。對此,William Dally說道:「算法正在飛速變化,所有開發這些硬體的人,都試圖讓產品方案覆蓋盡可能多的對未來的賭注。」目前,基於 ASICs 和FPGAs 產品大多應用在企業端,大多數個人開發者的的首選仍然是GPU。至於在未來GPU 的霸主地位是否會動搖,我們會繼續關注。

本篇
不想錯過? 請追蹤FB專頁!    
前一頁 後一頁