iT邦幫忙

2021 iThome 鐵人賽

DAY 18
1
Arm Platforms

爭什麼,把AI和MCU摻在一起做tinyML就對了!系列 第 18

[Day 18] 今晚我想來點tinyML加Arm不加香菜

今天(2021/10/3)是星期日,本來想接著寫Edge Impulse雲端一站式tinyML開發平台的使用,碰巧最近剛好由Edge Impulse主辦了一場名為「Imagine 2021」的線上研討會,一連三天(2021/9/29-2021/10/1),邀請了各大廠商來分享關於tinyML最新的技術、應用及趨勢,其中也包括台灣研華科技(Advantech)和奇景光電(Himax),因此藉這機會和大家分享一下。此次三天的所有演講都有釋出到Youtube,有興趣的朋友可以花點時間挑自己想看的主題充電一下。

接下來就幫大家重要摘要一下此次由Arm機器學習群產品行銷副總Steve Roddy所分享的主題「The Future of Endpoint AI」(0:52:00處開始)。更完整的內容請自行參閱影片。以下說明有帶小括號()部份為個人補充說明,不一定和原演講內容相同。
註:以下內容僅供學習使用,並非直接翻譯,相關影片及簡報內容之版權皆為各公司所有,請勿移作他用。


(影片來源:Youtube, Edge Impulse, Imagine 2021: Innovation Keynotes)

Arm是一家矽智財(IP)提供公司,基於Arm IP出貨的晶片,在2020年就有超過237億顆(註:據報導2020年第四季Cortex-M系列MCU出貨量就有超過44億顆)。深度學習(或說人工智慧)自2012年AlexNet贏得ImageNet大賽後,從此展開人工智慧的新時代,開始有大量的模型(算法)、硬體設備(算力)被實現。機器學習/人工智慧已是主流技術,並已普遍佈署在雲端和邊緣裝置,包括馬達振動、物件偵測(含影像分類)、語音助理及人臉偵測/解鎖等應用。

那為什麼某些應用會從雲端轉移到邊緣呢?其中包含下列項目。

  • 頻寬(低頻寬可節省網路傳輸費用及時間)
  • 耗能(只考慮推理,可使用低功耗MCU)
  • 價格(雲端要通訊、儲存及計算費用,而邊緣建置完成後除電費幾乎不用額外費用)
  • 延遲(在本地端就完成計算,不需等待網路傳輸時間)
  • 可靠度(靠近資料產生地點可減少因傳輸造成的錯誤)
  • 安全性(含資料隱私性,只需交換結果,不需透露原始資料)

機器學習/人工智慧相關行業成長頗快,但部份仍處於早期階段,尚待發展改善。其主要包括下列三大部份。

  • 基礎建設:如無線(含長短距離)通訊基地台、數據流量優化及邊緣智能。
  • 消費性電子:如物體檢測(含影像分類)、拍照美顏、文本預測、超分辨率、語音辨識及人臉解鎖(含性別、年齡、表情等)
  • 感測元件:如光達/雷達改善、聲音(語音命令)感測、振動檢測及感測器融合(多種感測器混用)。

由於不同應用所需算力不同,所以用更貼身的硬體來佈署機器學習是關鍵性作法。而這樣使用多種處理器組合的方式可更彈性應用及解決平行(或分散)運算問題,更可節省功耗。以下簡列幾個組合。

  • 終端裝置(算力極小,只需簡單CPU或加上小型NPU即可)
  • 行動裝置(算力中等,多核CPU,大核加小核,GPU,可加上小型NPU)
  • 智能居家(算力依不需情境彈性高,可搭配多個小型多核CPU+GPU+NPU)
  • 雲端伺服(算力極高,主要用於模型訓練及大量推論,須結合多個大小核多核CPU, GPU, NPU, xPU)
  • 自駕汽車(算力頗高,為因應各種平行處理問題,須有多個高效能處理器分工,結合多核大小核CPU, xPU, NPU, GPU)
    註:CPU中央處理器(包含單晶片的微處理器MCU),GPU(通用繪圖晶片,可作為大量矩陣計算用),NPU(神經網路加速運器,泛用型AI晶片),xPU為Arm一種基於xDSA超架構的開放式智能數據融合處理器。

未來物聯網在終端上需具有極低功耗(< 1mW)運行機器學習的能力,靠電池就能運作一段時間,主要應用會在幾個領域。

  • 無人機
  • 單板微電腦
  • 智慧音箱

為了讓人工智慧表現更好,深度學習神經網路有下列幾個趨勢。

  • 更大(更深、更廣)的模型以提高推論精準度
  • 靜態記憶體的使用量提高(儲存模型參數用)
  • 動態記憶體的使用量提高(運行時變數使用)
  • 運算量及推論增加(模型複雜度變高)
  • 新的模型架構推出(依不同需求及性能產生)

但這樣的趨勢對於佈署在低功耗、低成本、低資源(程式碼及記憶體儲存空間)、低算力的終端設備是很有挑戰性的。Arm先前已有推出Cortex-M55(MCU) + Ethos U55(NPU)的組合IP,最近已有廠商將其實體化,即將上市。這樣的組合可解決前述問題,提供更容易整合及開發邊緣智能設備,同時具有更快響應、更小體積及更高精度的運行能力。初步測試若以Cortex-M7為基準(1x),則在推理速度上M55可提高到6倍,而M55+U55則可到50倍。就能耗表現M55也較M7高7倍,而M55+U55更可高達25到75倍。

端到端閉迴路的開發環境將會是擴展機器學習的關鍵,其步驟如下。

  • 選擇(模型選用)
  • 訓練(模型訓練)
  • 整合(參數調整)
  • 佈署(上線測試)
  • 連接(實機操練)
  • 監控(回報表現)
  • 更新(表現不佳時重新回到訓練階段)

Arm除了積極提供各項開發環境外,更建立及加入許多開放式標準,減少開發者的麻煩。

  • 系統和軟體標準:如AMBA, Arm System Ready, CoreSight, Arm GIC, Arm SMMU, ASTC, AFBC等。
  • 安全的互操作軟體:如Arm PSA。(可使用於非Arm產品)
  • 人工智慧性能基準測試:如AIIA, ML COmmons(ML Perf), EEMBC及其它。
  • 新的開放標準:如Tensor Operator Set Architecture(TOSA)等。

Arm在軟體開發工具和機器學習亦有不錯的整合,開發者利用軟體開發套件(如Arm NN SDK, CMSIS-NN, Compute Library等)就能輕易的跨越自家硬體(CPU, GPU, NPU, xPU)。另外可支援標準開發框架(如TensorFlow Lite, TFLite Microcontroller, PyTorch, ONNX等),快速無縫整合開發者經驗。同時也提供或支援開放式模型優化工具,處理節點剪枝、權重聚類、數值量化及其它常用工具(如TensorFlow Model Optimization Toolkit(TF MOT),ARM Dev. Studio, Arm Keil MDK等)。

當然最後不免讓大家了解Arm的合作伙伴遍佈全世界,同時提供了許多免費開發資源、交流方式及完整生態系,相信未來在終端設備實現機器學習(智能化)是不可必免的趨勢。

ps. 以上僅個人一點小小整理及心得分享,並非原文直接翻譯,如有不同看法還請多多包涵。明天我們就接著講Edge Impulse雲端一站式tinyML開發平台帶給我們的驚喜。

參考連結

Edge Impulse - Imagine 2021 官方主網站
Edge Impulse - Imagine 2021 Youtube影片清單


上一篇
[Day 17] TFLM + BLE Sense + MP34DT05 就成了迷你智慧音箱(下)
下一篇
[Day 19] tinyML開發好幫手─雲端一站式平台Edge Impulse簡介
系列文
爭什麼,把AI和MCU摻在一起做tinyML就對了!31

尚未有邦友留言

立即登入留言