STM32Cube.AI是業界最先進的工具包,能夠與流行的深度學習庫互操作,以轉換任何用于 STM32 微控制器的人工神經網絡( MCU)運行優化推理。該軟件套件包括 X-Cube 擴展軟件X-CUBE-AI 、為我們的SensorTile 開發套件 (STEVAL-STLKT01V1)提供應用示例的功能包FP-AI-SENSING1,以及對我們的ST BLE 傳感器的更新為功能包的演示提供 GUI 和控件的 iOS 和 Android 應用程序。僅發布這些解決方案已經是一個開創性的公告,因為目前沒有任何工具可以與此功能集相媲美。然而,STM32Cube.AI 不僅僅是一個簡單的工具包,而是反映了我們希望通過將神經網絡帶給所有 STM32 開發人員來改變物聯網格局的愿望。
傾向于專門研究使用我們 STM32 MCU 的嵌入式系統類型的人可能不熟悉神經網絡的最新進展。同樣,使用幾乎無限的云資源進行機器學習的數據科學家可能對嵌入式平臺的內存和計算限制不熟悉。因此,STM32Cube.AI 通過揭開人工智能和嵌入式系統的神秘面紗彌合了差距。我們展示了專家和工具隨時可用,并且很容易利用邊緣計算的日益普及在我們的平臺上運行推理。換句話說,STM32Cube.AI 證明了嵌入式系統上的神經網絡已經存在。
STM32Cube.AI 將數據科學帶給嵌入式系統專家
STM32Cube.AI 套件的基礎部分是 X-CUBE-AI,它用作 STM32CubeMX 代碼生成器的擴展包。不熟悉我們生態系統的人會喜歡我們的分步指南,該指南解釋了如何使用它來配置微控制器的引腳和時鐘樹等,并生成將啟動他們的應用程序的頭文件。X-CUBE-AI顯著擴展了 STM32CubeMX 的功能集,使其能夠導入由當今一些最流行的庫(例如 Keras、TensorFlow、Caffe、Lasagne 或 ConvnetJS)訓練的人工神經網絡。通過 X-CUBE-AI,STM32CubeMX 將在 STM32 MCU 上映射神經網絡并優化生成的庫例如,折疊它的一些層并減少它的內存占用。然后代碼生成器將生成一個開發人員可以在應用程序中使用的庫。
如果專業人士甚至愛好者想要快速開始試驗我們的 STM32Cube.AI 計劃,他們可以使用功能包 FP-AI-SENSING1,其中包括兩個充分利用我們的 SensorTile 開發套件的應用示例。其中之一使用車載麥克風捕獲音頻、預處理信號,然后使用推理來確定聲音是來自室內、室外還是來自車輛內部。
類似地,另一個示例程序跟蹤運動以確定用戶是靜止的、步行的、跑步的、騎自行車的還是開車的。我們已經編譯了二進制文件,因此用戶只需將文件拖放到他們的系統上即可開始使用這些應用程序以加載演示。我們還提供硬件抽象層、驅動程序和源代碼等,因此開發人員可以從我們的實現中學習并開始編寫他們的測試軟件。
區分神經網絡和決策樹
X-CUBE-AI 和 FP-AI-SENSING1 都可以提供神經網絡,這要歸功于對物聯網平臺上深度學習系統實施的多年研究。然而,今天的公告具有高度的象征意義,因為 STM32Cube.AI 將所有這些論文和發現結合在一個解決方案中,通過允許將大量拓撲轉換到我們的平臺上以用于許多不同的應用,擴大了以前可能的范圍。
雖然新工具實現了人工神經網絡,但我們想要區分這樣一個事實,即我們還通過使用決策樹為資源稀缺的運動傳感器帶來機器學習能力。從最廣泛的意義上說,機器學習使用數學模型來處理數據并估計最佳結果或決策。決策樹是機器學習中的分類器模型,它反復將特征空間解析為一系列路徑(分支)并貫穿它們,直到系統到達一個端點(葉子),它代表一個類或決策。2019 年,我們的慣性傳感器 LSM6DSOX 將使用決策樹來提供機器學習功能因為這是提供新的低功耗特性的好方法,無需微控制器的幫助即可處理來自一個或兩個傳感元件的數據。
與決策樹相反,神經網絡不是使用 if-then-else 語句解析特征空間的算法,而是連接單元(神經元)的框架,這些單元(神經元)在系統通過示例學習時獲得不同的權重。然后應用程序可以使用生成的模型來推斷和估計最合適的響應。神經網絡中的決策過程并不那么明顯,在某些用例中,它可能需要比決策樹更多的資源,但它可以處理更大的數據流,以便在更廣泛的領域提供更準確的結果應用程序。
STM32Cube.AI 為數據科學家帶來嵌入式系統
依賴于神經網絡的應用程序的性能和準確性來自對必須收集的數據類型和質量的正確分析,并與適當網絡拓撲的選擇緊密結合。當我們談論深度嵌入式解決方案時,情況更是如此。因此,我們確保我們的合作伙伴計劃將包括能夠在此過程中提供必要專業知識來指導我們的客戶的公司。
我們計劃的一些成員掌握了特定的研究領域,例如Lenord+Bauer專注于運動傳感器,并展示了我們的平臺和人工智能如何導致火車軌道的預測性維護。其他公司,如SIANA Systems,為醫療、工業、家庭自動化和可穿戴應用提供更豐富的經驗。無論如何,這些合作伙伴將使 STM32 開發人員能夠擺脫我們應用示例的限制,并將神經網絡模型訓練到與新商業產品兼容的水平。
STM32Cube.AI 為拓撲專家帶來嵌入式系統
我們的合作伙伴還將協助公司選擇正確的拓撲結構。拓撲是網絡神經元之間互連的表示,它顯示了它們如何與輸入交互、相互影響以及獲得一個或多個輸出。最簡單的拓撲(多層感知器)添加多個輸入并提供具有全方位連接的輸出,而當今更常見的拓撲(例如卷積神經網絡)使用一系列輸入互連到一組異構過濾提供越來越可能的輸出的神經元。今天,數據科學家繼續改進和優化這些拓撲,但基本原理保持不變。
例如,音頻應用程序傳統上使用門控循環單元 (GRU),它依賴于具有能夠回憶先前信息的記憶的神經元。然而,今天,專家們傾向于更喜歡長期/短期記憶拓撲 (LSTM),這種拓撲在利用長期時間信息方面更強大,但代價是更多的內存和計算。
STM32Cube.AI:2019 年會發生什么?
STM32Cube.AI 工具箱的美妙之處在于它使開發人員能夠立即開始使用神經網絡,即使他們不是數據挖掘和拓撲方面的專家。此外,這些解決方案幫助他們提高生產力,因為他們不再需要編寫耗時的庫,因為 STM32CubeMX 只是生成它們。事實上,Function Pack 使用應用示例幫助工程師和愛好者在幾分鐘內試驗我們的解決方案,我們將在 2019 年第一季度將這些應用示例提供給更多客戶,因為我們帶來了 FP-AI 的演示-SENSING1 到B-L475E-IOT01A 發現物聯網節點。因此,我們的計劃將繼續接收更新,以使其更易于使用并可供更多開發人員使用。
我們還將確保 STM32CubeMX 可以在更多 MCU 上轉換預訓練的人工神經網絡。代碼生成器包括一個選擇工具,可以分析網絡的復雜性,以推薦具有適當計算吞吐量和內存量的 STM32。今天,X-CUBE-AI 只能將網絡轉換為具有浮點單元的微控制器,這意味著它需要一個至少具有 Cortex M4 的模型。然而,我們正在努力更新我們的工具以支持定點實現,這最終將把神經網絡帶入甚至更低功耗的系統或加速我們更強大的微控制器的推理。同樣,我們將逐步添加對其他 AI 框架的支持,使 STM32Cube.AI 工具包更加全面。
審核編輯:郭婷
-
微控制器
+關注
關注
48文章
7646瀏覽量
152075 -
mcu
+關注
關注
146文章
17316瀏覽量
352584 -
神經網絡
+關注
關注
42文章
4779瀏覽量
101155
發布評論請先 登錄
相關推薦
評論