分布最廣的物聯(lián)網(wǎng)設備往往體積很小、電量有限。它們被作為終端硬件,通過嵌入式傳感器采集各種數(shù)據(jù);計算能力有限,對功耗極為敏感。這類設備也能實現(xiàn)機器學習嗎?一個趨勢是,人工智能 AI 正在加快速度從“云端”走向“邊緣”,進入到越來越小的物聯(lián)網(wǎng)設備中。在終端和邊緣側的微處理器上,實現(xiàn)的機器學習過程,被稱為微型機器學習,即 TinyML。
分布最廣的物聯(lián)網(wǎng)設備往往體積很小、電量有限。它們被作為終端硬件,通過嵌入式傳感器采集各種數(shù)據(jù);計算能力有限,對功耗極為敏感。這類設備也能實現(xiàn)機器學習嗎?
?
一個趨勢是,人工智能 AI 正在加快速度從“云端”走向“邊緣”,進入到越來越小的物聯(lián)網(wǎng)設備中。
?
在終端和邊緣側的微處理器上,實現(xiàn)的機器學習過程,被稱為微型機器學習,即 TinyML。更準確的說,TinyML 是指工程師們在 mW 功率范圍以下的設備上,實現(xiàn)機器學習的方法、工具和技術。
?
一批企業(yè)正在利用 TinyML 相關的技術與產品,探索如何在這些無處不在的小型設備上,更好的搭載機器學習,以便提高設備的分析能力和運行效率。
?
TinyML 是不同技術領域和推動因素的交集,它位于物聯(lián)網(wǎng)設備、機器學習和邊緣計算之間的結合部,并因為多種驅動力的綜合作用,進展很快。
?
?
在剛剛過去的 2 月中旬,TinyML 2020 峰會在硅谷舉行。英偉達、ARM、高通、谷歌、微軟、三星等公司紛紛展示了微型機器學習的最新成果。
?
這是 TinyML 峰會的第二屆。TinyML 2019 峰會共吸引了來自 90 多家企業(yè)的數(shù)百名工程師參與,而本屆峰會的盛況更是空前,并且得出了很多重要結論:
?
對于很多應用場景,TinyML 技術和硬件已經進化到實用性較強的階段;
無論是算法、網(wǎng)絡,還是低于 100KB 的 ML 模型,都取得了重大突破;
視覺和音頻領域的低功耗需求快速增長。
?
TinyML 峰會的主辦方,是在 2019 年 7 月剛剛成立的 TinyML 基金會,成員不僅包含各大知名企業(yè),還包含 GreeWaves、Eta Compute、Esperanto、Xnor、Picovoice 等優(yōu)秀的初創(chuàng)公司。
?
技術的進步和生態(tài)的發(fā)展,為 TinyML 的發(fā)展賦予了巨大的動能。目前,TinyML 的影響力正在持續(xù)發(fā)酵,2020 年勢必將有大批產品和解決方案問世,是一個值得重點把握和關注的領域。因此本文將為你匯總呈現(xiàn) TinyML 的全景:
?
什么是 TinyML?
什么是 TinyML 即服務?
TinyML 為何重要?
TinyML 的市場規(guī)模預測
TinyML 的最新產品有哪些?
TinyML 有哪些應用實踐?
TinyML 的相關組織
01
什么是 TinyML
機器學習(ML)正在變得越來越小。
?
正如文初所述,TinyML 是機器學習在微控制器上的應用,是超低功耗邊緣側人工智能。
?
?
無論何時何地,數(shù)據(jù)都需要即時可用,這一趨勢越來越明顯。全球各行各業(yè)都在經歷由這種需求推動的“數(shù)字化轉型”。根據(jù) IDC 的分析,到 2025 年,全球創(chuàng)建的數(shù)據(jù)中,超過四分之一的數(shù)據(jù)在本質上都是實時數(shù)據(jù),而物聯(lián)網(wǎng)實時數(shù)據(jù)將占這部分數(shù)據(jù)的 95%以上。
?
大量涌現(xiàn)的數(shù)據(jù)催生出了一系列全新的技術,機器學習、自然語言處理和人工智能,它們將數(shù)據(jù)分析從不常見的、追溯式的實踐,轉變成為戰(zhàn)略決策和行動的前攝式推動因素。這些技術可以大大提高各種行業(yè)、環(huán)境和應用數(shù)據(jù)分析的頻率、靈活性和即時性。同樣根據(jù) IDC 的預測,到 2025 年,屬于數(shù)據(jù)分析的全球數(shù)據(jù)總量將增長至原來的 50 倍,達到 5.2ZB;而機器學習所“觸及”的分析數(shù)據(jù)總量將增長至原來的 100 倍,達到 1.4ZB。
?
目前存在的機器學習可以劃分為 3 種形態(tài),云端 ML、邊緣 ML 和 TinyML。TinyML 正是針對占比超過 95%以上的物聯(lián)網(wǎng)實時數(shù)據(jù)處理場景。
因此,目前針對不同類型的計算平臺,在不同時間創(chuàng)建和使用的數(shù)據(jù)量,機器學習被較為清晰的劃分為 3 種類型,發(fā)揮著各自差異化的作用:
?
云端 ML:是指機器學習在企業(yè)內部或云端特定計算數(shù)據(jù)中心的應用。這些云服務器涵蓋所有類型,包括公共云、私有云和混合云。此外,它還包括運營控制中心,例如管理電網(wǎng)或電話網(wǎng)絡的那些運營控制中心。
邊緣 ML:是指機器學習在不處于核心數(shù)據(jù)中心的,企業(yè)級計算機 / 設備中的應用。邊緣設備包括服務器機房,現(xiàn)場服務器,以及位于各個地區(qū)以加快響應速度為目的的小型數(shù)據(jù)中心。
?TinyML:是指超低功耗的機器學習在物聯(lián)網(wǎng)各種終端微控制器中的應用。TinyML 通常功耗為毫瓦(mW)級別甚至更低,因此可以支持各種不同的電池驅動的設備,和需要始終在線的應用。這些設備包括智能攝像頭、遠程監(jiān)控設備、可穿戴設備、音頻采集硬件以及各種傳感器等等……
?
?
再看 TinyML 的發(fā)展現(xiàn)狀,從算法、軟件、硬件這三個維度分析,TinyML 已經進化到“足夠好”,可以實際應用的階段。
?
TinyML 是一個新興領域,是快速增長的機器學習技術和應用,是一片巨大的、未被充分開發(fā)的藍海。
?
數(shù)以億計的微控制器和各種各樣的傳感器結合在一起,在未來可能會激發(fā)一些非常有創(chuàng)意、更具實用價值的 TinyML 應用。
?
對 TinyML 做個簡單總結:
?
What:TinyML 是指超低功耗(毫瓦量級)的邊緣側機器學習應用。
Why:TinyML 可以提升大量物聯(lián)網(wǎng)設備的數(shù)據(jù)分析和決策能力。
How:TinyML 的實現(xiàn)需要硬件、軟件和算法的整體性協(xié)同設計。
When:現(xiàn)在是著手布局 TinyML 的最好時機。
?
TinyML 蘊含巨大機會,很多剛剛浮現(xiàn)。未來一兩年內,這個領域很可能會出現(xiàn)顯著進展。
02
什么是 TinyML 即服務(TinyML-as-a-Service)
接著我們再來看看什么是 TinyML 即服務。
?
這是愛立信率先提出的一個理念。
首先,我們需要明確的區(qū)分在物聯(lián)網(wǎng)終端中應用機器學習的兩種方式:
?
為物聯(lián)網(wǎng)終端設備提供機器學習服務
在物聯(lián)網(wǎng)終端設備中內嵌 TinyML 即服務
?
這兩種表述看似相像,實則不同。
?
在第一種情況下,為物聯(lián)網(wǎng)終端設備提供的機器學習服務,一般將所有 ML 任務都“外包”給邊緣設備和云服務器,終端設備則以接收者的身份,“被動”執(zhí)行由邊緣和云端下發(fā)的各種任務。
?
在第二種情況下,物聯(lián)網(wǎng)終端設備中內嵌 TinyML 即服務,“主動”參與智能決策與執(zhí)行。雖然與云端和邊緣相比,終端設備的資源非常有限,但 TinyML 即服務仍舊可以提升終端設備的分析能力,以便其能更好的處理實時物聯(lián)網(wǎng)數(shù)據(jù)。
?
?
因此 TinyML 即服務,真正的實現(xiàn)了將機器學習帶入到物聯(lián)網(wǎng)終端。
?
看到這里,你或許有個疑問:機器學習生態(tài)系統(tǒng)非常龐大,而且對資源要求很高。物聯(lián)網(wǎng)設備那么小,可以執(zhí)行哪些機器學習任務?
為了更好的回答這個問題,我們先來說說 TinyML 和云端 ML 之間的差異,它們分別處于兩個截然不同的世界。
上圖是從硬件和軟件的角度,定性和定量的比較 TinyML 和云端 ML 的差異。與 TinyML 可以調用的資源相比,云端 ML 簡直是“富豪”。為了順利推進,TinyML 必須采用與云端 ML 不同的思維模式。
?
在本文最初的三環(huán)圖中可以看到,TinyML 和 Linux 之間并沒有太多交集。大量的物聯(lián)網(wǎng)設備并沒有運行 Linux 的能力,TinyML 無法調用很多成熟的工具、應用和基于容器的虛擬化技術,必須另辟蹊徑的解決各種軟件、硬件和算法極為缺乏的問題,部署 ML 服務。
?
很多公司圍繞 TinyML 付出了各種努力,在后面的部分,我們將會介紹各種 TinyML 的產品和最新實踐。
?
當然,想要在終端物聯(lián)網(wǎng)設備中,獲得和云端 ML 同樣的體驗是不現(xiàn)實的。TinyML 主要實現(xiàn)的是推理(inference),也就是把從訓練中學習到的能力,應用到實際操作中去。
?
TinyML 想要落地,還需要一整套成熟的架構。愛立信將 TinyML 即服務的生態(tài)系統(tǒng)拆分為 3 個基本組件:
?
編譯器插件接口
編排協(xié)議
推理模塊規(guī)格
?
支持這三個組件,表示物聯(lián)網(wǎng)硬件可以滿足實現(xiàn) TinyML 即服務的基本要求。下圖中更詳細的展示了這 3 個組件之間的相互作用:綠色代表編譯器插件接口,黃色代表編排協(xié)議和推理模塊規(guī)格這兩個部分。
?
?
實現(xiàn) TinyML 即服務,需要面對的挑戰(zhàn)也是無比艱巨的:
?
TinyML 不僅需要面臨邊緣 ML 的全部困難,而且解決問題的能力更加有限;
如何借鑒云端 ML 的成功經驗,順利推進 TinyML 在終端中的部署;
如何為數(shù)量巨大的物聯(lián)網(wǎng)設備,都能提供 TinyML 的良好體驗。
?
03
TinyML 為什么重要?
看到這里,你應該對 TinyML 的重要性已經有了自己的評估。
?
我們再來統(tǒng)一做個梳理。
TinyML 的出現(xiàn),是為了更好的緩解邊緣 ML 和云端 ML 中,無法突破的多種問題,包括數(shù)據(jù)隱私、網(wǎng)絡帶寬、時間延遲、可靠性和能源效率:
?
數(shù)據(jù)隱私:大量的最終用戶非常在意數(shù)據(jù)隱私,在數(shù)據(jù)開放與共享方面保持謹慎態(tài)度。很多用戶不愿意將自己的數(shù)據(jù)交由第三方云平臺和邊緣服務提供商,進行存儲和管理。很多用戶傾向于定義清晰的“本地”物理邊界,以保存其關鍵的生產和運營數(shù)據(jù)。TinyML 嘗試在物聯(lián)網(wǎng)設備上,直接處理和分析受限的敏感數(shù)據(jù),保護了數(shù)據(jù)隱私。
?
網(wǎng)絡帶寬:很多物聯(lián)網(wǎng)設備通過窄帶物聯(lián)網(wǎng) NB-IoT 或者其他低功耗廣域物聯(lián)網(wǎng)通信協(xié)議與網(wǎng)絡通信,帶寬和數(shù)據(jù)傳輸能力極為有限。這些設備有強烈的在本地處理數(shù)據(jù)的需求,以減少數(shù)據(jù)的傳輸,降低網(wǎng)絡帶寬和傳輸功耗的壓力,避免在終端和邊緣設備之間形成帶寬瓶頸,影響整套物聯(lián)網(wǎng)解決方案的性能。
?
時間延遲:隨著 5G 等技術的發(fā)展,海量物聯(lián)網(wǎng)設備將被部署,很多應用場景都對時間延遲非常敏感,希望數(shù)據(jù)可以被實時傳輸。TinyML 通過將某些機器學習任務轉移到設備本身,來進一步減少網(wǎng)絡延遲的可能性,
?
可靠性:在偏遠地區(qū)、海上平臺、空間站、極端環(huán)境的應用中,網(wǎng)絡通信有可能無法保證始終覆蓋。因此在這些物聯(lián)網(wǎng)設備中,具備機器學習能力是一種必要功能。TinyML 可以將某些邊緣和云端中的機器學習能力移植到本地,提升可靠性。
?
能源效率:許多物聯(lián)網(wǎng)設備都是電池供電,對于功耗的要求很高。通過極低功耗 TinyML 的數(shù)據(jù)分析,減少網(wǎng)絡傳輸?shù)臄?shù)據(jù)量,可以在一定程度上,節(jié)約物聯(lián)網(wǎng)終端中的電量消耗。
?
因為具備解決多種問題的潛力,有望突破成本、帶寬和功耗的限制,因此一經提出,TinyML 就獲得了廣泛關注,并被賦予了較高期待。
?
04
TinyML 市場規(guī)模預測
?
?
海量的物聯(lián)網(wǎng)設備位于網(wǎng)絡邊緣,并且這些設備有越來越小的趨勢,因此 TinyML 的未來發(fā)展,具有極大的想象空間。
?
目前全球有 2500 億個微控制器在各地運行,僅 2018 年一年就售出了 281 億個單元,IC Insights 預測,到 2023 年,微控制器的年出貨量將增長到 382 億個。而且這些微控制器對應的設備,都有變得越來越智能的需求。
?
換句話說,未來分布在煙霧傳感器、心臟起搏器、車載終端中的 2500 億個微控制器,有可能可以執(zhí)行以前只有計算機和智能手機才能處理的任務。
?
?
根據(jù) SilentIntelligence 的預測,在未來 5 年,TinyML 將觸發(fā)超過 700 億美元的經濟價值,并且保持超過 27.3%的復合年均增長率(CAGR)。
?
?
TinyML 的市場規(guī)模比邊緣 ML 和云端 ML 都要大。
?
但是如此巨大的市場,卻較難開發(fā)。因此 TinyML 涉及到不同公司的協(xié)同,公司之間的商業(yè)模式也有本質區(qū)別。以 TinyML 領域的人工智能 SaaS 服務商 SensiML 為例,其商業(yè)模式如下圖所示。
?
?
2019 年 1 月,當時成立 6 年的 SensiML 被 QuickLogic 公司并購。根據(jù) QuickLogic 的財報披露,QuickLogic 以全部股票交易方式收購其所有已發(fā)行和流通在外的普通股,總價為 1,169,752 美元。
?
05
TinyML 的最新產品
?
?
上圖是由 Topio Networks 整理的邊緣智能產業(yè)圖譜。
?
邊緣 ML 是個相對成熟的領域,很多企業(yè)都在其中精耕細作,他們當中的很多也已經開始了 TinyML 的嘗試。
?
ARM、高通、谷歌、博世、蘋果和微軟等公司,正試圖加速推進 TinyML 的落地,將其搭載于各種傳感器上。
?
比如高通推出了超低功耗的 always-on 計算機視覺解決方案。
?
?
該方案具有超低功耗,始終保持開啟狀態(tài),使用系統(tǒng)電源小于 1mA 標準鋰電池,典型幀率為 1-30 fps。
?
對應的產品 Qualcomm? QCC112,已經可以實現(xiàn)商用。
?
?
博世推出了用于物聯(lián)網(wǎng)的 MEMS 傳感器,可實現(xiàn) TinyML 應用。
?
?
蘋果以 2 億美元收購了 TinyML 初創(chuàng)公司 Xnor.ai。Xnor.ai 致力于開發(fā)高效、低功耗的 TinyML 應用,這些應用不需要強大的處理能力,也不需要連接到云端,而是在設備上處理本地數(shù)據(jù)。
?
ARM 最近公布了兩款芯片設計,它們分別是 ARM Cortex-M55 和 Ethos-U55,可以實現(xiàn)在沒有云端連接的設備上,執(zhí)行機器學習的能力。
?
?
ARM 認為這兩款產品的推出,將會開啟終端智能的新紀元。
?
?
ARM 設想的用例是在智能手杖中的 360 度攝像頭,可以自動識別障礙物并上報主人,或者搭載于高鐵中的智能傳感器,可以就地識別問題并及時報警,避免延誤。
?
新品的推出將會極大的提升 ML 推理速度和能源效率。
?
?
不過預計相關的芯片,最早要到 2021 年初才能問世。
?
除了巨頭之外,初創(chuàng)公司在 TinyML 領域也非?;钴S。
?
GreenWaves 公司采用多個 RISC-V 內核,在超低功耗下實現(xiàn) TinyML 應用。其第二代產品 GAP9,擁有 10 個 RISC-V 核心。其中,一個作為結構控制器,另外 9 個形成計算集群。這些控制器和計算集群,運行于獨立的電壓和頻率域。并通過支持最先進的 FD-SOL 處理技術,進一步降低了功耗。
?
?
Eta Compute 公司的 ECM3532 適用于低功耗 IoT,擁有兩個核心,Arm Cortext-M3 和 DSP。可實現(xiàn)長待機狀態(tài)下的圖像處理和傳感聚合,功耗僅為 100 微瓦。該芯片具有 512KB 閃存和 256KB SRAM,Eta Compute 展示的案例包括語音、圖像和視頻識別,以及在工業(yè)傳感場景中的應用。
?
06
TinyML 的應用實踐
TinyML 尚處于應用的早期,在一些領域有了初步實踐:
?
車載應用:Swim.AI 在實時數(shù)據(jù)傳輸?shù)倪^程中使用 TinyML,通過有效提升傳感器中對于實時交通數(shù)據(jù)的智能化處理能力,減少了乘客的等候時間、交通擁堵的概率、改善汽車的排放并提升乘車安全。
?
智能工廠:在制造業(yè)中,TinyML 可以通過啟用實時決策,減少由于設備故障而導致的非計劃性停機。它可以根據(jù)設備狀況提醒工人必要時進行預防性維護。
?
QuickLogic 的子公司 SensiML 在這個領域進行了不錯的嘗試,基于他們的產品可以快速構建智能傳感方案。
?
?
并且 SensiML 已經將 TinyML 用于工業(yè)預測性維護的相關場景中。
?
對于預測性維護應用的開發(fā)人員,SensiML 智能化軟件工具包的優(yōu)勢在于,它使開發(fā)人員能夠在數(shù)天、數(shù)周內構建智能物聯(lián)網(wǎng)傳感設備,而無需數(shù)據(jù)科學或嵌入式固件專業(yè)知識。
?
該軟件包括 SensiMLData Capture Lab(數(shù)據(jù)捕獲實驗室),這是一個用于收集和整理訓練數(shù)據(jù)集的集成工具。
?
對于預測性維護,數(shù)據(jù)集是來自各類傳感器的時間序列數(shù)據(jù)。SensiML 人工智能軟件工具包分析標記數(shù)據(jù),以生成可實施異常檢測的分類器算法。然后使用同一工具編譯算法以在所選硬件目標上運行,例如微控制器或 QuickLogic 自己的 QuickAI 片上系統(tǒng)平臺。
?
?
智能零售:通過監(jiān)控店內貨架,并在商品數(shù)量低于一定水平時,立即發(fā)送警報,TinyML 可以防止零售端的商品脫銷。
?
智慧農業(yè):農民可能因動物疾病而遭受嚴重損失。利用搭載 TinyML 的遠程監(jiān)控設備,實時監(jiān)測牲畜的心臟、血壓、體溫,土壤的溫濕度等狀況,可以幫助農民預測和預防養(yǎng)植物和牲畜流行病的發(fā)作。
07
TinyML 的相關組織
每項成功的技術,都離不開核心團隊和相關組織的推進。
?
TinyML 領域最活躍的組織是 TinyML 基金會,這是一個由工程師們自發(fā)構建的社群,成立于 2019 年 7 月,經常進行小型交流,并且每年舉辦 TinyML 峰會。
---- 寫在最后 ----
微小的 TinyML 將會變得很大,這個新生事物正在逐步成型的過程中,需要來自軟件側、硬件側、算法側、應用側等涉及多方的通力協(xié)作,才能有效構建完整的生態(tài)系統(tǒng)。
?
關于這個領域的最新進展,我還會持續(xù)追蹤。
?
本文小結:
1.TinyML 是機器學習在微控制器上的應用,是超低功耗邊緣側人工智能。TinyML 通常功耗為毫瓦(mW)級別甚至更低,因此可以支持各種不同的電池驅動的設備,和需要始終在線的應用。
2. 想要在終端物聯(lián)網(wǎng)設備中,獲得和云端 ML 同樣的體驗是不現(xiàn)實的。TinyML 主要實現(xiàn)的是推理(inference),也就是把從訓練中學習到的能力,應用到實際操作中去。
3.TinyML 是一個新興領域,是快速增長的機器學習技術和應用,是一片巨大的、未被充分開發(fā)的藍海。