人工智能芯片戰(zhàn)開打 邊緣計(jì)算還面臨哪些障礙?
人工智能(AI)可說是2016年運(yùn)算領(lǐng)域最熱門的話題,廠商競(jìng)相開發(fā)專用芯片的戰(zhàn)爭(zhēng)已經(jīng)開打…
對(duì)運(yùn)算產(chǎn)業(yè)來說,在過去的2016年應(yīng)該沒有一個(gè)概念比人工智能(AI)更熱門;跨入2017年,專家們表示,人工智能生態(tài)圈的需求成長(zhǎng)會(huì)更加迅猛。主要集中在為深度神經(jīng)網(wǎng)絡(luò)找尋性能和效率更適合的“推理(inference)引擎”。
現(xiàn)在的深度學(xué)習(xí)系統(tǒng)仰賴軟件定義網(wǎng)絡(luò)和巨量數(shù)據(jù)學(xué)習(xí)產(chǎn)生的超大型運(yùn)算能力,并靠此來實(shí)現(xiàn)目標(biāo);遺憾的是,這類型的運(yùn)算配置是很難嵌入到那些運(yùn)算能力、內(nèi)存容量大小和帶寬都有限制的系統(tǒng)中(例如汽車、無人機(jī)和物聯(lián)網(wǎng)設(shè)備)。
這為業(yè)界帶來了一個(gè)新的挑戰(zhàn)──如何透過創(chuàng)新將深度神經(jīng)網(wǎng)絡(luò)運(yùn)算能力嵌入到終端設(shè)備中。如(已經(jīng)被Intel收購(gòu)的)計(jì)算機(jī)視覺處理器設(shè)計(jì)業(yè)者M(jìn)ovidius執(zhí)行長(zhǎng)Remi El-Ouazzane在幾個(gè)月前就說過,將人工智能布署在網(wǎng)絡(luò)邊緣將會(huì)是一個(gè)大趨勢(shì)。
在問到為什么人工智能會(huì)被“趕”到網(wǎng)絡(luò)邊緣的時(shí)候,法國(guó)原子能委員會(huì)(CEA)架構(gòu)、IC設(shè)計(jì)與嵌入式軟件(Architecture, IC Design and Embedded Software)部門院士Marc Duranton提出三個(gè)原因:安全性(safety)、隱私(privacy)和經(jīng)濟(jì)(economy);他認(rèn)為這三點(diǎn)是驅(qū)動(dòng)業(yè)界在終端處理數(shù)據(jù)的重要因素,而未來將會(huì)衍生更多「盡早將數(shù)據(jù)轉(zhuǎn)化為信息」的需求。
Duranton指出,試想自動(dòng)駕駛車輛,如果其目標(biāo)是安全性,那些自動(dòng)駕駛功能就不應(yīng)該只仰賴永不中斷的網(wǎng)絡(luò)聯(lián)機(jī);還有例如老人在家里跌倒了,這種情況應(yīng)該由本地監(jiān)測(cè)裝置在當(dāng)場(chǎng)就判斷出來,考慮到隱私因素,這是非常重要的。而他補(bǔ)充指出,不必收集家里10臺(tái)攝影機(jī)的所有影像并傳輸以觸發(fā)警報(bào),這也能降低功耗、成本與數(shù)據(jù)容量。
AI競(jìng)賽正式展開從各方面看來,芯片供貨商已經(jīng)意識(shí)到推理引擎的成長(zhǎng)需求;包括Movidus (Myriad 2), Mobileye (EyeQ 4 & 5) 和Nvidia (Drive PX)在內(nèi)的眾多半導(dǎo)體公司正競(jìng)相開發(fā)低功耗、高性能的硬件加速器,好讓機(jī)器學(xué)習(xí)功能在嵌入式系統(tǒng)中被更妥善執(zhí)行。
從這些廠商的動(dòng)作和SoC的發(fā)展方向看來,在后智能型手機(jī)時(shí)代,推理引擎已經(jīng)逐漸成為半導(dǎo)體廠商追逐的下一個(gè)目標(biāo)市場(chǎng)。
在今年稍早,Google推出了張量處理單元(TPU),可說是產(chǎn)業(yè)界積極推動(dòng)機(jī)器學(xué)習(xí)芯片創(chuàng)新的一個(gè)轉(zhuǎn)折點(diǎn);Google在發(fā)表芯片時(shí)表示,TPU每瓦性能較之傳統(tǒng)的FPGA和GPU將會(huì)高一個(gè)等級(jí),此外并指出這個(gè)加速器還被已被應(yīng)用于今年年初風(fēng)靡全球的AlphaGo系統(tǒng)。但是迄今Google并未披露TPU的規(guī)格細(xì)節(jié),也不打算讓該組件在商業(yè)市場(chǎng)上銷售。
很多SoC從業(yè)者從Google的TPU中得出了一個(gè)結(jié)論──機(jī)器學(xué)習(xí)需要客制化的架構(gòu);但在他們針對(duì)機(jī)器學(xué)習(xí)進(jìn)行芯片設(shè)計(jì)的時(shí)候,他們又會(huì)對(duì)芯片的架構(gòu)感到疑惑,同時(shí)想知道業(yè)界是否已經(jīng)有了一種評(píng)估不同形態(tài)下深度神經(jīng)網(wǎng)絡(luò)(DNN)性能的工具。
性能評(píng)估工具即將問世CEA表示,該機(jī)構(gòu)已經(jīng)準(zhǔn)備好為推理引擎探索不同的硬件架構(gòu),他們已經(jīng)開發(fā)出一種名為N2D2的軟件架構(gòu),能夠幫助設(shè)計(jì)工程師探索和生成DNN架構(gòu);Duranton指出:「我們開發(fā)這個(gè)工具之目的,是為DNN選擇適合的硬件目標(biāo)?!笴EA將會(huì)在2017年第一季釋出N2D2的開放源碼。
N2D2的特色在于不僅是以識(shí)別精確度為基礎(chǔ)來比較硬件,它還能從處理時(shí)間、硬件成本和功耗等多個(gè)方面執(zhí)行比較;Duranton表示,因?yàn)獒槍?duì)不同應(yīng)用的深度學(xué)習(xí),需求之硬件配置參數(shù)也會(huì)有所不同,因此以上幾個(gè)比較非常重要。N2D2能為現(xiàn)有CPU、GPU和FPGA等硬件(包括多核心與眾多核心)提供一個(gè)性能參考標(biāo)準(zhǔn)。
N2D2運(yùn)作原理
邊緣運(yùn)算的障礙CEA已經(jīng)針對(duì)如何把DNN完美地推展到邊緣運(yùn)算(edge compuTIng)進(jìn)行了深入研究;Duranton指出,其中最大的障礙在于因?yàn)楣?、?nèi)存容量尺寸和延遲等限制,“浮點(diǎn)”式服務(wù)器方案不適用;而其他障礙還包括:「需要大量的MAC、帶寬和芯片上內(nèi)存容量?!?/p>
所以說,采用整數(shù)(Integer)而非浮點(diǎn)運(yùn)算是最需要優(yōu)先考慮的問題…還有別的嗎?Duranton認(rèn)為,這種專屬架構(gòu)也需要采用新的編碼方式,例如「棘波編碼(spike coding)」;CEA的研究人員研究了神經(jīng)網(wǎng)絡(luò)的特性,發(fā)現(xiàn)這種網(wǎng)絡(luò)能容忍運(yùn)算誤差,使其適用于「近似運(yùn)算(approximate computaTIon)」。
如此一來,甚至于不需要采用二進(jìn)制編碼;而Duranton解釋,其好處在于諸如棘波編碼的時(shí)間編碼(temporal coding),能在邊緣運(yùn)算提供更具能源效益的結(jié)果。棘波編碼之所以具吸引力,是因?yàn)榧ň幋a──或是以事件為基礎(chǔ)(event-based)的──系統(tǒng)能展現(xiàn)實(shí)際神經(jīng)系統(tǒng)內(nèi)的數(shù)據(jù)如何被譯碼。
此外,以事件為基礎(chǔ)的編碼能兼容專用的傳感器和預(yù)處理(pre-processing)。這種和神經(jīng)系統(tǒng)極度相似的編碼方式,使得模擬和數(shù)字混合訊號(hào)更容易實(shí)現(xiàn),也能夠幫助研究者打造低功耗的小型硬件加速器。
還有其他能加速將DNN推展到邊緣運(yùn)算的因素;例如CEA正在考慮把神經(jīng)網(wǎng)絡(luò)架構(gòu)本身調(diào)整為邊緣運(yùn)算的潛在可能。Duranton指出,現(xiàn)在人們已經(jīng)開始討論采用「SqueezeNet」架構(gòu)而非「AlexNet」架構(gòu)的神經(jīng)網(wǎng)絡(luò),據(jù)了解,前者達(dá)到與后者相同精確度所需的參數(shù)規(guī)格是五十分之一;這類簡(jiǎn)單配置對(duì)于邊緣運(yùn)算、拓?fù)浜徒档蚆AC數(shù)量都十分關(guān)鍵。
而Duranton認(rèn)為,最終目標(biāo)是將經(jīng)典DNN轉(zhuǎn)換成「嵌入式」網(wǎng)絡(luò)。
(未完待續(xù)。.)
責(zé)編:Judith Cheng