最近,隨著機器學習(ML, Machine Learning)的進步出現了分歧,分為兩個規模:一個是傳統的大型ML(云ML),模型越來越大,以實現準確性方面的最佳性能;另外一個是新興的微型機器學習(TinyML)領域,其中模型被縮小以適應受限設備以超低功耗執行。由于TinyML是一個新興領域,本篇文章將討論在開發TinyML和當前行業標準納入TinyML設備基準測試的系統時要考慮的各種參數。
系統指標要求根據正在開發的用例會有很大差異。我們來看下四個指標:準確性、功耗、延遲和內存要求。
準確性
在過去十年中,準確性一直被用作衡量機器學習模型性能的主要指標,較大的模型往往優于較小的。在TinyML系統中,準確性也是一個關鍵指標,但與云ML相比,與其他指標的平衡更為必要。
功耗
由于TinyML系統預計將長時間使用電池運行,因此考慮TinyML模型的功耗(通常為mW量級)至關重要。TinyML模型的功耗將取決于可用的硬件指令集,例如,由于采用了氦氣指令集,ARM Cortex-M85比ARM Cortex-M7更節能。此外,功耗還取決于用于運行模型的底層軟件,即推理引擎。例如,與參考內核相比,使用CMSIS-NN庫可顯著提高性能。
延遲
TinyML系統在端點運行并且不需要云連接,因此,此類系統的推理速度明顯優于基于云的系統。在某些用例中,擁有超高的推理速度對于生產就緒至關重要(ms為單位)。與功耗指標類似,延遲取決于底層硬件和軟件。
內存
內存是TinyML的一大障礙,它擠壓了ML模型以適應資源受限的MCU(內存小于1MB的MCU更常見)。所以,降低內存需求一直是一個挑戰。在模型開發過程中,會使用許多技術,例如:剪枝和量化。此外,底層軟件發揮著重要作用,因為更好的推理引擎可以更有效地優化模型(更好的內存管理和用于執行層的庫)。
由于這四個參數是相關的(往往是準確性和內存之間的負相關,但內存、延遲和功耗之間存在正相關),改進一個參數可能會影響其他參數。在開發TinyML系統時,仔細考慮這些因素很重要。一般的經驗法則是根據用例定義所需的必要模型準確性,將各種開發的模型與其他三個指標進行比較。如下圖所示,給定已訓練的各種模型的虛擬示例。
不同標記形狀表示具有不同超參數的模型架構(超參數,是指機器學習算法中的調優參數,需要人為設定)。這些超參數往往會隨著架構大小的增加而提高準確性,但卻犧牲了其他3個指標。根據系統定義的用例,顯示一個典型的相關區域,由此,只有一個模型具有90%的精度,如果需要更高的精度,則應重新考慮整個系統以適應其他指標的增加。
在此,提一下“基準測試”(benchmark),它是設置可重復標準以比較不同技術、架構、軟件等的必要工具。在AI/ML中,準確性是衡量不同模型的關鍵指標。在嵌入式系統中,常見的基準測試包括CoreMark和EEMBC的ULPMark用以測量性能和功耗。就TinyML而言,MLCommons作為行業標準越來越受到關注,它可以評估前面討論的四個指標,并且由于TinyML系統的異構性,為了確保公平性,使用了4個具有4個不同AI模型的AI用例,并且必須達到一定水平的準確性才能獲得基準測試資格。
作為端點AI領域的行業領導者,瑞薩計劃將率先支持Cortex-M85內核的MCU推向市場,TinyML系統將進一步開發各種用例,讓我們的生活更輕松。
-
mcu
+關注
關注
146文章
17019瀏覽量
350373 -
瑞薩
+關注
關注
35文章
22294瀏覽量
86098 -
AI
+關注
關注
87文章
30239瀏覽量
268473 -
機器學習
+關注
關注
66文章
8382瀏覽量
132439 -
TinyML
+關注
關注
0文章
42瀏覽量
1220
原文標題:開發TinyML系統必須考慮的四大指標
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論