毫無疑問,神經(jīng)網(wǎng)絡(luò)變得越來越流行,在各式各樣的產(chǎn)品中都可以找到它的相關(guān)應(yīng)用。它們會(huì)根據(jù)你的興趣自動(dòng)調(diào)整社交多媒體內(nèi)容、讓照片顯示更加好看、在AR/VR頭戴設(shè)備中增強(qiáng)檢測(cè)和眼球追蹤功能。
在智慧監(jiān)控領(lǐng)域,它可以應(yīng)用于安全保障、提供增強(qiáng)的面部識(shí)別功能、群體行為分析等。在網(wǎng)上支付系統(tǒng)中,它對(duì)于詐騙行為的檢測(cè)也比人類更加強(qiáng)大。神經(jīng)網(wǎng)絡(luò)也將應(yīng)用到無人駕駛汽車系統(tǒng)中,借以避免碰撞事故的發(fā)生,實(shí)現(xiàn)無人機(jī)運(yùn)送包裹,此外最近比較受大家關(guān)注的就是以臉部辨識(shí)來解鎖手機(jī)了。
神經(jīng)網(wǎng)絡(luò)專用硬體需求高
為了能夠?qū)崿F(xiàn)如此眾多的功能,神經(jīng)網(wǎng)絡(luò)首先需要經(jīng)過訓(xùn)練,這通常需要強(qiáng)大的伺服器硬體提供支援。物體識(shí)別的實(shí)現(xiàn)其實(shí)就是不斷地進(jìn)行推斷和對(duì)比,而且需要即時(shí)的方式來完成。當(dāng)然神經(jīng)網(wǎng)絡(luò)越大,需要的運(yùn)算量就越大,也需要更高水準(zhǔn)的性能支援,尤其在行動(dòng)應(yīng)用方面。盡管神經(jīng)網(wǎng)絡(luò)推斷引擎可以在CPU上運(yùn)行,但是它們通常采用GPU,利用其強(qiáng)大的平行運(yùn)算特性,以求更快處理神經(jīng)網(wǎng)絡(luò)運(yùn)算。然而為了在嚴(yán)格的功耗下滿足下一代性能要求,專用的神經(jīng)網(wǎng)絡(luò)加速硬體則是必需的。
這對(duì)硬體來說是一個(gè)自然演進(jìn)過程。從早期的桌面PC游戲到街機(jī)游戲機(jī),到后來的家庭游戲機(jī)以及移動(dòng)設(shè)備端等,PowerVR一直都與圖形技術(shù)密切相關(guān),除此之外,PowerVR還擁有包括電腦視覺和AI應(yīng)用的系列IP產(chǎn)品。原本早期的桌面處理器甚至沒有整合數(shù)學(xué)運(yùn)算輔助處理器模組,無法在游戲類應(yīng)用軟體中提供浮點(diǎn)數(shù)運(yùn)算加速功能,然后自20世紀(jì)80年代這種功能已經(jīng)成為CPU設(shè)計(jì)的標(biāo)準(zhǔn)。在20世紀(jì)90年代以后,CPU整合了記憶體快取以進(jìn)一步提升性能,不久GPU也被整合于其中。隨后在2010年代出現(xiàn)了專用于編解碼的ISP(圖像訊號(hào)處理)和硬體設(shè)備,以實(shí)現(xiàn)流暢的視訊重播?,F(xiàn)在輪到神經(jīng)網(wǎng)絡(luò)擁有專用的晶片了(圖1)。
圖1 嵌入式系統(tǒng)的演進(jìn)
將神經(jīng)網(wǎng)絡(luò)運(yùn)算轉(zhuǎn)移到終端
2017年9月21日PowerVR在中國(guó)首發(fā)一項(xiàng)全新的IP產(chǎn)品—硬體神經(jīng)網(wǎng)絡(luò)加速器PowerVR 2NX。命名為神經(jīng)網(wǎng)絡(luò)加速器(NNA),乃是基于其能夠支援多種神經(jīng)網(wǎng)絡(luò)模型和架構(gòu)以及機(jī)器學(xué)習(xí)框架,并具備高性能和低功耗特性。
在很多案例中,神經(jīng)網(wǎng)絡(luò)的推斷處理過程是放在云端伺服器強(qiáng)大的硬體上來執(zhí)行的,但是由于多種原因這部分工作現(xiàn)在需要轉(zhuǎn)移到終端硬體設(shè)備上來,有些應(yīng)用必須要快速的回應(yīng)。由于延遲問題,通過網(wǎng)絡(luò)運(yùn)行神經(jīng)網(wǎng)絡(luò)是不切實(shí)際的,轉(zhuǎn)移到終端設(shè)備上來能夠消除可能發(fā)生的安全問題。況且蜂巢網(wǎng)絡(luò)(3G、4G、5G)也不是在任何情況下都可行,終端專用的硬體設(shè)備則更加可靠,除了能夠提供更強(qiáng)大的性能,還能大幅減少系統(tǒng)功耗。
舉個(gè)例子,無人機(jī)的飛行速度一般會(huì)超過150mph(67公尺/秒),沒有硬體的情況下,它需要檢測(cè)前面10~15公尺范圍內(nèi)的障礙物以避免碰撞(圖2)。由于延遲、頻寬和網(wǎng)絡(luò)的可靠性等因素,采用云端伺服器的方式在運(yùn)作上會(huì)出現(xiàn)問題。采用終端硬體解決方案比如PowerVR 2NX,無人機(jī)可以運(yùn)行多個(gè)神經(jīng)網(wǎng)絡(luò),能夠在1米范圍內(nèi)即時(shí)識(shí)別和追蹤前方的障礙物。如果想借助無人機(jī)傳遞包裹或者以獨(dú)特的視角觀看各種體育運(yùn)動(dòng),神經(jīng)網(wǎng)絡(luò)硬體輔助則必不可少。
圖2 無人機(jī)就是一個(gè)案例,采用神經(jīng)網(wǎng)絡(luò)硬體加速可實(shí)現(xiàn)更快更高效的碰撞檢測(cè)。
如今智慧手機(jī)保存了太多我們的照片,一般會(huì)有1,000張或者更多,手機(jī)系統(tǒng)可以采用不同的方式自動(dòng)進(jìn)行排序,比如識(shí)別出包含某個(gè)人的所有照片,這個(gè)過程需要大量的分析運(yùn)算,一款旗艦級(jí)的GPU運(yùn)行神經(jīng)網(wǎng)絡(luò)處理過程可能需要60秒,但是采用PowerVR 2NX則僅需要2秒鐘(圖3)。
圖3 PowerVR 2NX能夠?yàn)樾袆?dòng)設(shè)備提供高速的圖片處理功能,同時(shí)保持低功耗。
同時(shí)還要考慮電池使用時(shí)間。GPU處理大約2,400張照片會(huì)使用1%的電量,而消耗同樣的電量PowerVR 2NX能夠處理大約428,000張圖片。低功耗特性支援更多新的應(yīng)用場(chǎng)景,比如智慧監(jiān)控。2NX能支援采用終端硬體平臺(tái)進(jìn)行分析處理,比如部署在城市中心、體育場(chǎng)內(nèi)的攝影機(jī)或者智慧家庭安全系統(tǒng)等都有其相關(guān)應(yīng)用。因?yàn)?NX支援不同的網(wǎng)絡(luò)類型,可以做出更智慧的決策,減低了錯(cuò)誤發(fā)生的機(jī)率。由于其低功耗特性,這些攝影機(jī)都可以采用電池驅(qū)動(dòng),方便了部署和管理。
靈活的位元數(shù)支援
為了支援不同的應(yīng)用案例,2NX NNA進(jìn)行了全面的設(shè)計(jì),支援高效的神經(jīng)網(wǎng)絡(luò)推理過程。是什么讓2NX硬體加速器有別于其他的神經(jīng)網(wǎng)絡(luò)解決方案(DSP/GPU)?首先2NX超低功耗利用了在行動(dòng)平臺(tái)設(shè)計(jì)方面的經(jīng)驗(yàn),第二個(gè)是靈活的位元數(shù)支援,更重要的是每個(gè)推理層都具備此特性。神經(jīng)網(wǎng)絡(luò)訓(xùn)練通常采用32位元全精度,但是這樣無疑會(huì)需要更高的頻寬、更多的功耗,這對(duì)于行動(dòng)設(shè)備的功耗要求顯然是不允許的,盡管硬體設(shè)備有足夠的性能支援神經(jīng)網(wǎng)絡(luò)的運(yùn)作,但這對(duì)電池的使用壽命會(huì)有很大的沖擊。
為了解決這個(gè)問題,2NX為權(quán)重和資料提供可變的位元數(shù)支援,這樣就能夠在保持較高推理精度的同時(shí)大大降低對(duì)頻寬的要求,功耗要求也隨之減少。
與其他解決方案不同,其降低位元數(shù)要求并不是采用硬性的方法,而是在每個(gè)分層都可以靈活配置權(quán)重和資料的位元寬,因此開發(fā)者可以全面優(yōu)化訓(xùn)練網(wǎng)絡(luò)的性能。而且不光要保持精度還要保持精確性,最終得以在更低的頻寬和功耗的情況下提供更高的性能(圖4)。
圖4 PowerVR 2NX神經(jīng)網(wǎng)絡(luò)加速器實(shí)現(xiàn)靈活的配置權(quán)重和精度
實(shí)際上2NX需要的頻寬僅是其他競(jìng)爭(zhēng)解決方案的25%左右,在某些應(yīng)用場(chǎng)景從8位元位寬降低到4位元位寬精度,2NX消耗的功耗則降為69%,但是精確度的降低卻不足1%。
強(qiáng)化必要性能
最近某個(gè)智慧手機(jī)制造商宣布其硬體平臺(tái)支援人臉檢測(cè)并可用于解鎖手機(jī),相當(dāng)于每秒6,000億次的推理操作。PowerVR 2NX單核IP運(yùn)作在保守頻率800MHz,能提供2,048 MACs/cycle(產(chǎn)業(yè)標(biāo)準(zhǔn)性能指標(biāo))操作,意味著每秒3.2萬億次推理操作—相當(dāng)于最有競(jìng)爭(zhēng)力的對(duì)手的兩倍。2NX是一個(gè)高度可擴(kuò)充的解決方案,如果需要更高的性能,則可以使用更多的核心。
2NX非常強(qiáng)大,在非常小的面積上能夠提供業(yè)界最高的推理/mm2指標(biāo)。實(shí)際上在SoC中,PowerVR GPU結(jié)合NNA的解決方案,相比競(jìng)爭(zhēng)對(duì)手純GPU解決方案占用更少的晶片面積,當(dāng)然2NX可以單獨(dú)使用,不必結(jié)合GPU,CPU也僅僅是用于驅(qū)動(dòng)。
2NX IP同樣具備儲(chǔ)存管理單元(MMU),可以應(yīng)用于Android和其他復(fù)雜的作業(yè)系統(tǒng)(OS)中,而且不需要整合額外的晶片或者其他復(fù)雜的軟體。
支援不同網(wǎng)絡(luò)類型/模型/框架/ API
神經(jīng)網(wǎng)絡(luò)涉及各種各樣的形式和特性,如何選用很大程度上依賴于要實(shí)現(xiàn)的系統(tǒng)功能。2NX NNA支援多種形式的神經(jīng)網(wǎng)絡(luò),包括卷積神經(jīng)網(wǎng)絡(luò)(CNN)、多層感知器(MLP)、遞回神經(jīng)網(wǎng)絡(luò)(RNN)和SSD物體檢測(cè)框架。目前2NX支援主要的神經(jīng)網(wǎng)絡(luò)框架,比如Caffe和TensorFlow,對(duì)于其他框架的支援也在持續(xù)開發(fā)中(圖5)。
圖5 PowerVR 2NX于神經(jīng)網(wǎng)絡(luò)運(yùn)算架構(gòu)中的位置
使用優(yōu)化轉(zhuǎn)換和調(diào)優(yōu)工具,結(jié)合深度神經(jīng)網(wǎng)絡(luò)(DNN)API,開發(fā)者能夠快速部署他們所選擇的網(wǎng)絡(luò)框架并且運(yùn)行PowerVR NNA加速器。PowerVR長(zhǎng)久以來一直在支援Android系統(tǒng),當(dāng)Google發(fā)布Android神經(jīng)網(wǎng)絡(luò)API后,2NX也將全面支援。當(dāng)然開發(fā)者也可以采用現(xiàn)在的工作流程開發(fā)行動(dòng)App原型,然后使用DNN API與2NX進(jìn)行配對(duì),實(shí)現(xiàn)應(yīng)用系統(tǒng)加速和功耗降低。
隨著我們的世界與電腦的關(guān)系越來越密切,機(jī)器也會(huì)更加地理解這個(gè)世界,PowerVR 2NX NNA代表的是神經(jīng)網(wǎng)絡(luò)加速和性能的一個(gè)轉(zhuǎn)捩點(diǎn),具有在產(chǎn)業(yè)內(nèi)最高的「推理/milliwatt」和「推理/mm2」性能指標(biāo),能夠滿足在行動(dòng)硬體平臺(tái)部署神經(jīng)網(wǎng)絡(luò)之功耗和性能約束條件的IP解決方案。除此之外PowerVR NNA還支援主要的神經(jīng)網(wǎng)絡(luò)和框架,結(jié)合DNN API使得PowerVR 2NX成為驅(qū)動(dòng)未來神經(jīng)網(wǎng)絡(luò)應(yīng)用的解決方案。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4749瀏覽量
100430 -
面部識(shí)別
+關(guān)注
關(guān)注
1文章
375瀏覽量
26612 -
powervr
+關(guān)注
關(guān)注
0文章
98瀏覽量
31047
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論