<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 設(shè)計應(yīng)用 > Arm MCU在邊緣AI落地的方法

          Arm MCU在邊緣AI落地的方法

          作者:魯 冰 時間:2019-09-25 來源:電子產(chǎn)品世界 收藏

            魯?冰?(《電子產(chǎn)品世界》編輯)

          本文引用地址:http://www.ex-cimer.com/article/201909/405225.htm

            (人工智能)在M級的便宜的小器件上能不能落地?它需要什么資源,性能又怎么樣?不久前,Arm中國攜手恩智浦半導(dǎo)體在全國進(jìn)行了巡回講演。Arm中國高級市場經(jīng)理Eric Yang分享了的基礎(chǔ)知識,分析認(rèn)為邊緣可以通過在MCU這樣的小芯片上實現(xiàn),并推介了Arm的軟件中間件NN——可以有效地對接算法和具體芯片,最后列舉出了的應(yīng)用案例。

            1 邊緣AI潛力巨大

            AI有沒有前途?

            前兩年AI非常火,AI公司支付的薪水很高。不過,2019年上半年以來,很多AI公司活得并不是很好。AI到底有沒有機會?還需不需要關(guān)注?

            如果借鑒歷史,大約在5億年前是單細(xì)胞生物,之后生物學(xué)上出現(xiàn)了寒武紀(jì)大爆發(fā),產(chǎn)生了大量的新生物,其中帶智能的生物慢慢進(jìn)化出來。

            現(xiàn)在從嵌入式或者產(chǎn)業(yè)角度來看,有點類似于寒武紀(jì)的前夕。如果從身邊去觀察,會發(fā)現(xiàn)無論是生活還是工作環(huán)境安裝了很多傳感器,而且傳感器有越來越多的趨勢。Arm的孫正義先生認(rèn)為,現(xiàn)在還是百億級、千億級傳感器的量,到2025年會有約1萬億的設(shè)備連上傳感器,相當(dāng)于2025年時到了寒武紀(jì)大爆發(fā)時期。

            不過,那么多傳感器相連,如果都靠傳統(tǒng)的計算方式,即完全是靠你的算法或控制去實現(xiàn)一些功能/性能的時候,是有很大的瓶頸的。所以大量傳感器可能會采用AI技術(shù),一部分AI在云端,更多的是在嵌入式端。

            2 AI中遇到的概念

            AI、機器學(xué)習(xí)(ML)、深度學(xué)習(xí)(DL),這些概念到底什么關(guān)系?

            AI是用機器來模擬人的思維習(xí)慣,讓機器來達(dá)到人的決策的能力。要實現(xiàn)這一功能,就需要讓機器做學(xué)習(xí),這主要是通過概率論、統(tǒng)計論之類的方法,讓機器找到算法,以實現(xiàn)機器能夠?qū)W習(xí)這樣的功能(如圖1)。

          微信截圖_20191010094300.png

            實現(xiàn)機器學(xué)習(xí)里面有種方法叫深度學(xué)習(xí)。深度學(xué)習(xí)相當(dāng)于你準(zhǔn)備大量的數(shù)據(jù),然后放到那個模型里邊去,讓它學(xué)會“感知+判斷+思維”的能力。在深度學(xué)習(xí)下面,會有我們經(jīng)常聽到的算法,諸如、RNN等。

            3

            在機器學(xué)習(xí)方面有兩個方面需要去理解:訓(xùn)練和推斷。第一是若在云端,叫訓(xùn)練,云端需要有巨大的數(shù)據(jù)量做訓(xùn)練;第二是設(shè)備端。設(shè)備端主要是做推斷,即把云端訓(xùn)練好的模型思維方式下載到設(shè)備端,設(shè)備端再根據(jù)獲得的信號得出一個推斷的結(jié)果。

            訓(xùn)練需要大量的數(shù)據(jù),需要非常高的性能、大量的帶寬去實現(xiàn)。所以一般要在服務(wù)器、GPU、加速卡上運行。

            在設(shè)備端,因為已經(jīng)有現(xiàn)成的訓(xùn)練模型,所以只做判斷/推斷,相對來講要考慮的地方較為簡單,例如性能方面,中低端的性能就可實現(xiàn);效率方面,包括成本效率、功耗效率;再有,因為設(shè)備端涉及到聯(lián)網(wǎng),還要有安全隱私的考慮。

            那么,哪些功能適合放在設(shè)備端或服務(wù)器端/云端?如圖2,分別從AI的3個典型應(yīng)用——視覺、音頻以及健康管理來分析。圖2左都是大型的機器學(xué)習(xí),在服務(wù)器上面,圖2右是設(shè)備端可以實現(xiàn)的應(yīng)用與技術(shù)。

          微信截圖_20191010094323.png

            以視覺來看,首先,如果做具體物體的識別,例如,這是一條狗,這條是什么品種的狗,或者人臉識別,這種方式基本上放在服務(wù)器端。如果做類的識別,例如是狗、車還是飛機,這種識別就可以放在設(shè)備端了。CIFAR-10就是一種常用來做的標(biāo)準(zhǔn)模型。

            例如在音頻方面,如果只是做一個關(guān)鍵字的識別,或簡單的一個命令的識別,可以放在設(shè)備端;如果是做語義的識別(例如你講一句話,讓機器知道你的意思,回答你下一句話),通常放在云端/服務(wù)器端。

            同樣,在健康管理方面,如果讓手機、手環(huán)或智能手表做一個動作的識別,例如解釋你是在走路、跑步還是蹲下,這可在設(shè)備端實現(xiàn);如果要是做具體的疾病識別,要放在服務(wù)器端實現(xiàn)。

            在嵌入式系統(tǒng)里面,做ML要考慮哪些因素?列表如表1所示。

            首先在系統(tǒng)層,你要考慮到效率,因為嵌入式設(shè)備一般都會有成本的考慮,因為量非常大,布設(shè)的端點非常多。另外是功耗的考慮,有的設(shè)備涉及到電池供電。之后還有帶寬,因為需要跟服務(wù)器/云去通訊。最后還需要考慮到隱私和加密。

            在AI部分,可能你要考慮到的你輸入的種類、參數(shù)、轉(zhuǎn)換的效率、你要得到結(jié)果的精度、你所選用的設(shè)備的算法,或者你要達(dá)到這樣精度要消耗的內(nèi)存資源。

            在ML部分經(jīng)常聽到一些算法,諸如、DNN、RNN、LSTN。這些算法對應(yīng)的常用的應(yīng)用場景,例如CNN適合視覺識別、圖片識別,DNN比較適合語音識別。

            表2是Arm做的不同ML算法在不同的內(nèi)存資源和CPU資源情況下得到的結(jié)果。

          1570671873268176.png

          1570671873824242.png

            可見準(zhǔn)確度、消耗的資源跟你的系統(tǒng)呈對應(yīng)關(guān)系。例如分散式CNN算法可以達(dá)到95%的準(zhǔn)確度,最小的時候可能只占了不到40 kB內(nèi)存,消耗的CPU運算能力只有5.4MOps,這相當(dāng)于人們常見的M0嵌入式設(shè)備就能運行起來。可見,在Arm生態(tài)系統(tǒng)里,從M0到M7,都可以在這些芯片上面去實現(xiàn)ML功能(如圖3)。這顛覆了人們以前的觀念——一定要有很大的GPU、服務(wù)器、手機平臺等去做。

            在硬件方面,Arm推動MCU芯片合作伙伴,加外設(shè)、加功能去做具體芯片出來。同樣,在軟件方面,Arm也提供了軟件中間件,叫。

            4

            該軟件中間件的一個出發(fā)點是全球比較大的一些公司,包括國內(nèi)的百度、阿里等經(jīng)常無償?shù)靥峁C器學(xué)習(xí)的算法,讓免費使用,以在其服務(wù)器上得到接口。但落地時候怎么辦?因為不同公司會提供不同種類的算法,如果你對每種算法都去做支持,整個開發(fā)維護(hù)的工作量會非常大的,尤其對于嵌入式設(shè)備的廠家更是如此。

          微信截圖_20191010094445.png

            Arm在中間做了一個標(biāo)準(zhǔn)化的接口優(yōu)化。上面直接去對接算法,下面去對接具體的硬件。這就把AI機器學(xué)習(xí)當(dāng)做是一個以前的通訊庫,或者是API來用,就可以了。圖4是具體應(yīng)用的流程。

            在Cortex-M上來實現(xiàn)的軟件庫,是在2018年1月發(fā)布的,是開源的,你可以看到所有源代碼,因此不會存在安全、自主可控的困惑。

            不僅如此,現(xiàn)在NN 還 針 對 大 核 , 例 如系列以及Mali GPU,也是開源的,于2018年年中發(fā)布。

            至此,可以運行在Arm所有CPU上。

            相比只從那些算法公司下載開源程序、把它移植到Arm CPU上去運行,分別對卷積、池化以及激活函數(shù)方面做對比,對比圖如圖5??梢娫诔鼗瘯r,用CMSIS-NN,可以達(dá)到4.6倍性能的提升。

          微信截圖_20191010094507.png

            CMSIS-NN效率很高。恩智浦半導(dǎo)體做的一個在相同的硬件環(huán)境下,CMSIS-NN與的性能對比。采用的芯片分別是Cortex-M4和的 芯 片 , 在 做 C I F A R - 1 0 時 ,(注:提供的嵌入式版本的CNN模型)用約120 ms才能完成某個識別;只需要20 ms左右。

            CMSIS-NN一直在更新,基本上每個季度有優(yōu)化版。

            5 用CMSIS-NN做ML的應(yīng)用案例

          微信截圖_20191010094521.png

            第一個應(yīng)用是CMSIS-NN如何與恩智浦半導(dǎo)體的AI平臺——eIQ平臺對接(如圖6)。它是把算法集成好,對用戶來講,首先是找到一個事先做好的模型,選擇是否也需要做壓縮的算法。如果不做壓縮,就把它做模型轉(zhuǎn)換到Cortex-M系列里的語言里。只需要把傳感器的信號輸入,恩智浦的芯片(例如:i.MX RT)就會做出一個決策。

            實際上,用芯片做成的產(chǎn)品已有商用化的案例。美國的Amiko公司做的哮喘治療器(如圖7)采用ML算法來做監(jiān)測、統(tǒng)計。它的原理比較簡單,其中的傳感器可以識別幾個內(nèi)容。第一,把設(shè)備從正常的狀態(tài)顛倒過來,變成放到嘴里的狀態(tài)。其次,它可以監(jiān)測到吸入的流量大小。實現(xiàn)方法是:在云端做好了一個模型之后,它可以通過這模型來指導(dǎo)這個吸入哮喘劑是否正確,以及吸的量夠不夠。

          微信截圖_20191010094552.png

            本文來源于科技期刊《電子產(chǎn)品世界》2019年第10期第87頁,歡迎您寫論文時引用,并注明出處。



          關(guān)鍵詞: 201910 Arm MCU AI CNN CMSIS-NN

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();