【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)屬于云-邊-端協(xié)同訓(xùn)練,涉及一種面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法。
技術(shù)介紹
1、“云-邊-端”協(xié)同的分層聯(lián)邦學(xué)習(xí)(hfl)通過在本地設(shè)備上進(jìn)行模型訓(xùn)練,并在服務(wù)器上進(jìn)行模型的共享聚合,避免了集中式數(shù)據(jù)的傳輸。hfl能夠在大量用戶之間完成分布式機器學(xué)習(xí)訓(xùn)練,而不需要與外部設(shè)備共享本地私有的數(shù)據(jù)集,可以實現(xiàn)在保護(hù)數(shù)據(jù)隱私的同時,利用設(shè)備端的本地計算資源進(jìn)行模型訓(xùn)練。hfl的具體訓(xùn)練過程包括:中央服務(wù)器初始化全局模型并下發(fā)給各個參與訓(xùn)練的移動設(shè)備md,移動設(shè)備md在本地對全局模型進(jìn)行訓(xùn)練,并將訓(xùn)練更新后的模型梯度上傳至邊緣服務(wù)器es進(jìn)行部分聚合,最后將聚合的模型上傳至云服務(wù)器cs進(jìn)行全局聚合,并更新全局模型。通過將整個流程進(jìn)行迭代循環(huán),直到全局模型收斂或達(dá)到預(yù)定輪次,實現(xiàn)協(xié)同學(xué)習(xí)的目標(biāo)。
2、然而,將hfl運用到實際的分布式存儲計算環(huán)境中時,會面臨多個方面的挑戰(zhàn)。第一個挑戰(zhàn)是大規(guī)模參與設(shè)備存在高度資源異構(gòu)和數(shù)據(jù)異構(gòu)問題。一方面,hfl過程涉及大規(guī)模的移動設(shè)備md,同時各個移動設(shè)備md在硬件、網(wǎng)絡(luò)環(huán)境和計算能力上存在顯著差異,這會導(dǎo)致在模型訓(xùn)練過程中,部分md完成任務(wù)較快,而性能較差的移動設(shè)備md則耗時較長,延長了全局模型的聚合時間。另一方面,每個移動設(shè)備md的數(shù)據(jù)分布可能不同,因此存在參與訓(xùn)練的移動設(shè)備md數(shù)據(jù)的非獨立同分布問題。非獨立同分布的訓(xùn)練導(dǎo)致訓(xùn)練出的全局模型更偏向于某些特定md上的數(shù)據(jù)特征,而不適用于其他md。
3、第二個挑戰(zhàn)是hfl訓(xùn)練過程要求所有md周期性地上傳本地模型參數(shù)或梯
4、第三個挑戰(zhàn)是現(xiàn)有的hfl方法運用同步或異步機制進(jìn)行模型的傳輸聚合,同步聚合要求所有設(shè)備在同一時間上傳模型參數(shù),導(dǎo)致帶寬負(fù)擔(dān)增加,延長等待時間。異步聚合中央服務(wù)器在進(jìn)行聚合時獲取的模型參數(shù)可能來自于不同的訓(xùn)練階段,可能導(dǎo)致全局模型的收斂性降低。
技術(shù)實現(xiàn)思路
1、本專利技術(shù)的目的在于解決現(xiàn)有技術(shù)中hfl運用到實際的分布式存儲計算時,不同性能的移動設(shè)備md計算效率不同,且hfl訓(xùn)練過程中占用大量的通信開銷,帶寬負(fù)擔(dān)增加的問題,提供一種面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法及系統(tǒng)。
2、為達(dá)到上述目的,本專利技術(shù)采用以下技術(shù)方案予以實現(xiàn):
3、一種面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,包括:
4、構(gòu)建hfl框架,并初始化hfl框架中的云服務(wù)器cs內(nèi)部的全局模型參數(shù),并將全局模型參數(shù)下發(fā)給邊緣服務(wù)器es;由邊緣服務(wù)器es將初始全局模型下發(fā)給參與訓(xùn)練的移動設(shè)備md;
5、基于移動設(shè)備md處理樣本數(shù)據(jù)的周期數(shù)據(jù),獲取每個移動設(shè)備md進(jìn)行本地模型訓(xùn)練的時間;
6、基于每個移動設(shè)備md將本地更新參數(shù)模型上傳至邊緣服務(wù)器es的傳輸速率,獲取每個移動設(shè)備md向邊緣服務(wù)器es傳輸參數(shù)模型時的傳輸時間;進(jìn)而得到每次訓(xùn)練迭代過程中,本地模型進(jìn)行訓(xùn)練的時間;
7、邊緣服務(wù)器es利用k-means算法將服務(wù)范圍內(nèi)的移動設(shè)備md進(jìn)行分組,并根據(jù)計算能力進(jìn)行排序;
8、每個移動設(shè)備md將練好的模型傳遞給其所連接的后一個設(shè)備,該設(shè)備利用其本地的數(shù)據(jù)集繼續(xù)訓(xùn)練模型,并在訓(xùn)練完成后聚合接收到的模型;直至訓(xùn)練到每組的最后一個設(shè)備上時,由該設(shè)備將本地訓(xùn)練并且聚合完成的最終模型同步上傳至邊緣服務(wù)器es進(jìn)行第一層的聚合;
9、在邊緣服務(wù)器es與云服務(wù)器cs之間,每個邊緣服務(wù)器es將部分聚合好的模型上傳至云端的緩沖區(qū)中,判斷緩沖區(qū)中的模型數(shù)量是否達(dá)到閾值,若是,則進(jìn)行全局模型聚合操作。
10、本專利技術(shù)的進(jìn)一步改進(jìn)在于:
11、進(jìn)一步的,hfl框架包含一個云服務(wù)器cs、m個邊緣服務(wù)器和n個移動設(shè)備;在工作過程中,每個邊緣服務(wù)器es都位于覆蓋本地部分區(qū)域的基站上,服務(wù)其覆蓋范圍內(nèi)的移動設(shè)備md,并且每個移動設(shè)備md只能連接到一個邊緣服務(wù)器es上。
12、進(jìn)一步的,基于移動設(shè)備md處理樣本數(shù)據(jù)的周期數(shù)據(jù),獲取每個移動設(shè)備md進(jìn)行本地模型訓(xùn)練的時間,具體為:
13、;
14、其中,為移動設(shè)備md處理一個數(shù)據(jù)樣本的cpu周期數(shù),為進(jìn)行一輪本地訓(xùn)練所需要的cpu周期數(shù);為移動設(shè)備md給本地訓(xùn)練所分配的cpu頻率。
15、進(jìn)一步的,基于每個移動設(shè)備md將本地更新參數(shù)模型上傳至邊緣服務(wù)器es的傳輸速率,獲取每個移動設(shè)備md向邊緣服務(wù)器es傳輸參數(shù)模型時的傳輸時間,具體為:
16、在hfl系統(tǒng)中,移動設(shè)備md與邊緣服務(wù)器es通過無線網(wǎng)絡(luò)進(jìn)行連接,移動設(shè)備md將更新后的本地模型發(fā)送到其連接的邊緣服務(wù)器es;基于頻分復(fù)用fdma將整個通信帶寬分成若干個頻帶,移動設(shè)備md在通信過程中始終占用這個頻帶,使得所有移動設(shè)備md在同一時間占用不同的帶寬資源進(jìn)行通信;因此,hfl系統(tǒng)中每個移動設(shè)備md將本地更新參數(shù)模型上傳至邊緣服務(wù)器es的傳輸速率為:
17、;
18、其中,為信道帶寬,表示帶寬的分組數(shù),表示信道的增益,表示移動設(shè)備md和邊緣服務(wù)器之間的傳輸功率,表示噪聲;因此,移動設(shè)備md向邊緣服務(wù)器es傳輸參數(shù)模型時的傳輸時間為:
19、;
20、其中,表示本地模型的參數(shù)規(guī)模大小,單位是bits;是傳輸速率;
21、所述得到每次訓(xùn)練迭代過程中,本地模型進(jìn)行訓(xùn)練的時間,具體為:
22、;
23、其中,為本地計算時間;
24、在hfl模型訓(xùn)練場景,移動設(shè)備md與邊緣服務(wù)器es之間的通信采用同步傳輸方法,在每次訓(xùn)練迭代過程中,本地模型訓(xùn)練的完成時間是所有分組訓(xùn)練完成時間中最長的,即
25、;
26、其中,為分組的數(shù)量。
27、進(jìn)一步的,邊緣服務(wù)器es利用k-means算法將服務(wù)范圍內(nèi)的移動設(shè)備md進(jìn)行分組,并根據(jù)計算能力進(jìn)行排序,具體為:利用移動設(shè)備md之間的通信代替移動設(shè)備md與邊緣服務(wù)器es之間的通信;根據(jù)計算能力對移動設(shè)備md進(jìn)行預(yù)分組,將計算能力相差較小的設(shè)備分到同一組,然后利用k-means算法從每組中選擇數(shù)據(jù)分布相似度較小的設(shè)備,重分為一組,得到最終的分組結(jié)果。
28、進(jìn)一步的,根據(jù)計算能力對移動設(shè)備md進(jìn)行預(yù)分組,將計算能力相差較小的設(shè)備分到同一組,然后利用k-means算法從每組中選擇數(shù)據(jù)分布相似度較小的設(shè)備,重分為一組,得到最終的分組結(jié)果,具體為:在分組訓(xùn)練的初始化階段,將每個邊緣服務(wù)器es下的所有設(shè)備看成一個整體,并將具有計算能力不同且具有相似數(shù)據(jù)分布的移動設(shè)備md分為一組,分組的個數(shù)為k,分組的目標(biāo)是使每個組具有最小的數(shù)據(jù)分布差異度;將每個設(shè)備的數(shù)據(jù)分布本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點】
1.一種面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述HFL框架包含一個云服務(wù)器CS、M個邊緣服務(wù)器和N個移動設(shè)備;在工作過程中,每個邊緣服務(wù)器ES都位于覆蓋本地部分區(qū)域的基站上,服務(wù)其覆蓋范圍內(nèi)的移動設(shè)備MD,并且每個移動設(shè)備MD只能連接到一個邊緣服務(wù)器ES上。
3.根據(jù)權(quán)利要求2所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述基于移動設(shè)備MD處理樣本數(shù)據(jù)的周期數(shù)據(jù),獲取每個移動設(shè)備MD進(jìn)行本地模型訓(xùn)練的時間,具體為:
4.根據(jù)權(quán)利要求3所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述基于每個移動設(shè)備MD將本地更新參數(shù)模型上傳至邊緣服務(wù)器ES的傳輸速率,獲取每個移動設(shè)備MD向邊緣服務(wù)器ES傳輸參數(shù)模型時的傳輸時間,具體為:
5.根據(jù)權(quán)利要求4所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述邊緣服務(wù)器ES利用K-means算法將服務(wù)范圍內(nèi)的移動設(shè)備MD進(jìn)行分組,并根據(jù)計算能力進(jìn)行排序,具體
6.根據(jù)權(quán)利要求4所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述根據(jù)計算能力對移動設(shè)備MD進(jìn)行預(yù)分組,將計算能力相差較小的設(shè)備分到同一組,然后利用K-means算法從每組中選擇數(shù)據(jù)分布相似度較小的設(shè)備,重分為一組,得到最終的分組結(jié)果,具體為:在分組訓(xùn)練的初始化階段,將每個邊緣服務(wù)器ES下的所有設(shè)備看成一個整體,并將具有計算能力不同且具有相似數(shù)據(jù)分布的移動設(shè)備MD分為一組,分組的個數(shù)為k,分組的目標(biāo)是使每個組具有最小的數(shù)據(jù)分布差異度;將每個設(shè)備的數(shù)據(jù)分布和計算能力用特征向量進(jìn)行表示:設(shè)第個設(shè)備的數(shù)據(jù)分布特征向量為,通常可以用數(shù)據(jù)樣本的類別分布或統(tǒng)計特征來表示;設(shè)第個設(shè)備的計算能力為;將每個移動設(shè)備MD的特征表示為一個向量,其中,是一個權(quán)重因子,用于平衡數(shù)據(jù)分布特征和計算能力特征的影響;
7.根據(jù)權(quán)利要求6所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,在將移動設(shè)備MD進(jìn)行分組之后,還包括:移動設(shè)備MD進(jìn)行本地訓(xùn)練更新梯度,并將模型梯度傳輸至所連接的下一個移動設(shè)備MD進(jìn)行環(huán)形順序組內(nèi)預(yù)聚合,直到每組的最后一個設(shè)備,具體為:
8.根據(jù)權(quán)利要求7所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法其特征在于,所述每個移動設(shè)備MD將訓(xùn)練好的模型傳遞給其所連接的后一個設(shè)備,該設(shè)備利用其本地的數(shù)據(jù)集繼續(xù)訓(xùn)練模型,并在訓(xùn)練完成后聚合接收到的模型;直至訓(xùn)練到每組的最后一個設(shè)備上時,由該設(shè)備將本地訓(xùn)練并且聚合完成的最終模型同步上傳至邊緣服務(wù)器ES進(jìn)行第一層的聚合;具體為:
...【技術(shù)特征摘要】
1.一種面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述hfl框架包含一個云服務(wù)器cs、m個邊緣服務(wù)器和n個移動設(shè)備;在工作過程中,每個邊緣服務(wù)器es都位于覆蓋本地部分區(qū)域的基站上,服務(wù)其覆蓋范圍內(nèi)的移動設(shè)備md,并且每個移動設(shè)備md只能連接到一個邊緣服務(wù)器es上。
3.根據(jù)權(quán)利要求2所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述基于移動設(shè)備md處理樣本數(shù)據(jù)的周期數(shù)據(jù),獲取每個移動設(shè)備md進(jìn)行本地模型訓(xùn)練的時間,具體為:
4.根據(jù)權(quán)利要求3所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述基于每個移動設(shè)備md將本地更新參數(shù)模型上傳至邊緣服務(wù)器es的傳輸速率,獲取每個移動設(shè)備md向邊緣服務(wù)器es傳輸參數(shù)模型時的傳輸時間,具體為:
5.根據(jù)權(quán)利要求4所述的面向異構(gòu)資源和數(shù)據(jù)的高效分層聯(lián)邦學(xué)習(xí)方法,其特征在于,所述邊緣服務(wù)器es利用k-means算法將服務(wù)范圍內(nèi)的移動設(shè)備md進(jìn)行分組,并根據(jù)計算能力進(jìn)行排序,具體為:利用移動設(shè)備md之間的通信代替移動設(shè)備md與邊緣服務(wù)器es之間的通信;根據(jù)計算能力對移動設(shè)備md進(jìn)行預(yù)分組,將計算能力相差較小的設(shè)備分到同一組,然后利用k-means算法從每組中選擇數(shù)據(jù)分布相似度較小的設(shè)備,重分為一組,得到最終的分組結(jié)果。
6.根據(jù)權(quán)利要求4所述的面向異構(gòu)資...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:梁偉,肖嘉宏,陳宇翔,何大成,陽超逸,楊策,張世文,
申請(專利權(quán))人:湖南科技大學(xué),
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。