TinyML 的優點有哪些? #
舉凡能在 MCU 運作的 AI / ML 推論工作, TinyML 的優點有以下幾點 :
- 更快速的獲得推論結果,省去與雲端機房溝通的時間
- Internet通訊若以流量計費,則能節省通訊花費
- 推論工作不會受到 Internet 的狀態影響
- 資訊較少在Internet上傳遞,有助提升資料安全性
TinyML 軟體、平台有哪些? #
要實現 TinyML ,軟體是一大重點,目前已有多家業者提出 TinyML 軟體方案 :
TFLite Micro #
Google 推出的 TFLite Micro 使用C++語言撰寫 AI / ML 程式,其撰寫的程式可在 Cortex-M 系列的 MCU 上執行,TFLite Micro 也隨開發套件提供幾個範例程式:
- 辨識出話語中是否有人說 Yes 或 No
- 透過加速度感測器的搖晃數值辨識出人的手勢動作
- 辨識影像中是否有人
Edge Impulse #
不同於 TFLite Micro 需要下載安裝, Edge Impulse 平台登入後即可使用,使用者可以直接在上頭訓練、驗證模型,最後將完成的模型程式放入MCU內。Edge Impulse 具有邊緣最佳化神經(Edge Optimised Neural, EON)編譯器,使用 Edge Impulse 可以較使用 TFLite Micro 減少 25~55% 的 RAM 記憶體與 35% 的儲存空間。
另外 Edge Impulse 曾發表過技術實證專文,運用他們的數位信號處理區塊(DSP Block)來對聲音進行推論前的前置處理,可以更快完成推論、更精準推論。
OpenMV #
OpenMV 專攻視覺取向的 AI / ML 應用,像是靜態圖片、動態影像,OpenMV 有官方搭配的系統板OpenMV Cam H7,晶片核心為 Cortex-M7,需使用 MicroPython 開發,同時 OpenMV Cam H7 也支援TFLite Micro 與 Edge Impulse。
什麼推動了 TinyML 的發展? #
除了與 TinyML 相關的軟體外,推動 TinyML 也需要其他相關配套,當其餘配套也逐一到位, TinyML 才能蓬勃發展。Arduino 基金會運用本有的 Arduino Nano 33 BLE Sense board 開發板,搭配攝影機硬體與 TFLite Micro 軟體,以此構成 TinyML 套件,但有了套件卻不知如何運用? edX學習網站上有一系列由哈佛大學開設的課程可參考,除了線上課程外也有書籍介紹 TinyML ,隨著 TinyML 的發展, 也有社群團體出現,稱為tiny基金會,有了這些資源,想要學習 TinyML 已不再是一件困難的事。
》資料來源:MCU也能機器學習!TinyML新技術生態成形