?

DFSL:基于細粒度共享層激勵機制的深度聯邦學習算法

2024-02-03 08:52張浩宇巫朝霞通信作者
信息記錄材料 2024年1期
關鍵詞:集上聯邦差分

張浩宇,巫朝霞(通信作者)

(新疆財經大學統計與數據科學學院 新疆 烏魯木齊 830012)

0 引言

聯邦學習的本質是一種分布式機器學習技術,旨在保護用戶數據隱私的前提下通過協同訓練模型,使得每個參與方的局部模型能夠從其他參與方的模型中受益,從而不斷提升整體模型的性能。[1]至今聯邦學習已經應用到了各個領域,如工業物聯網領域[2]、醫療領域[3]、無線通信領域[4]、金融領域[5]等。 對于聯邦學習的研究,眾多學者都致力于開發聯邦學習算法,以支持機器學習模型的有效性。 例如2020 年Liu 等[6]采用了深度神經網絡,引入聯邦遷移學習(federal transfer learning,FTL)來改進數據聯合下的統計建模。 FTL 允許在不侵犯用戶隱私的情況下共享知識,并實現跨領域傳輸補充知識,使目標領域能夠利用源領域的豐富標簽構建靈活有效的模型。 該框架對現有模型結構進行了最低程度的修改,并提供了與非隱私保護遷移學習相同的準確性。 不同于前面的學者,為了在不侵犯用戶隱私的前提下,實現多方之間協作構建機器學習模型的目標,Cheng 等[7]于2021 年提出了一種名為SecureBoost 的新型無損隱私保護樹增強系統,采用梯度提升決策樹的方法進行設計。 該系統具備多方共同進行訓練的能力,并且能夠在不泄露用戶數據隱私的條件下,達到與非隱私保護方法相當的準確率。 然而上述大多研究都沒有考慮到聯邦學習涉及具有異構環境的參與者。

為此,2020 年Lu 等[8]提出了一種名為隱私保護異步聯邦學習機制(privacy?preserving asynchronous federated learning mechanism,PAFLM )的隱私保護異步聯邦學習機制,該機制使得多個邊緣節點能夠在不共享其私有數據的情況下進行聯邦學習。 首先,該機制能夠在訓練過程中有效壓縮節點和參數服務器之間的通信,同時保持模型的準確性。 其次,該機制還允許節點在學習過程中的加入或退出,從而更好地適應邊緣移動設備的異構環境。 2022 年Nguyen 等[9]明確指出同步聯邦學習在并行訓練的數百個客戶端上無法有效擴展,會導致模型性能和訓練速度的回報遞減問題。 為應對此問題,他們提出了一種名為FedBuff 的全新緩沖異步聚合方法,該方法綜合了同步和異步聯邦學習的最佳特性。 研究證明,FedBuff 方法不僅比同步和異步聯邦學習更高效,還能與諸如安全聚合和差分隱私等隱私保護技術相兼容。 2023 年,Zhang 等[10]對異步聯邦學習方法可能導致訓練精度下降和收斂速度變慢的問題進行了研究。 他們提出了一種名為TimelyFL 的異構感知異步聯邦學習框架,該框架具有自適應訓練功能,會根據每個客戶端的實時資源能力來調整本地訓練工作量,以確保更多可用的客戶端能夠參與全局更新而不會過時。 與Nguyen 等[9]提出的FedBuff 方法相比,TimelyFL 在參與率、收斂率和測試準確性方面都有所提高。

此外,在聯邦學習中,如果沒有合適的激勵機制,很多數據所有者會不愿意貢獻自己本地模型的參數,積極地參與全局模型的訓練。 特別是當數據所有者是企業的情況時,因為這些數據往往可以給企業帶來一定的經濟收益,因此如何評估不同數據所有者的貢獻對設計激勵機制至關重要。 Yang 等[11]在2023 年認為激勵機制上公平性與帕累托(Pareto)效率之間存在沖突。 為了解決該問題,他們提出了一種將shapely 值與帕累托效率優化相結合的激勵機制。 該機制引入了第三方監督收益分配,并根據是否達到帕累托最優選擇對參與方進行獎懲。 在達到帕累托最優的情況下,根據Shapely 值法進行獎勵分配;反之,則進行處罰。 不同于前面的學者以數據質量為導向計算貢獻從而設計激勵機制方案,Zhan 等[12]采用訓練數據的數量作為計算客戶貢獻度的指標,并利用Stackelberg 博弈的概念描述了參數服務器和客戶之間的交互。 在完全信息共享的場景下,他們推導出了納什均衡解,并針對缺乏先驗信息的場景,設計了一種基于深度強化學習(deep reinforcement learning,DRL)的聯邦學習激勵機制。

以上研究從本地數據異構、梯度保護、優質客戶端選擇、通信成本和算力資源等角度分別研究了基于深度聯邦學習框架下的隱私保護問題,且已取得了較大的成果。 對于一個基于深度學習的聯邦框架而言,其核心模塊是深度學習網絡,共享參數往往是分布在不同的層,共享參數梯度的計算以及全局模型對共享參數的廣播也是基于共享層的。 故細粒度共享層的適當激勵,能夠快速地判斷共享參數對全局模型收斂的貢獻大小,從而指導算法設計人員優化深度學習模型。 基于此,本文提出基于細粒度共享層激勵機制的深度聯邦學習算法(deep federated learning algorithm based on fine?grained shared layer incentive mechanism,DFSL),該算法的主要貢獻如下:

(1)采用N 組本地變量實現對不同共享層的加權,實現自適應的共享層參數更新,同時本地梯度上傳時,基于這N 組共享實現對梯度的隱私保護;

(2)本文提出了基于余弦相似度的客戶端選擇方法,將各客戶端上傳的梯度進行余弦相似度計算得到距離,然后使用裁剪的方法隨機去除部分相似度過小的梯度,實現優質客戶端梯度的選擇;

(3)本文提出的算法在CIFAR-10 以及MNIST 兩個數據集上的召回率以及F1 值均達到了最優。 在CIFAR-10 數據集上召回率以及F1 值分別提升了3.73%以及2.12%;在 MNIST 數據集上分別提升了 1.99% 以及2.10%。

1 相關理論

1.1 聯邦學習基本框架

聯邦學習框架基本組成部件如下:

(1)本地模型。 本地模型也稱客戶端模型,主要由計算資源、聯邦框架下的機器學習模型、通信接口組成;本地模型以分布式的方式圍繞全局服務器部署,且擁有私有數據集,各本地模型的私有數據集不進行共享。

(2)全局模型。 全局模型作為中心服務器,主要功能是安全聚合分布式客戶端上傳的梯度,然后將共享參數廣播至各客戶端。

(3)隱私保護。 聯邦框架下,隱私保護主要有兩個層面:數據層面、參數層面。 數據層面即使用加密算法實現對數據的硬加密,保證數據的本地存儲安全;參數層面即使用加密或差分的方法將共享參數進行等同變換,既保護了原始數據的隱私安全,也不妨礙聯邦學習過程中對真實數據分布的學習。

(4)安全聚合。 聯邦基本框架下梯度聚合方式有兩種:同步梯度聚合、異步梯度聚合。 前者要求所有客戶端均上傳完梯度后才進行聚合;后者不需要等待所有的客戶端上傳梯度,在合適的時機就開展梯度聚合,能夠有效地避免因客戶端掉線而產生的漫長等待問題。

(5)共享參數下發。 全局服務器在迭代更新自身參數的過程中,會將自身參數通過廣播或者選擇的方式分發給本地模型,本地模型使用這些參數更新自身參數,直至收斂。

聯邦學習的基本框架如圖1 所示。

圖1 聯邦學習方法基本框架

由圖1 可知:各本地模型數據集可以是獨立同分布(independent and identically distributed,IID),也可以是非獨立同分布(non?independent and identically distributed,Non?IID),數據集一旦分配完成之后,各本地模型之間就不再共享私有數據集。 各本地模型將本地的參數梯度計算出來之后傳遞至梯度池,由梯度池進行臨時存儲。

圖1 中,梯度池N 表示共享參數個數,每一個共享參數均有獨立的內存,當達到聚合條件時開始聚合,聚合方式如式(1)所示。 式(1)中,k表示第k個共享參數,B表示批次大小,表示第k個共享參數聚合后的梯度,δ是形式化的梯度保護函數,x是私有參數。 對客戶端來說,私有參數是不共享的參數,θ是共享參數集合,梯度基于共享參數計算得到,j表示聯邦學習迭代的第j個輪次。

由于客戶端數據劃分存在兩種方式,故對應這兩種方式下,數據劃分公式分別如式(2)和式(3)所示。 其中,參數S表示本地客戶端的個數,Di表示第i個客戶端的私有數據集, ‖Di‖ 表示數據集Di的規模,D表示全局數據集。

式(2)是放回式抽樣,產生S個私有數據集,且存在i,j,使得Di∩Dj≠Φ。 式(3)是不放回抽樣,即所有的本地客戶端樣本均不相交,并集為全集D。

1.2 隱私保護

隱私保護是聯邦學習的主要特性之一。 聯邦學習過程中存在頻繁的參數共享和傳遞,存在參數泄露和惡意客戶端的虛假梯度共享。 因此數據隱私保護對于聯邦學習至關重要。

數據隱私保護主要體現在兩個方面:對樣本數據進行隱私保護;對客戶端和服務器端的內部數據變換結果進行隱私保護。 實現數據隱私保護的具體實施方法有以下兩種:基于同態加密、 數據加密標準(data encryption standard,DES) 等密碼學加密手段、 基于差分隱私(differential privacy,DP)的隱私保護。

(1)基于密碼學的數據隱私保護。 數據集加密對硬盤要求高,且需要更高的通信帶寬,加密算法如式(4)所示。

由式(4)可知,原始樣本用矩陣W表示,維度大小為M×N,j,k分別表示當前矩陣的行號和列號,數值wj,k被加密成長度為R的向量,其數據規模是原來的RM+N倍??梢?,通信鏈路傳輸此種矩陣時,需要消耗大量的通信帶寬和算力資源。

(2)基于DP 的隱私保護。 基于DP 的隱私保護的核心算法主要包括:基于高斯噪聲的差分、基于拉普拉斯函數的差分。 前者適用于指數的數據隱私保護,后者適用于一般數據的隱私保護。 基于拉普拉斯函數的差分方法的隱私保護算法基本形式如式(5)所示。

式(5)中可看出,基于拉普拉斯函數以及當前梯度生成差分項結合當前梯度形成新的梯度值,得到新的梯度。成為候選梯度,被全局模型進行聚合,更新共享參數。 參數γ的作用是標定差分前后梯度的敏感度。且滿足如下關系:(1)當γ=0 時,差分項為0,原始梯度未進行任何隱私保護;(2) 0<γ→0 時差分項隨著γ增大而逐漸增大,與▽j,k的差異在一個合理的范圍內時,隱私保護恰到好處;如果與▽j,k的差異很小,那么隱私保護力度仍有待加強;(3)γ→1 時差分項隨著γ增大而逐漸增大,與▽j,k的差異越來越大且明顯。 拉普拉斯函數基本公式如下:

2 基于細粒度共享層激勵機制

本文提出了一種基于細粒度共享層激勵機制的隱私保護算法:DFSL。 接下來本文將分別介紹算法DFSL的基本框架、原理以及對比實驗。 為方便對算法描述的需要,現將后續將要使用到的參數匯總如表1 所示。

表1 參數列表

2.1 DFSL 算法基本架構

DFSL 算法的基本架構如圖2 所示。 圖2 主要由3 個模塊組成。 分別是:多組本地模型、全局客戶端、梯度隊列容器。 為簡單起見,每個本地模型均只包含私有數據集以及內置同構深度學習模型。 同構深度學習模型見圖2 的“DFSL 模型”模塊。

圖2 DFSL 算法基本架構

DFSL 算法的聯邦執行過程如下:

Round-1:本地模型首先使用私有數據集訓練自身內置神經網絡Netk,其次計算共享參數的梯度,使用μk作為梯度激勵因子給原始梯度增加差分噪聲,最后將變換后的梯度上傳至梯度容器。 在此過程中,梯度激勵過程如式(7)所示。

從式(7)中可看出,本文算法將每一層的激勵矩陣與基于拉普拉斯差分項的乘積作為對應梯度的差分項。 由于激勵矩陣μj使用sigmoid 函數激活,故能夠保證差分項的非線性。

由于μj的初始值為全1 矩陣,DFSL 算法收斂過程中,μj矩陣逐漸向著最優值收斂,且均值在0 ~1 之間,故,,▽j,k) 。

Round-2:異步梯度聚合。 考慮到客戶端的算力和信道,采用異步的方式實現梯度聚合。 設置閾值,當梯度容器Gr收集的梯度數目達到λ時,全局模型一次性清空Gr,計算共享參數的平均梯度,然后進行聚合。 具體過程如算法1 所示。

算法1:梯度聚合

輸出:Gr*

客戶端計算共享參數梯度**/

Round-3:共享參數傳播。 全局服務器更新完自身參數后,將共享參數分享至參與訓練的本地模型,各本地模型通過共享參數更新本地網絡。

從圖2 中可看出,本地模型與全局模型之間是通過共享參數進行耦合,共享參數越多,耦合得越緊密。 DFSL 算法基本框架滿足以下幾點:

(1)不同本地模型之間不建立通信,禁止共享私有數據。

(2)全局模型在廣播共享參數時,只廣播至與其建立梯度鏈接的本地模型,未建立通信鏈接的本地模型物理上無法收到全局模型的共享參數。

(3)共享參數被異步更新,已經被使用過的共享參數梯度將不再被使用。

2.2 DFSL 算法的同構網絡

圖2 中的DFSL 模型即為DFSL 算法的同構網絡。 該網絡主要由3 部分組成:

(1)基礎卷積。 基礎卷積的作用是使用若干個卷積模塊實現對原始樣本的變換和降維。 基礎卷積的基本構造為兩個平行的卷積網絡,經過兩層卷積之后進行了特征圖的融合。

(2)殘差模塊。 殘差模塊主要由3 個殘差Block 組成,殘差模塊具體形式如圖3 所示。

圖3 殘差模塊

(3)全連接(fully connected,FC)層。 本文算法主要有兩個級聯的全連接層,由于全連接層輸入時殘差網絡的輸出,為了避免全連接層矩陣太過龐大,故設置兩個全連接層,減少全連接層矩陣規模。 為更進一步描述圖2 的同構網絡結構,現將圖2 的網絡結構描述如表2所示。

表2 DFSL 算法同構深度學習模型參數

假設輸入樣本規模為B× 28 × 28 ×3,網絡基本結構如表2 所示:

3 對比實驗

3.1 實驗環境

本文所使用的數據集為CIFAR?10、MNIST 圖像數據集,這2 個數據集將會在后文介紹。 本文提出的算法可在GPU 快速部署運行,與其他算法在GPU 上進行對比實驗,對比實驗硬件配置如表3 所示。 實驗超參數設置如表4所示。

表3 實驗硬件條件

表4 實驗條件設置

3.2 數據集

本文算法與對比算法在多個數據集上進行對比實驗,本文所使用的數據集的基本信息如表5 所示。

表5 實驗數據集的基本信息

表6 對比算法以及評估指標

式(8)中,Um,d指第m 個客戶端的數據集,‖D‖ 是全局數據集D 的規模。

因為本文的深度學習算法引入了差分隱私機制所以選用作為對比的算法也需要引入該機制,由表7 可知,本文所選用的對比算法有三種分別是ResNet?Block3 +DP、BiLSTM?CNN+DP、CNN +DP。 其中ResNet?Block3 +DP 是結合了ResNet 的殘差網絡結構以及差分隱私機制的一種深度學習算法;BiLSTM?CNN+DP 是一種結合了雙向長短期記憶網絡(bidirectional LSTM)和卷積神經網絡(CNN)并應用了差分隱私DP 技術的算法;CNN+DP 是一種使用了卷積神經網絡和差分隱私技術的算法。

表7 2 個數據集上的準確率實驗結果匯總 %

使用的4 種準確率計算過程如式(9)所示。

其中,TP 是真陽例,FP 是假陽例,FN 是假陰例,TN是真陰例。

3.3 實驗

實驗的評估指標分別是Accuracy、F1、Precision、Recall。 測試過程中收斂時步數以及在4 個評估指標上的實驗結果匯總如表7 所示。

從本文算法在2 個數據集上的實驗結果可看出,本文實驗具有較好的魯棒性,4 種評估指標下的實驗結果均較高。 為驗證本文提出的DFSL 算法對圖片數據集的有效性,本文算法與目前已有的算法實驗結果對比如表8 所示。 從表8 可看出,本文所提算法DFSL 在CIFAR?10、MNIST 等2 個數據集上的實驗結果優于其他算法在原始數據集上的實驗結果。

表8 與其他算法的準確率對比實驗結果 %

為進一步量化DFSL 算法相較于其他對比算法在以上兩個數據集上的分類準確率提升情況,在2 個數據集上評估指標提升匯總如表9 所示。

表9 與其他算法的對比提升率結果 %

從表8 和表9 可看出,以F1 為評估指標條件下,在CIFAR-10 數據集上F1 值最大提升2.12%、最小提升0.13%;在Mnist 數據集F1 值最大提升2.10%、最小提升0.92%;本文算法實驗準確率完全超過CNN +DP 以及BiLSTM?CNN+DP 算法。

基于以上對比結果,本文算法在對比指標上的單個對比算法上的提升率均為正,實驗表明本文算法具有一定的優勢。

由于本文算法使用了基于自適應差分方法對梯度進行了激勵,為進一步比較本文算法與其他算法在收斂時間上的優勢,將收斂時間匯總,如表10 所示。

表10 與其他算法的收斂時間對比結果

從表10 可看出,本文算法雖然使用了較多的卷積模塊,但是自適應參數隨著訓練的持續進行,得到了快速的收斂,使得最終算法在收斂時間上達到了最少的步數,相對于對比算法,本文算法在收斂步數上有較大優勢。

4 結論

本文提出了DFSL算法分別對CIFAR?10、MNIST 進行了預處理,使用激勵函數實現對梯度的快速隱私處理。 基于此,本文算法與對比算法在數據集上的實驗表明,DSFL算法具有更高的準確率,且優于其他算法。 從評估指標對比結果來看,在CIFAR?10、MNIST 兩個圖像數據集上有更高的準確率。 后續將嘗試使用聚類的方式對優質梯度進行定向選擇,提高對樣本特征提取性能,在更多的數據集上進行驗證實驗。

猜你喜歡
集上聯邦差分
數列與差分
一“炮”而紅 音聯邦SVSound 2000 Pro品鑒會完滿舉行
Cookie-Cutter集上的Gibbs測度
鏈完備偏序集上廣義向量均衡問題解映射的保序性
303A深圳市音聯邦電氣有限公司
復扇形指標集上的分布混沌
基于差分隱私的大數據隱私保護
相對差分單項測距△DOR
差分放大器在生理學中的應用
幾道導數題引發的解題思考
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合