人工智能(AI)是計算機科學的一個分支,它企圖了解智能的實質,并生產出一種新的能以人類智能相似的方式做出反應的智能機器,該領域的研究包括機器人、語言識別、圖像識別、自然語言處理和專家系統等。人工智能從誕生以來,理論和技術日益成熟,應用領域也不斷擴大,可以設想未來人工智能帶來的科技產品,將會是人類智慧的“容器”。人工智能可以對人的意識、思維的信息過程的模擬。人工智能不是人的智能,但能像人那樣思考、也可能超過人的智能。 但隨著AI從云到邊緣的發展,使得這一觀點正在迅速改變,AI計算引擎使MCU能夠突破嵌入式應用可能的極限,嵌入式設計已經能夠提高網絡攻擊的實時響應能力和設備安全性。 支持AI的MCU 云計算推動了對具有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,工業,智能建筑和醫療應用中改變嵌入式設備的設計。 |