邊緣運算開啟全新嵌入式應用

作者 : Mark Patrick,貿澤電子

提高網路邊緣裝置的運算能力有助於確保可靠、高性能和保護隱私的物聯網應用。為了滿足對於性能和效率的需求,從網路閘道器到IoT端點等各種邊緣裝置對於AI的需求正日益增加...

雲端運算帶來了許多優勢,例如可以彈性地工作,包括在家中進行高效率且具生產的工作(在Covid-19疫情期間非常重要),並且使更多人能夠採用人工智慧(AI)和巨量資料應用等強大且尖端功能。作為物聯網(IoT)的中心,雲端需要收集環境感測器、工業致動器、自動駕駛車等數十億個物聯網端點資料,因而成為使個人和企業享受智慧世界優勢的關鍵推動力。

但是它也有缺點。維持網際網路連接非常耗能,對於小型裝置而言,在技術上可能很難實現或者非常昂貴。如果每一位元資料都需要傳回雲端,那麼網路可能會因機器對機器(M2M)流量而堵塞。此外,過多仰賴雲端會導致延遲,從而延誤提交服務,導致IoT裝置無法即時確定地運作。再者,透過網路傳輸資料並與雲端應用共用資料,也會帶來隱私和安全性問題。

追蹤處理工作量

處理資料並根據結果做出決策所需的運算能力,正從雲端遷移到網路邊緣。從企業運算或營運商觀點來看,邊緣運算與核心網路周邊的閘道裝置相關,這可以進一步細分為近端基礎設施,通常負責通用服務,而應用是在更接近終端用戶的遠端變得更加具體化。

伴隨運算能力提高,邊緣正成為智慧邊緣。但是為什麼要就此止步?將強大的運算功能進一步向外擴展以涵蓋感測器和致動器、資料聚合器和閘道器等物聯網端點,將創建嵌入式邊緣。如此,新的解決方案應運而生,有助於克服嵌入式設計人員面臨的傳統限制,包括功耗、運算性能、記憶體佔用空間以及實體尺寸等。

邊緣處理帶來哪些好處?

作為物聯網處理支柱的嵌入式邊緣運算,利用連續幾代處理器所帶來的進步,以因應更複雜的任務,並提供更高性能,同時消耗更少的功率,將使其持續變得更重要。

尤其像工業4.0(Industry 4.0)和自動駕駛這樣影響巨大的趨勢正帶來一些新應用,需要一些透過邊緣處理才足以提供的低延遲和網路獨立性。這些用例包括機器人視覺(見1)和車輛導航等,透過在嵌入式系統上融入機器學習推論,可以進一步加速和改善這些應用。

1:嵌入式機器學習是實現智慧邊緣運算的強大驅動力。

機器學習性能可以勝過傳統的機器視覺應用,並且允許其他功能。自主導航車輛(AGV)可以超越僅偵測行駛路徑中的物體,進一步辨識並分類這些物體。隨著工廠工作空間變得越來越擁擠,容納越來越多的人員以及行走或靜態機器人接近共處,這已經成為越來越重要功能。

同樣地,機器學習技術可以提高工業狀態監測系統中的模式辨識效率,從而提高診斷準確性。其他還有一些可以從本地機器學習功能中受益的應用包括智慧農業,可以透過訓練影像辨識以自動分辨出農作物病害,而無需網際網路連接。

採用TinyML進行機器學習

為了在嵌入式裝置實現這些功能,「微型機器學習」(TinyML)概念正在崛起。TinyML是因應資源受限的嵌入式系統而量身打造的機器學習架構,開發人員需要工具來建構和訓練機器學習模型,然後對其進行最佳化以部署在諸如微控制器、小型處理器或FPGA之類的邊緣裝置上。

TinyML工作原理體現在一些邊緣導向的機器學習架構中,例如TensorFlow Lite(見2)。這個流行且廣泛使用的架構擁有許多工具,包括用於最佳化標準TensorFlow模型以執行於嵌入式Linux等目標裝置上的轉換器,以及用於執作最佳化模型的編譯器。

2Tensorflow Lite針對嵌入式部署最佳化機器學習模型。

此外,針對微控制器(MCU)的TensorFlow Lite是專為記憶體極其有限的裝置執行機器學習而打造的,核心執行時間僅佔用幾KB記憶體,並已在基於Arm Cortex-M核心的許多MCU上進行測試了。TensorFlow Lite工具提供多種方法來縮減在嵌入式裝置或MCU上執行的TensorFlow模型大小。

邊緣推論解決方案

業界MCU供應商正在為部署AI推論和機器學習建立有效的生態系統和流程,他們需要專為機器學習推論而設計的新世代嵌入式MCU,能夠架構設計用於部署神經網路,以執行機器學習演算法。

TI Sitara處理器系列中的AM5729即是一例。AM5729除了具備兩個Arm Cortex-A15核心和一個Cortex-M4嵌入式核心外,還包含四個嵌入式視覺引擎(EVE),能夠支援深度學習網路以確保較高的推論性能。TI深度學習(TIDL)軟體架構和TIDL介面能夠協助開發人員在嵌入式處理器上建構、訓練和部署神經網路。

STMicroelectronics用於神經網路的工具箱包括STM32Cube.AI轉換工具,用於轉換使用各種流行架構創建且經訓練的神經網路,該工具會自動產生針對STM32 Arm Cortex-M MCU最佳化的程式庫。AI生態系統還提供了軟體功能套件,其中包含必要的低層級驅動程式和中介韌體庫,以部署經過訓練的神經網路。還有用於音訊場景分類和人員活動偵測的示例應用,可幫助用戶快速學習如何使用嵌入式AI。ST工具箱還提供專用行動App,以及SensorTile參考硬體,用於執行推論或資料收集。SensorTile是包含環境和情境架構感測器的一站式板卡,並預先整合為隨插即用模組。

Microchip可為其微處理器、FPGA和諸如SAM D21系列等32位元MCU提供機器學習支援。該公司的工具可協助開發人員使用TensorFlow、Keras和Caff以及TinyML架構(例如TensorFlow Lite)等主要的機器學習架構。當使用MPLAB系列工具搭配MCU或微處理器(MPU)時,開發人員可以利用ML Plugin外掛程式和MPLAB Data Visualizer等工具來擷取資料,以利用Microchip合作夥伴的工具訓練神經網路,包括可以自動搜尋AI模型的Cartesiam Nano Edge AI Studio,協助分析感測器資料並產生程式庫,以及具有Edge Impulse Inferencing SDK C++庫的Edge Impulse Studio,可將TensorFlow Lite用於MCU。Edge Impulse的使用者還可以使用Microchip MPLAB X IDE在所選MCU上部署專案。

Renesas嵌入式人工智慧(e-AI)平台包含多個概念,可協助在端點裝置中實現AI。Renesas RZ/A2M MPU採用動態可重配置處理器(DRP)技術,能夠結合硬體加速器性能與CPU的靈活度,以實現高速、低功耗機器視覺應用。該平台還提供了包括e-AI轉譯器等工具,可以轉換經過訓練的神經網路模型推論處理,並導入到可用於e²studio IDE C/C ++專案中的原始程式碼檔。使用TensorFlow之類的開源深度學習架構,即可訓練神經網路。

此外,創客(maker)、年輕工程師和專業人士等現在都可以使用Google AIY DIY AI套件和Google Coral本地AI平台來嘗試建構智慧裝置。AIY套件具有一個智慧相機,其中包括Raspberry Pi開發板和攝影機、一個Vision閥蓋(bonnet)、必要的電纜和按鈕,以及一個簡單硬紙板外殼,可讓使用者快速瞭解影像辨識。類似的智慧揚聲器套件可協助開發語音辨識技術。

Google Coral提供了多種硬體選擇,包括開發板、迷你開發板和USB加速器,為用戶提供將AI「嵌入」現有產品的協同處理器。該工具套件支援TensorFlow Lite,所有開發板均包含Google Edge TPU——這是與Google Cloud TPU相關的張量(tensor)處理單元,該處理單元經專門設計,佔位面積小且功耗低。

邊緣運算的未來在於嵌入式智慧

提高網路邊緣裝置的運算能力有助於確保可靠、高性能和保護隱私的物聯網應用。從網路閘道器和聚合器到IoT端點等各個位置的設備都可被視為邊緣裝置,對於AI的需求正日益增加,以滿足對性能和效率的需求,包括用於MCU部署的機器學習解決方案,如開源TinyML架構以及來自業界製造商的最佳化加速MCU架構。目前市場上可提供各種不同的工具、平台和隨插即用工具套件,有助於初學者以及經驗豐富專業人員探索各種可能的應用開發。

加入LINE@,最新消息一手掌握!

發表評論