System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現(xiàn)步驟摘要】
本專利技術涉及邊緣計算領域和機器學習領域,具體涉及一種基于多智能體強化學習與知識蒸餾的聯(lián)邦學習(federated?learning,fl)加速方法。
技術介紹
1、基于多智能體強化學習與知識蒸餾的聯(lián)邦學習加速方法,基于聯(lián)邦學習、多智能體強化學習以及知識蒸餾技術。首先,由于邊緣節(jié)點本地數(shù)據(jù)通常是非獨立同分布的,降低了fl的模型訓練效率,根據(jù)每輪參與訓練的節(jié)點數(shù)使用聚類算法以模型權重為依據(jù)將數(shù)據(jù)分布接近的節(jié)點劃分到同一簇中,不同簇中節(jié)點相互組合最終得到近似的全局數(shù)據(jù)分布;然后,將聚類結果的每一簇看作一個的智能體,采用多智能體強化學習算法,從每一簇中選擇合適的節(jié)點參與訓練,最大化強化學習獎勵值,懲罰過多的通信輪次;最后,由于邊緣節(jié)點設備的計算存儲能力不同,通過雙向知識蒸餾的方法全局訓練模型,進一步個性化本地模型、壓縮傳輸內容、降低通信壓力,達到聯(lián)邦學習加速的目的。最接近本專利技術的技術有:
2、(1)基于dqn的聯(lián)邦學習節(jié)點選擇算法:2020年wang?hao等人指出,針對非獨立同分布數(shù)據(jù),采用基于dqn的節(jié)點選擇策略,抵消非獨立同分布數(shù)據(jù)對于模型訓練所帶來的影響。這種方式以模型權重為狀態(tài),被選中的參與者為動作,能在一定程度上降低通信輪次、加速聯(lián)邦學習。但受限于dqn算法,當動作空間維度較大時,選擇最優(yōu)動作會變得更加復雜,在合理的時間框架內可能不可行。
3、(2)基于ddpg的聯(lián)邦學習節(jié)點選擇算法:2021年zhang?peiying等人提出了一種基于ddpg的聯(lián)邦學習節(jié)點選擇算法,采用基于策略梯度的深度強化
4、(3)基于模型壓縮的聯(lián)邦學習加速算法:2020年felix?sattler等人提出了一種基于模型壓縮的聯(lián)邦學習加速算法,通過稀疏三元壓縮的方式壓縮傳輸梯度。但這種梯度壓縮方法可能對模型的敏感性較高,不同模型的梯度特征可能不同,因此適用于一種模型的壓縮方法可能不適用于另一種模型。需要根據(jù)具體情況選擇適當?shù)膲嚎s方法。
5、其中,(1)基于dqn的聯(lián)邦學習節(jié)點選擇算法與(2)基于ddpg的聯(lián)邦學習節(jié)點選擇算法對動作空間維度相對敏感,在邊緣網(wǎng)絡場景中隨著參與者總數(shù)的增加,傳統(tǒng)的聯(lián)邦學習算法無法適用;(3)基于模型壓縮的聯(lián)邦學習加速算法考慮算法的普適性。同時,基于多智能體強化學習的聯(lián)邦學習節(jié)點選擇方法,現(xiàn)有的技術都沒有在這方面進行考慮與設計。
技術實現(xiàn)思路
1、為解決現(xiàn)有技術中的缺點和不足,本專利技術提出了一種基于多智能體強化學習與知識蒸餾的聯(lián)邦學習加速方法。首先,由于邊緣節(jié)點本地數(shù)據(jù)通常是非獨立同分布的,降低了fl的模型訓練效率,根據(jù)每輪參與訓練的節(jié)點數(shù)使用聚類算法以模型權重為依據(jù)將數(shù)據(jù)分布接近的節(jié)點劃分到同一簇中,不同簇中節(jié)點相互組合最終得到近似的全局數(shù)據(jù)分布;然后,將聚類結果的每一簇看作獨立的智能體,采用多智能體強化學習算法,從每一簇中選擇合適的節(jié)點參與訓練,最大化強化學習獎勵值,懲罰過多的通信輪次;最后,由于邊緣節(jié)點設備的計算存儲能力不同,通過雙向知識蒸餾的方法全局訓練模型,進一步個性化本地模型、壓縮傳輸內容、降低通信壓力,達到聯(lián)邦學習加速的目的。
2、本專利技術的技術方案為:
3、一種基于多智能體強化學習與知識蒸餾的聯(lián)邦學習加速方法,包括節(jié)點劃分模塊、參與者選擇模塊、本地訓練模塊與蒸餾聚合模塊,包括以下步驟:
4、步驟(1)節(jié)點劃分模塊,服務器向n個參與者下發(fā)相同的初始模型,所有參與則進行一輪本地訓練后上傳模型權重,服務器根據(jù)上傳的模型權重使用聚類算法進行聚類劃分,將n個參與者分成k簇。
5、步驟(2)參與者選擇模塊,將節(jié)點劃分模塊的聚類結果中的每一簇看作獨立的智能體,將上傳到模型權重看作強化學習中的狀態(tài),每一簇中選中的參與者為動作,獎勵值與最終模型的精度呈正相關。使用多智能體強化學習算法選擇k個參與者。
6、步驟(3)本地訓練模塊,從第二輪訓練開始,與之前的每訓練一次就上傳一次不同,被選中的參與者進行多次本地訓練迭代之后再上傳參數(shù)。迭代次數(shù)與上一輪強化學習獎勵值相關,上限設10。
7、步驟(4)蒸餾聚合模塊,與傳統(tǒng)的fl不同,參與者會根據(jù)需要自適應的設置本地模型的大小、結構。fl訓練開始時,服務器會下發(fā)全局模型,參與者根據(jù)本地數(shù)據(jù)訓練本地模型,然后本地模型與全局模型相互蒸餾。這樣做本地模型既可以根據(jù)本地數(shù)據(jù)獲取本地信息,又可以通過相互蒸餾獲取全局信息,同時實現(xiàn)模型個性化、壓縮傳輸內容,提高通信效率。
8、本專利技術的有益效果:
9、(1)通過聚類算法對參與者進行聚類劃分,在非獨立同分布場景下獲得全局數(shù)據(jù)分布,確保全局模型穩(wěn)定性。采用聯(lián)邦學習范式,保護了數(shù)據(jù)隱私;
10、(2)同時為了進一步提高模型的收斂速度,該算法通過多智能體強化學習算法,根據(jù)聚類結果選擇每輪訓練參與者。具體來說將聚類結果中的每一簇看做一個的智能體,每個智能體選擇的結果組合成該輪訓練參與者。通過這種方式能夠顯著降低計算復雜度,加速訓練;
11、(3)參與者進行本地訓練時,采用知識蒸餾的方式個性化本地模型、壓縮傳輸內容、降低聯(lián)邦學習通信量,提高通信效率。
本文檔來自技高網(wǎng)...【技術保護點】
1.一種基于多智能體強化學習與知識蒸餾的聯(lián)邦學習加速方法,包括節(jié)點劃分模塊、參與者選擇模塊、本地訓練模塊與蒸餾聚合模塊,包括以下步驟:
【技術特征摘要】
1.一種基于多智能體強化學習與知識蒸餾的聯(lián)邦學習加速方法,包括節(jié)點劃...
【專利技術屬性】
技術研發(fā)人員:曹紹華,張漢卿,陳輝,詹子俊,劉漢奇,
申請(專利權)人:中國石油大學華東,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。