摘 要:聯(lián)邦學(xué)習(xí)作為一種具有隱私保護(hù)的新興分布式計(jì)算范式,在一定程度上保護(hù)了用戶隱私和數(shù)據(jù)安全。然而,由于聯(lián)邦學(xué)習(xí)系統(tǒng)中客戶端與服務(wù)器需要頻繁地交換模型參數(shù),造成了較大的通信開銷。在帶寬有限的無線通信場景中,這成為了限制聯(lián)邦學(xué)習(xí)發(fā)展的主要瓶頸。針對這一問題,提出了一種基于Z-Score的動態(tài)稀疏壓縮算法。通過引入Z-Score,對局部模型更新進(jìn)行離群點(diǎn)檢測,將重要的更新值視為離群點(diǎn),從而將其挑選出來。在不需要復(fù)雜的排序算法以及原始模型更新的先驗(yàn)知識的情況下,實(shí)現(xiàn)模型更新的稀疏化。同時隨著通信輪次的增加,根據(jù)全局模型的損失值動態(tài)地調(diào)整稀疏率,從而在保證模型精度的前提下最大程度地減少總通信量。通過實(shí)驗(yàn)證明,在I.I.D.數(shù)據(jù)場景下,該算法與聯(lián)邦平均(FedAvg)算法相比可以降低95%的通信量,精度損失僅僅為1.6%,與FTTQ算法相比可以降低40%~50%的通信量,精度損失僅為1.29%,證明了該方法在保證模型性能的同時顯著降低了通信成本。
關(guān)鍵詞:聯(lián)邦學(xué)習(xí); Z-Score; 稀疏化; 動態(tài)稀疏率
中圖分類號:TP301.6 文獻(xiàn)標(biāo)志碼:A 文章編號:1001-3695(2024)07-024-2093-05
doi:10.19734/j.issn.1001-3695.2023.11.0540
High efficient federated learning algorithm based on Z-Score dynamic compression
Abstract:Federated learning as an emerging distributed computing paradigm with privacy protection, safeguards user privacy and data security to a certain extent. However, in federated learning systems, the frequent exchange of model parameters between clients and servers results in significant communication overhead. In bandwidth-limited wireless communication scenarios, this has become the primary bottleneck restricting the development of federated learning. To solve this problem, this paper proposed a dynamic sparse compression algorithm based on Z-Score. By utilizing Z-Score, it performed outlier detection on local model updates, considering significant update values as outliers and subsequently selecting them. Without complex sorting algorithms or prior knowledge of the original model updates, it achieved model update sparsification. At the same time, with the increase of communication rounds, the sparse rate was dynamically adjusted according to the loss value of the global model to minimize the total traffic while ensuring the accuracy of the model. Experiments show that in the I.I.D. data scenario, the proposed algorithm can reduce communication traffic by 95% compared with the federated average algorithm, and the accuracy loss is only 1.6%. Additionally, compared with the FTTQ algorithm, the proposed algorithm can also reduce communication traffic by 40%~50%, with only 1.29% decrease in accuracy. It proves that the method can significantly reduce the communication cost while ensuring the performance of the model.
Key words:federated learning; Z-Score; sparsification; dynamic sparsity
0 引言
近年來,物聯(lián)網(wǎng)的快速發(fā)展將現(xiàn)實(shí)世界中的諸多事物接入到了互聯(lián)網(wǎng)[1],并且通過在這些對象中傳遞信息,讓它們變得更加智能,為用戶提供更好更便捷的服務(wù)[2]。據(jù)報(bào)告分析表明,到2025年,預(yù)計(jì)將有多達(dá)309億臺物聯(lián)網(wǎng)設(shè)備連接到互聯(lián)網(wǎng)中[3]。由于接入裝置數(shù)量的飛速增長,網(wǎng)絡(luò)中每天產(chǎn)生的數(shù)據(jù)也在激增,從而形成了一種物聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用場景。為了利用無處不在的物聯(lián)網(wǎng)設(shè)備產(chǎn)生的數(shù)據(jù),深度學(xué)習(xí)等人工智能技術(shù)被廣泛應(yīng)用,借助訓(xùn)練數(shù)據(jù)模型以實(shí)現(xiàn)智能物聯(lián)網(wǎng)應(yīng)用,比如智慧城市、智慧醫(yī)療和智慧交通等[3,4]。傳統(tǒng)用于物聯(lián)網(wǎng)的人工智能主要基于集中式學(xué)習(xí)范式,要求網(wǎng)絡(luò)邊緣設(shè)備通過無線信道將采集到的數(shù)據(jù)傳輸?shù)竭h(yuǎn)端集中式服務(wù)器進(jìn)行處理[5]。由于無線數(shù)據(jù)傳輸?shù)拇罅髁控?fù)載和高隱私風(fēng)險,將數(shù)據(jù)傳輸至遠(yuǎn)端的服務(wù)器進(jìn)行集中式的機(jī)器學(xué)習(xí)變得不再實(shí)用。在此情形下,聯(lián)邦學(xué)習(xí)作為一種分布式計(jì)算范式被提出[6],并且在學(xué)術(shù)界和工業(yè)界引起了廣泛的關(guān)注和研究。在這種分布式架構(gòu)中,原始數(shù)據(jù)不再被要求發(fā)送到云端服務(wù)器,而是在中央服務(wù)器的協(xié)調(diào)之下由多個客戶端共同完成一個全局模型的訓(xùn)練[7,8]??蛻舳伺c中央服務(wù)器之間傳遞的僅僅是模型參數(shù),實(shí)現(xiàn)了原始數(shù)據(jù)不出本地,在一定程度上保護(hù)數(shù)據(jù)隱私的同時,又讓人工智能技術(shù)發(fā)揮了強(qiáng)大的作用。
目前,聯(lián)邦學(xué)習(xí)作為一種有前景的計(jì)算范式被廣泛應(yīng)用于構(gòu)建智能和增強(qiáng)隱私的物聯(lián)網(wǎng)系統(tǒng),然而,聯(lián)邦學(xué)習(xí)也存在著一些不足之處。聯(lián)邦學(xué)習(xí)系統(tǒng)雖然不需要將原始數(shù)據(jù)上傳至云端服務(wù)器,但是在整個系統(tǒng)的訓(xùn)練迭代期間,客戶端與服務(wù)器端仍需要頻繁地進(jìn)行模型參數(shù)交互。在無線通信系統(tǒng)中,通信帶寬通常是有限的,因此聯(lián)邦學(xué)習(xí)系統(tǒng)的數(shù)據(jù)傳輸需求在很多情況下都無法得到滿足。特別是在物聯(lián)網(wǎng)場景中,就算使用了LTE通信系統(tǒng),但由于通信帶寬的限制,仍然無法保證聯(lián)邦學(xué)習(xí)系統(tǒng)的客戶端與服務(wù)器端之間頻繁的數(shù)據(jù)通信。而現(xiàn)代深度神經(jīng)網(wǎng)絡(luò)模型通常包含了大量的參數(shù),從數(shù)千萬到數(shù)億不等,這大大地增加了通信開銷,甚至導(dǎo)致通信過載[9]?,F(xiàn)有研究表明,在客戶端上傳的模型梯度參數(shù)中存在大量的冗余參數(shù),這些參數(shù)對于全局模型的貢獻(xiàn)微乎其微。許多學(xué)者考慮使用設(shè)置閾值的方式篩選上傳的參數(shù),但實(shí)際操作時閾值的選擇十分困難,而采用梯度量化模型壓縮算法,其壓縮比有限且對模型的性能會造成較大的影響。文獻(xiàn)[10]指出,Z-Score能夠有效地識別和篩選出數(shù)據(jù)中的離群點(diǎn),實(shí)現(xiàn)異常參數(shù)的檢測。因此,可將梯度參數(shù)中對模型影響較大的值視為離群點(diǎn),引入Z-Score算法檢測出對模型貢獻(xiàn)較大的值,實(shí)現(xiàn)梯度稀疏化,從而減少上傳的參數(shù)量。綜上所述,本文提出一種基于Z-Score的動態(tài)閾值稀疏算法,用于解決通信開銷較大的問題,命名為DLZ-FedAvg(dynamic little-endian based on 128 Z-Score federated average)。該算法通過引入Z-Score進(jìn)行參數(shù)篩選,將客戶端的本地梯度稀疏化,并設(shè)計(jì)了一種動態(tài)稀疏機(jī)制。本文在本地模擬多個節(jié)點(diǎn)和參數(shù)服務(wù)器,實(shí)驗(yàn)結(jié)果證明該方法在犧牲一定精度的前提下,極大地減少了上行鏈路需要傳輸?shù)谋忍財(cái)?shù),從而減少總的通信量來達(dá)到降低通信開銷的目的。本文的主要貢獻(xiàn)如下:
a)提出了一種新的模型更新稀疏化算法,該算法既不需要對原始更新值進(jìn)行復(fù)雜的排序,又可以避免原始閾值難以選擇的困難。同時結(jié)合LEB128壓縮算法對稀疏后的模型更新值的索引進(jìn)行無損壓縮再次降低通信成本。
b)根據(jù)神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程的特點(diǎn),設(shè)計(jì)了一種動態(tài)調(diào)整稀疏閾值的方法,既保證訓(xùn)練過程的快速收斂,又能最大程度地降低總的通信量。
c)在多個廣泛使用的數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),對比分析了DLZ-FedAvg算法與其他算法的性能。實(shí)驗(yàn)結(jié)果證明,DLZ-FedAvg具有更高的壓縮率。
1 相關(guān)工作
現(xiàn)有針對通信開銷過大問題的聯(lián)邦學(xué)習(xí)優(yōu)化算法主要可分為稀疏化和量化兩大類。Strom等人[11]提出使用梯度絕對值的大小衡量其重要性,與預(yù)先設(shè)置的閾值進(jìn)行比較,大于該閾值則進(jìn)行上傳。然而,在實(shí)際操作過程中,閾值十分難以確定。Aji等人[12]提出先從梯度中抽樣0.1%作為樣本,排序后以第k個元素作為樣本閾值,然后利用該閾值作為整體閾值選擇top-k梯度。但是,隨機(jī)抽樣可能會造成整體壓縮比得不到保證。Luo等人[13]提出使用概率方程來衡量梯度的重要性,然后基于這個概率方程來挑選出k個參數(shù)進(jìn)行上傳。Han等人[14]提出一種基于top-k的雙向鏈路壓縮算法。雙向top-k表示上行鏈路和下行鏈路都只傳輸梯度的前k個元素。
量化最初用于數(shù)據(jù)壓縮,對于數(shù)百萬參數(shù)的深度學(xué)習(xí)至關(guān)重要,能夠顯著降低通信成本。Dettmers[15]將梯度的32位浮點(diǎn)數(shù)量化至8位,文獻(xiàn)[16]中SignSGD則只保留梯度的符號更新模型,實(shí)現(xiàn)了32倍的壓縮。Xu等人[17]提出一種三元量化算法,設(shè)置一個量化閾值,將梯度量化為+1、0、-1。為了在服務(wù)器端還原原始梯度,引入了一個量化因子進(jìn)行32 bit數(shù)據(jù)的還原。Cui等人[18]提出了一種基于K-means聚類算法的量化壓縮算法。在這種算法中,每個客戶端只需發(fā)送其聚類中心值以及每個梯度值對應(yīng)的類別ID。通過量化本地計(jì)算梯度,該算法將梯度量化為低精度值,而非直接上傳原始梯度值。這種方式降低了每個通信輪次的通信代價,但同時也降低了精度,并增加了總體計(jì)算能耗。Li等人[19]則提出了一種基于壓縮感知的壓縮算法。這種算法在壓縮效果方面表現(xiàn)良好,但客戶端需要引入額外的重構(gòu)算法來更新局部模型,從而增加了客戶端的計(jì)算量。
2 基于Z-Score和LEB128的動態(tài)壓縮算法DLZ-FedAvg
本章將詳細(xì)介紹DLZ-FedAvg算法。以往的稀疏化算法通常采用固定閾值或者固定百分比的top-k來進(jìn)行梯度稀疏化。在實(shí)踐中,top-k算法涉及復(fù)雜的數(shù)據(jù)排序,而固定閾值算法的閾值通常難以確定。神經(jīng)網(wǎng)絡(luò)的訓(xùn)練是一個逐漸收斂的過程,其權(quán)重參數(shù)會逐漸趨于穩(wěn)定,采用固定稀疏率并不能適應(yīng)這一過程。對此,提出一種基于Z-Score離群點(diǎn)檢測的動態(tài)稀疏算法來減少通信開銷,該方法可以在計(jì)算每個參數(shù)的Z-Score時完成參數(shù)篩選。在此基礎(chǔ)上,本文根據(jù)全局模型的損失值提出一種動態(tài)閾值更新算法,用于自適應(yīng)調(diào)整閾值。同時結(jié)合LEB128編碼對待發(fā)送元素的位置索引進(jìn)行編碼壓縮,降低通信開銷。
2.1 系統(tǒng)模型
本文采用如圖1所示的客戶端-服務(wù)器聯(lián)邦學(xué)習(xí)系統(tǒng)模型。典型的聯(lián)邦學(xué)習(xí)算法具有參數(shù)下發(fā)、局部訓(xùn)練、參數(shù)上傳和參數(shù)聚合四個階段。在參數(shù)下發(fā)階段,服務(wù)器將全局模型發(fā)送給參與訓(xùn)練的客戶端。在局部訓(xùn)練階段,參與訓(xùn)練的客戶端收到服務(wù)器發(fā)來的全局模型之后使用大小為ni的本地?cái)?shù)據(jù)集Di進(jìn)行訓(xùn)練,得到第i個客戶端的局部模型wit。其中i=1,2,…,M,M是總的客戶端的數(shù)量。第i個客戶端的訓(xùn)練局部模型的損失函數(shù)為Li,如式(1)所示。
其中:xj、yj表示數(shù)據(jù)集Di中的第j個數(shù)據(jù)的數(shù)據(jù)特征以及對應(yīng)的真實(shí)標(biāo)簽??蛻舳送瓿杀镜赜?xùn)練之后將局部模型上傳至服務(wù)器。在聚合階段,服務(wù)器聚合本輪參與訓(xùn)練的所有客戶端的模型更新,以獲得新的全局模型用于下一輪的迭代。聚合完成之后,服務(wù)器將新的全局模型通過廣播的形式發(fā)送給下一輪參與訓(xùn)練的客戶端,重復(fù)以上步驟直到算法收斂。聯(lián)邦學(xué)習(xí)的訓(xùn)練目標(biāo)是為了獲得全局最小損失函數(shù)L(w)。
全局損失函數(shù)定義如下:
其中:λ表示參與率定義為參與訓(xùn)練的客戶端的數(shù)量占總的客戶端的數(shù)量的比例。
2.2 DLZ-FedAvg算法
DLZ-FedAvg具體處理流程如算法1所示。其總體的處理過程與標(biāo)準(zhǔn)的聯(lián)邦學(xué)習(xí)算法基本一致,不同的是在客戶端中加入了Z-Score稀疏算法以及服務(wù)器端加入了閾值更新機(jī)制,用于實(shí)現(xiàn)Z-Score稀疏算法的閾值自適應(yīng)。首先,服務(wù)器端隨機(jī)挑選部分客戶端將本輪的全局模型以及稀疏閾值發(fā)送給這些客戶端;客戶端接收到這些全局模型之后執(zhí)行本地訓(xùn)練,將得到的本地梯度向量進(jìn)行Z-Score稀疏并使用LEB128編碼技術(shù)對索引進(jìn)行編碼壓縮;完成稀疏化之后,客戶端將壓縮后的梯度值以及索引進(jìn)行上傳;服務(wù)器端收到各個客戶端發(fā)來的壓縮的梯度信息之后進(jìn)行解壓縮以及全局梯度信息的聚合,得到最新的全局模型。
算法1 DLZ-FedAvg
Z-Score是一種對一維或者低維空間中異常參數(shù)的檢測方法。異常值定義為分布尾部的數(shù)據(jù)點(diǎn)。本文將對模型影響較大的梯度值視為離群點(diǎn),其余值視為正常點(diǎn)。引入Z-Score來計(jì)算每一個梯度值與平均值之間的距離,距離越遠(yuǎn)意味著該梯度值對模型的影響越大。因此,在參數(shù)上傳階段上傳該梯度值的可能性就越大。給定一個觀察值x,它的Z-Score可以通過以下公式計(jì)算:
其中:μ表示總體的均值;σ表示標(biāo)準(zhǔn)差。然后將每個參數(shù)計(jì)算得到的Z-Score與預(yù)先設(shè)置的閾值進(jìn)行比較,如果大于閾值,就將其參數(shù)本身以及對應(yīng)的索引值進(jìn)行保存。為了保證模型的精度,與以往稀疏算法不同的是,對小于閾值的值采取殘差平均更新的方法。將大于閾值的參數(shù)篩選出來之后,計(jì)算剩余參數(shù)的均值并發(fā)送該均值給服務(wù)器。在服務(wù)器端將未接收到更新值的位置全部替換為該均值,算法細(xì)節(jié)如算法2所示。
算法2 Sparsity
此外,本文還設(shè)計(jì)了一種動態(tài)閾值機(jī)制,具體細(xì)節(jié)如算法3所示。其核心思想是前期采用小的稀疏閾值,后期采用大的稀疏閾值。較小的稀疏閾值有助于保留更多的梯度信息,使得模型參數(shù)獲得更為準(zhǔn)確的更新,從而使模型能夠較快收斂,較大的稀疏閾值有望提高壓縮比減少通信開銷。
算法3 Adaptive Threshold
根據(jù)神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程的特點(diǎn)以及文獻(xiàn)[20]可知,隨著迭代輪次的增加,模型逐漸趨于穩(wěn)定,損失函數(shù)逐漸減小。當(dāng)損失值較大時,表明模型訓(xùn)練處于前期階段,此時需要對全局模型參數(shù)進(jìn)行較為準(zhǔn)確的更新。因此,此時應(yīng)設(shè)置較小的閾值。而當(dāng)損失值較小且趨于一個穩(wěn)定的數(shù)值時,本文認(rèn)為此時聯(lián)邦學(xué)習(xí)系統(tǒng)已經(jīng)收斂,此時網(wǎng)絡(luò)模型只需要進(jìn)行微調(diào)即可,為了實(shí)現(xiàn)這一點(diǎn),應(yīng)該設(shè)置較大的閾值。因此,隨著訓(xùn)練輪次的增加,閾值可以逐漸增大。最極端的情況是完全不發(fā)送梯度信息,那么,在服務(wù)器端模型不再更新。在這種情況下,算法性能達(dá)到最優(yōu)。閾值更新機(jī)制如式(6)(7)所示。
其中:x為一個比例系數(shù),表示第t輪的損失值與最大值的比值。其中最大值一般為第一輪的損失值,因?yàn)樯窠?jīng)網(wǎng)絡(luò)的訓(xùn)練是一個損失值下降的過程。a為一個常量,為初始的閾值。最后,本文結(jié)合LEB128編碼技術(shù)對索引進(jìn)行無損編碼壓縮,再次降低上行鏈路的通信開銷。
3 實(shí)驗(yàn)及分析
為了驗(yàn)證DLZ-FedAvg算法,使用了MNIST、CIFAR10數(shù)據(jù)集進(jìn)行了大量的實(shí)驗(yàn)。對三種聯(lián)邦學(xué)習(xí)算法進(jìn)行比較,包括標(biāo)準(zhǔn)的聯(lián)邦學(xué)習(xí)算法、基于三元壓縮算法和基于Z-Score動態(tài)壓縮算法,評估模型精度、上行鏈路的通信量等性能指標(biāo)。實(shí)驗(yàn)設(shè)置如表1、2所示。
3.1 實(shí)驗(yàn)設(shè)置
a)對比算法。在本節(jié)中對以下算法進(jìn)行數(shù)值比較,本文使用文獻(xiàn)[6]提出的標(biāo)準(zhǔn)聯(lián)邦平均算法(FedAvg)作為基線算法。將文獻(xiàn)[17]提出的三元壓縮聯(lián)邦學(xué)習(xí)算法(FTTQ)作為對比算法,所有算法都使用相同的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)、相同的學(xué)習(xí)率并使用相同的優(yōu)化器進(jìn)行訓(xùn)練。
b)數(shù)據(jù)集。使用了兩個廣泛用于分類的代表性公共數(shù)據(jù)集MNIST和CIFAR10。
c)網(wǎng)絡(luò)模型。為了評估上述算法的泛化性能,在不同復(fù)雜度的網(wǎng)絡(luò)模型上進(jìn)行了實(shí)驗(yàn)。本文選擇三個深度學(xué)習(xí)模型LeNet5、CNN-7、VGG16-S。LeNet5用于訓(xùn)練簡單數(shù)據(jù)集MNIST。CNN-7和VGG16-S用于訓(xùn)練CIFAR10數(shù)據(jù)集。其中CNN-7是一個淺層的卷積神經(jīng)網(wǎng)絡(luò):一共包含7層,其中4個卷積層、3個全連接層,最后一個全連接層后面接一個BN層。
d)數(shù)據(jù)分布。聯(lián)邦學(xué)習(xí)的性能受到客戶端的訓(xùn)練數(shù)據(jù)特征的影響。為了研究不同數(shù)據(jù)分布的影響,將數(shù)據(jù)分為I.I.D.和Non-I.I.D.兩種不同的分布。其中Non-I.I.D.分布主要考慮的是類別不平衡的情形,即每個客戶端只擁有Nc個數(shù)據(jù)類。
e)實(shí)驗(yàn)環(huán)境和參數(shù)設(shè)置。實(shí)驗(yàn)采用PyTorch框架編程。采用本地計(jì)算機(jī)模擬多個終端的方式進(jìn)行仿真。具體的實(shí)驗(yàn)環(huán)境如表1所示。神經(jīng)網(wǎng)絡(luò)相關(guān)訓(xùn)練參數(shù)如表2所示。由于MNIST數(shù)據(jù)集為單通道的灰度圖像,特征較為容易學(xué)習(xí),所以該數(shù)據(jù)集并未使用數(shù)據(jù)增強(qiáng)方法。CIFAR10數(shù)據(jù)集采用隨機(jī)裁剪和水平隨機(jī)翻轉(zhuǎn)的數(shù)據(jù)增強(qiáng)的方法,同時對三個顏色通道進(jìn)行歸一化,其均值和標(biāo)準(zhǔn)差分別為μr=0.4914,σr=0.247,μg=0.4824,σg=0.244,μb=0.4467,σb=0.262。
3.2 實(shí)驗(yàn)結(jié)果
為了展示本文方法的有效性,在多個數(shù)據(jù)集上與其他聯(lián)邦學(xué)習(xí)算法進(jìn)行了對比實(shí)驗(yàn)。
圖2展示的是LeNet5在MNIST數(shù)據(jù)集上三種不同聯(lián)邦學(xué)習(xí)算法收斂曲線。通信輪數(shù)設(shè)為200,其中圖2(a)為I.I.D.數(shù)據(jù)場景,DLA-FedAvg_No_Res表示的是未使用殘差平均的算法,圖2(b)為Non-I.I.D.數(shù)據(jù)場景。從圖2(a)中可以看出,雖然在訓(xùn)練的前期階段,DLA-FedAvg算法相比其余兩種算法收斂速度稍差,但隨著訓(xùn)練輪次的增加,最終可以達(dá)到與其余兩種算法幾乎相同的測試精度。這是因?yàn)镈LA-FedAvg客戶端在每輪上傳模型參數(shù)進(jìn)行全局聚合時發(fā)送的參數(shù)是三種算法中最少的,所以會對收斂速度產(chǎn)生一定的負(fù)面影響。由于本文采用了殘差平均,對未發(fā)送的參數(shù)進(jìn)行不精確更新,雖然存在一定的誤差,但是這些參數(shù)對于模型的影響很小,且大多數(shù)參數(shù)可以得到一定程度的更新,所以從圖中可以看出,相比將殘差丟棄的方式而言,使用了殘差平均的DLA-FedAvg在一定程度上緩解了收斂速度較慢的問題。從圖2(b)可以看出,在Non-I.I.D.數(shù)據(jù)場景下,DLA-FedAvg算法的性能與其余兩種算法性能相比稍差但是相差很小。由于MNIST數(shù)據(jù)集較為簡單,所以Non-I.I.D.數(shù)據(jù)場景對于算法的性能影響較小。
圖3展示的是CNN-7網(wǎng)絡(luò)在CIFAR10數(shù)據(jù)集上三種不同聯(lián)邦學(xué)習(xí)算法收斂曲線,通信輪數(shù)設(shè)為200。從圖3(a)中可以看出,DLZ-FedAvg算法在75輪通信之后,可以與FTTQ算法收斂曲線基本上重合。同時從圖3(b)中可以看出,在Non-I.I.D.數(shù)據(jù)場景下,DLZ-FedAvg算法的性能與FedAvg是十分接近的。這表明,本文算法能夠適應(yīng)不同復(fù)雜程度的數(shù)據(jù)集以及不同深度的神經(jīng)網(wǎng)絡(luò)模型。
圖4(a)展示的是VGG16-S網(wǎng)絡(luò)在CIFAR10數(shù)據(jù)集上的訓(xùn)練結(jié)果,其數(shù)據(jù)分布為I.I.D.分布。如圖4(a)所示,與FTTQ算法相比DLA-FedAvg算法的性能幾乎是一致的。與FedAvg算法相比,由于減少了大量的參數(shù)更新,所以減緩了收斂速度。但是最終的模型精度并未受到較大的影響。圖4(b)展示的是VGG16-S網(wǎng)絡(luò)在Non-I.I.D.數(shù)據(jù)分布下的訓(xùn)練結(jié)果。DLA-FedAvg算法最終性能略差于FedAvg算法,但是精度損失不大。
如圖5所示,以VGG16-S為例展示了DLA-FedAvg算法通信量隨通信輪次的變化曲線,其數(shù)據(jù)分布為I.I.D.分布,神經(jīng)網(wǎng)絡(luò)為VGG16-S。從圖5中可以看出,隨著通信輪次的增加,每輪上傳的通信量整體是逐漸下降的。這是由于DLZ-FedAvg算法是動態(tài)調(diào)整閾值的,所以呈現(xiàn)出逐漸下降的趨勢。
最后,比較了固定通信輪次的FedAvg、FTTQ、DLA-FedAvg算法在I.I.D.數(shù)據(jù)場景下的準(zhǔn)確率、通信成本、壓縮率三個性能指標(biāo)。其中壓縮率表示為壓縮后的通信成本與未壓縮的通信成本的比值。因此,本文將FedAvg算法的壓縮率設(shè)為1。具體的實(shí)驗(yàn)結(jié)果如表3所示(表中數(shù)據(jù)格式為準(zhǔn)確率(%)/通信成本(MB)/壓縮率),通信輪次為200輪。從表中可以看出,在MNIST數(shù)據(jù)集上,DLA-FedAvg與FedAvg相比,DLA-FedAvg在僅犧牲1.6%的模型精度的情況下可降低95%的通信成本。同時,與FTTQ相比,模型精度只相差1.29%,而DLA-FedAvg的通信成本僅為FTTQ算法的39.8%。同樣,對于CIFAR10數(shù)據(jù)集,與FedAvg算法相比可降低95%的通信量,而與FTTQ算法的精度差異最高不超過0.2%,通信量最低可降至FTTQ的47%。這表明本文算法并不會造成過大的精度損失,同時在降低通信量方面是有效的。
4 結(jié)束語
為了解決聯(lián)邦學(xué)習(xí)通信成本高的問題,本文提出了基于Z-Score與LEB128編碼的動態(tài)壓縮算法。首先利用Z-Score設(shè)計(jì)了一種聯(lián)邦學(xué)習(xí)的通用稀疏機(jī)制減小每輪通信的參數(shù)量,并采用殘差平均機(jī)制保證模型的收斂性能,然后根據(jù)全局模型的損失值動態(tài)調(diào)整稀疏閾值保證訓(xùn)練前期模型得到充分更新,同時保證整體的壓縮性能,最后使用LEB128編碼技術(shù)對參數(shù)索引進(jìn)行編碼壓縮,降低了數(shù)據(jù)傳輸開銷。實(shí)驗(yàn)表明,該方法在保證模型性能的同時,顯著降低了所需的帶寬和通信成本。對于未來的工作,本文將考慮再結(jié)合量化映射對稀疏化后的參數(shù)進(jìn)行編碼映射,以達(dá)到最佳的壓縮性能。
參考文獻(xiàn):
[1]Mazon-Olivo B, Pan A. Internet of Things: state-of-the-art, computing paradigms and reference architectures[J]. IEEE Latin America Trans, 2021,20(1): 49-63.
[2]Wu Yulei, Dai Hongning, Wang Haozhe, et al. A survey of intelligent network slicing management for industrial IoT: integrated approaches for smart transportation, smart energy, and smart factory[J]. IEEE Communications Surveys & Tutorials, 2022, 24(2): 1175-1211.
[3]Vailshery L S. IoT and Non-IoT connections worldwide 2010—2025.[EB/OL]. (2023-05).https://www.statista.com/statistics/1101442/iot-number-of-connected-devices-worldwide.
[4]Kalapaaking A P, Khalil I, Atiquzzaman M. Smart policy control for securing federated learning management system[J]. IEEE Trans on Network and Service Management, 2023, 20(2): 1600-1611.
[5]Zhao Zhongyuan, Feng Chenyuan, Wei Hong, et al. Federated lear-ning with Non-IID data in wireless networks[J]. IEEE Trans on Wireless Communications, 2022, 21(3): 1927-1942.
[6]McMahan B, Moore E, Ramage D, et al. Communication-efficient learning of deep networks from decentralized data[C]//Proc of Artificial intelligence and Statistics. 2017: 1273-1282.
[7]Duan Moming,Liu Duo,Chen Xianzhang, et al. Self-balancing fede-rated learning with global imbalanced data in mobile systems[J]. IEEE Trans on Parallel and Distributed Systems, 2020, 32(1): 59-71.
[8]Imteaj A, Thakker U, Wang Shiqiang, et al. A survey on federated learning for resource-constrained IoT devices[J]. IEEE Internet of Things Journal, 2021, 9(1): 1-24.
[9]Sun Jun, Chen Tianyi, Giannakis G B, et al. Lazily aggregated quantized gradient innovation for communication-efficient federated lear-ning[J]. IEEE Trans on Pattern Analysis and Machine Intelligence, 2020, 44(4): 2031-2044.
[10]Aggarwal V, Gupta V, Singh P, et al. Detection of spatial outlier by using improved Z-Score test[C]//Proc of the 3rd International Conference on Trends in Electronics and Informatics. Piscataway, NJ: IEEE Press, 2019: 788-790.
[11]Strom N. Scalable distributed DNN training using commodity GPU cloud computing[C]//Proc of the 16th Annual Conference of International Speech Communication Association. 2015: 1488-1492.
[12]Aji A F, Heafield K. Sparse communication for distributed gradient descent[C]//Proc of Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computatio-nal Linguistics, 2017:440-445.
[13]Luo Peng, Yu F R, Chen Jianyong, et al. A novel adaptive gradient compression scheme: reducing the communication overhead for distributed deep learning in the Internet of Things[J]. IEEE Internet of Things Journal, 2021,8(14): 11476-11486.
[14]Han Pengchao, Wang Shiqiang, Leung K K. Adaptive gradient sparsification for efficient federated learning: an online learning approach[C]//Proc of the 40th IEEE International Conference on Distributed Computing Systems. Piscataway, NJ: IEEE Press, 2020: 300-310.
[15]Dettmers T. 8-bit approximations for parallelism in deep learning[C]//Proc of the 4th International Conference on Learning Representation. 2016: 1-14.
[16]Bernstein J, Wang Yuxiang, Azizzadenesheli K, et al. SignSGD: compressed optimisation for non-convex problems[C]//Proc of International Conference on Machine Learning.[S.l.]: PMLR ,2018: 560-569.
[17]Xu Jinjin, Du Wenli, Jin Yaochu, et al. Ternary compression for communication-efficient federated learning[J]. IEEE Trans on Neural Networks and Learning Systems, 2022,33(3): 1162-1176.
[18]Cui Laizhong, Su Xiaoxin, Zhou Yipeng, et al. ClusterGrad: adaptive gradient compression by clustering in federated learning[C]//Proc of IEEE Global Communications Conference. Piscataway, NJ: IEEE Press, 2020: 1-7.
[19]Li Chengxi, Li Gang, Varshney P K. Communication-efficient federated learning based on compressed sensing[J]. IEEE Internet of Things Journal, 2021, 8(20): 15531-15541.
[20]Guo Jinrong, Liu Wantao, Wang Wang, et al. Accelerating distributed deep learning by adaptive gradient quantization[C]//Proc of ICASSP IEEE International Conference on Acoustics, Speech and Signal Processing. Piscataway, NJ: IEEE Press, 2020: 1603-1607.