為邊緣AI自動化模型設計
我們構建了一個自動化模型設計系統的基礎,結合神經架構搜索、DeepGate編譯器以及通過開發平台獲得的真實硬件測量,能夠自動為特定微控制器定製模型。在MLPerf Tiny基準測試中,生成的模型運行速度提升高達45倍,內存使用減少高達11倍,同時保持高精度。
為微控制器構建模型在很大程度上仍然是一個手動過程。團隊要麼從頭設計模型,要麼調整現有架構,迭代修改以適應目標硬件。在資源受限的設備上,他們常常面臨模型要麼太大或運行太慢,要麼適合設備但錯誤過多的權衡。
我們構建了自動化模型設計系統的基礎。通過結合神經架構搜索、DeepGate編譯器以及通過開發平台獲得的真實硬件測量,我們可以自動搜索針對目標微控制器定製的模型。在MLPerf Tiny的四個標準基準任務中——從檢測音頻中的口語單詞到識別圖像中的人物——生成的模型運行速度比參考模型快高達45倍,內存使用減少高達11倍。例如,在ADI MAX32655上運行的MLPerf Tiny關鍵字識別基準上,我們的搜索將推理延遲從104.3毫秒降低到2.3毫秒,RAM使用從23.7 KB降至2.1 KB,同時保持超過90%的分類準確率。
這樣的提升可以使機器學習模型運行在更便宜的硬件上,延長電池壽命,並釋放內存和計算資源用於其他任務。通過推動效率邊界,我們將更先進的AI工作負載帶入微控制器的可達範圍,為數十億設備帶來日益強大的智能。
我們在MLPerf Tiny v1.4上評估了我們的搜索系統,這是微控制器機器學習標準基準套件。該基準涵蓋四個代表性的邊緣工作負載:關鍵字識別、視覺喚醒詞、CIFAR-10圖像分類和異常檢測。每個任務都有預定義的質量目標,例如關鍵字識別要求90%的top-1準確率,異常檢測要求0.85的AUC。對於每個工作負載,目標是在滿足目標的同時產生儘可能小和快速的模型,輸入維度固定以確保與參考模型的公平比較。
在所評估的開發板上,我們的搜索系統和編譯器實現了高達45倍的推理加速和高達11倍的內存降低。由於內存通常是微控制器的主要限制,這些內存減少尤為重要:在某些情況下,在供應商工具鏈下超出內存限制的模型在經過搜索和編譯後能夠成功部署。
我們同時運行了兩種搜索系統,並針對特定任務選擇性能最佳的一個。在MLPerf Tiny工作負載上,四個最終模型中有三個來自我們的神經架構搜索系統,而異常檢測模型來自我們的代理搜索。代理架構搜索使用一個LLM代理,每次提出一個更改——要麼是架構要麼是訓練策略——訓練結果模型,在真實硬件上基準測試,並在目標指標提升時保留更改。這種方法可以探索任何預定義搜索空間之外的想法,但貪婪地運行,一次改進一個模型。超網絡NAS建立並擴展了Once-for-All和MCUNet方法,適用於微控制器部署,使用int8量化感知訓練,同時保持輸入分辨率固定以與參考模型公平比較。一個超網絡可以特化為許多具有不同大小、速度和精度權衡的模型。
兩種方法具有互補優勢:代理搜索可以更改代碼中的任何內容——架構和訓練策略,輸出一個逐步改進的模型,最適合問題開放或設計空間理解不足的情況。超網絡NAS在預定義的架構空間內更改(深度、內核大小、擴展比率),輸出跨越不同大小、速度和精度權衡的模型族,最適合設計空間理解良好且需要為多個硬件目標優化模型的情況。
我們的長期目標是自動化高效模型的設計,從定義任務到在邊緣設備上部署優化模型。為此,我們正在探索如何將NAS和代理搜索方法結合為一個統一的優化循環,融合兩種方法的優勢。同時,我們正在擴展搜索系統可用的神經網絡層集,包括設計用於更少內存和更快運行的新型DeepGate層。將這些層納入搜索空間將在資源受限設備上解鎖更大的效率,使曾經被認為超出微控制器能力的AI工作負載成為可能,最終為數十億設備帶來日益強大的智能。