本技術(shù)涉及人工智能,特別是涉及一種模型訓練方法、裝置、計算機設(shè)備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品。
背景技術(shù):
1、隨著人工智能技術(shù)的發(fā)展,在模型訓練過程中,數(shù)據(jù)的安全性和隱私性也越來越被人們重視,研究人員通過整合不同來源的數(shù)據(jù),構(gòu)建分布式的模型訓練框架,但多樣化的數(shù)據(jù)來源會產(chǎn)生巨大的溝通成本,影響模型的訓練效率。例如,在調(diào)度配電網(wǎng)的過程中,通常會使用數(shù)據(jù)處理模型來處理相關(guān)的電網(wǎng)業(yè)務數(shù)據(jù),在訓練數(shù)據(jù)處理模型的過程中,需要用到大量的電網(wǎng)業(yè)務數(shù)據(jù),然而,電網(wǎng)業(yè)務數(shù)據(jù)通常分布于配電網(wǎng)的多個節(jié)點當中,不同節(jié)點之間的電網(wǎng)業(yè)務數(shù)據(jù)類型、來源大不相同,即便是構(gòu)建了分布式的模型訓練框架,配電網(wǎng)的多個節(jié)點與中心服務器之間仍存在巨大的溝通成本,影響分類模型的訓練效率。
2、傳統(tǒng)方案中,通過聯(lián)邦學習框架,由配電網(wǎng)的多個節(jié)點在本地對數(shù)據(jù)處理模型進行初步訓練,再由中心服務器整合各節(jié)點的訓練結(jié)果,再次訓練得到全局模型。如此,在不交換數(shù)據(jù)樣本的情況下,能夠跨越多個節(jié)點,基于分布式的數(shù)據(jù)訓練出全局模型,提升了數(shù)據(jù)處理模型的訓練速度。
3、然而,傳統(tǒng)方案中,由于聯(lián)邦學習框架中提供訓練數(shù)據(jù)的客戶端或節(jié)點眾多,不同客戶端或節(jié)點之間訓練數(shù)據(jù)差異非常大,從而導致客戶端或節(jié)點在參與聯(lián)邦學習訓練本地模型時,模型參數(shù)差異較大,依然存在模型訓練精度較低的技術(shù)問題。
技術(shù)實現(xiàn)思路
1、基于此,有必要針對上述技術(shù)問題,提供一種能夠提高模型訓練精度的模型訓練方法、裝置、計算機設(shè)備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品。
2、第一方面,本技術(shù)提供了一種模型訓練方法,應用于聯(lián)邦學習框架的中心服務器,所述聯(lián)邦學習框架包括所述中心服務器和多個與所述中心服務器連接的客戶端,所述方法包括:
3、接收多個客戶端反饋的多組第一模型參數(shù),將所述第一模型參數(shù)確定為樣本點,得到樣本數(shù)據(jù)集,所述第一模型參數(shù)由所述客戶端基于本地的業(yè)務訓練數(shù)據(jù)集對待訓練模型進行訓練得到;
4、針對每一所述樣本點,基于所述樣本點與所述樣本點的相鄰樣本點之間的距離,確定所述樣本點的距離逆數(shù)密度,基于所述距離逆數(shù)密度,確定所述樣本點的局部密度修正項,基于所述距離逆數(shù)密度和所述局部密度修正項,確實所述樣本點的局部密度,所述相鄰樣本點為所述樣本點的預設(shè)的距離范圍內(nèi)的樣本點;
5、基于各所述樣本點的局部密度,對所述樣本數(shù)據(jù)集進行聚類,將數(shù)據(jù)分布相似的客戶端劃分至相同的客戶端集合,得到多個客戶端集合;
6、調(diào)度多個客戶端,使得相同客戶端集合中的客戶端共享模型參數(shù),通過聯(lián)邦學習的方式共同訓練模型。
7、在其中一個實施例中,調(diào)度多個客戶端,包括:
8、發(fā)送模型訓練消息至多個客戶端,以使相同客戶端集合中的客戶端共享模型參數(shù),通過聯(lián)邦學習的方式共同訓練模型;
9、接收各客戶端反饋的第二模型參數(shù),基于多個所述第二模型參數(shù),確定全局模型參數(shù);
10、發(fā)送攜帶所述全局模型參數(shù)的模型訓練消息至不同客戶端集合中的客戶端,以使相同客戶端集合中的客戶端基于所述全局模型參數(shù),通過聯(lián)邦學習的方式共同訓練模型,返回接收不同客戶端集合中的客戶端反饋的第二模型參數(shù)的步驟,直至達到預設(shè)的訓練結(jié)束條件,停止模型訓練。
11、在其中一個實施例中,所述基于所述距離逆數(shù)密度,確定所述樣本點的局部密度修正項,包括:
12、基于所述樣本點的距離逆數(shù)密度、與所述相鄰樣本點的距離逆數(shù)密度之間的大小關(guān)系,確定所述局部密度修正項。
13、在其中一個實施例中,所述基于各所述樣本點的局部密度,對所述樣本數(shù)據(jù)集進行聚類,將數(shù)據(jù)分布相似的客戶端劃分至相同的客戶端集合,得到多個客戶端集合,包括:
14、根據(jù)各所述樣本點的局部密度,確定各所述樣本點的高局部密度點距離;
15、基于所述局部密度和所述高局部密度點距離,確定各所述樣本點的決策值;
16、基于各所述樣本點的決策值的二階差分,從所述樣本數(shù)據(jù)集中篩選出聚類中心、以及為所述聚類中心分配非聚類中心的樣本點,得到多個樣本聚類簇;
17、基于多個所述樣本聚類簇,將數(shù)據(jù)分布相似的客戶端劃分至相同的客戶端集合,得到多個客戶端集合。
18、在其中一個實施例中,所述基于各所述樣本點的決策值的二階差分,從所述樣本數(shù)據(jù)集中篩選出聚類中心,包括:
19、根據(jù)所述各樣本點的決策值的二階差分,確定所述二階差分發(fā)生突變的目標樣本點;
20、基于所述目標樣本點,從所述樣本數(shù)據(jù)集中篩選出聚類中心,所述聚類中心的決策值的二階差分大于所述目標樣本點的決策值的二階差分。
21、第二方面,本技術(shù)方案提供了一種電網(wǎng)業(yè)務數(shù)據(jù)處理方法,所述方法包括:
22、獲取電網(wǎng)業(yè)務數(shù)據(jù);
23、調(diào)用已訓練的數(shù)據(jù)處理模型,對所述電網(wǎng)業(yè)務數(shù)據(jù)進行數(shù)據(jù)處理,得到數(shù)據(jù)處理結(jié)果;
24、其中,所述數(shù)據(jù)處理模型基于歷史電網(wǎng)業(yè)務數(shù)據(jù)、通過權(quán)利要求1至5中任意一項的模型訓練方法訓練得到。
25、第三方面,本技術(shù)還提供了一種模型訓練裝置,包括:
26、數(shù)據(jù)接收模塊,用于接收多個客戶端反饋的多組第一模型參數(shù),將所述第一模型參數(shù)確定為樣本點,得到樣本數(shù)據(jù)集,所述第一模型參數(shù)由所述客戶端基于本地的業(yè)務訓練數(shù)據(jù)集對待訓練模型進行訓練得到;
27、局部密度確定模塊,用于針對每一所述樣本點,基于所述樣本點與所述樣本點的相鄰樣本點之間的距離,確定所述樣本點的距離逆數(shù)密度,基于所述距離逆數(shù)密度,確定所述樣本點的局部密度修正項,基于所述距離逆數(shù)密度和所述局部密度修正項,確實所述樣本點的局部密度,所述相鄰樣本點為在所述樣本點的預設(shè)的距離范圍內(nèi)的樣本點;
28、聚類模塊,用于基于各所述樣本點的局部密度,對所述樣本數(shù)據(jù)集進行聚類,將數(shù)據(jù)分布相似的客戶端劃分至相同的客戶端集合,得到多個客戶端集合;
29、模型訓練模塊,用于調(diào)度多個客戶端,使得相同客戶端集合中的客戶端共享模型參數(shù),通過聯(lián)邦學習的方式共同訓練模型。
30、第四方面,本技術(shù)還提供了一種計算機設(shè)備,包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)上述模型訓練方法實施例中的步驟。
31、第五方面,本技術(shù)還提供了一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述模型訓練方法實施例中的步驟。
32、第六方面,本技術(shù)還提供了一種計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)上述模型訓練方法實施例中的步驟。
33、上述模型訓練方法、裝置、計算機設(shè)備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品,區(qū)別于傳統(tǒng)方案,上述方案通過客戶端基于本地訓練數(shù)據(jù)訓練得到的第一模型參數(shù),對樣本數(shù)據(jù)集進行聚類,進而將數(shù)據(jù)分布相似的客戶端劃分至相同的客戶端集合,在保護各個客戶端的數(shù)據(jù)隱私性的前提下,將本地訓練數(shù)據(jù)分布相似的客戶端劃分為一類,從而允許數(shù)據(jù)分布相似的客戶端共享模型訓練參數(shù)、共同訓練和優(yōu)化模型,使得聯(lián)邦學習過程能夠更好地應對和處理數(shù)據(jù)特性多樣化的訓練數(shù)據(jù),提高模型的訓練精度;并且,在以樣本點的局部密度為依據(jù),對對樣本數(shù)據(jù)集進行聚類的過程中,還通過局部密度修正項處理了相鄰樣本點對樣本點的局部密度的影響,提高了稀疏區(qū)域的樣本點被識別為聚類中心的可能性,得到更為準確的聚類過程,從而進一步提高了模型訓練精度。