tinyML 在邊緣端的三個用途

機器學習 (ML) 已經廣泛運用在眾多雲端領域,也逐漸往採用更強大處理器且運行 Linux 系統的邊緣端邁進。在這些系統上運行傳統 ML 時會遭遇的問題在於,功率設定太大,以致於無法「斷線」,因此無法以電池供電的邊緣裝置型態執行工作。在邊緣端運用 ML 的趨勢與未來就是採用 tinyML。TinyML 的目標是將 ML 演算法引進到資源受限的裝置中,例如 Arm Cortex-M 處理器架構的微控制器。

本篇部落格文章將探討,在邊緣端的微控制器架構裝置上運用 tinyML 的最常見使用案例。

使用案例 1:關鍵字檢測

tinyML 越來越受歡迎的第一個用途就是關鍵字檢測。關鍵字檢測是指裝置辨識關鍵字的能力,例如「Hey Siri」、「Alexa」、「Hello」等。關鍵字檢測可在邊緣裝置上發揮眾多用途。例如,有人可能想要使用低功耗處理器來監聽關鍵字,以便喚醒更強大的處理器。另一個使用案例可能是控制嵌入式系統或機器人。我曾見過的例子是,使用微控制器來解碼「前進」、「後退」、「停止」、「向右」和「向左」等關鍵字,以便控制機器人的移動。

要使用 tinyML 進行關鍵字檢測,通常會透過麥克風來擷取輸入語音訊號。語音訊號會隨時間記錄成電壓,然後使用數位訊號處理功能轉換成頻譜圖。頻譜圖是一串時間序列,會依據輸入訊號的頻率進行繪製。頻譜圖可以輸入到神經網路 (NN) 中,以訓練 tinyML 演算法,即可辨識特定字詞。此過程如圖 1 所示。

圖 1:輸入語音訊號會進行數位處理,以產生頻譜圖,就可用來訓練 NN 偵測關鍵字。(圖片來源:Arm)

典型的實作情況會將固定間隔的語音片段輸入到 NN 中。接著神經網路就會評估這段語音中說出任一相關關鍵字的概率。例如,如果有人說「是」,NN 可能會回報有 91% 的確信度是說「是」,有 2% 的機率是說「否」,1% 的機率是說「開」。

使用語音來控制機器的能力,是許多裝置製造商正在仔細審查的使用案例,並希望在未來幾年內增強其裝置的這個能力。

使用案例 2:影像辨識

tinyML 逐漸跨足的第二個使用案例是影像辨識。可以執行影像辨識的邊緣裝置有不少應用案例。有個使用案例您可能已經相當熟悉,就是門口偵測是否有人、包裹或空無一物。當然,還有其他許多應用,包括監控舊式類比儀錶、偵測草坪健康情況,甚至鳥類計數。

影像辨識看起來是個不易入門的複雜領域。但是,有幾個低成本平台可以幫助開發人員入門和運作。我個人最喜歡,也可迅速完成任務的平台之一就是 OpenMV。

OpenMV 屬於開放式機械視覺平台,其中含有一個整合式開發環境 (IDE)、Python 編寫的函式庫框架,以及一個 Seeed Technology相機模組,可幫助開發人員打造其機械視覺應用 (圖 2)。

圖 2:OpenMV 的相機模組可用於影像辨識,並可透過 Python 利用簡易型 IDE 完成開發。(圖片來源:Beningo Embedded Group)

此相機模組採用 STMicroelectronicsSTM32H7 Cortex-M7 處理器架構。硬體可透過板載的擴充排針座進行擴充。可透過電池供電,甚至可以更換相機模組。這裡有個您可能會感興趣的入門範例,就是使用 CIFAR-10 資料集搭配 Arm CMSIS-NN 函式庫進行影像辨識。此可在 YouTube 上找到:https://www.youtube.com/watch?v=PdWi_fvY9Og

使用案例 3:預測性維護

我們要探討最後一個 tinyML 使用案例就是預測性維護。預測性維護可使用統計分析和 ML 等工具,根據以下條件預測設備狀態:

  • 異常偵測
  • 分類演算法
  • 預測模型

舉例而言,工廠可能有一系列用於產品生產的馬達、風扇和機器人設備。有家公司想要將停機時間縮到最短,以便達到最大產能。如果設備具有可以利用 ML 和上述其他技術解譯的感測器,就可以偵測到設備何時即將故障。此類配置可能看起來像圖 3 這樣。

圖 3:tinyML 的第三個常見使用案例是用於預測性維護的智慧感測器。(圖片來源:STMicroelectronics)

將智慧感測器連接到運用 tinyML 的低功耗微控制器,就可打造多種實用的應用。例如,可以監測 HVAC 單元、檢查空氣過濾器,還可偵測不規則的馬達振動等等。預防性維護可以更有規劃,以便公司避開昂貴的因應措施,確保達到進一步最佳化的維護排程。

結論

TinyML 在邊緣端有很多潛在的應用和用途。我們已經探索目前常見的使用案例,但未來的可能性是無限的。TinyML 可用於手勢偵測、指引和控制等更多用途。邊緣裝置開始運用 tinyML 的功能後,真正的問題就會變成:在邊緣端使用 tinyML 做什麼?

關於作者

Image of Jacob Beningo

Jacob Beningo 是嵌入式軟體顧問,目前與超過十幾個國家的客戶合作,透過產品品質、成本和上市時間的改善,促成業務的大幅轉型。他曾在嵌入式軟體開發技術上發表超過兩百篇文章,是深思熟慮的講師和技術培訓師,共擁有三個學位,包括密西根大學的工程碩士學位。歡迎透過以下方法洽詢,電郵:[email protected]、網站:www.beningo.com,亦可登記取得他發行的Embedded Bytes 每月電子報

More posts by Jacob Beningo
 TechForum

Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.

Visit TechForum