Other Parts Discussed in Post: AM5729, AM5749

作者:德州儀器嵌入式處理器部門 Pekka Varis

於工廠中運用機器學習與神經網路技術,可改善機器視覺、自動導引車(AGV,automated guided vehicles)與機器人技術等應用,增進其智慧,進而改善作業效率。製造業使用嵌入式微控制器與處理器,將重複性流程自動化已達數十年,而超越研究原型、實際於嵌入式系統中運用機器學習演算法,則才剛起步。

以下為工廠中應用機器學習的範例。今日的自動導引車(AGV)由相機或雷達等感測器接收資訊。處理器軟體分析數據資料、進行決策,控制電動馬達,使AGV於工廠中安全移動。在倉庫等侷限環境中,傳統機器視覺演算法可順利運作;然而,若機器學習可適應該類環境中的細微變動,感知與分類能力與人類更為相似,表現可更為優異。這在工廠演變過程中,更為關鍵,須滿足三大需求:

  • 減少導航所需空間,因倉庫密度增加。
  • 不僅偵測倉庫地面物品,更能加以分類。
  • AGV需與人類於共用空間中順利運作。

機器學習如何促進工業 4.0發展

機器學習推論(machine learning inference)是處理與理解資訊的強大工具,尤其在機器視覺領域,實證顯示不僅表現優於傳統演算法,準確度更優於人類表現。這些能力可由深度學習達成,此為機器學習的子類別之一,運用深度神經網路,以大量數據資料訓練系統。

於嵌入式系統中運用機器學習或深度學習演算法,首先須蒐集需分類或偵測物品的資料集,例如數百萬張工廠地面障礙物的圖像,包括行人、靜止的機器、機械手臂、貨架或箱子等。接著,將該資料集輸入一個離線訓練程式中,讓系統學習辨認資料模式或異常之處。此步驟並非即時進行,而是於伺服器或雲端進行密集計算。以機器視覺而言,計算過程的產出結果為一經過訓練的網路模型,可應用於網路邊緣的處理器。以AGV而言,機器學習推論可大幅改善相機所見,並據此採取行動,如避開行進路徑上的箱子。

於工業嵌入式系統中運用機器學習

支援機器學習處理器的推論能力可將經過訓練的網路知識應用於任何圖像或連續圖像中任一幀圖像。TI SitaraTm 處理器為嵌入式推論處理器,支援設備製造商運用機器學習演算法與AGV的機器視覺等自動化應用。

圖1是用 TI AM5729處理器運行機器學習的說明範例,針對像素進行語義分割(semantic segmentation),可辨識工廠常見物品的三大類別:AGV行進路徑(綠色),其他車輛(藍色)與人員(紅色)。

圖1:標籤資料數據的角色與機器學習範例

為說明AGV的可能運作方式,我們將 TI 處理器軟體開發套件(SDK) jsegnet21v2網路應用於一張倉庫環境中AGV適用的圖像上。此範例經市容與城市街道資料集訓練;若為用於製程的AGV,則需蒐集使用環境中的圖像、加上標籤資料,用以訓練系統。

利用 TI 深度學習(TIDL)軟體架構,將 TI 的演算法應用於 Sitara AM5729 處理器上。AM5729處理器利用裝置上的4個嵌入式視覺引擎(EVE,embedded vision engine),以演算法處理1024x512像素組成的圖像,每秒顯示幀數約為12幀,消耗額外電力不到0.5 W。4個EVE核心各為可進行512位元寬度向量乘積累加運算(multiply-accumulate operation)的處理器,主要負責滿足神經網路的運算需求。對 AGV 等即時虛實整合系統(cyber-physical system)而言,延遲與資料處理能力(每秒顯示幀數)皆為關鍵。AM5729 的幀處理延遲率為250毫秒(平行處理4幀),以倉庫中 AGV 行進速率而言,已足以支援決策。

降低機器學習推論延遲

利用 MobileNetv2 網路模型進行分類的典型應用範例中,相較於僅有2個 EVE 核心的AM5749,AM5729 的每幀推論延遲降低了30%至40%,可達成高幀率與小批次(batch size)。AM5729處理器以 MobileNetv2 分類處理224x224像素組成圖像,幀率可達每秒45幀。有了影響低於 2% 的高準確度、稀疏化(sparsification)與 TI EVE最佳化深度學習網路模型JacintoNet11,我們甚至能進一步改善推論延遲表現。

您能取得或蒐集數據資料、利用這些廣受好評的架構訓練演算法,並利用 TIDL 介面將演算法運用於 Sitara AM5729 處理器。測試結果顯示,加載 EVE 核心處理器的推論運行速度較僅使用 Arm® 核心的處理器更快。圖2比較兩款 Arm® Cortex® A-15處理器與 AM5729、AM5749 處理器運行數種常用深度學習網路的幀率表現。Cortex A-15性能表現以 Arm 的NN 19.05軟體測量,EVE性能表現則以處理器 SDK 6.1版本中的TIDL軟體架構測量。
 

2:處理器運行各種機器學習網路的幀率表現

今日工廠林立、應用範圍極廣,機器學習推論演算法須以Sagemaker NEOTensorFlow Lite等廣受好評的平台為基礎,且能利用圖2所列各種網路模型進行運算。隨著工廠自動化持續演進,支援這些常用平台的能力將是管理機器學習推論各種應用的關鍵。

結論

工業嵌入式應用關乎解決實體世界即時用例面臨的問題,且能以幀率等數位微型基準指標加以佐證。實務而言,Sitara AM5729 處理器性能可即時處理一般相機輸入資料,及幀率、延遲與電力消耗等多項工廠應用相關資訊。為評估 AM5729 處理器的機器學習功能,BeagleBone AI 評估板為剛起步的低成本選擇,而TMDSIDK572 IDK則為建構與測試機器學習應用提供完整功能的工業級評估板。

其他資源

 

Anonymous