本發(fā)明涉及邊緣計算,尤其涉及一種基于邊緣計算的多模型協(xié)同知識蒸餾優(yōu)化方法。
背景技術(shù):
1、在邊緣計算領域,尤其是在移動設備和物聯(lián)網(wǎng)終端的應用中,數(shù)據(jù)處理和模型訓練面臨著資源受限的挑戰(zhàn)。為了使這些設備能夠高效運行復雜的深度學習模型,知識蒸餾技術(shù)應運而生,其通過模型壓縮和加速,提升了模型在資源受限環(huán)境中的運行效率。然而,現(xiàn)有的知識蒸餾技術(shù)大多集中于單個模型的優(yōu)化,忽略了邊緣計算環(huán)境中多模型、多任務的協(xié)同優(yōu)化需求。此外,邊緣設備之間的數(shù)據(jù)異質(zhì)性和不平衡性進一步增加了知識蒸餾的復雜性,這些問題限制了模型性能的進一步提升。
2、以往的知識蒸餾方法主要在單個教師-學生模型對之間進行,通過模仿教師模型的行為來訓練學生模型。這些方法在單一模型壓縮方面效果顯著,但在多模型環(huán)境下,尤其是在邊緣計算場景中,由于設備多樣性和數(shù)據(jù)分布的不一致性,傳統(tǒng)方法難以直接應用。此外,邊緣設備之間的通信和計算能力差異,也使得在這些設備上實施有效的知識蒸餾策略變得復雜。以往模型聚合算法在處理非獨立同分布數(shù)據(jù)時,由于缺乏對數(shù)據(jù)多樣性的考慮,往往導致模型性能不佳,且需要更多的通信輪次才能收斂。
3、為了解決上述問題,研究者們嘗試引入多任務學習和知識蒸餾的概念,以實現(xiàn)多模型間的協(xié)同優(yōu)化。這些方法通過在邊緣設備間進行知識交換,允許不同模型共享知識,從而提升性能。但是,這些方法在處理數(shù)據(jù)異質(zhì)性和不平衡性時,往往采用簡單的數(shù)據(jù)采樣或模型平均策略,這些策略無法充分考慮數(shù)據(jù)分布的差異性,可能導致模型對某些數(shù)據(jù)類別的偏好,從而影響模型的泛化能力。此外,現(xiàn)有的多模型協(xié)同優(yōu)化方法在資源調(diào)度方面也存在不足。由于邊緣設備的計算能力和網(wǎng)絡狀況是動態(tài)變化的,固定頻率的知識蒸餾和資源分配策略可能無法適應這些變化,導致資源浪費或模型訓練效率低下。一些方法可能在網(wǎng)絡狀況不佳時仍然執(zhí)行知識蒸餾,這不僅增加了通信開銷,還可能因為數(shù)據(jù)傳輸不完整而影響模型性能。
技術(shù)實現(xiàn)思路
1、為了解決上述技術(shù)問題,本發(fā)明提出一種基于邊緣計算的多模型協(xié)同知識蒸餾優(yōu)化方法。在所述方法中,能夠提升邊緣設備上多模型的性能,同時降低通信開銷,并確保數(shù)據(jù)隱私。
2、為了達到上述目的,本發(fā)明的技術(shù)方案如下:
3、一種基于邊緣計算的多模型協(xié)同知識蒸餾優(yōu)化方法,應用于端云協(xié)同系統(tǒng)中,所述端云協(xié)同系統(tǒng)包括服務器以及與所述服務器連接的若干個邊緣設備,每個所述邊緣設備連接區(qū)域內(nèi)的若干個客戶端,包括如下步驟:
4、若干個邊緣設備分別構(gòu)建本地模型并通過采集的本地數(shù)據(jù)進行訓練本地模型,獲得訓練好的本地模型,若干個邊緣設備將訓練好的模型上傳至服務器;
5、對邊緣設備上的本地模型進行實時性能評估,判斷性能評估結(jié)果是否滿足預設條件,若否,則更新本地模型,所述更新模型包括如下:1)采用多模型協(xié)同蒸餾策略,對不同邊緣設備上的本地模型間的知識交換;2)進行數(shù)據(jù)異質(zhì)性和不平衡性處理,采用自蒸餾方法和多級分支正則化技術(shù),增強模型對本地數(shù)據(jù)的適應性,并提升全局模型性能;3)進行資源自適應調(diào)度,動態(tài)調(diào)整邊緣設備的計算資源;4)服務器進行本地模型聚合并將本輪迭代過程中模型更新內(nèi)容下發(fā)邊緣設備,基于更新的本地模型進行任務決策支持;若是,本輪迭代中無需更新本地模型,基于本地模型進行任務決策支持。
6、優(yōu)選地,對邊緣設備上的本地模型進行實時性能評估,具體包括如下步驟:
7、確定性能評估指標,所述性能評估指標包括括準確率、召回率、f1分數(shù)中一項或若干項組合;
8、根據(jù)邊緣設備上收集的本地模型輸出與實時數(shù)據(jù)進行對比,判斷對比結(jié)果是否低于預設性能閾值,若是,則啟動知識蒸餾以更新本地模型性能并確定知識蒸餾程度;若否,無需更新本地模型。
9、優(yōu)選地,所述性能評估指標采用準確率,所述知識蒸餾程度通過調(diào)整蒸餾損失函數(shù)中的權(quán)重因子來控制,所述權(quán)重因子如下:
10、
11、其中,f(·,·)是一個映射函數(shù),根據(jù)性能評估指標與性能閾值之間的差距動態(tài)調(diào)整α,θperf是預設的性能閾值。
12、優(yōu)選地,采用協(xié)同蒸餾框架,對不同邊緣設備上的本地模型間的知識交換,具體包括如下步驟:
13、通過聯(lián)邦學習進行知識交換,具體的在每一輪聯(lián)邦學習的迭代中,服務器收集來自各個邊緣設備的模型權(quán)重,生成全局模型權(quán)重,并將全局模型權(quán)重分發(fā)給參與學習的邊緣設備,公式表示如下:
14、
15、其中,wglobal是全局模型權(quán)重,wk是第k個邊緣設備的模型權(quán)重,k是參與學習的邊緣設備數(shù)量;
16、采用余弦相似度來衡量任務之間的相似性,其計算公式為:
17、
18、其中,sij是第i個任務和第j個任務之間的相似性度量,wi和wj分別是兩個任務的模型權(quán)重向量;
19、最小化全局模型與各個邊緣設備模型之間的差異,同時考慮到任務之間的相似性,優(yōu)化問題可表示為:
20、
21、其中,是損失函數(shù),衡量全局模型與邊緣設備模型之間的差異,λk是與邊緣設備k相關的權(quán)重,μij是與任務i和j之間的相似性相關的權(quán)重;
22、在全局模型的基礎上引入個性化的頭部,個性化的頭部通過以下公式表示:
23、
24、其中,是邊緣設備k上的最終模型權(quán)重,是為邊緣設備k添加的個性化頭部權(quán)重。
25、優(yōu)選地,還包括如下步驟:聯(lián)邦學習中,邊緣設備與全局模型之間僅上傳和下載模型權(quán)重的更新部分。
26、優(yōu)選地,采用自蒸餾方法和多級分支正則化技術(shù),增強模型對本地數(shù)據(jù)的適應性,并提升全局模型性能,具體包括如下步驟:
27、通過在客戶端進行客戶端自蒸餾,客戶端自蒸餾的目標函數(shù)可表示為:
28、
29、其中,是交叉熵損失,f(x)是客戶端模型的輸出,y是真實標簽,α為權(quán)重因子,β是蒸餾損失的權(quán)重,p(z)和q(z)分別是在不同dropout掩碼下的輸出分布,是kl散度損失;
30、服務器端采用多級分支正則化技術(shù)來處理客戶端間數(shù)據(jù)的異質(zhì)性和不平衡性,多級分支正則化的目標函數(shù)為:
31、
32、其中,h是模型的層次數(shù),γi是對應層次的正則化權(quán)重,是第i層的損失函數(shù),是聚合損失;
33、采用了異質(zhì)性感知的數(shù)據(jù)采樣策略,根據(jù)邊緣設備上數(shù)據(jù)的分布特性,動態(tài)調(diào)整每個設備上樣本的采樣概率,以確保服務器端能夠聚合到更加代表性的數(shù)據(jù),采樣策略可用以下公式表示:
34、
35、其中,p(x)是樣本x的采樣概率,d(x)是樣本x的分布距離度量,λd是控制分布距離影響的參數(shù);
36、引入了不平衡性校正機制,該機制通過對少數(shù)類樣本給予更高的權(quán)重,來提升模型對少數(shù)類樣本的識別能力,不平衡性校正的損失函數(shù)為:
37、
38、其中,c是類別總數(shù),ωc是類別c的權(quán)重,是類別c的交叉熵損失;
39、端到端訓練的總目標函數(shù)可表示為:
40、
41、優(yōu)選地,所述進行資源自適應調(diào)度,動態(tài)調(diào)整邊緣設備的計算資源,具體包括如下步驟:
42、對每個邊緣設備的計算能力和網(wǎng)絡狀況進行評估,所述計算能力的評估指標包括設備的cpu和內(nèi)存使用情況、處理特定任務所需的時間;所述網(wǎng)絡狀況的評估指標包括傳輸時間、丟包率;
43、根據(jù)計算能力和網(wǎng)絡狀況的評估結(jié)果確定當前系統(tǒng)負載,并預測本地模型完成任務的資源需求,根據(jù)當前系統(tǒng)負載和預測的資源需求動態(tài)進行資源分配,以優(yōu)化通信開銷和計算負載。
44、優(yōu)選地,通信開銷的優(yōu)化可表示為:
45、
46、其中,ocomm是通信開銷,k是邊緣設備的數(shù)量,δwk是第k個邊緣設備的模型權(quán)重更新量,是δwk的范數(shù)的平方,表示權(quán)重更新的幅度,是上一輪迭代中邊緣設備k的權(quán)重模型的歸一化通信開銷,確保不同設備和不同輪次的通信開銷可比較。
47、基于上述技術(shù)方案,本發(fā)明的有益效果是:
48、1)本發(fā)明對邊緣設備上的本地模型進行實時性能評估,并根據(jù)評估結(jié)果動態(tài)決定是否進行知識蒸餾。這種方法使得模型能夠更快地適應數(shù)據(jù)分布的變化,尤其是在面對非獨立同分布數(shù)據(jù)時,能夠有效提升模型的泛化能力。
49、2)本發(fā)明采用多模型協(xié)同蒸餾策略,允許不同邊緣設備上的模型之間進行知識交換,通過共享模型的關鍵部分,實現(xiàn)了多任務的協(xié)同優(yōu)化。這種協(xié)同機制不僅提升了單個模型的性能,還增強了整個系統(tǒng)在處理多任務時的效率。
50、3)本發(fā)明能夠進行數(shù)據(jù)異質(zhì)性和不平衡性處理,采用自蒸餾方法和多級分支正則化技術(shù),有效地解決了邊緣設備間數(shù)據(jù)分布不一致性的問題。通過局部自蒸餾增強模型對本地數(shù)據(jù)的適應性,同時服務器端的多級分支正則化技術(shù)提升了全局模型的性能。
51、4)本發(fā)明能夠進行資源自適應調(diào)度,根據(jù)邊緣設備的計算能力和網(wǎng)絡狀況動態(tài)調(diào)整資源分配,優(yōu)化了通信開銷和計算負載。實驗數(shù)據(jù)顯示,在保持模型性能的同時,本發(fā)明方法能夠顯著減少模型更新過程中的20%數(shù)據(jù)傳輸量。
52、5)本發(fā)明提高計算資源利用率:通過資源自適應調(diào)度,本發(fā)明能夠更合理地分配計算資源,使得邊緣設備的計算能力得到充分利用,同時避免了資源浪費。此方法在資源受限的邊緣設備上尤為有效。
53、6)本發(fā)明提升系統(tǒng)魯棒性:本發(fā)明方法通過多模型協(xié)同蒸餾策略和資源自適應調(diào)度,使得系統(tǒng)能夠更好地適應數(shù)據(jù)分布的動態(tài)變化和通信環(huán)境的波動,提高了系統(tǒng)的魯棒性。
54、7)本發(fā)明加速模型收斂:通過多模型協(xié)同蒸餾策略和資源自適應調(diào)度,本發(fā)明方法能夠加速模型的收斂速度,尤其是在面對大規(guī)模數(shù)據(jù)集時,能夠更快地達到理想的模型性能。
55、8)數(shù)據(jù)隱私保護:本發(fā)明方法通過在邊緣設備上進行客戶端模型訓練和知識蒸餾,避免了敏感數(shù)據(jù)的直接上傳,增強了數(shù)據(jù)隱私保護。