如果在沒有嵌入式處理器供應(yīng)商提供的合適工具和軟件的支持下,既想設(shè)計高能效的邊緣人工智能 (AI) 系統(tǒng),同時又要加快產(chǎn)品上市時間,這項工作難免會冗長乏味。面臨的一系列挑戰(zhàn)包括選擇恰當(dāng)?shù)?a target="_blank">深度學(xué)習(xí)模型、針對性能和精度目標(biāo)對模型進(jìn)行訓(xùn)練和優(yōu)化,以及學(xué)習(xí)使用在嵌入式邊緣處理器上部署模型的專用工具。
從模型選擇到在處理器上部署,TI 可免費提供相關(guān)工具、軟件和服務(wù),為您深度神經(jīng)網(wǎng)絡(luò) (DNN) 開發(fā)工作流程的每一步保駕護(hù)航。下面讓我們來了解如何不借助手動工具或手動編程來選擇模型、隨時隨地訓(xùn)練模型并將其無縫部署到 TI 處理器上,從而實現(xiàn)硬件加速推理。
圖 1:邊緣 AI 應(yīng)用的開發(fā)流程
第一步:選擇模型
邊緣 AI 系統(tǒng)開發(fā)的首要任務(wù)是選擇合適的 DNN 模型,同時要兼顧系統(tǒng)的性能、精度和功耗目標(biāo)。GitHub 上的TI 邊緣 AI Model Zoo等工具可助您加速此流程。
Model Zoo 廣泛匯集了 TensorFlow、PyTorch 和 MXNet 框架中常用的開源深度學(xué)習(xí)模型。這些模型在公共數(shù)據(jù)集上經(jīng)過預(yù)訓(xùn)練和優(yōu)化,可以在 TI 適用于邊緣 AI 的處理器上高效運行。TI 會定期使用開源社區(qū)中的新模型以及 TI 設(shè)計的模型對 Model Zoo 進(jìn)行更新,為您提供性能和精度經(jīng)過優(yōu)化的廣泛模型選擇。
Model Zoo 囊括數(shù)百個模型,TI 模型選擇工具(如圖 2 所示)可以幫助您在不編寫任何代碼的情況下,通過查看和比較性能統(tǒng)計數(shù)據(jù)(如推理吞吐量、延遲、精度和雙倍數(shù)據(jù)速率帶寬),快速比較和找到適合您 AI 任務(wù)的模型。
圖 2:TI 模型選擇工具
第二步:訓(xùn)練和優(yōu)化模型
選擇模型后,下一步是在 TI 處理器上對其進(jìn)行訓(xùn)練或優(yōu)化,以獲得出色的性能和精度。憑借我們的軟件架構(gòu)和開發(fā)環(huán)境,您可隨時隨地訓(xùn)練模型。
從 TI Model Zoo 中選擇模型時,借助訓(xùn)練腳本可讓您在自定義數(shù)據(jù)集上為特定任務(wù)快速傳輸和訓(xùn)練模型,而無需花費較長時間從頭開始訓(xùn)練或使用手動工具。訓(xùn)練腳本、框架擴(kuò)展和量化感知培訓(xùn)工具可幫助您優(yōu)化自己的 DNN 模型。
第三步:評估模型性能
在開發(fā)邊緣 AI 應(yīng)用之前,需要在實際硬件上評估模型性能。
TI 提供靈活的軟件架構(gòu)和開發(fā)環(huán)境,您可以在 TensorFlow Lite、ONNX RunTime 或 TVM 和支持 Neo AI DLR 的 SageMaker Neo 運行環(huán)境引擎三者中選擇習(xí)慣的業(yè)界標(biāo)準(zhǔn) Python 或 C++ 應(yīng)用編程接口 (API),只需編寫幾行代碼,即可隨時隨地訓(xùn)練自己的模型,并將模型編譯和部署到 TI 硬件上。在這些業(yè)界通用運行環(huán)境引擎的后端,我們的TI 深度學(xué)習(xí) (TIDL) 模型編譯和運行環(huán)境工具可讓您針對 TI 的硬件編譯模型,將編譯后的圖或子圖部署到深度學(xué)習(xí)硬件加速器上,并在無需任何手動工具的情況下實現(xiàn)卓越的處理器推理性能。
在編譯步驟中,訓(xùn)練后量化工具可以自動將浮點模型轉(zhuǎn)換為定點模型。該工具可通過配置文件實現(xiàn)層級混合精度量化(8 位和 16 位),從而能夠足夠靈活地調(diào)整模型編譯,以獲得出色的性能和精度。
不同常用模型的運算方式各不相同。同樣位于 GitHub 上的 TI 邊緣 AI 基準(zhǔn)工具可幫助您為 TI Model Zoo 中的模型無縫匹配 DNN 模型功能,并作為自定義模型的參考。
評估 TI 處理器模型性能的方式有兩種:TDA4VM 入門套件評估模塊 (EVM) 或 TI Edge AI Cloud,后者是一項免費在線服務(wù),可支持遠(yuǎn)程訪問 TDA4VM EVM,以評估深度學(xué)習(xí)推理性能。借助針對不同任務(wù)和運行時引擎組合的數(shù)個示例腳本,五分鐘之內(nèi)便可在 TI 硬件上編程、部署和運行加速推理,同時收集基準(zhǔn)測試數(shù)據(jù)。
第四步:部署邊緣 AI 應(yīng)用程序
您可以使用開源 Linux 和業(yè)界通用的 API 來將模型部署到 TI 硬件上。然而,將深度學(xué)習(xí)模型部署到硬件加速器上只是難題的冰山一角。
為幫助您快速構(gòu)建高效的邊緣 AI 應(yīng)用,TI 采用了 GStreamer 框架。借助在主機(jī) Arm 內(nèi)核上運行的 GStreamer 插件,您可以自動將計算密集型任務(wù)的端到端信號鏈加速部署到硬件加速器和數(shù)字信號處理內(nèi)核上。
圖 3 展示了適用于邊緣 AI 的 Linux Processor SDK 的軟件棧和組件。
圖 3:適用于邊緣 AI 的 Linux Processor SDK 組件
結(jié)語
如果您對本文中提及的工具感到陌生或有所擔(dān)憂,請放寬心,因為即使您想要開發(fā)和部署 AI 模型或構(gòu)建 AI 應(yīng)用,也不必成為 AI 專家。TI Edge AI Academy 能夠幫助您在自學(xué)、課堂環(huán)境中通過測驗學(xué)習(xí) AI 基礎(chǔ)知識,并深入了解 AI 系統(tǒng)和軟件編程。實驗室提供了構(gòu)建“Hello World” AI 應(yīng)用的分步代碼,而帶有攝像頭捕獲和顯示功能的端到端高級應(yīng)用使您能夠按照自己的節(jié)奏順利開發(fā) AI 應(yīng)用。
原文標(biāo)題:技術(shù)干貨|嵌入式邊緣 AI 應(yīng)用開發(fā)簡化指南
文章出處:【微信公眾號:德州儀器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅
-
處理器
+關(guān)注
關(guān)注
68文章
19286瀏覽量
229854 -
嵌入式
+關(guān)注
關(guān)注
5082文章
19126瀏覽量
305250 -
AI
+關(guān)注
關(guān)注
87文章
30896瀏覽量
269110
原文標(biāo)題:技術(shù)干貨|嵌入式邊緣 AI 應(yīng)用開發(fā)簡化指南
文章出處:【微信號:tisemi,微信公眾號:德州儀器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論