為什麼MCU也需要AI?
人工智慧(AI)是電腦科學的一個分支,它企圖瞭解智慧的實質,並生產出一種新的能以人類智慧相似的方式做出反應的智慧機器,該領域的研究包括機器人、語言識別、影像識別、自然語言處理和專家系統等。人工智慧從誕生以來,理論和技術日益成熟,應用領域也不斷擴大,可以設想未來人工智慧帶來的科技產品,將會是人類智慧的“容器”。人工智慧可以對人的意識、思維的資訊過程的模擬。人工智慧不是人的智慧,但能像人那樣思考、也可能超過人的智慧。
但隨著AI從雲到邊緣的發展,使得這一觀點正在迅速改變,AI計算引擎使MCU能夠突破嵌入式應用可能的極限,嵌入式設計已經能夠提高網路攻擊的實時響應能力和裝置安全性。
支援AI的
雲端計算推動了對具有AI功能的MCU的需求;它減少了資料傳輸所需的頻寬,並節省了雲伺服器的處理能力,如下圖。
配備AI演算法的MCU正在應用包含物件識別,啟用語音服務和自然語言處理等功能的應用程式。它們還有助於提高物聯網(IoT),可穿戴裝置和醫療應用中電池供電裝置的準確性和資料隱私性。
那麼,MCU如何在邊緣和節點設計中實現AI功能?下面簡要介紹了三種基本方法,這些方法使MCU能夠在IoT網路邊緣執行AI加速。
三個MCU + AI場合
第一種方法(可能是最常見的方法)涉及各種神經網路(NN)框架(例如Caffe 2,TensorFlow Lite和Arm NN)的模型轉換,用於在MCU上部署雲訓練的模型和推理引擎。有一些軟體工具可以從雲中獲取經過預訓練的神經網路,並透過將其轉換為C程式碼來針對MCU進行最佳化。
在MCU上執行的最佳化程式碼可以在語音,視覺和異常檢測應用程式中執行AI功能。工程師可以將這些工具集下載到MCU配置中,並執行最佳化神經網路的推論。這些AI工具集還提供了基於神經網路的AI應用程式的程式碼示例。
AI執行模型轉換工具可以在低成本和低功耗MCU上執行最佳化神經網路的推論,如下圖所示。
第二種方法是繞過了對從雲借用的預訓練神經網路模型的需求,設計人員可以將AI庫整合到微控制器中,並將本地AI培訓和分析功能納入其程式碼中。
隨後開發人員可以基於從邊緣的感測器,麥克風和其他嵌入式裝置獲取的訊號來建立資料模型,並執行諸如預測性維護和模式識別之類的應用程式。
第三種方法是AI專用協處理器的可用性使MCU供應商能夠加快機器學習功能的部署。諸如Arm Cortex-M33之類的協處理器利用了諸如CMSIS-DSP之類的流行API來簡化程式碼的可移植性,從而使MCU與協處理器緊密耦合,可加快AI功能,如協處理相關和矩陣運算。
上述軟體和硬體平臺演示瞭如何透過根據嵌入式設計要求開發的推理引擎在低成本MCU中實現AI功能。這很關鍵,因為支援AI的MCU很有可能在IoT,工業,智慧建築和醫療應用中改變嵌入式裝置的設計。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69975830/viewspace-2746528/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- IT人為什麼也需要懂點FMEA?
- 為什麼需要Docker?Docker
- 為什麼AI需要大大大大大模型?AI大模型
- 醫學影像AI為什麼需要小資料學習?AI
- 為什麼數字化轉型不僅需要技術,也需要人的改變?
- 為什麼 JVM 需要 GCJVMGC
- Elasticsearch:是什麼?你為什麼需要他?Elasticsearch
- 為什麼我們需要 VuexVue
- 為什麼需要require.jsUIJS
- 為什麼需要資料治理
- 爬蟲為什麼需要HTTP?爬蟲HTTP
- 為什麼企業需要Kaizen?AI
- 為什麼Javascript需要型別?JavaScript型別
- 為什麼需要Web Service (轉)Web
- 為什麼需要依賴注入依賴注入
- 【前端筆記】Vuex 是什麼,為什麼需要前端筆記Vue
- 邊緣計算是什麼以及為什麼需要它
- 【Java面試】什麼是 ISR,為什麼需要引入 ISRJava面試
- 什麼是Web workers?為什麼我們需要他Web
- 為什麼JavaScript也將征服VR世界JavaScriptVR
- iOS應用加固為什麼也那麼重要?iOS
- 為什麼需要Deno.js? - DEVJSdev
- 為什麼需要強人工智慧人工智慧
- 為什麼單態需要同步
- 為什麼說區塊鏈也不是什麼好東西?區塊鏈
- 為什麼超級簽名也會掉?
- 為什麼零基礎也可以學
- 為什麼拙劣的軟體也會成功?
- 企業為什麼需要CRM系統
- 我們為什麼需要async/await ?AI
- 前端為什麼需要模組化開發前端
- 為什麼微服務架構需要聚合微服務架構
- 我們為什麼需要 lock 檔案
- [譯] 為什麼我們需要 Web 3.0Web
- 為什麼JavaScript需要模組化開發?JavaScript
- 為什麼需要定期更新SSL證書?
- 為什麼需要大資料安全分析?大資料
- 為什麼需要更多的程式語言