Page 9 - 智慧邊緣運算實現更環保、更安全與高效的社會
P. 9

   SPOTLIGHT
7
機器學習框架
 邊緣設備適用性
 主要特性
 TensorFlow
 使用資料流程圖進行數值運算,回歸、分 類、神經網路、CPU和GPU。
 Google,開源深度學習框架,訓練和 推理。
  TensorFlow Lite
專為行動平台和(能執行全功能作業系 統的)嵌入式設備設計;專為運算能力有 限(手機、物聯網和其他嵌入式設備)和低 延遲設備進行推理而設計。
 速度更快、尺寸更小、運算成本更低; 不能像TensorFlow那樣用於訓練,只 能用於設備推理。
 PyTorch
  回歸、分類、神經網路、CPU和GPU。
  Facebook,物件導向的程式設計和多 個優化演算法選項。
  TensorFlow Lite Micro
已對接Arm CMSIS-NN技術的推理庫:針 對設備端推理。
 針對記憶體資源受限的微控制器,例 如Arm Cortex-M核心,比TensorFlow Lite更適合裸機或RTOS環境。
  表1:基於邊緣運算的機器學習框架。
層演算法細節。其中一些框架為 語音辨識、物件檢測、自然語言處 理(NLP)及影像識別和分類等提 供了預訓練模型,表1描述了一些 常用的基於邊緣的機器學習框架。
人工神經網路(ANN),通常稱 為神經網路(NN),是受生物神經網 路啟發而建構的運算系統。神經網 路大體上以生物大腦中的神經元為 原型,包含了一組被稱為人工神經 元的連接單元(也叫節點),以及它 們的連接關係和連接程度。基於神 經網路的機器學習演算法,如卷積 神經網路(CNN)和迴圈神經網路 (RNN),已被證明在機器學習推理 任務中非常有效。這些演算法由多 個運算層和轉換層組成,用於分析 資料以檢測模式。
層輸出執行的操作序列。最後一組 操作生成網路的輸出,如影像包含 特定物件的概率、音訊序列包含特 定單詞的概率、影像中的邊界框圍 繞物件的概率或執行擬定操作的 概率。在CNN中,網路沒有記憶, 給定輸入的輸出總是相同,與先前 提供給網路的輸入序列無關。RNN 則利用內部記憶,使長期依賴關係 能夠影響輸出。RNN使用時間序列 資訊提供輸出,並根據當前輸入和 過去的資料來預測未來的動作和 結果,用於語言處理任務、感測器 分析和異常檢測等。CNN和RNN中 的主要運算是「加權求和」運算,通 常使用乘積累加(MAC)運算。由於 MAC運算涉及乘法和加法,因此每 個MAC包括兩種運算。CNN和RNN 運算都受益於嵌入式硬體設備上的 快速記憶體。RNN的回饋路徑需要 記憶體空間,導致它們更易被有限 的記憶體所拖累。
通常,神經網路使用32位元浮 點(FP32)形式的資料進行訓練。但 由於嵌入式設備中的記憶體和運算 配置有限,因此在邊緣進行推理通 常會將FP32量化為16、8位元甚至 更低的定點整數表示。把模型的 參數、輸入、中間結果都進行量化 以執行低位數的運算,將帶來顯著 的運算增益和更高的性能。量化 會降低精準度,因此需要採用其他 方法將精準度損失恢復到可接受 的水準。定點乘法的能耗和晶片面 積大致與位元數的平方成正比。降 低精準度也會降低儲存的能耗和晶 片成本,這很重要,因為記憶體訪 問和資料移動是能耗的主體,而且 嵌入式系統的儲存資源是有限的。
邊緣機器學習硬體
邊緣處理機器學習可 以在SoC處理元件(例如 CPU、GPU、DSP和專用加速器) 或這些處理元件組合上執行。每 種方式各有優缺點。以DSP為例, 能經濟高效地進行各種形式的複 雜訊號處理,已在嵌入式系統上使 用多年。使用DSP分析感測器資料 進行特徵提取很常見。不斷發展的 DSP使用特殊指令(如MAC)來加速 常見的訊號處理運算。有些DSP還 圍繞MAC單元建構了向量處理單 元,可以用於加速神經網路運算。 在超長指令字(VLIW)架構的DSP 上,含有更寬的單指令多資料流程 指令,亦可加速神經網路的推理。
CNN是前饋神經網路。在前 饋網路中,所有運算都是基於前一
圖3顯示了一個在低成本邊 緣設備上用於機器學習運算的 DSP。在此示例中,DSP基於Arm Cortex微控制器軟體介面標準
2022年5月 | www.eettaiwan.com








































































   7   8   9   10   11