現(xiàn)今,Google許多服務(wù),幾乎都跟AI有關(guān),舉凡是搜尋、地圖、照片和翻譯等等,這些AI應(yīng)用服務(wù),在訓(xùn)練學(xué)習(xí)和推論過程中,都使用到了Google的TPU。Google很早就在數(shù)據(jù)中心內(nèi)大量部署TPU,用于加速AI模型訓(xùn)練和推論部署使用,甚至不只自用,后來更當(dāng)作云端運算服務(wù)或提供第三方使用,還將它變成產(chǎn)品銷售。
在今年線上臺灣人工智慧年會上,Google研究部門軟件工程師Cliff Young擔(dān)任第一天的主題演講,Cliff Young不只是Google Brain團隊核心成員,更是Google TPU晶片主要設(shè)計者,一手設(shè)計和打造TPU,部署到Google數(shù)據(jù)中心內(nèi),作為AI硬件加速器,用于各種AI模型訓(xùn)練或推論。在加入Google前,他曾在DE Shaw Research和貝爾實驗室,負責(zé)設(shè)計和建造實驗室超級電腦。在整場演講中,他不只親自揭露Google決定自行開發(fā)TPU的過程,針對深度學(xué)習(xí)革命對于未來AI發(fā)展影響,也提出他的最新觀察。
Cliff Young表示,深度學(xué)習(xí)神經(jīng)網(wǎng)路技術(shù)自2009年開始在語音辨識大放異彩以來,幾乎每年在不同領(lǐng)域應(yīng)用上,我們都能看到因為深度學(xué)習(xí)而有了突破性的發(fā)展,從AI影像識別、Al下棋、到Al視網(wǎng)膜病變判讀、語文翻譯、機器人揀貨等等,「這是我們以前從未想過的事?!?/p>
正因為,深度學(xué)習(xí)的出現(xiàn),讓人類在不同領(lǐng)域執(zhí)行任務(wù)的方式產(chǎn)生重大變化,他也以美國知名科學(xué)哲學(xué)家Thomas Kuhn提出的科學(xué)革命的發(fā)展模式來形容,深度學(xué)習(xí)本身就是一種科學(xué)革命的典范轉(zhuǎn)移,不只是常態(tài)科學(xué)。
Thomas Kuhn在《科學(xué)革命的結(jié)構(gòu)》一書中提出兩種科學(xué)發(fā)展模式,第一種是常態(tài)科學(xué)的模式,透過實驗和證明來理解新事實的方法,當(dāng)出現(xiàn)舊科學(xué)無法認同的新科學(xué)產(chǎn)生時,就會產(chǎn)生新舊科學(xué)之間的沖突,衍生發(fā)展出另一種模式,也就是第二種的科學(xué)革命的模式,在此模式下,新科學(xué)模式將徹底顛覆舊科學(xué)的作法?!肝艺J為深度學(xué)習(xí)革命就是這樣一種轉(zhuǎn)變, 正在取代傳統(tǒng)電腦科學(xué)?!笴liff Young說道。
更進一步來說,他指出,深度學(xué)習(xí)是一種數(shù)據(jù)驅(qū)動的決策過程,不同于傳統(tǒng)的stored value 或啟發(fā)式(heuristic)決策方法,深度學(xué)習(xí)算法使用可觀測的數(shù)據(jù),來提供人類建立更好地決策的方式,比如運用在使用者推薦,可以根據(jù)使用者輪廓或網(wǎng)路行為,來推薦適合的產(chǎn)品或給出最佳搜索結(jié)果。
但他也坦言,不像數(shù)學(xué)原理可以被解釋,深度學(xué)習(xí)模型運作原理目前仍難以解釋,也因此,科學(xué)家無法從這些為何可行的原因中,找到提高效率的更好的作法。但如果想完全理解和解釋深度學(xué)習(xí)運作原理,依照過往工業(yè)革命的發(fā)展經(jīng)驗,得等到合成神經(jīng)動力學(xué)的出現(xiàn)后,才有機會得到解釋,動輒可能耗費數(shù)十年之久,所以,他也說:「從事深度學(xué)習(xí)研究,比起問why,how更重要?!?/p>
Cliff Young回顧機器學(xué)習(xí)革命過程,可以2012年的AlexNet神經(jīng)網(wǎng)路架構(gòu)作為分水嶺,由Alex Krizhesky等人提出的AlexNet運用GPU建立的深度學(xué)習(xí)模型,以85%準(zhǔn)確度刷新世界記錄,在當(dāng)年ImageNet圖像分類競賽中一舉奪冠。
這項競賽后來也引起Google的高度關(guān)注,認為深度學(xué)習(xí)技術(shù)大有可為,便開始投入研究。但他們投入后發(fā)現(xiàn),深度學(xué)習(xí)模型在圖像識別和分類的成效表現(xiàn),高度仰賴GPU的浮點運算能力,需要消耗大量運算資源供AI模型做學(xué)習(xí)訓(xùn)練,因模型訓(xùn)練運用GPU衍生出的運算成本十分昂貴。所以,Google才毅然決定自行開發(fā)深度學(xué)習(xí)專用的處理器晶片,也就是TPU(Tensor processing unit)。
在投入深度學(xué)習(xí)研究3年后,2015年時,Google開發(fā)出第一代TPU處理器,開始部署到自家的數(shù)據(jù)中心,用于深度學(xué)習(xí)的模型訓(xùn)練。
Google在2016年Google I/O大會首次揭露TPU,與當(dāng)時的CPU與GPU相比,Google的TPU不僅能提供高出30~100倍的每秒浮點運算性能,在整體運算效能上也有多達15到30倍的提升,甚至在效能/功耗比獲得有將近30~80倍的改善,Cliff Young表示,TPU很可能是當(dāng)時世上第一個實現(xiàn)以高記憶體容量的矩陣架構(gòu)設(shè)計完成的處理器。
當(dāng)年,Google擊敗韓國棋王李世石的AI電腦圍棋程式AlphaGo,背后功臣就是使用TPU運算的伺服器機柜,Google Deepmind團隊在AlphaGo中采用48個TPU用于AlphaGo的AI下棋推論, 與人類進行棋力比賽。
到目前為止,Google TPU一共歷經(jīng)4代發(fā)展演進,從初代TPU僅能應(yīng)用于推論,到第二代TPU開始加入深度學(xué)習(xí)模型訓(xùn)練處理能力,對于網(wǎng)路吞吐量需求增高,而隨著運算能力的提升,考慮到散熱問題,所以新一代TPU開始在散熱機制上結(jié)合液冷設(shè)計,也就是第3代TPU,也因此增加TPU密度,到了最新第4代TPU,則推出無液冷的TPU v4i和采用分散式液冷的TPU v4兩種不同版本。
這幾年,深度學(xué)習(xí)硬件加速器越來越火紅,Cliff Young認為,在AI訓(xùn)練和推論硬件發(fā)展上將出現(xiàn)轉(zhuǎn)變。他預(yù)測,未來推論硬件設(shè)計上將更具多樣性,來發(fā)展出不同推理解決方案,來對應(yīng)不同場景的使用需求,從微瓦的超低功耗,到高效能運算HPC以及超級電腦應(yīng)用。
另在AI訓(xùn)練硬件方面, 他表示,融合式硬件架構(gòu)將成為發(fā)展主流,尤其現(xiàn)在不少新推出的AI訓(xùn)練硬件,都有不少相似之處,像是在設(shè)計高密度運算晶片Die時,會采用HBM(高頻寬記憶體)整合設(shè)計,還有建立高效能互連網(wǎng)路,用于傳輸訓(xùn)練數(shù)據(jù),如TPU就有使用ICI(Inter-Core Interconnect)來與其他TPU高速互連,其他還有如Nvidia的NVLink高速互連介面等。雖然這些技術(shù),都來自不同團隊,但他們都有個共通之處,就是在研究共同問題想辦法找答案,他表示,透過這些技術(shù)融合,有機會可以找到好的解決方案。
Google數(shù)據(jù)中心內(nèi)目前部署了許多TPU Pod
另一方面,他也觀察到,近幾年,全球AI競賽進到白熱化階段,雖然加速深度學(xué)習(xí)在自然語言模型的突飛猛進,但也使得需要訓(xùn)練的AI模型越來越龐大,像是為了完成使用1,750億個神經(jīng)參數(shù)的GPT-3文字產(chǎn)生器模型的訓(xùn)練,OpenAI使用1萬個GPU建立運算叢集,以petaflops算力花了3,640天來訓(xùn)練該模型。
為了訓(xùn)練出像GPT-3這樣的超大AI模型,Google也以多個TPU互連建立TPU Pod叢集,來打造超級電腦叢集,放在自己的數(shù)據(jù)中心內(nèi)加速AI模型的訓(xùn)練。過去幾年Google TPU Pod也從一開始256個TPU、增加到1,024個,到現(xiàn)在一個Pod擁有多達4,096個運算節(jié)點。以上圖在Google數(shù)據(jù)中心使用的TPU Pod為例,分上下二層建立TPU Pod叢集,每層配置多臺機架式機柜,每臺機柜中安裝了數(shù)十個TPU,包括TPU v2與TPU v3,再透過網(wǎng)路線來與其他TPU高速互連。
但想要跟上深度學(xué)習(xí)發(fā)展腳步,Cliff Young認為,不能僅靠加大訓(xùn)練用的運算機器,現(xiàn)有的軟硬件架構(gòu)設(shè)計也得跟著轉(zhuǎn)變才行,他提出materials -application codesign協(xié)同設(shè)計的概念,認為未來深度學(xué)習(xí)架構(gòu)設(shè)計,需要結(jié)合包含從物理到應(yīng)用所有層面的協(xié)同設(shè)計,他認為這是打破摩爾定律瓶頸,找到深度學(xué)習(xí)發(fā)展新出路的方法。
他進一步說明,在傳統(tǒng)協(xié)同設(shè)計中,硬件和軟件之間僅靠一層單薄的ISA指令集架構(gòu)作為聯(lián)系溝通,但在以DSA(Domain-specific Architecture)專用領(lǐng)域架構(gòu)為主的協(xié)同設(shè)計中,則由包含許多不同軟件層,架構(gòu)層,以及不同介面組合而成。其中軟件層方面,包括函式庫、編譯器、應(yīng)用程式、模型、演算法、Numerics等,硬件架構(gòu)方面包括物理設(shè)計、半導(dǎo)體材料、架構(gòu)及微架構(gòu)等。這些軟硬件協(xié)同設(shè)計,未來可以運用到深度學(xué)習(xí)架構(gòu)設(shè)計優(yōu)化上,像是在記憶體技術(shù)中,能大幅降低模型訓(xùn)練過程對于位元(bits)覆寫使用,以及加入采用較慢的記憶體讀取速度的設(shè)計等。