作者:貿(mào)澤電子Mark Patrick
云計(jì)算具有許多優(yōu)勢(shì),例如可以靈活地工作,包括在家中進(jìn)行高效率且富有成果的工作(在新冠大流行期間這些非常重要),并且使更多人可以使用人工智能(AI)和大數(shù)據(jù)等應(yīng)用的強(qiáng)大且先進(jìn)功能。作為物聯(lián)網(wǎng)的中心,云計(jì)算需要收集來(lái)自環(huán)境傳感器,工業(yè)執(zhí)行器,自動(dòng)駕駛汽車(chē)等數(shù)十億個(gè)物聯(lián)網(wǎng)端點(diǎn)的數(shù)據(jù),因而云計(jì)算是使個(gè)人和企業(yè)享受智能世界優(yōu)勢(shì)的重要?jiǎng)恿Α?/p>
但是云計(jì)算也有缺點(diǎn)。要維持互聯(lián)網(wǎng)連接非常耗能,對(duì)于小型設(shè)備而言,在技術(shù)上可能很難實(shí)現(xiàn),或者非常昂貴。如果每一比特?cái)?shù)據(jù)都需要傳回云端,那么網(wǎng)絡(luò)可能會(huì)因M2M流量而堵塞。此外,過(guò)多依賴云計(jì)算會(huì)導(dǎo)致延遲,需要提交的服務(wù)因此也會(huì)延遲,不能使IoT設(shè)備實(shí)時(shí)確定地運(yùn)行。此外,通過(guò)網(wǎng)絡(luò)傳輸數(shù)據(jù)并與其它云計(jì)算應(yīng)用共享數(shù)據(jù)也會(huì)帶來(lái)隱私和安全性問(wèn)題。
處理能力需求追蹤
處理數(shù)據(jù)并根據(jù)結(jié)果做出決策,這種過(guò)程所需的計(jì)算能力正在從云端遷移到網(wǎng)絡(luò)邊緣。從企業(yè)計(jì)算或運(yùn)營(yíng)商的角度來(lái)看,邊緣計(jì)算與核心網(wǎng)絡(luò)外圍的網(wǎng)關(guān)設(shè)備相關(guān)聯(lián),這可以進(jìn)一步細(xì)分為近端基礎(chǔ)設(shè)施,通常負(fù)責(zé)通用服務(wù),而處在在更接近最終用戶的遠(yuǎn)端應(yīng)用則變得更加具體化。
隨著計(jì)算能力提高,邊緣正在成為智能邊緣。但是為什么要就此止步?將強(qiáng)大的計(jì)算功能進(jìn)一步向外擴(kuò)展以涵蓋傳感器和執(zhí)行器、數(shù)據(jù)聚合器和網(wǎng)關(guān)等物聯(lián)網(wǎng)端點(diǎn),將創(chuàng)建嵌入式邊緣。這樣,新的解決方案應(yīng)運(yùn)而生,可幫助克服嵌入式設(shè)計(jì)人員面臨的傳統(tǒng)限制,包括功耗、計(jì)算性能、內(nèi)存占用空間和物理尺寸等。
邊緣處理能帶來(lái)什么?
處理器技術(shù)的發(fā)展使之可以完成更復(fù)雜的任務(wù),并提供更高的性能,同時(shí)消耗更少的電能,利用連續(xù)幾代處理器所帶來(lái)的進(jìn)步,嵌入式邊緣計(jì)算作為物聯(lián)網(wǎng)處理的支柱將繼續(xù)變得越來(lái)越重要。
尤其像工業(yè)4.0和自動(dòng)駕駛這樣影響巨大的產(chǎn)業(yè)趨勢(shì)正在催生一些新應(yīng)用,它們要求低延遲和網(wǎng)絡(luò)獨(dú)立性,而邊緣處理則可以提供。這些示例包括機(jī)器視覺(jué)(見(jiàn)圖1)和車(chē)輛導(dǎo)航等,通過(guò)在嵌入式系統(tǒng)上融入機(jī)器學(xué)習(xí)推理,可以進(jìn)一步加速和改善這些應(yīng)用。
當(dāng)今機(jī)器學(xué)習(xí)的性能可以勝過(guò)傳統(tǒng)的機(jī)器視覺(jué)應(yīng)用,此外還支持其他功能。自動(dòng)導(dǎo)航車(chē)輛(AGV)不僅可以簡(jiǎn)單地檢測(cè)行駛路徑中的物體,而且可以識(shí)別和分類(lèi)它們。隨著工廠操作空間變得越來(lái)越擁擠,需要容納越來(lái)越多的員工和移動(dòng)或靜態(tài)機(jī)器人,這已成為越來(lái)越重要的功能。
同樣,機(jī)器學(xué)習(xí)技術(shù)可以提高工業(yè)狀態(tài)監(jiān)視系統(tǒng)中模式識(shí)別的效率,從而提高診斷準(zhǔn)確性。其他一些可以從本地機(jī)器學(xué)習(xí)功能中受益的應(yīng)用包括智能農(nóng)業(yè),能夠通過(guò)圖像識(shí)別訓(xùn)練以自動(dòng)識(shí)別農(nóng)作物病害,而無(wú)需Internet連接。
使用TinyML進(jìn)行機(jī)器學(xué)習(xí)
為了在嵌入式設(shè)備中實(shí)現(xiàn)這些功能,微型機(jī)器學(xué)習(xí)(TinyML)的概念正在興起。TinyML包含了針對(duì)資源受限嵌入式系統(tǒng)而量身定制的機(jī)器學(xué)習(xí)框架,開(kāi)發(fā)人員需要工具來(lái)構(gòu)建和訓(xùn)練機(jī)器學(xué)習(xí)模型,然后對(duì)其進(jìn)行優(yōu)化以部署在諸如微控制器、小型處理器或FPGA之類(lèi)的邊緣設(shè)備上。
TinyML的工作原理體現(xiàn)在一些面向邊緣的機(jī)器學(xué)習(xí)框架中,例如TensorFlow Lite(見(jiàn)圖2)。這個(gè)非常流行且廣泛使用的框架擁有一些工具,其中包括用于優(yōu)化標(biāo)準(zhǔn)TensorFlow模型以在嵌入式Linux等目標(biāo)設(shè)備上運(yùn)行的轉(zhuǎn)換器(converter),以及用于運(yùn)行優(yōu)化模型的編譯器(interpreter)。
?
圖2:Tensorflow Lite針對(duì)嵌入式部署優(yōu)化的機(jī)器學(xué)習(xí)模型。
此外,針對(duì)微控制器的TensorFlow Lite是專(zhuān)門(mén)為內(nèi)存極為有限的設(shè)備上運(yùn)行機(jī)器學(xué)習(xí)而創(chuàng)建,內(nèi)核運(yùn)行時(shí)僅占用幾KB內(nèi)存,并且已在基于Arm?Cortex?-M內(nèi)核的許多微控制器上進(jìn)行了測(cè)試。TensorFlow Lite工具可提供多種方法來(lái)減小在嵌入式設(shè)備或微控制器上運(yùn)行的TensorFlow模型大小。
邊緣推理解決方案
領(lǐng)先的微控制器供應(yīng)商目前正在為部署AI推理和機(jī)器學(xué)習(xí)提供有效的生態(tài)系統(tǒng)和流程,您可以獲得這樣的嵌入式微控制器,其架構(gòu)設(shè)計(jì)允許部署神經(jīng)網(wǎng)絡(luò)以運(yùn)行機(jī)器學(xué)習(xí)算法。
新一代專(zhuān)為機(jī)器學(xué)習(xí)推斷而設(shè)計(jì)的微控制器正在不斷出現(xiàn)。TI Sitara?處理器系列中的AM5729即是一例。AM5729除了具備兩個(gè)Arm Cortex-A15內(nèi)核和一個(gè)Cortex-M4嵌入式內(nèi)核外,還包含四個(gè)嵌入式視覺(jué)引擎(EVE),能夠支持深度學(xué)習(xí)網(wǎng)絡(luò)以確保較高的推理性能。TI深度學(xué)習(xí)(TIDL)軟件框架和TIDL接口可幫助開(kāi)發(fā)人員在嵌入式處理器上構(gòu)建、訓(xùn)練和部署神經(jīng)網(wǎng)絡(luò)。
意法半導(dǎo)體(STMicroelectronics)用于神經(jīng)網(wǎng)絡(luò)的工具箱包括STM32Cube.AI轉(zhuǎn)換工具,用于轉(zhuǎn)換使用各種流行框架創(chuàng)建且經(jīng)過(guò)訓(xùn)練的神經(jīng)網(wǎng)絡(luò),該工具會(huì)自動(dòng)生成針對(duì)STM32 Arm Cortex-M微控制器優(yōu)化的程序庫(kù)。AI生態(tài)系統(tǒng)還提供軟件功能包,其中包含必要的低級(jí)別驅(qū)動(dòng)程序和中間件庫(kù),以部署經(jīng)過(guò)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)。還有用于音頻場(chǎng)景分類(lèi)和人員活動(dòng)檢測(cè)的示例應(yīng)用,可幫助用戶快速學(xué)習(xí)如何使用嵌入式AI。ST工具箱還提供專(zhuān)用的移動(dòng)應(yīng)用程序,以及ST的SensorTile參考硬件,用于運(yùn)行推理或數(shù)據(jù)收集。 SensorTile是包含環(huán)境和周邊傳感器的交鑰匙板,是一種預(yù)先集成的即插即用模塊。
Microchip可為其微處理器、FPGA和諸如SAM D21系列之類(lèi)的32位微控制器提供機(jī)器學(xué)習(xí)支持。該公司的工具可幫助開(kāi)發(fā)人員使用TensorFlow、Keras和Caff以及TinyML框架(例如TensorFlow Lite)等流行的機(jī)器學(xué)習(xí)框架。在使用MPLAB?系列工具應(yīng)對(duì)微控制器或微處理器時(shí),開(kāi)發(fā)人員可以利用ML插件和MPLAB Data Visualizer等工具來(lái)捕獲數(shù)據(jù),以利用Microchip合作伙伴的工具來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò),其中包括可以自動(dòng)搜索AI模型,幫助分析傳感器數(shù)據(jù)并生成程序庫(kù)的Cartesiam Nano Edge AI Studio,以及具有Edge Impulse Inferencing SDK C++庫(kù)的Edge Impulse Studio,可將TensorFlow Lite用于微控制器。用戶可以使用Microchip MPLAB X IDE將項(xiàng)目部署在所選MCU上。
瑞薩電子(Renesas)的嵌入式人工智能(e-AI)平臺(tái)包含多個(gè)概念,可幫助在端點(diǎn)設(shè)備中實(shí)現(xiàn)AI。Renesas RZ/A2M 微處理器采用動(dòng)態(tài)可重配置處理器(DRP)技術(shù),能夠?qū)⒂布铀倨鞯男阅芘cCPU的靈活性相結(jié)合,以實(shí)現(xiàn)高速、低功耗的機(jī)器視覺(jué)應(yīng)用。該平臺(tái)還提供了包括e-AI轉(zhuǎn)換器在內(nèi)的工具,可以將經(jīng)過(guò)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型推理處理轉(zhuǎn)換,并導(dǎo)入到可以在e2studio IDE C / C ++項(xiàng)目中使用的源代碼文件。可以使用TensorFlow之類(lèi)的開(kāi)源深度學(xué)習(xí)框架來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
此外,創(chuàng)客(makers)、年輕工程師和專(zhuān)業(yè)人士現(xiàn)在都可以使用Google AIY自己動(dòng)手制作AI套件和Google Coral本地AI平臺(tái)來(lái)嘗試構(gòu)建智能設(shè)備。 AIY套件具有一個(gè)智能相機(jī),該其中包括Raspberry Pi板和攝像頭、一個(gè)Vision閥蓋(bonnet)、必要的電纜和按鈕,以及一個(gè)簡(jiǎn)單的板式外殼,可讓用戶快速了解圖像識(shí)別。類(lèi)似的智能揚(yáng)聲器套件可幫助開(kāi)發(fā)語(yǔ)音識(shí)別技術(shù)。
Google Coral能夠提供多種硬件選擇,包括開(kāi)發(fā)板、迷你開(kāi)發(fā)板和USB加速器,可以為用戶提供將AI“嵌入”現(xiàn)有產(chǎn)品的協(xié)處理器。該工具包支持TensorFlow Lite,所有板均包含Google的Edge TPU,這是與Google Cloud TPU相關(guān)的張量(tensor)處理單元,該處理單元經(jīng)專(zhuān)門(mén)設(shè)計(jì),占位面積小,功耗低。
結(jié)論:邊緣計(jì)算的未來(lái)在于嵌入式智能
提高網(wǎng)絡(luò)邊緣設(shè)備的計(jì)算能力有助于確??煽俊⒏咝阅芎捅Wo(hù)隱私的物聯(lián)網(wǎng)應(yīng)用。從網(wǎng)絡(luò)網(wǎng)關(guān)和聚合器到IoT端點(diǎn)等各個(gè)位置的設(shè)備都可以視為邊緣設(shè)備,人工智能正在得到越來(lái)越多應(yīng)用,以滿足對(duì)性能和效率的需求,包括用于微控制器部署的機(jī)器學(xué)習(xí)解決方案,例如開(kāi)源TinyML框架和領(lǐng)先制造商提供的經(jīng)過(guò)優(yōu)化、加速的微控制器架構(gòu)。借助于各種工具、平臺(tái)和即插即用工具包,無(wú)論是初學(xué)者還是經(jīng)驗(yàn)豐富的專(zhuān)業(yè)人員,所有開(kāi)發(fā)人員都能夠探索各種可能的應(yīng)用開(kāi)發(fā)。
評(píng)論