機(jī)器學(xué)習(xí)和深度學(xué)習(xí)網(wǎng)絡(luò)有可能通過提供更強(qiáng)大的全新方法來分析現(xiàn)場數(shù)據(jù),從而極大地提高產(chǎn)品價(jià)值。Deep Edge AI使得算法的規(guī)模正不斷縮小,目前能夠在傳感器旁的端側(cè)進(jìn)行計(jì)算。智能設(shè)備數(shù)量指數(shù)級(jí)增長目前需要經(jīng)過優(yōu)化的處理能力,以便為許多市場(如工業(yè)4.0、消費(fèi)品、建筑管理、醫(yī)療保健和農(nóng)業(yè)等領(lǐng)域)帶來更多價(jià)值。
然而,對(duì)于AI/ML數(shù)據(jù)科學(xué)家來說,將他們的模型移植到嵌入式環(huán)境具有很大挑戰(zhàn)性,因?yàn)?a target="_blank">嵌入式系統(tǒng)在計(jì)算、內(nèi)存和功耗方面受到一定限制。微控制器可與嵌入式應(yīng)用完美匹配,因?yàn)樗鼈儗樘囟ǖ募?xì)分市場而定制,具有低功耗和開發(fā)速度快等特點(diǎn),絕對(duì)物超所值。然而,與大型應(yīng)用處理器相比,在Cortex-M上進(jìn)行開發(fā)時(shí)需要完全不同的嵌入式開發(fā)技能。
為了幫助企業(yè)在最短時(shí)間內(nèi)設(shè)計(jì)出最佳產(chǎn)品,意法半導(dǎo)體提供一個(gè)全面的AI生態(tài)系統(tǒng),其包括硬件、軟件開發(fā)工具以及STM32微控制器和微處理器上所運(yùn)行的示例代碼。這些示例可以快速衍生以實(shí)現(xiàn)新的功能,這些工具支持對(duì)優(yōu)化的機(jī)器學(xué)習(xí)模型(例如但不限于,神經(jīng)網(wǎng)絡(luò))進(jìn)行移植測試、基準(zhǔn)檢查以及迭代。
STM32Cube.AI是廣泛使用的STM32CubeMX配置與代碼生成工具,可在基于STM32 ArmCortex-M的微控制器上使用AI。
用戶將受益于STM32CubeMX特性,如面向所有STM32板的代碼生成,以及可在不同的操作系統(tǒng)(Windows、Linux或Mac OS)上兼容IAR Embedded Workbench、MDK-ARM以及STM32CubeIDE(GCC編譯器)。
它通過參數(shù)約束的動(dòng)態(tài)驗(yàn)證自動(dòng)配置外設(shè)和中間件功能模式,通過最佳參數(shù)和動(dòng)態(tài)驗(yàn)證實(shí)現(xiàn)自動(dòng)初始化,進(jìn)而自動(dòng)配置時(shí)鐘樹。
STM32Cube集成使得STM32Cube.AI用戶能夠有效地在廣泛的STM32微控制器系列產(chǎn)品之間移植模型,并且(在相似型號(hào)適用于不同產(chǎn)品的情況下)在STM32產(chǎn)品之間輕松遷移。
該插件擴(kuò)展了STM32CubeMX功能,可自動(dòng)轉(zhuǎn)化預(yù)訓(xùn)練AI模型,將生成的優(yōu)化庫集成到用戶項(xiàng)目中,而不是人工構(gòu)建代碼,并支持將深度學(xué)習(xí)解決方案嵌入到廣泛的STM32微控制器產(chǎn)品組合中,從而為每個(gè)產(chǎn)品添加新的智能化功能。
STM32Cube.AI原生支持各種深度學(xué)習(xí)框架,如Keras、TensorFlow Lite、ConvNetJs,并支持可導(dǎo)出為ONNX標(biāo)準(zhǔn)格式的所有框架,如PyTorch、MicrosoftCognitive Toolkit、MATLAB等。
此外,STM32Cube.AI支持來自廣泛ML開源庫Scikit-Learn的標(biāo)準(zhǔn)機(jī)器學(xué)習(xí)算法,如孤立森林、支持向量機(jī)(SVM)、K-Means。
在實(shí)踐中,用戶只需在STM32CubeMX中加載一個(gè)預(yù)訓(xùn)練模型,然后選擇一個(gè)AI運(yùn)行環(huán)境。STM32Cube.AI可自動(dòng)分析模型并顯示正確存儲(chǔ)和運(yùn)行模型所需的最小內(nèi)存空間。然后用戶可在兼容的STM32設(shè)備列表中選擇適合自己項(xiàng)目需求的最佳STM32微控制器。
一旦選定了合適的微控制器,可為該微控制器啟動(dòng)一個(gè)項(xiàng)目,或者直接選擇適當(dāng)?shù)?a target="_blank">MCU設(shè)置所自動(dòng)配置的開發(fā)板。可以選擇一個(gè)或多個(gè)AI/ML模型,并通過能夠評(píng)估總體模型復(fù)雜度以及RAM和閃存占用空間的工具進(jìn)行分析。還能以圖形方式將模型可視化,并顯示每一層以查看模型的復(fù)雜性究竟位于何處。Keras和TensorFlow Lite神經(jīng)網(wǎng)絡(luò)支持8位量化模型。還可以使用自定義層擴(kuò)展該工具,以添加包含用戶定義層的模型并對(duì)其進(jìn)行基準(zhǔn)測試。
STM32Cube.AI有助于模型優(yōu)化,所以更大的網(wǎng)絡(luò)也能移植到微控制器上。圖形用戶界面提供生成的代碼中所用緩沖區(qū)的全面視圖,并包含幾個(gè)優(yōu)化選項(xiàng)(例如輸入/輸出緩沖區(qū)和激活緩沖區(qū)之間的存儲(chǔ)器重疊),以便將實(shí)現(xiàn)模型所需的內(nèi)存空間降至最低。
STM32Cube.AI支持使用外部存儲(chǔ)器,并允許在不同的存儲(chǔ)區(qū)之間輕松分配權(quán)重。一旦模型存儲(chǔ)在多個(gè)陣列中,(例如)可以將模型權(quán)重的一部分映射到內(nèi)部,將其它部分映射到外部Flash存儲(chǔ)器中,將激活緩沖區(qū)映射到外部RAM中。
該工具旨在加快開發(fā)速度,并使開發(fā)人員能夠在桌面驗(yàn)證自己的模型以進(jìn)行快速基準(zhǔn)測試,以及在設(shè)備上驗(yàn)證自己的模型以測量最終模型性能(包括量化的影響)。在驗(yàn)證過程的最后,一個(gè)對(duì)照表總結(jié)了原始模型與STM32模型的精度和誤差,并可選擇性提供每層的復(fù)雜性報(bào)告和執(zhí)行期間測得的推理時(shí)間。
神經(jīng)網(wǎng)絡(luò)編譯器提供的優(yōu)化代碼提高了效率并減少了內(nèi)存占用。各層和內(nèi)核被設(shè)計(jì)為在STM32上運(yùn)行并利用可用的設(shè)備特性。選定所有設(shè)置后,STM32Cube.AI會(huì)生成一個(gè)應(yīng)用模板,可以直接與您首選IDE中的應(yīng)用特定代碼進(jìn)行集成。然后可以使用所有STM32開發(fā)工具(如STM32CubeMX、STM32CubeMonitor、STM32CubeMonPower、STM32CubeMonRF、STM32CubeMonUCPD)和諸多合作伙伴工具設(shè)計(jì)采用人工智能算法的最終應(yīng)用。
對(duì)于希望擁有一個(gè)跨多個(gè)項(xiàng)目的通用框架的開發(fā)人員,STM32Cube.AI還支持TensorFlow Lite運(yùn)行環(huán)境。可以從用戶界面中選擇它作為STM32Cube.AI運(yùn)行環(huán)境的替代方案,即使它可能會(huì)降低性能,因?yàn)檫\(yùn)行環(huán)境沒有針對(duì)STM32進(jìn)行完全優(yōu)化。
由意法半導(dǎo)體對(duì)STM32Cube.AI提供維護(hù),可以確保高質(zhì)量開發(fā)所需的長期支持和可靠性。每次推出新的主要版本時(shí),都會(huì)有針對(duì)性地定期更新,確保兼容最新AI框架。
該工具既能作為圖形用戶界面,也可以作為命令行,所以能夠輕松集成到DevOps流程中,以確保AI開發(fā)的所有領(lǐng)域定期得到驗(yàn)證。甚至可以構(gòu)建一個(gè)帶有部署后檢查功能的AutoML流,利用分析和驗(yàn)證功能識(shí)別與用例的目標(biāo)存儲(chǔ)空間、推理時(shí)間和精度約束相匹配的合適模型。
模型還可以在現(xiàn)場持續(xù)更新,因?yàn)閹炜梢圆渴馂榭芍囟ㄎ坏哪P汀R虼藷o需執(zhí)行完整的固件升級(jí)即可輕松更新模型拓?fù)浜蜋?quán)重。簡化了產(chǎn)品更新,并通過無線模型更新(或局部FOTA)確保Deep Edge AI與現(xiàn)場觀察到的任何變更保持一致,或只是通過模型/軟件更新升級(jí)新功能。
最后,STM32Cube.AI只是意法半導(dǎo)體所提供的更廣泛生態(tài)系統(tǒng)的一部分,使得STM32用戶可以在STM32上使用AI功能。 更多細(xì)節(jié)將在后續(xù)文章中予以介紹。
責(zé)任編輯:haq
-
AI
+關(guān)注
關(guān)注
88文章
35085瀏覽量
279428 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8501瀏覽量
134570 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5561瀏覽量
122782
原文標(biāo)題:AI技術(shù)專題之四 | AI在Deep Edge領(lǐng)域中的應(yīng)用
文章出處:【微信號(hào):STM32_STM8_MCU,微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評(píng)論請先 登錄
2.0.0版本的ST Edge AI Core在linux平臺(tái)上可以把量化后的onnx模型轉(zhuǎn)換為.nb,但是運(yùn)行報(bào)錯(cuò),缺少文件,為什么?
面向AI與機(jī)器學(xué)習(xí)應(yīng)用的開發(fā)平臺(tái) AMD/Xilinx Versal? AI Edge VEK280

一文讀懂,可重構(gòu)芯片為何是AI的完美搭檔

DeepSeek推動(dòng)AI算力需求:800G光模塊的關(guān)鍵作用
ST EDGE AI云服務(wù)最后一步無法下載工程是怎么回事?
AI算法托管平臺(tái)是什么
FPGA+AI王炸組合如何重塑未來世界:看看DeepSeek東方神秘力量如何預(yù)測......
當(dāng)我問DeepSeek AI爆發(fā)時(shí)代的FPGA是否重要?答案是......
AI賦能邊緣網(wǎng)關(guān):開啟智能時(shí)代的新藍(lán)海
貿(mào)澤開售適用于AI和機(jī)器學(xué)習(xí)應(yīng)用的 AMD Versal AI Edge VEK280評(píng)估套件
Google AI Edge Torch的特性詳解

AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新》第4章-AI與生命科學(xué)讀后感
使用TI Edge AI Studio和AM62A進(jìn)行基于視覺AI的缺陷檢測

評(píng)論