Jack OmniXRI, 2025/02/17 整理製作
本論文導讀是由 NotebookLM 協助翻譯及摘要,再經由人工微調,非授權版本,僅供個人學習使用,請勿移作它用。更完整內容請參考原始論文。
- Cite:
L. Wulfert et al., "AIfES: A Next-Generation Edge AI Framework," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 46, no. 6, pp. 4519-4533, June 2024, doi: 10.1109/TPAMI.2024.3355495.
keywords: {Training;Data models;Artificial intelligence;Support vector machines;Hardware acceleration;Libraries;Performance evaluation;Edge AI Framework;embedded systems;machine learning framework;on-device training;resource-constrained devices;TinyML}, - Github:
https://github.com/Fraunhofer-IMS/AIfES_for_Arduino - Document:
https://fraunhofer-ims.github.io/AIfES_for_Arduino/index.html
論文重點摘要
- AIfES 是一個新一代的邊緣人工智慧 (AI) 框架,旨在將機器學習 (ML) 整合到最小的嵌入式裝置中,為影像或語音處理等實際應用提供本地智慧。
- 傳統的邊緣 AI 框架在目標硬體方面的靈活性較低,且對自訂硬體加速器整合的支援有限,AIfES 旨在克服這些挑戰。
- AIfES 具有模組化結構,遵循 ML 框架的結構,包含四個步驟:(1) 建立模型,(2) 選擇損失,(3) 選擇優化器,(4) 訓練模型。
- AIfES 允許使用者輕鬆轉移經驗,並且其 ailayer 模組提供多種功能類型供選擇。使用者可以為每個功能指定資料類型,從而節省記憶體,或在沒有浮點運算單元 (FPU) 的裝置上實現更快的訓練或推論。
- AIfES 是第一個在 ML 框架中以模組化方式使用硬體加速器的框架。軟體的模組化設計允許新增使用者特定的硬體加速器、功能類型、資料類型或模組,從而根據使用者的需求和偏好自訂框架。
- AIfES 採用 C 語言和最佳化模組,無需作業系統即可實現 ML 模型的裝置上訓練和推論。
- AIfES 支援模組化的硬體加速器新增,以提高推論和裝置上訓練的效能。它還包括用於啟動功能的軟體最佳化模組。
- AIfES 是一個開源邊緣 AI 框架,為資源受限裝置提供推論和裝置上訓練,並且具有硬體不可知和軟體模組化的特性。
- AIfES 允許在執行階段調整或變更網路架構。
- AIfES 支援量化,以適應不同的硬體架構,例如沒有 FPU 的 8 位元 MCU。
- AIfES 的主要限制在於原生矩陣乘法的實作,這導致 ANN 的效能低於 TFLM。未來將透過更先進的矩陣乘法方法和最佳化 ANN 裝置上訓練來增強 AIfES。
- AIfES 採用模組化架構,由 ailayer、ailoss 和 aiopti 模組組成,每個模組都有不同的層級:類型、實作(使用硬體加速器)和資料類型。
- AIfES 旨在簡單直觀,同時高效到足以在最小的 MCU 上執行,並足夠靈活以支援 ML 中的大多數使用案例。
- AIfES 優先考慮資料類型和底層系統特性,這在資源受限裝置上至關重要。
- AIfES 提供所有在裝置上訓練 ANN 所需的元件,例如所有層的反向實作、多個損失函數、優化器和權重初始化函數。
- AIfES 的模組化設計使 C 編譯器可以輕鬆移除未使用的程式碼,從而縮小程式碼大小。
- AIfES 使用記憶體排程器,可在執行網路之前計算所需的記憶體大小,並將記憶體區塊分配給模型,從而避免動態記憶體分配。
- AIfES 包括執行階段最佳化的啟動函數和層,以及基於矩陣乘法的層。
- AIfES 提供兩種反向傳播工作流程,以降低訓練期間的記憶體消耗:傳統方法和輕量隨機梯度下降 (L-SGD) 演算法。
- AIfES 允許對模型進行量化,從而可以調整到不同的硬體架構
。提供兩種量化(Q7 和 Q31),作為對稱的 8 位元/32 位元整數量化,有助於僅使用整數算術來計算實際值。 - 在 ARM Cortex-M4 的 SoC 上進行的基準測試表明,AIfES 在執行時間和記憶體消耗方面優於 TFLM,尤其是在 FCNN 架構方面。
- AIfES 支援在嵌入式裝置上訓練 ANN 和 CNN。
- AIfES 的主要優勢包括模組化軟體架構、可新增自訂硬體加速器以及在資源受限裝置上進行裝置上訓練的能力。