邊緣AI未必越大越好
為平衡性能、功耗和成本而選擇適當的硬件,可以使機器學習能夠在資源受限的平臺上運行。
本文引用地址:http://www.104case.com/article/202411/464304.htm核心要點
通過適配合適的硬件、集成開發環境(IDEs)、開發工具和套件、框架、數據集及開源模型,工程師可以更輕松地開發出支持機器學習(ML)和人工智能(AI)的邊緣處理產品。
邊緣上的機器學習
機器學習和人工智能(AI)起初主要依賴于高性能計算平臺,近年則逐步轉向云端處理。然而,如今越來越多的應用將計算部署在靠近數據源的位置進行。這種適合物聯網(IoT)設備的邊緣處理方式無需將大量數據傳輸到云端,從而減少了延遲并提升了安全性。
邊緣處理中的ML/AI可使物聯網設備在源頭就進行推理。這意味著設備可以從經驗中學習并改善其行為,例如通過算法分析數據以發現模式并做出決策。目前常用的機器學習方法包括監督學習、無監督學習和強化學習。
監督學習:機器使用標記數據進行訓練。例如,智能監控攝像頭可以使用帶有行走、跑步等動作的照片和視頻進行訓練。
無監督學習:利用無標記數據(如K均值聚類、主成分分析)來識別模式,適用于異常檢測。
強化學習:通過“試錯”過程進行學習,通過獎勵或懲罰反饋來調整算法。
嵌入式系統與機器學習
ML/AI起初需要大量計算資源,如今則可以在嵌入式系統(如物聯網設備)中實現。圖像檢測和分類可以在FPGA或微處理器單元(MPU)上實現,而簡單的應用,如振動監測,則可以在8位微控制器(MCU)上完成。
如今,嵌入式系統工程師可以利用硬件、軟件和工具,快速設計ML/AI產品。例如,Microchip的MPLAB X IDE集成了ML模型開發插件,使得模型可直接部署到目標硬件。自動機器學習(AutoML)則可自動化模型開發和訓練中的許多繁瑣任務。
小尺寸設計的機器學習
小型機器學習(tinyML)允許在資源受限的微控制器上運行模型。這類MCU通常在1至400 MHz頻率下運行,配備2至512 kB的RAM,功耗僅為150 μW到23.5 mW,非常適合電池供電或能量采集的應用。
實現tinyML的關鍵
數據捕獲和準備在tinyML中至關重要,需要優化數據集以避免數據過多導致內存不足,同時保持足夠的數據量以確保預測的準確性。模型壓縮技術(如“權重剪枝”和量化)可減少模型體積,從而更有效地在MCU上運行。
這些技術為開發ML/AI邊緣產品提供了極大便利。盡管如此,切勿過度設計,否則會導致功耗和成本的上升。
評論