機器學習已經成為一個重要的技術驅動力,在從汽車和工業控制到物聯網和空間系統技術,機器學習已經在多個行業中取得了成果和創新。多數機器學習專注于具有后端服務器或應用處理器中的高端、計算量大的應用程序。盡管如此,將機器學習算法部署到微控制器的需求越來越大。
基于微控制器的機器學習用例
機器學習是否能應用于微控制器,取決于具體應用。例如,如果想要將自適應 ML 算法部署到微控制器,則超出了其處理能力。但是,對于基于微控制器的系統,有幾個機器學習用例非常有趣,而且應用數量在不斷增長。
一個有趣的用例是關鍵字發現。語音正在成為一種高效的用戶接口,而微控制器可以提供實現。例如,低功耗微控制器可以運行機器學習推理來監視單個關鍵字。檢測到關鍵字后,微控制器可以喚醒一個應用處理器,該處理器可以管理其他關鍵字和主應用程序。
另一個應用是預測性維護。當在許多工業和家庭應用中使用的機器出現故障時,維修可能會非常昂貴且不方便。在許多情況下,機器不會突然壞掉。相反,根據可檢測的數據點(如振動、氣流等),性能的輕微下降表明設備可能存在問題。簡單的機器學習模型可以檢測正常行為,并在系統需要維護時提醒用戶。提前維護而非停機可以節省資金、減少麻煩。
微控制器的機器學習技術
一旦確定了機器學習用例,我們需要使用合適的工具和技術來構建它。在微控制器領域,幫助開發人員實現機器學習工作的工具正在迅速增長。
開發人員可以利用多種工具為其應用程序訓練機器學習模型。Tensorflow Lite for Microcontrollers 在微控制器和只有幾千字節內存的設備上運行機器學習模型。其基本運行庫在Arm Cortex M3上占用16 KB,并且可以運行許多基本模型。它不需要操作系統、標準 C 或 C++ 庫或動態內存分配。
根據選擇的微控制器,開發人員還有利用相應微控制器的生態系統。例如,ST的X-CUBE-AI 插件允許開發人員導入機器學習模型、對其進行分析并優化以在微控制器上運行。
邊緣構建低功耗 AI/IoT 的工具SensiML,支持數據集、模型管道版本控制和多會話數據集標注。SensiML允許幾乎沒有ML經驗的軟件開發人員訓練機器學習模型并將其部署到微控制器。生成的模型會自動轉換為代碼,直接在目標設備上執行實時推理。使智能應用運行得更快,需要更少的網絡性能,更加安全。
是否可以在微控制器端實現機器學習應用取決于最終用例。一些工具如SensiML可以支持微控制器的機器學習。將機器學習模型部署到微控制器時,可能需要在運行庫的內存占用及模型的準確性中做出權衡。
更多信息可以來這里獲取==>>電子技術應用-AET<<