對(duì)運(yùn)算產(chǎn)業(yè)來說,在過去的2016年應(yīng)該沒有一個(gè)概念比人工智能(AI)更熱門;跨入2017年,專家們表示,人工智能生態(tài)圈的需求成長會(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收購的)計(jì)算機(jī)視覺處理器設(shè)計(jì)業(yè)者M(jìn)ovidius執(zhí)行長Remi El-Ouazzane在幾個(gè)月前就說過,將人工智能布署在網(wǎng)絡(luò)邊緣將會(huì)是一個(gè)大趨勢。
在問到為什么人工智能會(huì)被“趕”到網(wǎng)絡(luò)邊緣的時(shí)候,法國原子能委員會(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)測裝置在當(dāng)場就判斷出來,考慮到隱私因素,這是非常重要的。而他補(bǔ)充指出,不必收集家里10臺(tái)攝影機(jī)的所有影像并傳輸以觸發(fā)警報(bào),這也能降低功耗、成本與數(shù)據(jù)容量。
AI競賽正式展開
從各方面看來,芯片供貨商已經(jīng)意識(shí)到推理引擎的成長需求;包括Movidus (Myriad 2), Mobileye (EyeQ 4 & 5) 和Nvidia (Drive PX)在內(nèi)的眾多半導(dǎo)體公司正競相開發(fā)低功耗、高性能的硬件加速器,好讓機(jī)器學(xué)習(xí)功能在嵌入式系統(tǒng)中被更妥善執(zhí)行。
從這些廠商的動(dòng)作和SoC的發(fā)展方向看來,在后智能型手機(jī)時(shí)代,推理引擎已經(jīng)逐漸成為半導(dǎo)體廠商追逐的下一個(gè)目標(biāo)市場。
在今年稍早,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è)市場上銷售。
很多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)。」CEA將會(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)存容量。」
所以說,采用整數(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ī)格是五十分之一;這類簡單配置對(duì)于邊緣運(yùn)算、拓?fù)浜徒档蚆AC數(shù)量都十分關(guān)鍵。
而Duranton認(rèn)為,最終目標(biāo)是將經(jīng)典DNN轉(zhuǎn)換成「嵌入式」網(wǎng)絡(luò)。
CEA的雄心是開發(fā)神經(jīng)形態(tài)(neuromorphic)電路;該研究機(jī)構(gòu)認(rèn)為,這類芯片在深度學(xué)習(xí)應(yīng)用中,是從接近傳感器的數(shù)據(jù)(data)提取信息(information)的有效補(bǔ)充。
在實(shí)現(xiàn)以上目標(biāo)之前,CEA考慮了數(shù)個(gè)權(quán)宜之計(jì);例如D2N2這樣的開發(fā)工具,對(duì)于芯片設(shè)計(jì)業(yè)者開發(fā)高水平每瓦TOPS (tera operations per second per Watt)性能的客制化DNN解決方案非常重要。
對(duì)于那些想在邊緣運(yùn)算利用DNN的人來說,也有實(shí)際的硬件可以進(jìn)行試驗(yàn)──也就是CEA提供的超低功耗可程序加速器P-Neuro;目前的P-Neuro神經(jīng)網(wǎng)絡(luò)處理單元是以FPGA為基礎(chǔ),不過Duranton表示,CEA正要把該FPGA轉(zhuǎn)為ASIC。
Duranton在CEA的實(shí)驗(yàn)室利用了以FPGA為基礎(chǔ)的P-Neuro展示了搭建了用于臉部是別的卷積神經(jīng)網(wǎng)絡(luò)(CNN),并將P-Neuro與嵌入式CPU (在Raspberry Pi上的四核心ARM處理器,以及采用Samsung Exynos處理器的Android平臺(tái))進(jìn)行比較,都執(zhí)行相同的嵌入式CNN應(yīng)用,任務(wù)是在內(nèi)含1萬8,000張影像的數(shù)據(jù)庫進(jìn)行“人臉特征提取”。P-Neuro與嵌入式CPU/GPU執(zhí)行相同人臉識(shí)別任務(wù)的性能比較
如上表之比較結(jié)果,P-Neuro的速度是每秒6,942張圖片,能效則是每瓦2,776張圖片;與嵌入式GPU相較(Tegra K1),運(yùn)作頻率為1000MHz的P-Neuro速度更快、能效更高。P-Neuro是以叢集式SIMD架構(gòu)打造,該架構(gòu)支持優(yōu)化內(nèi)存分層和內(nèi)部鏈接。P-Neuro功能區(qū)塊
不過對(duì)于CEA研究人員來說,P-Neuro只是一個(gè)短期方案;目前的P-Neuro是以全CMOS組件打造、采用二進(jìn)制編碼;該團(tuán)隊(duì)也正在打造采用棘波編碼(spike coding)的全CMOS組件。為充分利用先進(jìn)制程優(yōu)勢,并且在密度和功率上有所突破,該團(tuán)隊(duì)設(shè)定了更高的目標(biāo)。
如CEA-Leti的奈米電子技術(shù)營銷暨策略總監(jiān)Carlo Reita在接受采訪時(shí)表示,利用先進(jìn)芯片與內(nèi)存技術(shù)來進(jìn)行專用零組件的實(shí)體設(shè)計(jì)非常重要;其中一個(gè)方案是采用CEA-Leti的CoolCube常規(guī)monolithic 3D整合技術(shù),另一種方案是采用電阻式內(nèi)存(Resistive RAM)做為突觸(synaptic)組件。此外,如FD-SOI與奈米線等先進(jìn)技術(shù)也將發(fā)揮作用。
神經(jīng)形態(tài)處理器
在此同時(shí),歐盟在「EU Horizon 2020」計(jì)劃之下,試圖打造神經(jīng)形態(tài)架構(gòu)芯片,能支持最先進(jìn)的機(jī)器學(xué)習(xí),以及基于棘波的學(xué)習(xí)機(jī)制;該研究項(xiàng)目名為NeuRAM3,目標(biāo)是以超低功耗、可擴(kuò)展與高度可配置的神經(jīng)架構(gòu),打造在特定應(yīng)用上功耗較傳統(tǒng)數(shù)字方案低50倍的組件。神經(jīng)形態(tài)處理器架構(gòu)
神經(jīng)形態(tài)處理器基本規(guī)格
Reita表示,CEA也參與了NeuRAM3項(xiàng)目,該機(jī)構(gòu)的研究目標(biāo)與該項(xiàng)目的使命緊密相關(guān),包括開發(fā)采用FD-SOI制程的單體(monolithically)整合式3D技術(shù),以及整合電阻式內(nèi)存突觸組件的應(yīng)用;她并指出,NeuRAM3項(xiàng)目開發(fā)的新一代混合訊號(hào)多核心神經(jīng)形態(tài)組件,與IBM的TrueNorth腦啟發(fā)(brain-inspired)操作數(shù)件相較,能顯著降低功耗。NeuRAM3神經(jīng)形態(tài)組件與IBM TrueNorth的比較
NeuRAM3項(xiàng)目的參與者包括IMEC、IBM Zurich研究中心、意法半導(dǎo)體(ST Microelectronics),意大利研究機(jī)構(gòu) CNR (The National Research Council in Italy)、西班牙研究機(jī)構(gòu)IMSE (El Instituto de Microelectronica de Sevilla in Spain)、瑞士蘇黎世大學(xué)(The University of Zurich)和德國的雅各布大學(xué)(Jacobs University)。