本發明屬于領域聯邦學習,具體涉及支持動態用戶的隱私保護聯邦學習和聯邦遺忘學習方法。
背景技術:
1、聯邦學習作為一種新興的分布式機器學習范式,允許多個參與方在不共享本地原始數據的前提下協同訓練全局模型,有效保護了數據隱私,已被廣泛應用于金融、醫療等數據敏感領域;然而,在該框架下,客戶端需向中央服務器上傳模型參數或梯度更新,這一過程存在隱私泄露風險,例如,攻擊者可能通過梯度反演攻擊重構原始訓練數據,或通過成員推理攻擊推斷特定樣本是否存在于訓練集中。
2、現有技術主要采用差分隱私、同態加密及安全多方計算等方法;差分隱私通過向模型更新中添加噪聲來模糊個體貢獻,但往往以犧牲模型精度為代價,尤其在非獨立同分布數據場景下效果顯著下降;同態加密與安全多方計算雖能實現密文狀態下的安全計算,但存在高昂的計算與通信開銷,難以適用于資源受限或大規模分布式系統;為進一步降低開銷,有研究者提出了基于掩碼和秘密共享的安全聚合協議,可在一定程度上實現輕量級隱私保護;然而,此類方案多依賴于單一掩碼機制,在面對惡意服務器或合謀攻擊時仍存在安全漏洞,例如服務器可能通過偽造客戶端掉線以竊取掩碼,進而復原用戶敏感信息。
3、綜上所述,現有的聯邦學習與聯邦遺忘技術在應用中仍存在以下突出問題:一是隱私保護不足,現有的單一掩碼和噪聲機制無法兼顧安全性與模型精度;二是動態用戶參與能力有限,部分方案難以在客戶端頻繁加入或退出時保持安全性和穩定性;三是遺忘效率不高,基于重訓練的方法代價過高,而基于參數操作的方法效果有限。
技術實現思路
1、為了解決上述技術問題,本發明提出一種新的聯邦學習與聯邦遺忘學習框架,能夠在支持動態用戶參與的同時,實現高效且安全的隱私保護與遺忘操作,從而滿足大規模分布式環境下的實際應用需求;
2、本發明采用的技術方案為:支持動態用戶的隱私保護聯邦學習和聯邦遺忘學習方法,包括:
3、s1、系統模型構建與參數初始化:
4、構建密鑰生成中心kgc、客戶端以及中央聚合服務器;
5、所述密鑰生成中心kgc根據客戶端數量與分布生成種子與秘密共享方案,所述客戶端生成自掩碼種子,通過所述密鑰生成中心kgc將成對種子與自掩碼種子份額傳輸給相鄰客戶端后離線;
6、s2、模型初始化與本地訓練:
7、所述服務器向所有的所述客戶端分發初始全局模型,所有客戶端基于所述初始全局模型進行本地訓練;在第輪聯邦學習中,客戶端接收全局模型更新本地模型,并通過加密操作得到密文;
8、s3、全局聚合:
9、所述服務器收集個所述客戶端的密文驗證連通性后進行權重聚合得到新的全局模型;
10、s4、遺忘請求建立:
11、在第輪聯邦學習時,遺忘請求客戶端通過所述初始全局模型與所述本地模型計算區別分數與剩余數據量并加密后,發送遺忘請求與加密后的區別分數和剩余數據量給所述服務器;
12、s5、遺忘層計算與實施:
13、所述服務器收到遺忘請求后啟動q輪聯邦遺忘學習,所述服務器收集并計算擁有剩余數據的其他客戶端上傳的區別分數和數據量密文,篩選出遺忘層,生成第輪遺忘進程的稀疏適配器,發送稀疏適配器到參與遺忘進程的客戶端集合,其他客戶端僅更新所述稀疏適配器并加密上傳;
14、s6、遺忘模型聚合:
15、所述服務器聚合加密的所述稀疏適配器,獲得下一輪稀疏適配器并更新遺忘層,客戶端與服務器迭代更新輪,最終的遺忘層與全局模型的剩余層進行拼合,生成新的全局模型,進入下一輪聯邦學習。
16、進一步的,所述密鑰生成中心kgc根據客戶端數量與分布生成種子與秘密共享方案,所述客戶端生成自掩碼種子,通過所述密鑰生成中心kgc將種子與自掩碼種子份額傳輸給相鄰客戶端后離線,包括:
17、所述密鑰生成中心kgc根據客戶端數量與分布構造-正則圖,并根據圖的結構為每個客戶端生成所述種子,同時將安全參數分配給所有客戶端,生成所述秘密共享方案;
18、所述客戶端生成所述自掩碼種子,所述秘密共享方案應用于所述種子和所述自掩碼種子,所述密鑰生成中心kgc作為中繼將所述秘密共享方案份額傳輸給相鄰客戶端后離線。
19、進一步的,所述服務器向所有的所述客戶端分發初始全局模型,所有客戶端基于所述初始全局模型進行本地訓練;在第輪聯邦學習中,客戶端接收全局模型更新本地模型,并通過加密操作得到密文,包括:
20、所述服務器向所有的所述客戶端分發初始全局模型,每個所述客戶端保存所述初始全局模型的副本,每個所述客戶端基于所述初始全局模型啟動本地訓練;第輪聯邦學習中,所述客戶端接收所述服務器分發的全局模型,并利用所述客戶端的本地數據更新本地模型,完成本地訓練后,通過加密操作得到所述本地模型的密文和本地數據量的密文,并上傳至所述服務器。
21、進一步的,所述通過加密操作得到所述本地模型的密文和本地數據量的密文,并上傳至服務器,包括:
22、s2.1、所述客戶端計算雙掩碼盲化值,表示為:
23、;
24、其中,是偽隨機生成器,是在線客戶端集合,表示自掩碼種子,表示kgc根據客戶端數量與分布生成的對應種子,表示第個客戶端,、分別表示第、個客戶端的索引,表示雙掩碼盲化值;
25、s2.2、所述客戶端計算加權本地模型,表示為:
26、;
27、其中,是客戶端所持有的本地數據的數據量大小,表示本地模型,表示加權本地模型;
28、s2.3、所述客戶端加密所述加權本地模型獲得所述本地模型的密文,表示為:
29、;
30、s2.4、所述客戶端計算所述本地數據量的密文,表示為:
31、。
32、進一步的,在第輪聯邦學習中,所述遺忘請求客戶端通過所述初始全局模型與所述本地模型計算區別分數與剩余數據量并加密,包括:
33、s4.1、在第輪聯邦學習中,所述遺忘請求客戶端基于所述初始全局模型的副本計算與所述本地模型之間第層的區別分數,表示為:
34、;
35、其中,表示第層的規格,即與分別表示第層的維度,表示第層更新的本地模型,表示第層的全局模型副本,表示第層的長度的索引,表示第層的長度的索引;
36、s4.2、第1層至第層的區別分數匯總得到總體區別分數,所述總體區別分數執行盲化加密操作得到加密后的區別分數,表示為:
37、;
38、其中,表示遺忘請求客戶端持有的剩余數據的數據量大小;
39、s4.3、計算剩余數據量密文,所述遺忘請求客戶端發送遺忘請求,所述總體區別分數密文與所述剩余數據量密文發送給所述服務器啟動聯邦遺忘,所述剩余數據量密文表示為:
40、。
41、進一步的,所述服務器收到遺忘請求后啟動輪聯邦遺忘學習,服務器收集并計算擁有剩余數據的其他客戶端上傳的區別分數和數據量密文,篩選出遺忘層,生成第輪遺忘進程的稀疏適配器,發送稀疏適配器到參與遺忘進程的客戶端集合,其他客戶端僅更新所述稀疏適配器并加密上傳;包括:
42、s5.1、所述服務器收到遺忘請求后啟動聯邦遺忘學習,與客戶端集合進行輪迭代訓練,擁有剩余數據的其他客戶端計算各自的區別分數密文和數據量密文并上傳;所述服務器等待間隔之后,收集到個客戶端發送的區別分數密文集合和數據量密文集合并驗證連通性,表示客戶端的索引;
43、s5.2、對個客戶端的所述區別分數密文集合和所述數據量密文集合進行權重聚合,計算每一層的全局區別分數,從而獲得序列,根據所述序列選擇前個最大值索引下的模型層作為所述遺忘層,基于所述遺忘層創建一個副本,并隨機丟棄大部分參數,形成初始的稀疏適配器,所述稀疏適配器與所述全局模型發送給其他客戶端,隨后服務器與客戶端迭代訓練輪稀疏適配器,獲得最終的遺忘層;其中,每一層全局區別分數表示為:
44、;
45、其中,表示客戶端數量,表示客戶端上傳的第層的區別分數,表示在線其他客戶端的數據量,表示第層的全局區別分數。
46、進一步的,所述其他客戶端僅更新所述稀疏適配器并加密上傳,包括:
47、s5.3、在第輪遺忘迭代訓練中,所述稀疏適配器發送給所述其他客戶端后,所述其他客戶端構造本地模型,表示為:
48、;
49、其中,表示遺忘權重因子,表示全局模型中的層遺忘層,表示拼合操作,表示全局模型的剩余層,表示模型總層數,表示當前遺忘迭代訓練輪次;
50、s5.4、所述其他客戶端基于所述本地模型進行輪本地迭代遺忘訓練,只更新和上傳所述稀疏適配器,而所述全局模型僅用于前向傳播計算損失值,更新所述稀疏適配器參數,表示為:
51、;
52、其中,表示當前本地迭代遺忘訓練輪數,表示客戶端在第輪本地迭代遺忘訓練時的稀疏適配器,表示學習率,表示梯度運算,表示本地損失函數,表示本輪本地訓練所用的模型,表示擁有剩余數據的其他客戶端上傳的數據量密文,表示其他客戶端用于第+1輪本地迭代遺忘訓練的稀疏適配器,表示當前遺忘進程迭代輪次;
53、s5.5、每一輪迭代中,所述其他客戶端將所述全局模型與上一輪本地迭代遺忘訓練中獲得的稀疏適配器組合形成新的組合模型,用于下一輪本地迭代遺忘訓練;
54、s5.6、次本地迭代遺忘訓練后,所述其他客戶端利用雙掩碼盲化加密并傳輸次本地迭代遺忘訓練后的稀疏適配器密文與數據量密文到所述服務器。
55、進一步的,所述服務器聚合加密的所述稀疏適配器,獲得下一輪稀疏適配器并更新遺忘層,客戶端與服務器迭代更新輪,最終的遺忘層與全局模型的剩余層進行拼合,生成新的全局模型,包括:
56、所述服務器對更新后的所述稀疏適配器密文與所述數據量密文進行權重聚合,獲得下一輪稀疏適配器,表示為:
57、;
58、其中,表示擁有剩余數據的其他客戶端上傳的數據量密文;
59、經過預定遺忘迭代輪次后,更新后的所述稀疏適配器與所述遺忘層進行權重相加得到新的遺忘層,所述新的遺忘層與所述全局模型的剩余層進行拼合獲得全局模型,表示為:
60、;
61、其中,表示遺忘權重因子,表示最終更新后的稀疏適配器,表示全局模型所對應的遺忘層,表示拼合操作,表示全局模型的剩余層,表示模型總層數,表示預定義的遺忘進程迭代訓練輪數。
62、與現有技術相比,本發明優點在于:
63、創造性地在聯邦學習與遺忘框架中集成了雙重掩碼與秘密共享機制,構建了多層次的主動防御體系。與現有依賴于單一掩碼的方案相比,該機制能有效抵御來自惡意服務器或合謀客戶端的攻擊。即使服務器試圖通過偽造客戶端掉線等手段竊取局部信息,在雙重防護下也無法完整還原原始模型更新,從而從根本上抑制了梯度反演攻擊與成員推理攻擊的成功率,確保了用戶數據隱私在傳輸與聚合過程中的機密性,滿足了高安全敏感場景的應用需求。
64、結合權重聚合與模型評分方法,提出了一種非重訓練的高效遺忘路徑。該方法避免了傳統基于全局或局部重訓練方法所帶來的巨大計算與通信開銷,同時克服了簡單參數操作類方法導致的模型性能不可控下降或遺忘不徹底的問題。通過對目標參數的智能識別與定向調整,實現了對特定客戶端或數據類別影響的高效、選擇性擦除,在保證模型整體性能穩定的前提下,達到了近似最優的遺忘效果,顯著提升了遺忘操作的實用性與經濟性。
65、充分考慮實際部署環境中客戶端動態加入與退出的常態,其協議與機制能夠支持用戶動態無縫參與;在訓練或遺忘過程中,能夠自動適應客戶端集合的變化,維持訓練過程的連續性與穩定性,并確保在動態變化中隱私保護機制不失效;解決了現有許多方案在用戶動態性面前表現脆弱的問題。