★華為云邊緣云創新實驗室 鄭子木
摘要:由于數據從邊緣產生,將部分機器學習任務部署到邊緣已成為必然趨勢。 當機器學習應用逐步被部署到邊緣,距離用戶更近、面對更復雜環境的開放世界 場景將從系統和算法兩個角度普遍、持續地影響邊緣智能應用的精度和運行。借 鑒人類的學習機制,我們已發表一種邊云協同終身學習范式以針對上述開放世界 中的邊緣智能問題。本文總結了邊云協同終身學習在理論走向實踐過程中遇到的 三大技術挑戰:可擴展性、任務定義和未知任務,并通過6個工業和園區領域應 用案例分享了相關技術探索和經驗。
關鍵詞:開放世界;邊云協同;終身學習
Abstract: As data is increasingly generated at the edge, deploying machine learning tasks at the edge has become an inevitable trend. When machine learning applications are gradually deployed to the edge, open world scenarios that are closer to users and facing more complex environments will generally and continuously affect the accuracy and operation of edge intelligence applications from both system and algorithm perspectives. Drawing on the learning mechanism of humans, we have published an edge-cloud collaborative lifelong learning paradigm to address the abovementioned edge intelligence problems in the open world. This paper summarizes the three major technical challenges currently encountered in the process of edge-cloud collaborative lifelong learning from theory to practice, i.e., scalability issue, task definition issue, and unknown task issue. We also share relevant technical exploration and experience through six industrial and campus case studies.
Key words: Open world; Edge-cloud collaboration; Lifelong learning
1 開放世界(Open World)問題
1.1 開放世界中的邊緣智能
近十年來,機器學習技術跨越資本市場的多輪高峰 與低谷,持續完成多項技術突破。比如AlphaGo多次擊 敗人類圍棋頂尖選手,AlphaFold預測出98.5%的人類 蛋白質結構,ChatGPT聊天機器人的對話質量令人驚 艷以至有可能支撐專業咨詢和研發等工作。不可否認, 機器學習在規則相對明確的封閉環境內,比如在游戲 中,已經展現出媲美甚至超越人類的能力,并且在封閉 環境中出錯的代價也往往較低。直至今日,這場十年級 別的技術狂歡時有中場休息,但并未中止,也絕非曇花 一現。
然而,在這場閃亮的機器學習狂歡背后,挑戰也如 影隨形。當機器學習應用逐步被部署到邊緣,在距離用 戶更近、面對更多開放環境的邊緣智能場景中,機器學 習的另一面愈發難以忽視。近五年的國內外邊側智能設 備異常樣例如圖1所示。
(1)2017年,雙足機器人標桿Atlas在演示過程中 失足摔落國際會議舞臺;
(2)2018年,U公司、T公司及G公司等頭部公司 的自動駕駛系統先后引發多起傷亡事故;
(3)2020年,福州中防萬寶城導購機器人跌落數 米高的電動扶梯并撞倒前方兩位客人;
(4)2021年,雙足機器人Walker X在世界人工智 能大會演示過程中意外摔倒;
(5)2022年,輪式機器人小蠻驢駛入河南大學校 園未干水泥地后陷入泥中無法前行;
(6)2022年,四足機器人Go 1在遞送飲品時頻繁 摔跤的視頻在互聯網上引發高熱度關注。
圖1 近五年的國內外邊側智能設備異常樣例
1.2 開放世界問題影響分析
從上面這一系列案例中我們可以看出,在開放世界 中的邊緣智能技術會遭遇大量長尾應用(Long Tailed Application)或異常案例(Corner Case),這不應 被視為某款產品或服務設計缺陷的特例,而應被視為邊 緣智能應用的普遍問題。開放世界問題在邊緣智能領域 有兩個原因,一是邊緣智能呈現需求森林化態勢,邊側 需求應用場景、硬件、環境等復雜多樣;二是邊緣智能 領域處于方案摸索期,各業務模型乃至平臺的協作生態 仍在成長,因此導致其在近期相當長一段時間內將持續 普遍存在。
開放世界的長尾應用或異常案例有兩大特點,即形 態多和數據少。其影響分析如下:
(1)系統性能層面
數據在邊緣產生,而算力卻在云端更為充足。也就 是說,機器學習服務在開放世界的多樣業務和硬件環境 下,全部在云上處理將難以滿足數據安全合規、服務離 線自治或實時性的要求,全部在邊側處理則得不到云端 在算力、開發環境、高階服務和產品生態上的支持,導 致整體智能服務質量以及研發、維護和銷售成本都受到 挑戰。
(2)算法性能層面
開放世界會從數據異構和小樣本兩個方面對邊緣智 能相關應用服務的正常運行造成影響,并進一步引發災 難性遺忘(Catastrophic Forgetting)問題。
圖2 數據異構問題:工業安全帽檢測案例樣本及其精度 (F1-Score)
數據異構方面,在如圖2所示的安全帽檢測案例 中,邊側智能攝像頭檢測來往工作人員是否已佩戴安全 帽[1]。從圖中可以看到,不同邊緣設備生成的樣本通常 具有不同的目標大小、背景和視角。從特定邊側數據訓 練的模型用于其它邊側,在數據分布相似時模型可維持 高精度并成功遷移(如圖2所示,識別精度達到90.56% —94.78%);而在數據分布差異巨大時,模型精度將 顯著下降并且不能混用(如圖2所示,識別精度相對下 降8.81%—64.33%)。
圖3 小樣本問題:智慧樓宇舒適度預測案例傳感器及 其樣本量
小樣本方面,在如圖3所示的舒適度預測案例中, 樓宇空調群控系統預測室內人員是否感到熱、冷或舒 適[2]。從圖中可以看到,絕大部分的城市邊側采集樣本 量難以超過200條,這與傳感器覆蓋、數據傳輸、冷啟 動和數據標注成本等問題相關。小樣本將導致模型訓 練無法收斂,過少的數據甚至可能導致部分訓練算法 無法正常啟動。
圖4 災難性遺忘問題:智慧樓宇舒適度預測案例
當小樣本和數據異構同時出現時,會誘發災難性遺 忘問題。在圖4的舒適度預測案例中,將室外平均溫度 30℃作為特征值輸入。在第一時刻,室外模型一開始顯 示為“熱”,是正確的預測。在第二時刻,受測人員從 室外到有空調的室內,實際上已經從熱變冷。由于特征 值沒有變化,正在運作的室外模型依然會輸出“熱”, 而這是不正確的。此時需采集更多數據,將室外模型更 新覆蓋為室內模型以正確預測。但是,當第三時刻人員 外出時,更新后的室內模型又再次不正確,需要重新更 新回室外模型。但由于室外模型已經被覆蓋丟失,因此 又需要重新采集數據訓練出室外模型,來覆蓋原有的室 內模型。這種來回反復的現象,即災難性遺忘問題。
綜合以上案例,從系統和算法兩個角度我們可以看 到,開放世界問題將會普遍、持續地影響邊緣智能應用 的精度和運行。
2 邊云協同終身學習概念、原理及挑戰
2.1 概念與原理
針對上述開放世界中的邊緣智能問題,我們可以從 人類的學習過程中得到啟發,并可以看到,人類之所以 能夠在開放世界中正常工作和生活,是由于每個人并非 自我封閉地學習,而是不斷地積累過去學習的知識,并 利用其他人的知識,學習更多知識[3]。借鑒人類這種學 習機制,我們已發表了在邊緣結合終身學習的邊云協同 終身學習正式定義[4,5]:
邊云協同終身學習(定義):給定云側知識庫中N 個歷史訓練任務,推理持續到來的當前任務和未來M個 邊側任務,并持續更新云側知識庫。其中,M趨向于無 窮大,同時邊側M個推理任務不一定在云側知識庫N個 歷史訓練任務當中。
具體地,邊云協同終身學習的基本技術原理是: (1)系統約束與性能壓力:邊云同架構實現應用云上 資源,同時保證數據安全合規與邊緣AI服務離線自治; (2)數據異構:多任務遷移學習為不同分布建立不同 任務,實現“千人千面”精準預測;(3)小樣本:未 知任務增量處理在小樣本下越學越聰明,逐步實現AI工 程化與自動化;(4)災難性遺忘:借助云側知識庫來 記憶歷史及新情景知識,避免災難性遺忘。
2.2 技術挑戰
經過近年來多個項目的技術探索和驗證過程,本文 總結了邊云協同終身學習在理論走向實踐過程中遇到的 三大技術挑戰。
(1)可擴展性挑戰:在開放世界中,邊緣智能呈 現需求森林化,相關場景可覆蓋交通、工業、能源、航 天、媒體、機器人、園區等10+行業,進一步考慮硬件 和環境,其模型和算法千差萬別。但學界已有的終身學 習工作往往依賴某類模型,比如只能用于線性回歸類模 型,或只能用于神經網絡類模型,甚至只能用于某種特 定的神經網絡模型。高度一體化的耦合設計會阻礙邊緣 智能方案的規模復制。首先耦合設計會阻礙邊云協同的 模塊分配等架構設計工作,更重要的是使在多個應用甚 至單個應用內跨場景遷移變得非常困難。在邊云協同終 身學習中,整體邊云協同系統的流程模塊化、算法模型 插件化等可擴展性的考慮是面對邊緣智能需求森林化的 基石。
(2)任務定義挑戰:面向開放世界的數據異構問 題,在云上構建單一模型用于邊側推理的單任務方法, 包括孤立學習、單任務增量學習、單任務聯邦學習等, 模型更新時需要覆蓋歷史模型,容易導致災難性遺忘問 題,“千人千面”非常困難。而通過人工定義多個模型 適配不同邊緣局點的多任務方法,包括多任務學習、多 任務增量學習、多任務聯邦學習等,多個定制化模型構 建與維護需投入人力物力,AI工程化和自動化任重道 遠。在邊云協同終身學習中,數據集中潛藏任務的自動 化劃分,目標推理樣本的任務分配等任務定義的考慮是 面對數據異構和災難性遺忘的前提。
(3)未知任務挑戰:面向開放世界的數據異構、 小樣本及其災難性遺忘問題,邊側環境復雜多樣,推理 階段所有任務在訓練階段都完美學習的封閉假設在邊緣 場景往往并不成立。需要假設邊緣模型運行時存在未知 任務,提前對未知任務進行識別,及時進行兜底和更 新,確保相關服務魯棒性和可靠性,以期解決開放世界 問題。
3 KubeEdge-Sedna邊云協同終身學習 設計與案例
2020年12月KubeEdge SIG AI提出的KubeEdgeSedna,如圖5所示,是基于KubeEdge提供的邊云協 同能力實現AI的跨邊云協同訓練和協同推理,近年來 在星地協同衛星、多邊協同重識別等案例上備受矚目。 KubeEdge-Sedna v0.3版本發布了業界首個邊云協同 終身學習開源特性。本章從邊云協同終身學習三大技術 挑戰出發,介紹其相關設計和案例。
圖5 KubeEdge-Sedna整體架構
3.1 面對可擴展性挑戰
KubeEdge-Sedna邊云協同終身學習作業(Lifelong Learning Job)分為三個階段:訓練、評估和部署,維 護一個全局可用的知識庫服務于每個終身學習作業,其 架構如圖6所示。在開發者啟動終身學習作業后,運作流 程為:
圖6 KubeEdge-Sedna邊云協同終身學習架構
(1)Sedna訓練worker基于開發者的基礎模型和訓 練數據集進行多任務遷移學習,實現任務知識歸納并更新 知識庫,其中任務包括:樣本、模型、模型超參等。
(2)Sedna訓練完成并對知識庫更新任務知識 后,啟動對評估數據集的評估worker,基于部署者定 義的評估策略,判斷符合策略的任務模型并下發部署。
(3)Global Manager捕獲評估任務的完成狀態 后,通知邊緣容器初始化,并在Lifelong推理Worker 中進行推理服務。邊緣節點基于Sedna Lifelong Learning API進行未知任務識別和推理,其中也按配 置策略上傳未知任務樣本。
(4)通過對接第三方打標系統和知識庫的遷移學 習,Local Controller監聽新數據變化,并按配置策略 觸發訓練worker進行增量學習,然后返回步驟1。
面對可擴展性挑戰,KubeEdge-Sedna邊云協同 終身學習當前已具備以下能力:
(1)系統模塊化
· 一體化系統流程已分解為多個模塊且各模塊具備 明確功能,以便邊云調度。
· 開放模塊配置,所有模塊均提供可跳過的熱鏈接 功能。
· 開放模塊算法配置,所有模塊均提供在符合模塊 接口下的算法切換功能。
(2)模型插件化
· 開放Estimator接口,滿足接口的任意類別模型 均可接入,并使能終身學習。
· 未知任務識別等模塊內置元模型和樣本遷移,可 自適應學習接入模型行為。
(3)場景可擴展
· 平臺核心與應用程序實現解耦,不同應用互不干擾。
· 開放基于K8S-CRD的超參數選擇,不同應用可實 現客制化。
(4)云原生邊緣計算
· 受益于K8S、KubeEdge的云原生邊緣計算能 力,便于應用的邊云調度和遷移。
后續章節也提供基于KubeEdge-Sedna終身學 習統一架構的多個不同場景案例,以佐證KubeEdgeSedna邊云協同終身學習的可擴展性。
3.2 面對任務定義挑戰
在邊云協同終身學習中,數據集中潛藏任務的自動化劃分,目標推理樣本的任務分配等任務定義的考 慮是面對數據異構和災難性遺忘的前提。任務定義相 關工作主要參與初始化和重訓練,因此歸屬于Lifelong Initial/Re-train Worker的Initial/Re-train模塊中。任 務定義的輸入是數據集和知識庫內各任務知識,輸出是 數據集中發現的任務集合。
關于任務如何劃分和分配的問題,需要確定在一 個應用內不同項目所需機器學習模型的數量以及各個 模型的應用范圍。該問題目前通常只能由數據科學家 和領域專家進行人工干預,自動化程度低,難以規模 化復制。其自動化是一個懸而未決但又重要的難題。 接下來本章分享四個基于KubeEdge-Sedna的工業和 園區多任務案例。
3.2.1 工業案例
如圖7所示,基于華為云Hilens服務的3個國際都 市中5個邊緣局點中57個攝像頭的驗證,用于安全帽檢 測的一種任務劃分方法(TForest)被提出并發表在數 據挖掘領域頂級會議ACM CIKM上[1]。該案例驗證一 種基于森林結構的多任務定義方法,華為云上也實現基 于KubeEdge-Sedna的公共服務HiLens來支持整個過 程。驗證方案與基線相比,F1平均高出9.2%,并且在 部署新攝像頭時需要的樣本減少43.1%。
圖7 Hilens安全帽檢測案例
如圖8所示,基于華為南方工廠6條產線機器連續 三個月收集的1876種焊盤(Pad)數據的驗證,用于焊 膏(Solder Paste)異常檢測的一種多任務遷移學習方 法(M-MTL)被提出并發表在人工智能系統領域頂級 期刊ACM TIST上[6]。該案例驗證了一種基于快速聚類 算法的多任務方法,驗證結果表明可以減少81.28%的 誤報,這意味著每年節省1130萬美元。
圖8 華為南方工廠錫膏異常檢測案例
3.2.2 園區案例
如圖9所示,基于華為2個大型工業園區中的8座建 筑物中9臺冷機4個月運行數據的驗證,用于冷機能效預 測的一種任務定義算法(MELODY)被提出并發表在 國際能源領域頂會ACM e-Energy上[7]。MELODY的關 鍵思想是使用元數據動態劃分多個任務,特別適用于元 數據多樣化但樣本不足的邊側系統。該案例驗證結果表 明MELODY算法優于最新預測方法,并能為兩個園區 每月節省252MWh的電量,較當前建筑中冷水機的運 行方式節省了35%以上的能源。
圖9 華為深圳園區冷機能效預測案例
如圖10所示,基于香港金鐘商業區3座商業大樓中 17臺冷機4年的運行數據,一種多任務遷移方法和一種 任務分配的方法分別被提出和驗證。前者亮點是基于元 數據提取任務屬性,設計了元數據任務屬性與樣本任務 屬性層次結合的多任務通用AI算法;后者是用于邊緣計算分配任務的任務排序算法,以提升性能與服務質量。 該案例驗證結果表明方案節約能源超過30%,文章相關 成果分別發表在人工智能頂級會議IJCAI與能源頂級會 議ACM e-Energy、分布式系統頂級期刊TPDS與頂級 會議ICDCS上[8-11]。
圖10 香港金鐘商業區冷機能效預測案例
3.3 面對未知任務挑戰
前文提及,邊云協同終身學習需要假設邊緣模型運 行時存在未知任務,并提前對未知任務進行識別,及時 進行兜底和更新,確保相關服務魯棒性和可靠性,以期 解決開放世界問題。該工作也將貫穿整個邊云協同終身 學習流程。下面我們分享兩個園區相關案例。
圖11展示的是一個基于全球28個國家99個城市的 樓宇熱舒適預測案例。在本案例中,我們首次提出一 種通過學習元知識和構建元知識庫的方式對熱舒適度 預測模型進行終身維護算法(LEON) ,引入元知識 及其運算符來自動發現生成了哪些模型,何時應該使 用以及如何更新。該案例驗證結果說明,就SMAPE而 言,LEON平均優于所有最先進的基線30.02%。文章 相關成果已發表在能源領域頂級會議ACM e-Energy 上[2]。
圖11 KubeEdge-Sedna熱舒適預測案例
圖12演示案例是在華為云園區部署基于KubeEdgeSedna終身學習的斜坡檢測模型,來越過低矮障礙物, 并讓終身學習來應對未知情況,最終實現智能導航, 可用于機器人遞送或工業巡檢。案例演示視頻已發布 于國際開源頂會Open Source Summit Japan 2022、 第一屆云原生邊緣計算學術研討會(KEAW'22) 以及KubeEdge社區公開課[12-14]。驗證結果顯示 Corner Case模型精度提升1.78倍,單次遞送時間減少 28.04%。
圖12 KubeEdge-Sedna云機器人終身學習案例
作者簡介:
鄭子木(1991-),男,廣東人,主任工程師,博士,現就 職于華為云邊緣云創新實驗室,KubeEdge SIG AI聯合創始 人,研究方向為邊緣AI、多任務學習及AIoT。
參考文獻:
[1] Zheng Z, Li Y, Song H, Wang L, Xia F. Towards Edge-Cloud Collaborative Machine Learning: A Quality-aware Task Partition Framework[C]. In Proceedings of the 31st ACM International Conference on Information & Knowledge Management (ACM CIKM' 22) , 2022, 3705 - 3714.
[2] Zheng Z, Luo P, Li Y, Luo S, Jian J, Huang Z. Towards lifelong thermal comfort prediction with KubeEdge-Sedna: online multi-task learning with metaknowledge base[J]. In Proceedings of ACM e-Energy' 22, 2022, 263 - 276.
[3] BLiu B. Lifelong machine learning: a paradigm for continuous learning[J]. Frontiers of Computer Science, 2017, 11 (3) : 359 - 361.
[4] Huawei Cloud Developers. Support edge-cloud collaborative lifelong learning features, KubeEdge sub-project Sedna 0.3.0 version released! [EB/OL]. https://segmentfault.com/a/1190000040132422/en, 2021 - 06 - 07.
[5] 鄭子木. KubeEdge-Sedna v0.3: 邁向次時代自動定制的AI工程范式[J]. 自動化博覽, 2022, 39 (2) , 72 - 75.
[6] Zheng Z, Pu J, L, Wang D, Mei X, Zhang S, Dai Q. "Contextual anomaly detection in solder paste inspection with multi-task learning."[J]. ACM Transactions on Intelligent Systems and Technology (TIST) , 2020, 11 (6) : 1 - 17.
[7] Zheng Z, Xie D, Pu J, Wang F.. Melody: Adaptive task definition of cop prediction with metadata for hvac control and electricity saving[J]. In Proceedings of ACM e-Energy' 20, 2020, 47 - 56.
[8] Zheng Z, Wang Y, Dai Q, Zheng H, Wang D. "Metadata-driven task relation discovery for multi-task learning."[Z]. In Proceedings of IJCAI (CCF-A) , 2019.
[9] Zheng Z, Chen Q, Fan C, Guan N, Vishwanath A, Wang D, Liu F. "Data Driven Chiller Sequencing for Reducing HVAC Electricity Consumption in Commercial Buildings."[C]. In Proceedings of ACM e-Energy, 2018.
[10] Zheng Z, Chen Q, Hu C, Wang D, Liu F. "On-edge Multi-task Transfer Learning: Model and Practice with Datadriven Task Allocation."[C]. In Proceedings of IEEE TPDS (CCF-A) , 2019.
[11] Chen Q, Zheng Z, Hu C, Wang D, Liu F. "Data-driven task allocation for multi-task transfer learning on the edge. "[C]. In Proceedings of IEEE ICDCS (CCF-B) , 2019.
[12] Luo SQ. From Ground to Space: Cloud-Native Edge Machine-Learning Case Studies with KubeEdge-Sedna[EB/OL]. https://www.youtube.com/watch?v=bIaeWGelsJE, 2022 - 12 - 05.
[13] 鄭子木. 邊云協同終身學習在智慧園區及工業領域創新探索及落地[EB/OL]. KEAW'22, https://www.bilibili.com/video/ BV1Me411N7gA/, 2022 - 11 - 17.
[14] 鄭子木, 楊浩進. KubeEdge云原生邊緣計算公開課12-邊緣智能進階: 適配多樣場景和應對分布式系統[EB/OL]. https://www.
bilibili.com/video/BV1W44y1R7uB, 2022 - 12 - 27.
摘自《自動化博覽》2023年第2期暨《邊緣計算2023專輯》