你的位置:首頁 > 互連技術(shù) > 正文

機(jī)器學(xué)習(xí)應(yīng)用用FPGA技術(shù)實現(xiàn)要注意的幾點(diǎn)因素

發(fā)布時間:2017-03-17 責(zé)任編輯:sherry

【導(dǎo)讀】神經(jīng)網(wǎng)絡(luò)、算法和傳感器等都還是處于不斷演化的過程,一款固定的、標(biāo)準(zhǔn)的設(shè)計平臺面對這些風(fēng)云變幻的演進(jìn)根本無力招架。此時此刻,F(xiàn)PGA技術(shù)成為數(shù)百家嵌入式視覺企業(yè)開發(fā)的首選,其中用于機(jī)器學(xué)習(xí)領(lǐng)域的已經(jīng)超過40家。
 
越來越多的輔助駕駛、無人機(jī)、虛擬現(xiàn)實/增強(qiáng)現(xiàn)實、醫(yī)學(xué)診斷、工業(yè)視覺等應(yīng)用,為了追逐更高性能/差異化,紛紛對機(jī)器學(xué)習(xí)產(chǎn)生濃厚的興趣。
 
已有幾家初創(chuàng)企業(yè)在開發(fā)專門的機(jī)器學(xué)習(xí)芯片,但上述這些應(yīng)用不僅僅要集成機(jī)器學(xué)習(xí),還有計算機(jī)視覺,傳感器融合和連接。如果要開發(fā)這么一整套獨(dú)特的性能組合,可能要花費(fèi)幾億美元才能推出第一款芯片,而且從各種規(guī)格的確定落實到推出樣片,可能需要三年以上。
 
更別提這三年過程當(dāng)中還有一個挑戰(zhàn):那就是神經(jīng)網(wǎng)絡(luò)、算法和傳感器等都還是處于不斷演化的過程,一款固定的、標(biāo)準(zhǔn)的設(shè)計平臺面對這些風(fēng)云變幻的演進(jìn)根本無力招架。此時此刻,F(xiàn)PGA技術(shù)成為數(shù)百家嵌入式視覺企業(yè)開發(fā)的首選,其中用于機(jī)器學(xué)習(xí)領(lǐng)域的已經(jīng)超過40家。
 
那么問題來了,面對市場上最熱門的人工智能CPU/GPU芯片,全可編程方案的優(yōu)缺點(diǎn)是什么?產(chǎn)量達(dá)到多少以后就不再合適?
 
秒殺對手的性能,是怎么算出來的?
 
賽靈思有一個公開的性能對比:針對 Zynq SoC 的 reVISION堆棧與 Nvidia Tegra X1 進(jìn)行基準(zhǔn)對比,得出下圖這個驚人的數(shù)據(jù): reVISION 堆棧在機(jī)器學(xué)習(xí)方面單位功耗圖像捕獲速度提升 6 倍,在計算機(jī)視覺處理的幀速率提升 42 倍,時延僅為 1/5(以毫秒為單位),這些對實時應(yīng)用而言都是至關(guān)重要的。
秒殺對手的性能,是怎么算出來的?
既然和競爭對手做對比,一定是在相同價格的芯片之上做的一些性能對比。在接到EDN記者的疑問后,賽靈思嵌入式視覺和SDSoC高級產(chǎn)品經(jīng)理Nick Ni用詳細(xì)數(shù)據(jù)解答了此疑問。
 
6倍、42倍和1/5,這幾個數(shù)據(jù)都是基于同一基礎(chǔ)的。
 
“像機(jī)器學(xué)習(xí)的6倍的圖像/秒/瓦是用谷歌來做編程。比如Xilinx我們使用ZU9可以達(dá)到370,我們的功率達(dá)到7W,我們使用一樣的GoogleNet,我們可以看到Nvidia已經(jīng)在公開他們最好的數(shù)據(jù),所以我們就用他們這些數(shù)字,所以就算出來6X。”Ni指出。
 
在42倍幀/秒/瓦,則是用最優(yōu)化的這些庫來做比較。
 
在競爭分析中使用英特爾(Altera)的 Arria 10 器件與賽靈思的 Zynq UltraScale+ MPSoC 對比。在進(jìn)行嵌入式視覺應(yīng)用計算效率比較時,選擇的器件有可比的 DSP 密度和器件功耗:
 
·Arria 10 SoC:SX220、SX270 和 SX480
 
·Zynq UltraScale+ MPSoC:ZU3、ZU7 和 ZU9 器件
重點(diǎn)比較能用于包括深度學(xué)習(xí)和計算機(jī)視覺在內(nèi)的眾多應(yīng)用的通用 MACC 性能。英特爾的 MACC 性能基于運(yùn)用預(yù)加法器的算子。但是這種實現(xiàn)方案產(chǎn)生的是乘積項的和,而非單獨(dú)的乘積項。因此英特爾的預(yù)加法器不適用高效深度學(xué)習(xí)或計算機(jī)視覺運(yùn)算。
 
在本計算效率分析中,每個器件的功耗使用賽靈思的2016.4 版 Power Estimator 工具和英特爾的 16.0.1 版 EPE Power Estimate 工具進(jìn)行估算,并根據(jù)下列假設(shè)得出:
 
1.90% DSP 占用率
 
2.英特爾器件 - 速度等級為:2L, 最大頻率下供電電壓為 0.9V
 
3.賽靈思器件 -速度等級為 1L, 最大頻率下供電電壓為 0.72V
 
4.時鐘速率為 DSP Fmax 時邏輯利用率為 70%
 
5.時鐘速率為 DSP 最大頻率的一半時,Block RAM 利用率為 90%
 
6.DSP 翻轉(zhuǎn)率為 12.5%
 
7.功耗特征:“典型功耗”
 
下圖所示的即為深度學(xué)習(xí)和計算機(jī)視覺運(yùn)算的能效對比。與英特爾的 Arria 10 SoC 器件相比,賽靈思器件能讓深度學(xué)習(xí)和計算機(jī)視覺運(yùn)算的計算效率提高 3-7 倍。
響應(yīng)速度來源于架構(gòu)
響應(yīng)速度來源于架構(gòu)
 
響應(yīng)速度在汽車駕駛中直接影響著安全距離。
 
“1/5時延有不一樣的方法來算,我們的算法是直接用了深度學(xué)習(xí)/機(jī)器學(xué)習(xí),因為很多時候如果知道深度學(xué)習(xí)的話,可以用不一樣的方法來做,你輸入一個圖像進(jìn)去,反應(yīng)速度就是這個圖像什么時候能夠出來,我們可以看到5倍的速率差異。”Ni表示。現(xiàn)在一些硬件的專業(yè)客戶如果他們花費(fèi)很多的精力或者是時間的投入,他們有可能可以實現(xiàn)只有1/12的時延。
 
響應(yīng)速度快,其實和賽靈思的架構(gòu)是息息相關(guān)的,如下圖所示。“典型的嵌入式的GPU和典型的SoC,他的傳感器的數(shù)據(jù)是需要外部存儲,在處理過程中需要不斷的去訪問外部存儲。但是Zynq能直接獲得數(shù)據(jù)流,直接經(jīng)過傳感器融合處理,再進(jìn)行決策,響應(yīng)時間大大縮短。”
響應(yīng)速度來源于架構(gòu)
如何滿足機(jī)器學(xué)習(xí)的這三點(diǎn)訴求?
 
我們從客戶那里看到三方面的需求,賽靈思公司戰(zhàn)略與市場營銷部高級副總裁Steve Glaser表示,“第一,他們希望機(jī)器學(xué)習(xí)的智能性有所提高,同時他們也希望系統(tǒng)能夠?qū)崿F(xiàn)及時的快速響應(yīng)來應(yīng)對一切外部事件,比如行人從車前經(jīng)過,比如神經(jīng)網(wǎng)絡(luò)或者相關(guān)技術(shù)的市場變化。”
賽靈思公司戰(zhàn)略與市場營銷部高級副總裁Steve Glaser
賽靈思公司戰(zhàn)略與市場營銷部高級副總裁Steve Glaser
 
其次,成本要低、功耗要低。他們希望能夠以非常高的效率使用非常先進(jìn)的算法。最后,他們需要靈活性——因為一切都在不斷的變化:神經(jīng)網(wǎng)絡(luò)和算法、傳感器的類型配置和組合等。
 
“我們能夠幫助客戶來優(yōu)化他們的數(shù)據(jù)流,從傳感器到視覺處理,再到機(jī)器學(xué)習(xí)推斷,一直到控制系統(tǒng)。另外我們也通過先預(yù)置的硬件,再加上可以編程的軟件,為客戶提供前所未有的靈活性。”Glaser表示,這也就意味著,在不實質(zhì)性改變硬件、包括板和芯片的情況下,客戶就能夠升級優(yōu)化到最新的神經(jīng)網(wǎng)絡(luò)、算法以及傳感器的類型配置。
 
reVISION堆棧包含一些基礎(chǔ)的平臺,可以支持算法的開發(fā),而且它帶有非常符合行業(yè)標(biāo)準(zhǔn)的庫和元素,針對于計算機(jī)、視覺以及機(jī)器學(xué)習(xí)都是非常重要的,這些框架包括在機(jī)器學(xué)習(xí)領(lǐng)域的Caffe,以及在計算機(jī)視覺領(lǐng)域就是OpenVX。
 
專門的開發(fā)人才與生態(tài)環(huán)境
 
在GPU體系中,有一大群開發(fā)者不斷提供優(yōu)秀的設(shè)計,實現(xiàn)良性循環(huán),例如NVidia推出的運(yùn)算平臺CUDA,包含了CUDA指令集架構(gòu)(ISA)以及GPU內(nèi)部的并行計算引擎。
 
全可編程方案好是好,可是會的人少。
 
“reVISION可以簡單地實現(xiàn)一個工程,直接把一個Caffe訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型部署到Zynq里。Zynq本身已經(jīng)包括了優(yōu)化的硬件,可以滿足神經(jīng)網(wǎng)絡(luò)的計算需求。如果需要定制自己的神經(jīng)網(wǎng)絡(luò),只要把Caffe模型輸入到Zynq即可馬上跑起來。從開發(fā)角度講,Zynq特別像CUDA,可以直接釆用GPU或CPU訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)。”
 
現(xiàn)在reVISION堆棧有大量符合行業(yè)標(biāo)準(zhǔn)的庫和框架,開發(fā)時間可以大大壓縮,專門針對那些并沒有硬件方面專業(yè)知識的嵌入式軟件或者系統(tǒng)級工程師。
 
傳統(tǒng)的模式中,賽靈思提供芯片以及開發(fā)環(huán)境當(dāng)中20%的解決方案,剩下的80%要由客戶來完成。“有了這個reVISION堆棧以后,賽靈思能夠完成解決方案當(dāng)中80%的工作,剩下的客戶只要完成20%。”Glaser表示。
 
關(guān)鍵的一點(diǎn)不能漏:reVISION是免費(fèi)的,賽靈思說自己只賺芯片錢。
 
成本,多大的量需要尋求替代性方案?
 
最后,人工智能的硬件生態(tài)目前還沒確定,從公司角度出發(fā),搶占市場先機(jī)和獲得成本優(yōu)勢同樣重要。
 
幾年前推出Zynq的時候,其低端的版本大批量應(yīng)用差不多是15美元以下,現(xiàn)在甚至有了更低端的單核版本,與高端產(chǎn)品4核及7核的異構(gòu)多處理器MPSoC并存,“現(xiàn)在我們有從10美元到幾十美元的組合。”Glaser指出。
 
雖然達(dá)不到幾千萬或數(shù)億那么高的量,由于不再是FPGA了,而是混合的SoC,帶有可以編程的邏輯和IO,所以在量方面已經(jīng)建立了一個非常強(qiáng)大的成本優(yōu)化的產(chǎn)品組合,能夠提供非常好的量化的性價比。
 
“我們關(guān)注那些數(shù)量級在幾百萬的應(yīng)用。一旦有一些應(yīng)用實現(xiàn)了商業(yè)化,達(dá)到了幾千萬甚至是幾億的數(shù)量級,就會有別的更低成本的方案進(jìn)來。”Glaser指出,賽靈思關(guān)注的只是幾百萬的數(shù)量級追求差異化的應(yīng)用,而不是“夠用就好”的批量數(shù)千萬的商業(yè)化應(yīng)用 。
要采購傳感器么,點(diǎn)這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉