微型機器學習可望將深度學習嵌入微處理器
譯者| 朱先忠
審校| 梁策孫淑娟
深度學習模式最初的成功歸功於擁有大量記憶體和GPU叢集的大型伺服器。深度學習的前景催生了一個為深度神經網路提供雲端運算服務的產業。因此,在幾乎無限的雲端資源上運行的大型神經網路變得非常流行,這對於具有充足預算的科技公司尤其如此。
但同時,近年來也出現了另一種相反的趨勢,為邊緣設備創建機器學習模型。這些被稱為微型機器學習(TinyML)的模型適用於記憶體和處理能力有限、網路連線不存在或有限的裝置。
IBM和麻省理工學院(MIT)共同進行的一項最新研究工作解決了卷積神經網路(CNN)的峰值記憶體瓶頸問題。這是一種深度學習體系結構,對電腦視覺應用尤其重要。在NeurIPS 2021會議上提交的一篇論文中詳細介紹了稱為一種McUnETV2的模型,該模型能夠在低內存和低功耗微控制器上運行卷積神經網路(CNN)。
1.為什麼會出現微型機器學習(TinyML)?
#雖然雲端深度學習非常成功,但並不適用於所有情況。事實上,許多應用程式往往需要在硬體設備上直接完成推理任務。例如,在一些如無人機救援這樣的任務環境中,網路連線是無法保證的。在醫療保健等其他領域,隱私要求和法規約束等也使得將資料傳送到雲端進行處理變得非常困難。對於需要即時機器語言推斷的應用程式來說,往返雲端運算所造成的延遲更是令人望而卻步。
上述所有必需滿足的條件使得機器學習設備在科學和商業上都具有吸引力。例如,iPhone手機現在就有不少運行臉部辨識和語音辨識的應用程序,安卓手機也可以直接運行翻譯軟體。此外,Apple Watch已經可以使用機器學習演算法來偵測運動和ECG模式(註:ECG即心電圖一詞electrocardiogram的縮寫,又稱EKG,是一種測試實驗,用來記錄引發心跳的電訊號序列的時間節點和強度。透過分析ECG影像,醫師可以更好地診斷心率是否正常和心臟功能是否有問題)。
上述這些設備上的ML模型在一定程度上是由支援神經網路緊湊、運算和儲存效率更高的技術進步而實現的。同時由於硬體技術的進步,這樣的ML模型在行動設定上的實作也成為可能。現在,我們的智慧型手機和穿戴式裝置比30年前的高效能伺服器擁有更多的運算能力,有些甚至配置專門的協處理器來實現機器語言推理。
TinyML將邊緣AI向前推進了一步,使得在微控制器(MCU)上運行深度學習模型成為可能,儘管微控制器比我們口袋里和手腕上攜帶的小型計算機還要受限於資源。
另一方面,微控制器價格低廉,平均售價不到0.50美元,它們幾乎無所不在,可以嵌入從消費產業到工業設備的各個方面。同時,它們沒有通用運算設備中的資源,而且大多數都沒有作業系統。微控制器的CPU很小,只有幾百KB的低功耗記憶體(SRAM)和幾兆位元組的儲存空間,而且沒有任何網路設備。它們大多沒有主電源,多年來都是必須使用羈扣電池。因此,在MCU上安裝深度學習模型可能為許多應用開闢新的道路。
2.卷積神經網路中的記憶體瓶頸
#卷積神經網路(CNN)的架構
為了將深度神經網路縮小到適合小型記憶體運算設備的大小,人們已經進行了多次努力。然而,這些努力大多集中在減少深度學習模型中的參數數量。例如,「剪枝」便是一種流行的最佳化演算法,它透過刪除模型輸出中不重要的參數來縮小神經網路。
剪枝方法的問題在於它們無法解決神經網路的記憶體瓶頸。深度學習庫的標準實作需要將整個網路層和激活層映射載入到記憶體中。不幸的是,經典的最佳化方法不會對神經網路的早期計算層做出任何重大改變,尤其是在卷積神經網路中。
這會導致網路不同層的大小不平衡,並導致「記憶體峰值」問題:即使網路在修剪後變得更輕量級,運行它的裝置也必須擁有與最大層相同的記憶體。例如,在流行的TinyML模型MobileNetV2中,早期層計算達到的記憶體峰值約為1.4兆位元組,而後期層的記憶體佔用非常小。要運行該模型,設備將需要與模型峰值相同的記憶體。由於大多數MCU的記憶體不超過幾百KB,所以它們無法運行MobileNetV2的現成版本。
MobileNetV2是一種針對邊緣裝置進行最佳化的神經網路,但它的記憶體峰值約為1.4兆位元組,這使得許多微控制器無法存取它。
另一種最佳化神經網路的方法是減少模型的輸入大小。較小的輸入影像需要較小的CNN即可執行預測任務。然而,減少輸入大小本身就存在挑戰,並不是對所有電腦視覺任務都有效。例如,物件偵測深度學習模型對影像大小非常敏感,當輸入解析度降低時,其效能會迅速下降。
由上圖易知,影像分類ML模型(橘色線)比目標偵測模型(藍色線)更容易降低解析度。
3.MCUNetV2基於修補程式的推理
為了解決卷積神經網路的記憶體瓶頸問題,研究人員創建了一個名為MCUNetV2的深度學習體系結構,可以將其記憶體頻寬調整到微控制器的極限。 MCUNetV2是在同一科研小組之前的成果基礎上開發的,該工作已被NeurIPS 2020大會接受並成功提交。
MCUNetV2背後的主要思想是“基於補丁的推理”,這是一種在不降低CNN準確性的情況下減少其記憶體佔用的技術。 MCUNetV2沒有將整個神經網路層載入到記憶體中,而是在任何給定時間加載並計算該層的較小區域或「補丁」。然後,它逐塊迭代整個層並組合這些值,直到計算整個層的激活部分。
圖中左側是經典深度學習系統計算一整層的情形,而右側給出的是MCUNetV2一次計算一個補丁,從而減少DL推理的內存需求。
由於MCUNetV2一次只需要儲存一片神經元,因此它在不降低模型解析度或參數的情況下大幅降低記憶體峰值。研究人員的實驗表明,MCUNetV2可以將記憶體峰值降低至八分之一。
MCUNetV2能夠將深度學習模型的記憶體峰值降低至八分之一
基於補丁的推理在節省記憶體的同時也帶來了計算開銷的權衡問題。麻省理工學院(MIT)和IBM的研究人員發現,在不同的體系結構中整體網路運算可能會增加10-17%,這顯然不適用於低功耗的微控制器。
為了克服這個限制,研究人員重新分配了神經網路不同區塊的「感受野」(註:在CNN中,第n層特徵圖中一個像素對應作為第1層的輸入圖像的像素數,即為該層的感受野“receptive field”,簡稱“RF”)。在CNN中,感受野是在任何時刻可被處理的影像區域。更大的感受野需要更大的補丁和補丁之間的重疊。當然,這就會產生更高的計算開銷。透過縮小網路初始區塊的感受野並擴大後期的感受野,研究人員能夠將計算開銷減少三分之二以上。
感受野的重新分配有助於將MCUNetV2的計算開銷減少三分之二以上
最後,研究人員觀察到,MCUNetV2的調整很大程度上取決於ML模型架構、應用程式以及目標設備的記憶體和儲存容量。為了避免手動調整每個設備和應用程式的深度學習模型,研究人員使用了“神經演算法搜尋”,這是一個使用機器學習自動優化神經網路結構和推理調度的過程。
研究人員在幾個記憶體容量較小的微控制器模型上測試了不同應用中的深度學習架構。結果表明,MCUNetV2優於其他TinyML技術,能夠以較小的記憶體需求和較低的延遲實現在影像分類和目標檢測方面達到更高的精度。
如下圖所示,研究人員正在使用即時人物偵測、視覺喚醒字詞和人臉/口罩偵測等方式使用MCUNetV2。
譯者註:此處展示的僅是youtube.com網站上展示的使用MCUNetV2的影片中的一幅截圖。
4.TinyML應用程式
在2018年一篇題為《機器學習程式的未來為何如此微小》(Why the Future of Machine Learning is Tiny)的文章中,軟體工程師皮特沃登(Pete Warden)認為,MCU上的機器學習極為重要。沃登寫道:「我相信機器學習可以在小型、低功耗晶片上運行,這種結合將解決我們目前無法解決的大量問題。」
由於感測器和CPU的進步,我們從世界各地獲取數據的能力大大增強。但我們透過機器學習模型處理和使用這些資料的能力卻受到網路連線和雲端伺服器存取的限制。正如沃登所說,處理器和感測器比藍牙和WiFi等無線電發射機更節能。
沃登寫道:「移動資料的物理過程似乎需要大量的能量。一次操作所需的能量與發送位元的距離成正比似乎是一條規則。CPU和感測器發送只需要幾個毫米發送比特數且價格便宜,而無線電發送的代價則需要幾米甚至更大距離才發送幾比特數據,而且價格昂貴……很明顯,一個有巨大潛力的市場正等待著用正確的技術來開闢。我們需要一種能在廉價微控制器上工作的設備,它使用的能源非常少,依賴於計算而不是無線電,它能把我們所有浪費的傳感器數據變成有用的數據。這就是機器學習,特別是深度學習將要填補的空白。」
由於MCUNetV2和TinyML在其他方面也取得了進步,沃登的預測很快就會變成現實。在未來的幾年裡,我們可以期待TinyML能夠進入到家庭、辦公室、醫院、工廠、農場、道路、橋樑等的數十億微控制器中,從而有望實現以前根本不可能實現的應用。
原文連結:https://thenextweb.com/news/tinyml-deep-learning-microcontrollers-syndication
譯者介紹
朱先忠,51CTO社群編輯,51CTO專家部落格、講師,濰坊一所大學電腦教師,自由程式設計界老兵一枚。早期專注各種微軟技術(編著成ASP.NET AJX、Cocos 2d-X相關三本技術圖書),近十多年投身於開源世界(熟悉流行全棧Web開發技術),了解基於OneNet/AliOS Arduino/ ESP32/樹莓派等物聯網開發技術與Scala Hadoop Spark Flink等大數據開發技術。
以上是微型機器學習可望將深度學習嵌入微處理器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在機器學習和資料科學領域,模型的可解釋性一直是研究者和實踐者關注的焦點。隨著深度學習和整合方法等複雜模型的廣泛應用,理解模型的決策過程變得尤為重要。可解釋人工智慧(ExplainableAI|XAI)透過提高模型的透明度,幫助建立對機器學習模型的信任和信心。提高模型的透明度可以透過多種複雜模型的廣泛應用等方法來實現,以及用於解釋模型的決策過程。這些方法包括特徵重要性分析、模型預測區間估計、局部可解釋性演算法等。特徵重要性分析可以透過評估模型對輸入特徵的影響程度來解釋模型的決策過程。模型預測區間估計

本文將介紹如何透過學習曲線來有效辨識機器學習模型中的過度擬合和欠擬合。欠擬合和過擬合1、過擬合如果一個模型對資料進行了過度訓練,以至於它從中學習了噪聲,那麼這個模型就被稱為過擬合。過度擬合模型非常完美地學習了每一個例子,所以它會錯誤地分類一個看不見的/新的例子。對於一個過度擬合的模型,我們會得到一個完美/接近完美的訓練集分數和一個糟糕的驗證集/測試分數。略有修改:"過擬合的原因:用一個複雜的模型來解決一個簡單的問題,從資料中提取雜訊。因為小資料集作為訓練集可能無法代表所有資料的正確表示。"2、欠擬合如

寫在前面今天我們探討下深度學習技術如何改善在複雜環境中基於視覺的SLAM(同時定位與地圖建構)表現。透過將深度特徵提取和深度匹配方法相結合,這裡介紹了一種多功能的混合視覺SLAM系統,旨在提高在諸如低光條件、動態光照、弱紋理區域和嚴重抖動等挑戰性場景中的適應性。我們的系統支援多種模式,包括拓展單目、立體、單目-慣性以及立體-慣性配置。除此之外,也分析如何將視覺SLAM與深度學習方法結合,以啟發其他研究。透過在公共資料集和自採樣資料上的廣泛實驗,展示了SL-SLAM在定位精度和追蹤魯棒性方面優

1950年代,人工智慧(AI)誕生。當時研究人員發現機器可以執行類似人類的任務,例如思考。後來,在1960年代,美國國防部資助了人工智慧,並建立了實驗室進行進一步開發。研究人員發現人工智慧在許多領域都有用武之地,例如太空探索和極端環境中的生存。太空探索是對宇宙的研究,宇宙涵蓋了地球以外的整個宇宙空間。太空被歸類為極端環境,因為它的條件與地球不同。要在太空中生存,必須考慮許多因素,並採取預防措施。科學家和研究人員認為,探索太空並了解一切事物的現狀有助於理解宇宙的運作方式,並為潛在的環境危機

C++中機器學習演算法面臨的常見挑戰包括記憶體管理、多執行緒、效能最佳化和可維護性。解決方案包括使用智慧指標、現代線程庫、SIMD指令和第三方庫,並遵循程式碼風格指南和使用自動化工具。實作案例展示如何利用Eigen函式庫實現線性迴歸演算法,有效地管理記憶體和使用高效能矩陣操作。

機器學習是人工智慧的重要分支,它賦予電腦從數據中學習的能力,並能夠在無需明確編程的情況下改進自身能力。機器學習在各個領域都有廣泛的應用,從影像辨識和自然語言處理到推薦系統和詐欺偵測,它正在改變我們的生活方式。機器學習領域存在著多種不同的方法和理論,其中最具影響力的五種方法被稱為「機器學習五大派」。這五大派分別為符號派、聯結派、進化派、貝葉斯派和類推學派。 1.符號學派符號學(Symbolism),又稱符號主義,強調利用符號進行邏輯推理和表達知識。該學派認為學習是一種逆向演繹的過程,透過現有的

MetaFAIR聯合哈佛優化大規模機器學習時所產生的資料偏差,提供了新的研究架構。據所周知,大語言模型的訓練常常需要數月的時間,使用數百甚至上千個GPU。以LLaMA270B模型為例,其訓練總共需要1,720,320個GPU小時。由於這些工作負載的規模和複雜性,導致訓練大模型存在著獨特的系統性挑戰。最近,許多機構在訓練SOTA生成式AI模型時報告了訓練過程中的不穩定情況,它們通常以損失尖峰的形式出現,例如Google的PaLM模型訓練過程中出現了多達20次的損失尖峰。數值偏差是造成這種訓練不準確性的根因,

编辑|萝卜皮自2021年发布强大的AlphaFold2以来,科学家们一直在使用蛋白质结构预测模型来绘制细胞内各种蛋白质结构的图谱、发现药物,并绘制每种已知蛋白质相互作用的「宇宙图」。就在刚刚,GoogleDeepMind发布了AlphaFold3模型,该模型能够对包括蛋白质、核酸、小分子、离子和修饰残基在内的复合物进行联合结构预测。AlphaFold3的准确性对比过去许多专用工具(蛋白质-配体相互作用、蛋白质-核酸相互作用、抗体-抗原预测)有显著提高。这表明,在单个统一的深度学习框架内,可以实现
