王 睿 齊建鵬 陳 亮 楊 龍
1(北京科技大學計算機與通信工程學院 北京 100083)
2(北京科技大學順德研究生院 廣東佛山 528300)
Gartner 指出2022 年將有75%的企業數據在邊緣側產生[1],IDC 預測2025 年將有416 億個邊緣側設備實現互聯數據量達79.4 ZB[2].由于云計算的實時性差、帶寬受限、高能耗、維護費用高、隱私安全等問題[3-7],將不能應對邊緣側如此海量的設備與數據,使對用戶服務的有效提供面臨嚴峻挑戰,促使邊緣計算的蓬勃發展[8].邊緣計算將計算、存儲等資源下沉至用戶側,以其低時延、動態性、移動性以及位置感知等特征,在智能醫療、智能家居、軍事及農業等領域發揮了重要作用[9-13].隨著通用設備的不斷普及、專用設備的不斷下沉、虛擬化及中間件技術的飛速發展、設備性能的不斷提升以及基礎設施運營商的大力投入等[13],催生出大量可在邊緣側進行訓練與推理的邊緣協同技術架構,如FATE,Paddle-Lite,Tensor-Flow Lite 等[14],借助多樣化的邊緣設備協同能力,使單設備下的多業務場景、多設備下的復雜智能業務場景發展迅速.各種云、邊、端間協同技術的不斷進步[15-16]與各種機器學習模型訓練優化技術、輕量化技術[17]的深入研究,促進了邊緣智能(edge intelligence,EI)相關方向的飛速發展.邊緣智能或智慧邊緣計算是指借助邊緣側輔助實現機器學習模型的訓練與推理的一系列智能化方法,使智能更加高效、貼近用戶、解決人工智能“最后一公里”問題[18-22].邊緣協同智能則指在邊緣智能的基礎上進一步通過邊緣節點間的協同,融合邊緣計算資源(網絡、計算、存儲、感知、應用等)核心能力實現的智能.從其生命周期來看,可劃分為訓練階段、推理階段以及模型的部署更新,而本文則聚焦于其中的推理階段.
本文第1 節對邊緣智能側重于從協同推理角度的發展簡史以及整體過程進行縱向總結,引出目前邊緣協同推理涉及到的關鍵技術,描繪出邊緣協同推理在邊緣協同智能中的整體位置,并給出2 個分類標準,將邊緣協同推理的智能化方法與邊緣協同推理的整體架構,與已有文獻進行比較,突出本文貢獻;第2 節從協同角度根據分類標準對已有的協同推理階段、部署更新等問題進行總結并結合邊緣計算資源特點對不同技術進行橫向比較與分析;第3節聚焦于對邊緣協同推理在動態場景下的挑戰進行總結,本文提到的動態場景[23]包括有地理位置帶來的環境變化、邊緣計算資源發散、網絡拓撲的變化、服務性能波動大、節點頻繁交換導致服務或系統吞吐量的動態變化以及應用、網絡、設備等帶來的不確定性,標準不統一的場景.并對未來值得關注的研究方向進行初步探討;第4 節總結本文.
圖1 展示的是在谷歌學術上使用“edge intelligence”關鍵詞進行檢索,得到的關于邊緣智能的文獻數量與年份對應的發展趨勢.從圖1 來看,截止2020 年,邊緣智能的發展正處于爆發期,還未達到平穩發展期.

Fig.1 Edge intelligence developmental trend圖1 邊緣智能發展趨勢
進一步,通過對Web of Science 中以關鍵詞“edge intelligen”檢索得到的239 篇文獻進行分析,本文將邊緣協同智能劃分為3 個階段:萌芽期、技術儲備期以及爆發期.本文關注的邊緣協同推理在圖2 中同時給出了所涉及到的推理過程中使用的核心技術及其在邊緣智能發展過程中的關鍵時間節點,從中也可以觀察到,人工智能領域涌現出的新技術會極快的同步應用到邊緣智能中(圖2 中相同形狀圖標表示同一類型技術),如神經網絡架構搜索(neural architecture search,NAS)與計算能力受限的硬件資源結合后演變為神經網絡架構實現搜索(neural architecture and implementation search,NAIS).技術突破的關鍵問題是如何在資源受限的邊緣計算場景中應用新技術.這些協同推理關鍵技術極大促進了邊緣智能的發展,下文將在邊緣智能的基礎上,結合圖1、圖2,重點對這些關鍵技術進行歸納總結并同時從協同角度給出分析.
邊緣協同智能萌芽期(2003—2012 年).“edge intelligence”一詞最初源自有線網絡傳輸場景,主要目標是提升網絡的可靠性、智能性[24-25].隨著移動通信技術的發展,多媒體為代表的各類服務在網絡中呈爆發態勢,用戶的移動性給各類服務的管理帶來挑戰,邊緣協同智能被應用于移動用戶的管理,主要目標是提升服務管理效率、降低時延[26-27].而此時對如何利用分布式網絡中的資源還未形成系統性認識,多為簡單的智能算法相互組合,節點間協同性不強,未涉及到與深度學習技術的結合,能支持的智能業務有限.

Fig.2 Emerging time of key techniques in collaborative inference圖2 協同推理關鍵技術出現時間
邊緣協同智能技術儲備期(2012—2016 年).該階段隨著深度學習技術的迅速發展,大量引人注目的成果不斷涌現,如2012 年的AlexNet[28]和2015 年的Inception[29]分別在ImageNet 比賽中取得了令人矚目的成果.隨后,更加輕量化的深度學習模型處理技術被不斷提出,并應用到邊緣設備上,使邊緣設備具有了智能化的推理能力[30].隨著深度學習與邊緣計算不斷融合,基于邊緣協同的智能處理方案開始顯現,如在跌倒檢測應用中在邊緣設備和邊緣服務器之間對智能檢測算法進行簡單拆分[31].同時,云原生的虛擬化容器技術,如Docker,也開始迅速發展.此時與深度學習結合的邊緣智能開始成為主流,一些中間件、虛擬化技術也飛速發展,但還未出現以邊緣計算資源特點與深度學習模型結構融合的推理方法.
邊緣協同智能爆發期(2017 年以后).得益于上個階段的技術儲備,該時期大量的深度學習模型與邊緣計算結合,眾多邊緣協同智能處理方案迅速增長,如邊緣計算場景下的分布式協同訓練[32]、聯邦學習[33];基于模型切割、早期退出等技術的分布式協同推理[34-35]、淺層的寬度學習系統[36]與虛擬化技術的結合,使邊緣協同智能的快速落地成為可能,極大減輕了不同設備間的運維成本[37-38].現階段用于邊緣協同推理的場景復雜多樣,用于推理的基礎服務或架構還未形成穩定發展的趨勢,表現出應用層所具有的多樣化特點.
結合邊緣智能當前所處的階段可以看出,其目前正處快速發展階段,這也說明邊緣協同推理方向存在眾多問題與挑戰,由于目前未對邊緣協同推理形成整體概貌,有必要對其進行進一步分析,對相關技術進行歸類劃分,指明未來的發展方向.
邊緣協同推理利用節點間的協同,通過不同的訓練優化手段,獲取用于協同推理的模型并結合場景的資源特點等信息在訓練節點或邊緣設備等資源上完成部署.如圖3 所示,按照邊緣協同推理在邊緣協同智能中的生命周期位置來看,推理階段與訓練階段相互結合,是一個不斷往復循環、不斷提升的過程.根據推理業務需求,其中還可能涉及模型的更新部署(本文“更新”特指替換服務中的推理模型,而非訓練階段的梯度等的更新).

Fig.3 Key techniques,processes and application scenarios of edge collaborative inference圖3 邊緣協同推理關鍵技術、過程及應用場景
通過訓練得到的模型往往不能直接應用到推理場景,需要額外的模型處理步驟.根據模型的生命周期以及推理場景的資源特點,訓練階段可采用的優化手段有模型選擇、模型量化、早期退出、神經網絡架構(實現)搜索等.推理階段可對模型進行2 次處理,結合早期退出、模型量化、神經網絡架構(實現)搜索等方式對模型進行進一步修改,以及在支持節點協同的情況下,采用模型切割、模型選擇等技術對模型進行2 次無損處理;在推理階段的后期,由于時間、業務、數據等的變化涉及到模型的更新,此時多借助重新訓練模型、在線學習等技術.
除此之外,通過圖3 還可看出,邊緣計算場景的資源異構性會涉及到不同的推理架構適用性問題.目前來看推理架構的選擇通常與特定的推理模型處理技術相關.本文將從推理的智能化方法與架構2 個角度對現有研究展開討論.值得一提的是,目前邊緣計算方面有著眾多優秀的工作,由于篇幅所限,本文主要針對邊緣協同中推理階段的模型處理、更新部署以及運行推理的架構進行闡述.
由于推理過程中所用機器學習模型規模大、復雜性高,限制了推理關鍵技術在邊緣計算場景下的訓練與應用.目前,有研究者針對模型的推理內容進行了總結.文獻[39]探討了分布式機器學習的發展,討論了其系統性挑戰以及利用高性能計算加速和提高可擴展性的方法,描述了一種分布式機器學習的參考架構,基于此給出了各個階段的常用算法.文獻[40]總結了分布式協同優化中的熱點研究方向,包括加速優化算法、非凸優化算法和無梯度優化算法,并結合實際應用場景進行了展望.文獻[41]回顧了物聯網場景中能夠支持機器學習的模型在低性能硬件上執行的主要技術,比較了深度學習、RNN、GAN 等可在邊緣設備上實現的機器學習算法和這類算法下沉到邊緣的過程;作為底層支持,還介紹了基于邊緣服務器的架構、支持AI 的物聯網無線標準、卸載技術、隱私問題處理和訓練階段的邊緣實現.文獻[42]在深度學習的基礎知識和最新技術的基礎上,分析了在邊緣設備上執行深度神經網絡訓練和深度學習模型推理的方法和架構,并探討了在邊緣部署深度學習的未來與挑戰.文獻[43]在文中討論了加速深度學習推理的不同結構與方法,分為僅設備端執行、僅邊緣服務器執行和中間方案3 種,以及在邊緣設備上訓練深度學習模型,重點關注了多設備和隱私處理的分布式訓練.文獻[18]在概述了深度學習和邊緣智能的基本概念與定義后,針對深度學習模型在網絡邊緣進行訓練/推理的總體架構、框架和新興關鍵技術作出了介紹.
文獻[18,39?43]關注深度神經網絡模型壓縮與加速技術,并針對邊緣設備中的訓練和推理作出了總結,與之不同的是,本文充分調研了近幾年來邊緣智能相關的文獻,從動態場景角度,重點關注節點間協同的推理處理方式,分別從推理模型與架構的角度進行描述,總結了用于邊緣協同推理的核心技術發展,對邊緣智能中訓練和推理相關技術面臨的機遇與挑戰做出了展望.
本文貢獻有5 個方面:
1)按照關鍵技術的發展脈絡,對邊緣協同智能發展史進行了梳理;
2)對邊緣協同推理進行分類,將其劃分為邊緣協同推理的智能化方法與架構;
3)對邊緣協同推理中的模型輕量化技術進行歸納整理及分析,并橫向比較了不同技術的適用范圍;
4)對邊緣協同推理中的架構進行歸納整理,分析了不同架構的優缺點及適用場景討論;
5)除了對每種技術進行單獨分析外,本文還對邊緣協同推理的共性問題進行了分析,并指出其值得發展的研究方向.
將邊緣智能中的協同推理階段現有研究劃分為2 個方面:推理智能化方法與架構.智能化方法指的是與推理任務相關的智能化方法,本文主要針對深度學習(或深度神經網絡).架構指運行推理任務的底層網絡拓撲結構.通過對智能化方法的觀察與分析,歸納出用于邊緣協同推理的核心技術;通過對已有工作在架構角度的抽象,歸納出目前協同推理在部署及運行時的特點、適用場景及不足之處.
主流的深度神經網絡模型大小通常為幾兆字節甚至幾百兆字節,計算量較高給低配置的邊緣節點帶來了挑戰[44],因此需要考慮如何在邊緣節點上對模型進行部署.一般而言,邊緣計算中的各個資源指標是有限的,這就導致在給定的約束條件下會存在多個可行解,需要考慮對存儲、計算、通信、能耗、隱私等的“折中”方案,實現“折中”的過程涉及模型的處理方式,主要是對模型進行輕量化的優化技術.本節就目前相關主流技術進行歸納整理,并在協同推理角度進行分析.
2.1.1 模型切割
深度神經網絡模型多具有良好的內部結構,如圖4 所示,按照模型的內部結構可通過縱切、橫切及混切等方式將模型切分成不同粒度且具有相互依賴關系的模型切片[45],之后將切片按照依賴關系分別部署在云及邊緣端.如采用縱切方式的DeepThings[46-47],橫切方式的Neurosurgeon[34]、MoDNN[48]、Cogent[49].混切方 式的DeepX[50]、AOFL[51]、CRIME[52]、DeepSlicing[53],以模型切割為主壓縮等其他輕量化方法為輔的Edgent[54],ADCNN[55]等,通過優化資源(能耗、通信或計算等)的代價函數對模型內部的切割點進行枚舉,以尋找滿足用戶或系統需求的切割方案.模型切割技術在保證模型推理精度不變的前提下,能更好的適應邊緣計算.但由于邊緣計算中涉及資源分布廣泛、性能不一,尤其是在動態場景下資源地理分布范圍廣,造成所面臨的環境時刻發生變化且不唯一;網絡規模變大造成網絡拓撲變化;邊緣計算場景中計算資源不集中,靠近用戶側,資源發散;應用、網絡、設備的異構性等邊緣計算資源類型多;由于同一節點運行多種類型服務的情況,資源分配困難使得網絡擁堵,服務器波動大;故障頻率高、性能波動大、節點協調困難、服務調整趨于被動,存在滯后性并需要分布式思維解決等問題.切割技術中需要引起關注的是切割的整體過程,其中包括切割的執行者、切割時的參考依據如何獲取、切片的依賴關系映射、切片更新時間及頻率等,這決定了切割的方案在邊緣計算環境中的適用性及穩定性,表1 給出了不同方法的模型切割過程中涉及的關鍵步驟的比較.

Fig.4 Model partition methods圖4 模型切割方式

Table 1 Comparison of Model Partition Methods表1 模型切割方法比較
通過表1 可以看出,由于邊緣計算資源的可用性會發生變化,因此涉及切片的重新部署.主流方式多采用中心節點對其他邊緣節點狀態進行收集,從而作為模型重新切割的依據,之后將模型切片下發到邊緣節點.這種收集節點狀態的形式默認對所有的邊緣節點具有感知能力,但這個前提并不適用于邊緣計算尤其是動態場景[55,58].在模型的重新切割及部署上,涉及2 個關鍵問題:1)模型或數據可支持的并行度對推理速度產生重要影響,由于模型的內部結構采用橫切的方式,在并行度上很難提升;縱切雖然可極大提升并行度,但一般會帶來數據依賴的問題,因此設計適合縱切的模型是一個重要的研究方向,如考慮計算復用、設計可用于無數據依賴切割的模型等[45,55].2)部署方案更新的頻率較高會帶來過高的代價,既包括切片本身也包含所涉及的其他組件;此外,切片更新過程中可能會面臨無法提供服務問題帶來的服務抖動,此時可參考經典的任務冗余(副本)技術解決.節點擁有整個模型是避免針對同一模型重新切割帶來的反復下發調度,提升協同推理靈活性的關鍵.但對于運行內存不足的節點而言,擁有整個模型存在較大阻礙,此時可借助其他輕量化技術對模型進行壓縮或考慮輔助存儲、網絡存儲的形式減少頻繁更新切片帶來的額外代價,此外,在線學習、感知學習[59]等實時更新模型的學習方式也值得關注.
除了關注模型切片的部署之外,推理時切片間依賴關系的處理也值得關注,如根據網絡狀態自適應決定相鄰切片間數據或張量(tensor)的壓縮率[56-60]以應對緊張的通信資源.在切片間的依賴關系路由或服務發現上,目前多數都采用固定的IP 映射的方式,或采用解析節點進行,當部署的切片所涉及的節點數量過多時,固定的IP 映射的方式尤其不適合于動態的邊緣計算環境,采用解析節點則引入了額外的解析時間[61],數據命名網絡可為此方面問題提供解決方案[62].此外,多用戶方面的協同推理還有所欠缺,目前的解決方案多針對單個場景,涉及的應用不多,用戶量不多,默認的是邊緣服務器資源充足的場景.當面臨多用戶、多應用時,由于邊緣計算的地理分布特點,云計算中資源的按需擴展很難在邊緣側實現,這會導致資源緊張,使服務滿足不了用戶或企業需求,此時可參考計算復用的思想,如多場景共用通用模型的部分切片[63].雖然依據模型的內部結構對模型進行切分的研究成果較為豐富,但多數模型切片部署方案針對的是邊緣計算資源狀態相對穩定或基于瞬時狀態的靜態場景,其穩定性易受動態場景影響而出現系統瓶頸,可以參考的方案是從模型的魯棒性入手,當存在某個瓶頸節點時可直接跳過部分子切片或神經元[64-65].在具體的場景中,由于節點的資源是相對有限的,節點算力存在差異而且處于動態變化中,這增大了對于恰當的模型分割點的選擇難度.無論橫切還是縱切的切割方式,劃分計算任務時如果不能有效結合節點算力差異,導致任務分配下發不合理,那么節點間的協同效率也會受到較大影響.另外在節點協同處理問題的情境中,網絡狀態的處理也十分重要,不僅會直接影響到模型切割的結果,在執行推理的過程中,產生的通信延遲也會明顯影響推理服務質量[66].同時現有的模型切割方式存在策略的選擇不夠全面,為了實現協同,難以兼顧推理效果、推理延遲、服務能耗等問題.
2.1.2 模型壓縮[67]
由于邊緣節點內存、計算能力、能耗等有限,模型的魯棒性、稀疏性等允許我們通過張量分解方法對張量降秩處理[68];通過剪枝剔除影響小的參數對模型進行壓縮[17,64];通過量化方法降低權重和中間計算結果的位寬[69-70],進一步降低模型在內存與計算量上的需求,文獻[17,64,68?70]方法屬于軟件優化,在其應用于具體的邊端設備時,由于模型的多樣性與一些加速芯片的架構特點并不匹配,甚至可能存在“內存墻”問題,在模型的推理速度及能耗提升上還存在阻礙[71],為了進一步有效利用資源,結合資源特點進行定制化的壓縮,軟硬件協同優化[72-73]也值得關注.
在軟件優化方面,除了與訓練過程結合生成低稀疏性的緊致模型外,還包括對已有模型的處理,處理技術主要包含剪枝與量化2 種技術.對剪枝而言,從模型的結構出發,可分別對濾波器(filter)[74]、通道(channel)[75-76]、神經元[77]等分別或混合[78]進行壓縮處理.在剪枝粒度上,主要包含非結構化剪枝與結構化剪枝2 種.非結構化剪枝刪除任意位置的權重,其特點是粒度細、壓縮率高,如在多次迭代過程中刪除冗余參數的知識蒸餾方法[79].但非結構化剪枝并不能顯著降低計算量且因存在的稀疏性帶來額外開銷,需要定制化加速器才能完成計算加速.結構化剪枝中剪枝粒度大,具有良好的加速效果,如通過后繼層對前驅層的重要性反饋刪除影響小的通道[75],但此類方法壓縮率相對較低.這促進了對混合粒度的剪枝方法研究,如滿足一定結構規則性的基于模式的剪枝方案對卷積內核進行修剪以滿足特定模式[80].剪枝操作通常會給推理精度帶來不利影響,目前主流方法多采用重新訓練的方式解決這個問題[74],但對重新訓練而言,由于計算代價大,重新訓練比較適用于精度及效率具有重要意義的場景[70],即需要評估模型部署后所帶來的收益與重新訓練的代價后才考慮是否選擇重新訓練.
對量化而言,由于模型的參數量巨大,低位寬的數據表示方法可以極大壓縮模型尺寸,提升推理速度.根據取值范圍,可將量化分為2 值量化、3 值量化[81]、線性量化、非線性量化[82],其本質是多對一的映射問題.2 值量化方法中,主要是將權重映射為1 和?1[69],將激活值映射為1 和0[83];3 值量化主要是在2 值量化基礎上引入額外的0 來增強所能表達的狀態空間[84-85];線性量化則主要將原始權重數據量化為連續的對硬件友好的定點[86-90];非線性量化通常沒有特定的映射規則,也有學者稱其為參數共享[91],如使用不同的哈希映射對網絡每一層進行壓縮[92];使用k-means 聚類實現相近參數的壓縮[67,93],將最近鄰居量化到相同位寬[94]等.由于數據表示的精度上存在損失,因此,量化方法會對推理精度帶來一定影響.同樣的,也可通過重新訓練提升推理精度[94],進一步地,為了充分貼合硬件的計算性能,可通過編譯器的指令優化使算法級壓縮與硬件資源優化相融合[80],從而達到在可移植的基礎上進一步提升推理速度的目的.
在軟硬件協同優化方面,硬件敏感的神經結構搜 索(hardware-aware neural architecture search,HNAS)成為熱點,不同于軟件層面的模型壓縮方法,HNAS將硬件資源與模型同時考慮在內實現定制化壓縮.定制化的壓縮方案極大提升了推理性能.但有些硬件的結構是可重塑或定制化的,如FPGA.因此,好的模型壓縮方法還需要考慮如何在一個可變的硬件上進行充分壓縮,如NAIS,NAIS 方法所面對的搜索空間既包含模型本身又包含硬件特點,實現最優的部署需要較高的代價,針對此問題,文獻[95]設計了一種可微分的方法來加速該過程;同時,由于模型稀疏性普遍存在,設計高效的跳零架構,直接跳過冗余的零值計算.加速計算過程[96]以及存內計算(processing in memory)[97]等也值得關注.
現有大多數方案都基于固定或基于歷史數據分析的資源分配,在資源不穩定的情況下,推理運行時的效果也值得關注.該方面可結合硬件進行實時壓縮,考察激活值的稀疏性、動態的壓縮激活值.如,通過區分圖像敏感區域,自適應地選擇不同的激活值和權重量化位寬[98],通過對輸入數據按照取值范圍編/解碼,實現多通道自適應壓縮[99]等.這方面的研究目前不多,尤其是在邊緣計算場景下值得關注.
小結與分析:可以看出,模型壓縮涉及范圍廣泛,從模型的內部結構出發,包含了模型不同的組成部分,從使用的場景出發包含了與硬件資源結合時的優化,單獨一個方法很難適用于不同的場景,方法的適用性對邊緣計算場景而言至關重要.由于涉及的資源分布廣泛,節點性能存在很大差異,僅靠人工設計網絡結構及壓縮的方式很難普及,通過軟硬件協同的網絡壓縮自動化方法值得我們進一步挖掘.然而,目前對模型進行壓縮及更新替換的多數方法皆通過高性能服務器或云等遠端進行[100],在不具備這種條件的場景,如野外、戰場、隱私安全要求高的環境或通信代價大的場景,需要設備間的協同來完成更新.但由于邊緣計算場景資源異構性的存在,當前壓縮方法及精度表示多種多樣,在不同設備間移植的兼容性需要進一步考慮.
就量化方法而言,雖然保留了完整的模型,但不同硬件由于功耗上的設計使其可表示的數值精度存在很大差異[101],固定位寬的表示方式可能并不適用于臨近的所有協同節點,這種情況下接收到的模型與資源的匹配度無法達到最優,2.1.2 節提到的多種優化方法也就無法發揮作用,再次壓縮處理的模型是否滿足需求甚至能否再次訓練值得關注.值得一提的是在邊緣協同推理場景,受限資源的分配及調度粒度至關重要,該問題將決定“騰出資源做合適的任務”等資源調度及優化的發展.除此之外,還需要注意的是,邊緣節點的可用資源是不同的、動態變化的,現有的壓縮方法對此的適應性存在空白,亟待解決.
2.1.3 模型選擇/早期退出
如圖5 和圖6 所示,模型選擇指首先訓練具有不同尺寸大小的模型,之后結合推理場景,自適應地選擇合適的模型用于離線推理.早期退出(early exit)與模型選擇相似,不同之處在于早期退出除了最終的輸出層之外,還可通過中間層輸出結果,避免數據流經整個網絡,并可以實現參數共享[18].

Fig.5 Early exit pattern圖5 早期退出模式
早期退出(典型的如BranchyNet[102])通過增加多個推理分支提升模型推理速度.由于多分支的加入,相比模型切割帶來了更多可能性,如文獻[32]針對云邊協同場景提出分布式深度神經網絡(distributed deep neural network,DDNN),以分支為切割點,將切割點的兩側分別部署在邊緣端與云端.與模型選擇類似,由于具有多個推理分支,退出點的選擇是決定邊緣協同推理在云端還是邊緣端進行推理的關鍵.早期退出通過分支選擇器計算分支可信度來決定推理的退出點.可信度可通過計算Softmax 輸出層的熵大小或額外增加可信度決策模型得到,如文獻[103]提出AO(authentic operation)模塊,為每種類型的推理任務建立了個性化的決策閾值,文獻[104?105]針對連續多推理請求場景(視頻分析),考慮可滿足時延要求的退出點,以是否滿足時延要求設計收益函數,并以此作為分支選擇依據,按照請求的先后次序進行推理,并給出了按先后次序(ordered scheduling structure)調度可以得到的一個最優結果的證明.

Fig.6 Model selection pattern圖6 模型選擇模式
在驗證方面,如何快速地對所提早期退出算法進行驗證是實現快速迭代的前提,文獻[106]提出了一款基于MATLAB 的DeepFogSim 仿真平臺,Deep-FogSim 以能耗-時延為優化目標,模擬云—邊—端協同場景,并支持部分資源動態性.我們前期對目前已有的大量開源邊緣計算仿真平臺進行了歸納整理,或可為快速驗證想法提供有效的技術候選方案[14].同時,針對動態場景特點,我們也研發了開源的仿真平臺EasiEI[107].
在模型選擇方面,簡單的形式是同時準備2 種尺寸的模型分別部署在邊緣側與云端,邊緣側用于初步的推理,當推理結果的可信度不滿足給定的閾值時,則選擇云端進行推理[108-109].由于模型訓練的架構、網絡結構不同,在推理時延、能耗以及精度等有所差異,在同一場景下,如何在不同的模型之間進行選擇是首先需要考慮的問題,即模型選擇器(model selector),如以降低推理時延為目標,通過前置專用的預測模型[110-112]識別輸入數據,自動選擇合適的推理模型.在不同場景下,尤其是在資源緊張的邊緣計算場景下,單終端節點可能面臨多任務推理場景或多租戶場景.此時不同任務之間的競爭、調度等易導致服務質量下降.這方面的研究主要是對不同領域的模型進行智能選擇或模型融合[100,106,108,113].如文獻[63]結合遷移學習共享了部分計算用于支持不同場景的推理任務.
小結與分析:可以看出,模型選擇與早期退出都涉及到如何根據給定的優化目標進行決策的問題,在決策過程中需要針對目標設置合理的閾值.然而,優化目標一般是推理精度與能耗、時延等的折中.由于邊緣計算場景眾多、資源類型不一,自動化地確定閾值是該類輕量化方法能否適應不同場景的關鍵,尤其是在推理過程中,閾值的確定應當根據當前的運行狀況進行動態改變.文獻[54]考慮了節點協同時網絡的動態性,提前計算出不同的早期退出點與切割點候選方案,在推理過程中結合網絡變化實時調整推理方案,利用多節點協同共同保證推理精度,滿足了一定的實時性.但早期退出方法的退出點數量受限于模型層數,在資源已經受限的邊緣協同環境中,由于節點算力差異與變化,按照退出點進行切割然后采用協同推理的方式無法提供更加靈活、更細粒度的資源分配控制,這方面還需要進一步提升.與其他技術,如模型壓縮結合或可提供潛在的解決方案.在模型選擇方面,通過協同方式有效獲取節點特點、節點運行狀態是選擇合適模型的關鍵.一種可行的方式是結合不同節點的歷史數據與推理模型的算子、結構等來訓練用于評估推理效果的模型,近期研究nn-Meter[114]根據不同類型邊緣節點的特點,對在不同節點上進行推理的時延進行預測取得了不錯的效果,該研究或可為在邊緣節點上如何選擇更好的模型提供支持.除時延指標外,還有能耗等指標值得考慮.
適用于邊緣計算場景的輕量化技術還需要根據場景需求對多種技術進行融合.如在時延及推理精度都具有高要求的工業物聯網領域,關注的是如何將輕量級模型運行在單個節點或盡可能地降低多節點協同推理時帶來的網絡代價,此時可將早期退出與模型切割結合,將一部分推理請求提前過濾[115];在計算代價大的場景,可考慮將量化與早期退出結合,壓縮計算量[94];當支持節點協同時,可考慮將模型切割、量化與重訓練結合[55],從模型尺寸、推理精度方面一起優化,實現更加高效的分布式協同推理;對于動態場景而言,由于節點負載、網絡負載的不斷變化會導致部署時所采用的優化目標不滿足資源約束,多數解決方案通過將完整的模型存儲在每個節點上,通過觀測當前的系統狀態實時調整協同推理的部署方案,以此來滿足資源約束.
僅通過云與端實現的推理場景受多方面制約,難在復雜的業務場景中發揮作用,主要表現在對帶寬密集型業務的原始數據或中間數據傳輸代價大、隱私安全要求高的業務數據傳輸敏感;所處環境惡劣的業務與云端連接不穩定或限制上行帶寬;傳輸鏈路過長容易出現故障;端側能耗限制較強等.這在智能駕駛、在線交易以及軍事等領域十分普遍.邊緣協同推理通過云、邊等資源聯邦,克服數據傳輸、隱私安全、運行環境等存在的問題,對推理任務“就近”解決.文獻[8]指出,“邊緣”是一個連續統,那么,協同推理的架構主要關注點則是如何調集連續統中的資源.本文按照資源及數據的協同處理方式,從云與邊的角度對邊緣協同推理進行分析.
從中心化計算與否出發,為了便于在邏輯上描述,此處將云端或邊緣服務器端統稱為云端,將終端節點或具有計算能力的邊端節點統稱為邊端.如圖7所示,目前主流的用于進行邊緣協同推理的框架主要包含4 類.采用模型切割方式的云邊協同推理(圖7(a))與邊邊協同推理(圖7(b))、基于模型選擇的云邊協同推理(圖7(c))以及基于多個不同任務場景的多模型結果聚合的邊邊協同推理(圖7(d)).其中圖7(b)基于模型切割的邊邊協同推理架構根據任務處理的流程及網絡拓撲結構又可分為2 類:根據模型切割時子切片依賴圖形成的網狀拓撲與以協調節點或推理請求者為中心的呈放射狀的星狀拓撲.

Fig.7 Mainstream of collaborative inference framework in edge computing圖7 主流的邊緣計算協同推理架構
其中圖7(a)基于模型切割的云邊協同推理依據模型切割技術,將模型分解為具有先后以來關系的不同切片,分別部署在邊端與云端.邊端將部分中間結果經過處理后發送至云端完成后續的計算,最終由云端返回推理結果.考慮的指標主要包含隱私安全、通信代價與計算代價的聯合優化.邊端除了對數據預處理[115]、計算一部分中間輸出結果外,還可與早期退出結合[54,116],將一部分具有推理功能的分支部署在邊端,當邊端推理結果不滿足需求時,通過云端更深層次的模型進行推理.該類架構從邏輯上看僅存在一個云與邊之間的切割點.如文獻[34,49,54,56?57]等所述,模型主要切分為2 部分,分別部署在邊端與云端.由于切片數量的減少,簡化了網絡拓撲,利于觀測網絡中的動態變化和協同推理的實時調整.如文獻[54]根據可用帶寬自適應地劃分移動設備和邊緣服務器之間的深度神經網絡(DNN)計算,由于推理速度受到移動設備上其他計算任務的限制,不足以滿足嚴格的時延要求,因此又引入了早退機制來進一步降低延遲.除帶寬外,節點負載狀況也需要關注[116],文獻[117]基于動態場景,包括傳輸帶寬變化與節點計算能力變化,提出建立可靠性指標,評估了時延約束下模型的可靠性.
其中圖7(b)基于模型切割的邊邊協同推理在不具備云端支持,同時單個節點資源不足的場景下,可將模型切片映射或動態調整到到不同的節點,通過節點間的協同完成推理.該類方式可自發地通過協同交互處理任務,多涉及資源性能受限節點、節點間具有網絡連接,關注的指標主要包括能耗、時延、內存等,較適用于動態場景(資源、環境動態變化)下的單方資源受限、無云端控制或控制存在一定阻礙等場景.該類架構從邏輯上看模型存在多個切割點,所涉及的切片數量多大于2 個,較基于模型切割的云邊協同推理更為靈活.根據調度方式的不同,邏輯上的網絡拓撲可分為網狀拓撲與星狀拓撲.網狀拓撲的部署方式一般事先固定,按照切片的先后依賴順序查找后繼節點,應對復雜的動態場景能力弱;星狀拓撲在部署上一般通過中心協調點(或推理請求節點)對切片按照先后依賴順序不斷收集中間結果并轉發到其他節點進行調度(參見表1 中的切片依賴關系處理/服務發現方式),靈活性較網狀拓撲更強,但調度頻繁易使代價過高.
其中圖7(c)基于模型選擇的云邊協同推理與模型切割與早期退出結合的云邊協同類似,基于模型選擇的云邊協同推理在邊端具有完整的推理能力,不同的是邊端所運行的推理模型是完整的.該類架構下一般是針對同一場景訓練2 個大小不同尺寸的模型,如借助知識蒸餾技術分別部署在云端與邊端.由于邊端的模型尺寸小、推理能力相對較弱,因此在推理精度不可靠的情況下會將推理請求轉發至云端進行更為精確的推理[118].該類架構邊端與云端的鏈接是否可靠取決于邊端的模型推理精度是否滿足需求,本質上由邊端的性能決定.如文獻[119]提出在邊端運行小模型(SNN),云端(邊緣服務器)運行DNN,由邊端根據自身運行狀態(模型復雜度、推理精度、數據質量、計算能力和通信帶寬等)選擇是否通過云端獲取推理結果.
其中圖7(d)基于多模型結果聚合的邊邊協同推理與多數將推理請求發往云端思路不同,該類架構在概念上與決策級的信息融合相近,中心節點(或推理請求節點)將推理請求下發給多個邊端,每個邊端具有某一特定任務或領域的推理能力,之后通過匯總來自多個邊端的推理結果得出最終結論.不同于基于模型選擇的云邊協同推理中的場景有限,基于多模型結果聚合的邊邊協同推理能適應的場景更加多樣,這種類似于任務冗余的形式能夠提供較高粒度的可靠性及并行性支持.如文獻[120]提出基于競爭機制和選擇性學習方法,在邊端每個節點上運行其所擅長的不同領域的模型,利用多節點的協同,實現多邊端協同推理.但由于一個推理請求會同時廣播給多個邊端,邊邊協同推理主要關注的是推理精度及速度,在能耗及通信方面值得進一步提升,可通過額外的選擇器對多個邊端是否執行進行提前篩選[121].
小結與分析:基于2.2 節分類及分析可以看出,從推理結果最終的出處來看,邊緣計算協同推理架構可分為2 類.一類是用戶發出推理請求,多節點通過處理協同推理過程中的中間數據,最終由云端或邊端中的單個節點得出推理結果,該類思想與向云端卸載任務一致,如圖7(a)~(c)所述.另一類是由邊端匯總來自其他多個邊端或云端的多個推理結果,之后對比評判得出最終的推理結果,該類思想可參考云端將推理任務卸載到邊端或眾包,如圖7(d)所述.從整體云邊端角度分析,第1 類涉及對模型的壓縮、剪枝、量化、切割等過程,第2 類則涉及多邊端推理結果融合.表2 給出了不同的架構所采用的關鍵技術、針對的問題及其適用場景的比較.
對于云計算,目前的分布式架構所利用的資源豐富,推理效果好(推理精度高且推理速度快)是關注的重點,而能耗并非核心關注問題.邊緣協同推理由于其資源特點,在推理效果好的前提下同時期望得到低代價的部署方案,其所處的復雜環境決定了這是一個“折中”問題.節點狀態、環境及用戶等會對問題的解產生動態性影響,使資源的狀態發生變化.為了更好地提升資源利用率,同時確保服務的有效性,就需要對資源進行重新調度或部署.然而,邊緣協同推理屬于計算及帶寬密集型的復雜業務,所處環境多樣,用戶不一,具有極大的不確定性[122-123],不同的調度方式在復雜性及時效性或準確性上存在差異,產生的運維代價不同,服務有效性與資源利用率存在沖突.

Table 2 Comparison of Different Architectures表2 不同架構的比較
在資源調度與控制方面,由于邊端設備類型眾多,資源涉及多方且參與意愿不同,在協同推理時若非采用資源預分配的手段,很難達到實時的最優協同推理.而資源預分配恰恰是需要統一調度的,這意味著會存在資源上的過度消耗、競爭,調度周期也不好確定,無法及時有效處理多方請求.因此,對所有資源實現統一調度與控制是不現實的,這導致了推理過程中資源募集能力不一,加劇了邊緣協同推理的難度.
從涉及的網絡計算資源來看,2 節點是分水嶺,節點數量影響了調度服務對網絡環境、節點負載等的感知能力及處理能力,最終反映在任務調度的實時性上.單節點自身資源可以支持推理服務的運行,但可靠性差;2 節點協同交互簡單,方便管理,但不夠健壯,處理任務時可調動的資源有限;多節點魯棒性強,適合動態場景,但模型復雜,管理及優化困難.目前,2 節點主要應用在云邊端協同場景,多節點更多應用于IoT 場景[45].
因此,邊緣協同推理與眾多應用層的服務類似,服務表現碎片化、多角度,很難提供一個通用的基礎架構.如智慧城市場景,單獨的軌跡數據處理就涉及到乘客、司機、城市規劃、交通等諸多角度[124].可以看出,對于邊緣協同推理的框架而言,調度是否靈活、推理過程是否具有彈性、能否支持多設備(用戶)并發推理及并行需求是關鍵.除此之外,由于在推理過程中可能涉及到不同類型信息的融合,是否可快速移植支持異構平臺,如借助虛擬化技術;是否融合異構網絡,如智能家居中的各種傳感器網絡[125],也值得關注.隨著時間的推移,還會涉及到推理模型的更新問題.目前來看,這方面主要依據聯邦學習[126]或重新部署的形式,更新的頻率及更新的代價與更新后能否帶來好的收益值得關注.
邊緣計算表現出廣泛的異構性、動態性,使不同的優化技術應用在“連續統”中,不同類型的邊緣節點上存在巨大挑戰[127],這些節點往往運行多種基礎服務.目前多數方案都僅關注在模型角度,完整的協同推理過程除了AI 模型外還涉及其他服務,如可靠性保障、數據中間傳輸、數據存儲、日志追蹤等的基礎支撐服務,盡管多數輕量化技術在時延方面可以滿足一些場景需求,但涉及的模塊過多時推理服務的穩定性值得進一步研究[128].
本文從邊緣智能出發,簡要描述了其發展過程.著重從邊緣協同角度對模型推理階段涉及到的關鍵技術進行了歸納總結,并從動態場景的角度分別進行了分析.截至目前,邊緣協同智能依然處于快速發展階段,其大體分為2 類:一類是基于原有的智能化方法與邊緣計算資源特點不斷結合(如深度神經網絡架構實現搜索、混合精度量化);另一類是直接從邊緣計算產生的方法(或稱邊緣原生方法,如模型選擇)結合邊緣計算資源的特點(地理分布、異構性、動態性等).目前還存在諸多挑戰,下面介紹幾個值關注與討論的方向:
1)推理模型與動態性的適應問題.以往優化算法較適用于云計算中同質化資源,其資源狀態變化不大,一般按需分配、按需擴展,利于結合業務對負載實時調控.然而,在應對具有一定規模的呈地理分布的邊緣節點時,由于邊緣節點相對于云計算節點的可控性不強,且存在資源異構性及動態性,使當前邊緣協同推理智能化的主流方法中還存在一些值得進一步關注的問題,如模型切割技術的整體或部分更新問題;模型壓縮技術在不同節點間的可移植性及再訓練問題;模型選擇/早期退出在面對資源變化時的不同模型問題;分支切換靈活性及資源分配粒度問題.同時,如2.2 節所述,盡管目前已經呈現出不同技術的融合態勢,但在協同環境下,邊緣協同推理智能化方法依舊面臨許多共性問題,如已部署模型的更新替換頻率及兼容性問題、動態資源變化與所運行模型(或部分)資源需求的匹配問題、額外的中心調度或部署代價問題等.
2)在邊緣協同推理驗證方面,動態場景建模將促進協同推理相關方法的良性發展.動態場景下的邊緣計算普遍存在硬件故障、系統及軟件的負載變化、人為與環境因素的影響、地理分布廣泛以及服務狀態復雜多變易受影響等特點,運維成為一大挑戰.縱觀已有研究,在驗證思路時多數通過實際的生產場景,或較為簡單的代價評估模型模擬,缺乏動態場景特點上的考慮.造成這種現狀的原因,一是生產場景對于廣泛的研究人員并不容易可及,二是模擬場景考慮的影響因素不夠全面,在邊緣協同推理的有效性評估上還存在困難,給邊緣協同智能的落地帶來一定阻礙.除此之外,邊緣協同推理作為完整應用,還涉及各種網絡、計算中間件的運行,這些中間件無一不需要大量的資源來維護.因此,提供一個可信的動態仿真場景值得研究.
3)在邊緣原生方法方面,在線學習與邊緣計算的結合或可為邊緣協同智能提供更廣闊的適用場景.目前多數研究或工作將訓練與推理分開,界線清晰,較適合于資源豐富且動態性不強的場景.但對于涉及計算、網絡等資源存在限制且動態的場景,單獨的訓練過程并不適用,如何利用有限的資源對推理模型進行在線更新值得研究,相關研究領域或可參考感知計算、觸覺網絡等.
邊緣協同推理具有極大的應用價值,目前,正處于快速發展期,但清晰而又統一的處理方法尚未形成,值得我們重點研究.本文對邊緣協同智能的發展歷史進行了簡要回顧,對推理過程中涉及到的關鍵技術進行了歸納整理.通過對不同關鍵技術的縱向總結、適用場景分析以及技術間的對比等,重點從動態場景角度提出了邊緣協同推理存在的挑戰與值得發展的方向.整體來看,邊緣協同推理目前還有極大的發展空間,我們未來的研究工作重點將放在動態場景建模以及動態場景下的邊緣協同推理可靠性保障方面.
作者貢獻聲明:王睿設計了論文框架、調研文獻、指導論文寫作并修改論文;齊建鵬和陳亮負責文獻調研、撰寫及修改部分論文;楊龍補充完善論文.