2016年深度學習技術不斷推動著計算工業(yè)的前進,專家稱在2017年人工智能領域將需要更快速,更強勁的“推理”引擎來強化深度神經網絡。
現有的深度學習系統(tǒng)動用的是大型計算的優(yōu)勢,借助網絡以及大數據來進行訓練和學習,然后再對接大型計算系統(tǒng)來完成它的目標任務。
不過,這種學習方式在執(zhí)行效率方面很顯然不適合嵌入式系統(tǒng)(也就是包含,汽車,無人機,包括物聯網設備,工業(yè)控制器等等)這些設備往往受到能源,帶寬以及存儲器大小方面的限制。
把深度神經網絡放到終端設備中為技術創(chuàng)新提供了非常大的可能性
就在幾個月前Movidius CEO,RemiElquazzane曾表示,"人工智能在邊緣計算上的投放,將會是一個趨勢"
Marc Duranton
當問及如何讓AI在邊緣計算方面發(fā)揮能力的時候,集成電路設計以及嵌入式軟件部門的CEA架構研究員Marc Duranton 闡述了其獨道見解,安全,隱私性和商用化這三點是快速進入了工業(yè)領域處理末端數據的關鍵。Duranton 發(fā)現“短時間內將數據變?yōu)樾畔ⅰ毙枨笳谠鲩L。
再比如無人汽車,如果安全性是這種技術設計最終目的,那么這種無人的功能設計不應該完全依靠——全時間的實時網絡連接??梢韵胂笕绻粋€上年紀的人在家中摔倒,這起事件就應該在本地偵測并得到確認。私密性是一方面重要原因,而不依賴家中的10個攝像頭來傳輸圖像激活報警其實也是為了降低能耗以及數據規(guī)模,Duranton補充說
競賽開始了
芯片供應商從多方面了解到市場對更好的推理引擎的增長需求。
類似于Movidus,Mobileye 以及 英偉達 這樣的半導體廠商已經在超低功耗領域方面展開了競爭,更高的硬件加速表現可以讓嵌入式設備能夠擁有更好的學習能力。
Duranton 認為,這些公司在SOC方面所做的工作說明了推理引擎已經成為了許多半導體公司在后移動時代的新的研究方向
谷歌的Tensor 處理單元即TPUs在今年年初的發(fā)布標志著工程領域對機器學習類芯片的創(chuàng)新已經達到了如饑似渴的程度。
在發(fā)布會上,這家搜索巨頭公司形容TPUs提供了一個“比商用FPGA和GPU芯片高出一個數量級的單位瓦特性能。”谷歌展示了這款被裝載在打敗人類圍棋冠軍的阿爾法狗系統(tǒng)的加速器,然而卻從來不曾談論TPUs的結構細節(jié),也不會將TPUs出售給商用市場。
很多SOC設計者認為谷歌的這一舉動讓機器學習系統(tǒng)設計方面更趨于定制化的結構,但是在他們設計定制化的芯片時,又對谷歌芯片的結構感到好奇。更要命的是,設計者們想要知道現在對于不同的硬件平臺是否已經能夠有評測工具來對于深度神經網絡DNN的好壞進行評測和測量。
工具正在到來
CEA已經準備好了應對不同硬件架構的推理技術的開發(fā),并且開發(fā)了一個軟件框架,叫做 N2D2(有點類似星球大戰(zhàn)的機器人的名字R2D2)它能夠使設計者探索并生成DNN結構。開發(fā)這個工具可以幫助DNN來選擇更加合適的硬件。
DNN深度學習結構
N2D2將能夠在2017年第一季度實現開源,Duranton承諾道。
N2D2這個新工具的關鍵在于不僅能夠非常精準識別出并比較不同硬件,還可以在處理時間,硬件成本,以及能源消耗這幾個重要方面實現比較。Duranton認為這幾點都非常重要 ,因為不同的應用對于深度學習來在不同的硬件環(huán)境中實施中時可能會需要不同的參數。
N2D2的工作方式(來源:CEA)
N2D2提供了一系列商用常規(guī)硬件的測試,包括CPU,GPU以及FPGA多核以及多芯片協作的測試
邊緣計算方面的障礙
作為一個研究機構,CEA已經對怎樣的讓深度神經網絡更好地融入邊緣計算進行了反復研究。關于DNN在邊緣計算方面的障礙,Duranton認為,浮點服務器解決方案是不能夠使用的,除了電力,體積,延遲方面的限制,其他的限制還包括了MAC,帶寬和板載芯片的內存空間的等因素。
那么“以整數替代浮點”是首要考慮的事情,那么其它還要考慮什么呢?
Duranton相信特殊的架構能夠采用新的編碼,比如脈沖尖峰編碼(spike coding)
當CEA的研究者們對于神經網絡的特性進行研究時,他們發(fā)現這些特性對計算錯誤具有先天的容錯性。這就讓它們成為了模糊計算方面非常好的備選。
所以如果是這樣,可能二進制編碼不再那么必要。這對于時間編碼(temporal coding)來說是一個好消息——就比如脈沖尖峰編碼(Spike coding)——能夠使邊緣端的計算能效方面產出比更高,Duranton 解釋
脈沖尖峰編碼是具有相當的吸引力,因為尖峰被編譯時或者在一個基于事件的系統(tǒng)中都展示了數據如何在真實的神經系統(tǒng)中進行編譯。更進一步說明,基于事件的編碼是可以與精密傳感器和前處理技術進行相互匹配的。
這樣的編碼更能讓研究人員來構建一個體積更小能耗更低的硬件加速器并且用于一個裝備有混合模擬以及數字應用的神經系統(tǒng)當中。
也有一些其他因素可以幫助在邊緣計算方面加速構建DNN結構
CEA就仔細考量了調整神經網絡架構轉換成邊緣計算的潛力,包括用 Squeeze Net 來代替 Alex Net(兩種神經網絡結構的名稱)Duranton特別強調。 據說SqueezeNet 能夠完成相當于Alex Net 級別精度的50倍小的參數。Duranton也認為這種簡化是邊緣計算所需要的,在拓撲結構上是使Macs數量得到降低。
在Duranton看來,研究目標是將“典型的”DNN結構“自動轉換到嵌入式”網絡當中。
Alexnet結構
P-Neuro,一個過渡時期的芯片
CEA的真正野心在于發(fā)展神經元形態(tài)的電路。這家研究機構相信這樣的芯片是從傳感器的近端來提取有用信息進行深度學習的一個有效補充。
在達到研究目標之前,CEA試探了很多過渡性步驟。比如N2D2開發(fā)工具就是芯片設計者們開發(fā)“高水平能效功耗比TOPS(TOPS每秒億萬次計算)DNN”定制化解決方案的關鍵
未來,那些指望在邊緣計算上利用DNN的人可以選用手頭上的硬件去測試,為此,CEA提供了一個功耗極低的可編程加速器,叫做P-Neuro(P神經)
現有的P-Neuro 神經網絡處理單元基于FPGA構建,而且,根據Duranton所說CEA正在將這種FPGA轉換至ASIC
當P-Neuro樣本demo遇到 嵌入式CPU
在CEA的實驗室中,Duranton展示了一個面部偵測的卷積式神經網絡(CNN,convolutional neural network,模擬人類大腦結構)應用,運行于基于FPGA的 P-Neuro上。 這個P-Neuro 的demo被用于與嵌入式CPU(樹莓派Raspberry Pi的四核ARM處理器以及安卓系統(tǒng)上的三星獵戶座SOC)進行比較,并同時運行相同的嵌入式CNN應用;目標任務是從一個數據庫中調出的超過18000張圖像當中進行人臉特征提取。
如圖所示P-Neuro識別速度是6942張圖每秒,能效達每2776張圖像僅用一瓦特
看P-Neuro是怎樣斃掉嵌入式CPU和GPU的(來源CEA)
對比嵌入式GPU(如英偉達的Tegra K1), 基于 FPGA的P-Neuro 可以運行在100MHZ并被證明效率上快了一到兩倍,能效方面更是提供四到五倍
P-Neuro 建立在SIMD架構的基礎上,并以內存層級結構的優(yōu)化以及互聯為特點
P-Neuro(來源CEA)
歐盟項目
“就CEA研究者來說,P-Neuro “是一個短期芯片”Duranton 強調。P-Neuro 是用二進制編碼嵌入在一個完整的CMOS器件上。該項目組也同時在進行在一個完整CMOS設備上運行脈沖尖峰編碼的工作。
為了能充分利用先進設備來突破密度和功耗的問題,該團隊也已經設定了更高的目標
同時歐盟作為EU地平線2020計劃的一分子,正在尋找“擬制造一款芯片來實施神經元架構支持最頂級的機器學習并且支持基于脈沖尖峰(spike,nerve impluse=spike)的學習機理
這個項目的名稱叫做NeuRAM3, 據稱其芯片將具備超低功耗,可測量以及高可控性的神經架構“項目的目的在于能夠在特定應用中比常規(guī)數字化方案節(jié)約50倍的能耗。
神經元形態(tài)處理器
神經形態(tài)處理器基礎說明(來源: Prof. Giacomo Indiveri)
CEA是一個深度融合的項目,CEA的自主研究目標是與NeuRAM3項目來說幾乎是相同的。這就包含了FD-SOL單片集成3D技術的開發(fā),以及RRAM存儲器突觸元素的使用。
與IBM的叫做TrueNorth 腦力激發(fā)系統(tǒng)相比較,NeuRAM3項目的新混合信號多核新神經形態(tài)設備應該能夠大幅降低能源的消耗。
與IBM的TrueNorth對比
其它NeuRAM3項目的參與者包括了:IMEC,以及IBM蘇黎世,ST微電子,CNR,IMSE,蘇黎世大學和德國雅各布斯大學
2025china原創(chuàng),轉載請注明!
ZERO1整理編譯
(轉載)