2025年2月17日 星期一

【TinyML論文導讀】AIfES: A Next-Generation Edge AI Framework

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 的主要優勢包括模組化軟體架構、可新增自訂硬體加速器以及在資源受限裝置上進行裝置上訓練的能力。

2025年2月12日 星期三

Arm Cortex-M & Ethos-U55 ML開發者指南

Jack OmniXRI 整理製作, 2025/02/11

完整內容: https://hackmd.io/@OmniXRI-Jack/arm_developer_cortexm55_ethosu55_guide

資料來源: ML Developers Guide for Cortex-M Processors and Ethos-U NPU Version 1.1

本網頁僅供自我學習及快速查找用,請勿移作他用。為方便閱讀,相關章節及圖示編號已作過微調。全文採用AI翻譯並以人工進行調整,非Arm授權翻譯之版本,如有翻譯不當煩請私訊告知。另外本文件原始相關著作權、權利義務及使用限制請以Arm官方英文版本為準。

  • Arm Cortex-M & Ethos-U55 ML開發者指南
    • 1.概述
      • 1.1.目標受眾
      • 1.2.邊緣設備上的機器學習
      • 1.3.ML計算要求
      • 1.4.ML開發過程的概述
      • 1.5.用於ML開發的工具和軟體
      • 1.6.針對Ethos-U NPU
    • 2.ARM Cortex-M Provor的ML軟體開發
      • 2.1.ML軟體框架選項
      • 2.2.使用TFLM的範例軟體開發流
      • 2.3.重新訓練ML模型
      • 2.4.更多資訊
    • 3.Arm Ethos-U NPU
      • 3.1.Ethos-U硬體體系結構
      • 3.2.Ethos-U系統整合
      • 3.3.Corstone參考設計
      • 3.4.ML軟體支持Ethos-U
      • 3.5.軟體體系結構方案和用例
      • 3.6.Ethos-U的其他軟體和工具
      • 3.7.將Ethos-U軟體移植到新的硬體平台
      • 3.8.自定義Ethos-U驅動程序和RTOS整合
    • 4.Arm Ethos-U NPU的工具支持
    • 5.Arm ML動物園
      • 5.1.整合Arm ML-Zoo模型
    • 6.ML嵌入式評估套件
      • 6.1.開始使用ML嵌入式評估套件
      • 6.2.超越基本知識
    • 7.基於CMSIS包裝的ML範例
      • 7.1.先決條件
      • 7.2.編譯基於CMSIS的ML範例
      • 7.3.在您自己的項目中使用TFLM CMSIS包裝
    • 8.分析和優化ML模型
      • 8.1.Ethos-U Vela優化
      • 8.2.運算子映射和用法
      • 8.3.MLIA指導優化(實驗)
      • 8.4.Ethos-U性能分析
    • 9.MLOPS系統
      • 9.1.許可證激活
      • 9.2.範例專案
      • 9.3.vcpkg
    • 10.Ethos-U的資源
      • 10.1.產品頁面
      • 10.2.產品文檔
      • 10.3.軟體和範例
      • 10.4.其他資源
      • 10.5.合作夥伴解決方案


【頂置】簡報、源碼、系列文快速連結區

常有人反應用手機瀏覽本部落格時常要捲很多頁才能找到系列發文、開源專案、課程及活動簡報,為了方便大家快速查詢,特整理連結如下,敬請參考! Edge AI Taiwan 邊緣智能交流區 全像顯示與互動交流區 台科大(NTUST) 人工智慧與邊緣運算實務 開南大學...