王 波,李洪濤,王 潔,郭一娜
(1.太原科技大學(xué) 電子與信息工程學(xué)院,山西 太原 030024;2.山西師范大學(xué) 數(shù)學(xué)與計算機科學(xué)學(xué)院,山西 太原 030039)
隨著人工智能、大數(shù)據(jù)、物聯(lián)網(wǎng)等前沿技術(shù)應(yīng)用于醫(yī)療行業(yè),大量醫(yī)療數(shù)據(jù)隨之生成[1]。對醫(yī)療數(shù)據(jù)進行分析、挖掘可以促進醫(yī)療行業(yè)的發(fā)展和革新。例如,借助機器學(xué)習(xí)算法對醫(yī)療數(shù)據(jù)進行挖掘、分析,可以提高模式的分析能力、非結(jié)構(gòu)化數(shù)據(jù)的分析、預(yù)測能力和可追溯性,輔助醫(yī)療決策[2]。然而,這些數(shù)據(jù)通常包括患者的身份信息、患病信息、社會關(guān)系等敏感數(shù)據(jù),一旦被惡意攻擊者竊取或操控,將會嚴(yán)重危害患者的安全。近年來,醫(yī)療數(shù)據(jù)的隱私泄露問題引起了廣泛的倫理以及法律關(guān)注。因此,探索醫(yī)療數(shù)據(jù)的隱私保護策略具有重要的現(xiàn)實意義[3-4]。
出于數(shù)據(jù)安全和隱私的考慮,不同醫(yī)療機構(gòu)之間存在數(shù)據(jù)屏障,無法實現(xiàn)數(shù)據(jù)的安全共享[5]。此外,各機構(gòu)獨立的訓(xùn)練模型無法達(dá)到全局優(yōu)化。針對以上問題,谷歌提出了一種去中心化的分布式機器學(xué)習(xí)框架——聯(lián)邦學(xué)習(xí)(Federated Learning,FL)[6],將原始數(shù)據(jù)保留在節(jié)點上進行本地訓(xùn)練,訓(xùn)練好的模型上傳給中央服務(wù)器,服務(wù)器聚合模型后再下發(fā)給各節(jié)點,從而將數(shù)據(jù)共享問題轉(zhuǎn)化為模型共享問題,這使得一些敏感數(shù)據(jù)能夠在“不出域”的情況參與訓(xùn)練,很大程度解決了隱私泄露問題。通過聯(lián)邦學(xué)習(xí),將各個醫(yī)療機構(gòu)的“數(shù)據(jù)孤島”聯(lián)合起來協(xié)同訓(xùn)練的全局模型精度更高、泛化性更強[7]。然而,聯(lián)邦學(xué)習(xí)過程中仍存在隱私泄露的風(fēng)險:半誠實或惡意的參與方加入訓(xùn)練極易導(dǎo)致隱私泄露[8];惡意攻擊者可以從共享模型參數(shù)中反推出參與者的部分敏感信息[9];服務(wù)器端返回的全局模型中會攜帶一些規(guī)律信息,攻擊者可以推測出訓(xùn)練集參與方或訓(xùn)練集原始樣本,且全局模型也可能是一個已經(jīng)被投毒者“篡改”的模型,其學(xué)習(xí)模型不僅準(zhǔn)確率低且會泄露用戶的隱私[10]。
針對以上問題,文中旨在解決醫(yī)療數(shù)據(jù)在聯(lián)邦學(xué)習(xí)中的以下3個挑戰(zhàn):首先,根據(jù)醫(yī)療數(shù)據(jù)的分布特征,選擇合適的機器學(xué)習(xí)模型提高訓(xùn)練模型精度;其次,如何在保證數(shù)據(jù)高可用性的前提下增強數(shù)據(jù)的隱私保護力度;最后,如何在隱私保護技術(shù)產(chǎn)生的額外通信開銷和聯(lián)邦通信效率中取得平衡。
因此,文中基于同態(tài)加密技術(shù)提出了一種面向醫(yī)療數(shù)據(jù)的聯(lián)邦學(xué)習(xí)隱私保護架構(gòu)(Homomorphic Encryption Federated Learning for Privacy-preserving and Security,HEFLPS)。在模型性能、隱私保護和通信效率之間取得平衡,更適用于醫(yī)療數(shù)據(jù)場景。主要貢獻如下:
(1) 提高了模型的訓(xùn)練精度。文中搭建了卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)模型,在新型冠狀病毒(Corona Virus Disease 2019,COVID-19)數(shù)據(jù)集和MNIST手寫數(shù)字?jǐn)?shù)據(jù)集上均表現(xiàn)出較好的性能。
(2) 增強了聯(lián)邦學(xué)習(xí)的安全性和隱私性。在模型共享階段,采用同態(tài)加密技術(shù)對用戶共享的訓(xùn)練模型進行加密,可以在不損失模型訓(xùn)練精度的情況下確保共享模型的安全性和隱私性。
(3) 降低了惡意客戶端加入訓(xùn)練的可能性。結(jié)合Schnorr零知識證明(Zero-Knowledge Proof,ZKP)身份認(rèn)證構(gòu)建了身份認(rèn)證模塊,確保了參與訓(xùn)練的客戶端身份的真實可信性。
(4) 彌補了同態(tài)加密帶來的時間開銷大的弱點。采用消息確認(rèn)(ACKnowledgement,ACK)機制將離線或無響應(yīng)用戶暫時剔除,解決了用戶在訓(xùn)練過程中退出的問題,提高了通信效率,縮短了等待同步聚合的等待時間。
醫(yī)療數(shù)據(jù)共享是各個醫(yī)療機構(gòu)間合作的基礎(chǔ),但其涉及到的隱私問題也是阻礙機構(gòu)間數(shù)據(jù)共享的主要因素之一[11]。因此,解決聯(lián)邦學(xué)習(xí)中信息泄露問題十分必要。相關(guān)的研究方法主要分為兩類:一種是加密技術(shù),包括安全多方計算[12](Homomorphic Encryption,HE)[13]和同態(tài)加密(Secure Mul-tiparty Computation,MPC);另一種是在模型參數(shù)中加入噪聲,如差分隱私(Differential Privacy,DP)[14]。
FANG等[15]采用安全多方計算提出了一種在云計算中具有強大隱私保護作用的高效聯(lián)邦學(xué)習(xí)架構(gòu),通過設(shè)計有效的優(yōu)化策略提高學(xué)習(xí)效率,并表明該方案對于“誠實且好奇”以及“相互勾結(jié)”的服務(wù)器是安全的。但安全多方計算存在“信任問題”和“通信量問題”,同態(tài)加密則可以較好地解決上述問題。于是,KU等[16]將同態(tài)加密應(yīng)用在由物聯(lián)網(wǎng)設(shè)備收集的醫(yī)療數(shù)據(jù)隱私泄漏問題中。數(shù)據(jù)加密上傳到霧節(jié)點,霧節(jié)點與云服務(wù)器協(xié)作完成模型的訓(xùn)練,提高了方案的魯棒性,并解決了加密數(shù)據(jù)計算成本和存儲成本高的問題。此外,JIANG等[17]提出了一種基于混合差分隱私和自適應(yīng)梯度壓縮的聯(lián)邦學(xué)習(xí)框架,更適應(yīng)于工業(yè)環(huán)境中的邊緣計算,有效防止隱私數(shù)據(jù)受到推理攻擊的威脅。
然而,差分隱私技術(shù)需要在數(shù)據(jù)或模型參數(shù)中添加隨機噪聲來實現(xiàn)隱私保護,將會導(dǎo)致訓(xùn)練的模型不夠準(zhǔn)確,最終導(dǎo)致訓(xùn)練精度不高[18]。相比之下,加密機制借助多方安全計算、同態(tài)加密等技術(shù)能夠在提供隱私保護的同時保持模型的準(zhǔn)確性,適用于參與方少、對準(zhǔn)確性要求較高的場景。然而,密碼學(xué)技術(shù)會造成協(xié)同訓(xùn)練效率低、存儲和時間開銷大等問題,且對參與方是否在線要求較高[19]。
由此可見,聯(lián)邦學(xué)習(xí)系統(tǒng)所采用的隱私保護技術(shù)各有優(yōu)劣,需要根據(jù)具體的應(yīng)用場景選擇適當(dāng)?shù)募夹g(shù)設(shè)計高效、實用的隱私保護方案。文中針對醫(yī)療數(shù)據(jù)的特殊性,設(shè)計了一種新的聯(lián)邦學(xué)習(xí)架構(gòu),實現(xiàn)了隱私保護、模型性能和通信效率之間的平衡。
(1)
(2)
其中,nk表示客戶端數(shù)量。
同態(tài)加密是指對明文進行環(huán)上的加法和乘法運算再加密,與加密后對密文進行相應(yīng)的運算,結(jié)果是等價的[21]。Pallier同態(tài)加密是一種滿足加法同態(tài)的部分同態(tài)加密方法[22],由密鑰生成、加密和解密3個階段組成。
(1) 生成密鑰。 令公鑰為(n,g),對應(yīng)的私鑰為(λ,μ),有
λ=lcm(p-1,q-1) ,
(3)
μ=(L(gλmodn2))-1modn,
(4)
其中,n為公鑰長度;g的階是n的倍數(shù);p和q為兩個素數(shù),滿足gcd(pq,(p-1)(q-1))=1;lcm代表最小公倍數(shù);L(x)=(x-1)/n。
(2) 加密。 令密文和明文分別為c c=(gmrn)modn2。 (5) (3) 解密。 私鑰的解密過程為 m=L(cλmodn2)μmodn。 (6) 文中基于Pallier同態(tài)加密技術(shù)提出了一種高效的聯(lián)邦學(xué)習(xí)隱私保護方案,系統(tǒng)架構(gòu)如圖1所示。采用同態(tài)加密技術(shù)對中間參數(shù)進行加密處理,提高了模型的安全性和隱私性;利用Schnorr零知識身份認(rèn)證技術(shù)對客戶端進行身份認(rèn)證,確保了用戶身份的真實性;使用消息確認(rèn)(ACK)機制使服務(wù)器端對參與用戶進行離線監(jiān)測,并及時刪除離線用戶,減少了通信等待時延??傮w算法偽代碼如算法1所示。 圖1 HEFLPS系統(tǒng)結(jié)構(gòu)圖 HEFLPS主要執(zhí)行步驟如下: (1) 客戶端選擇。 中央服務(wù)器將通過身份認(rèn)證的用戶Ck設(shè)定為參與本輪訓(xùn)練的客戶端。 (2) 廣播。 服務(wù)器端通過消息確認(rèn)機制剔除離線用戶并篩選下一輪參與訓(xùn)練的用戶Cnew。 重復(fù)以上步驟,直到迭代t輪停止。 算法1HEFLPS算法描述。 輸入:客戶端集合C={c1,c2,…,ck},本地數(shù)據(jù)集D={di} 服務(wù)器端: 初始化 從通過身份認(rèn)證的用戶kclients?C中隨機選擇一些參與訓(xùn)練 ① 循環(huán) ④ if用戶cm返回ACK,則加入C中組成一個新的用戶集合Cnew={cm1,cm2,…,cmk} ⑤ else認(rèn)為用戶離線,不參與本次訓(xùn)練 ⑥ 循環(huán)結(jié)束 客戶端: ⑦ pk,sk← 生成Paillier密鑰對(一次一密) ⑧ 循環(huán) ⑨ 更新本地模型Wi+1←Wi-η?fi 4.2.1 模型參數(shù)加密 聯(lián)邦學(xué)習(xí)在模型傳輸過程中,模型參數(shù)會暴露給中心服務(wù)器,中心服務(wù)器下發(fā)的全局模型參數(shù)也會被每個客戶端獲取。攻擊者可以發(fā)起重建攻擊(Reconstruction Attacks)[23],通過共享的參數(shù)反向推斷出原始數(shù)據(jù),獲取用戶的隱私信息。針對該問題,文中基于Pallier同態(tài)加密技術(shù)提出了保護隱私的聯(lián)邦學(xué)習(xí)架構(gòu),對中間過程交互的模型參數(shù)進行加密,從而實現(xiàn)模型參數(shù)的隱私保護。但Paillier同態(tài)加密只能實現(xiàn)密態(tài)加法運算,若出現(xiàn)乘法運算,文中則通過泰勒展開[24]將乘法運算以多項式相加的形式替換后,再進行同態(tài)加運算。 設(shè)有xi個數(shù)據(jù),傳輸?shù)募用苣P蛥?shù)為[W],對數(shù)損失函數(shù)可以表示為 (7) 對于任意的函數(shù)f(θ),在θ=0處的泰勒展開式為 (8) 當(dāng)f(θ)為對數(shù)損失函數(shù),即f(θ)=log(1+exp(-θ)),在θ=0處的泰勒展開表達(dá)式為 (9) 文中使用二階多項式來近似對數(shù)損失函數(shù),將θ=[W]Tx代入上式,并代入式(9),得到: (10) 對上式求導(dǎo),得到損失函數(shù)關(guān)于參數(shù)[W]的加密梯度值為 (11) 4.2.2 Schnorr零知識身份認(rèn)證 如果惡意攻擊者獲得用戶的公鑰,并對數(shù)據(jù)進行解密后添加隨機擾動噪聲,將導(dǎo)致計算無意義或使服務(wù)器無法分辨接收到的結(jié)果正確與否。因此,驗證客戶端身份的真實性也十分必要。 傳統(tǒng)的認(rèn)證機制包括兩個實體,即用戶和服務(wù)器。服務(wù)器擁有所有用戶的身份信息,因此很容易獲得用戶的信息。同時,用戶發(fā)送給服務(wù)器用來身份驗證的簽名信息也可能被攻擊者截獲,從而計算出用戶的身份信息,造成用戶的信息泄露。文中提出的基于Schnorr零知識的身份認(rèn)證機制則可以較好地解決以上問題。其中零知識證明[25]是指證明者能夠在不向驗證者提供任何有用信息的情況下,使驗證者相信某個論斷是正確的。Schnorr機制[26]是一種基于離散對數(shù)難題的零知識證明機制。文中的認(rèn)證模塊中,客戶端C需向服務(wù)器端S證明自己擁有對身份信息的數(shù)字簽名(h,x),而不泄漏有關(guān)h和x的任何有用信息以證明身份的真實性。公共參數(shù):p為任意素數(shù),生成元為g,公鑰為v=g-s(modp)C,擁有的私鑰為s。其認(rèn)證過程如圖2 所示,具體描述如下。 圖2 Schnorr零知識身份認(rèn)證過程 (2) 服務(wù)器端S驗證。 計算R′=gxvh(modp),并驗證h=Hash(R′,M),如果相等,則身份驗證通過;否則,不通過。 驗證過程為證明h=Hash(R′,M)。首先,證明R′=R。將v代入R′中,得 R′=gxg-sh(modp)=gx-sh(modp) , (12) 又因為x=r+hs,得r=x-hs,代入式(1),得R′=gr(modp),故R′=R。 在客戶端,同態(tài)加密的加密和解密時間以及模型的訓(xùn)練時間是一次迭代時長的主要組成,其中,20%的時間用于數(shù)據(jù)傳輸和等待模型參數(shù)聚合返回[27]。在得到來自中央服務(wù)器返回的全局模型之前,任何客戶端均無法進行下一次迭代。 在服務(wù)器端,由于同步障礙,參與訓(xùn)練的客戶端之間的資源和數(shù)據(jù)異質(zhì)性可能會導(dǎo)致客戶端不同的響應(yīng)延遲,這通常被稱為掉隊者問題(Straggler Problem)[28]。設(shè)客戶端Ci的響應(yīng)延遲為Rt,則服務(wù)器的等待延遲為 Rt=max(R1,R2,…,R|C|) 。 (13) 從式(13)可知,在每一輪訓(xùn)練中,服務(wù)器的等待時延為客戶端中最大的響應(yīng)時延,即由最慢的客戶端決定,需等待其完成訓(xùn)練后才能進行聚合更新,這是造成通信效率低的主要原因之一。 為了解決服務(wù)器端無效的通信等待時延問題,文中對響應(yīng)時間過長和離線的用戶分別進行處理,如算法2所示。 挑選客戶端的規(guī)則:設(shè)第t輪更新中所挑選的活躍客戶端集合為C={c1,c2,…,ck},每個客戶被選中的概率設(shè)為1/τ。 中央服務(wù)器S對集合C中每個用戶發(fā)送確認(rèn)消息,如果接收到用戶的ACK,則將該用戶添加到Cnew中;否則,認(rèn)為該用戶離線不參與本輪更新(離線用戶仍可參加下一輪迭代)。在Cnew中,將響應(yīng)時間最長的用戶被選中的概率降為其原來概率的1/k,Pτ可表示為 (14) 算法2服務(wù)器端異步聚合。 輸入:客戶集C={c1,c2,…,ck} 輸出:更新客戶集C′new 初始化 隨機選擇用戶kclients?C ① 循環(huán) ② 通信輪數(shù)t ③ 廣播 ④ ifcm用戶返回ACK ⑤ 更新的用戶集Cnew={cm1,cm2,…,cmk} ⑥ 標(biāo)記返回ACK最長時間的用戶T_Max(Cnew) ⑦ 減少該用戶下一次參與訓(xùn)練的概率為(1/k)T_Max(Cnew) ⑧ else if ⑩ end if 對HEFLPS的安全性分析如下: (1) 同態(tài)加密隱私保護機制。首先,聯(lián)邦學(xué)習(xí)通過將數(shù)據(jù)保留在本地的形式進行訓(xùn)練學(xué)習(xí),避免了數(shù)據(jù)暴露給第三方,保證了數(shù)據(jù)的安全性和隱私性;其次,客戶端向服務(wù)器端發(fā)送的是加密后的模型參數(shù),由于Paillier同態(tài)加密方案滿足CPA安全性,即使攻擊者截獲了加密后的模型參數(shù),也無法獲取到明文數(shù)據(jù),實現(xiàn)了“原始數(shù)據(jù)不出域,數(shù)據(jù)可用不可見”。 (2) 客戶端身份認(rèn)證。不誠實或惡意的客戶端可能會共享無效數(shù)據(jù)或有害數(shù)據(jù),文中通過Schnorr零知識身份認(rèn)證技術(shù)確保只有合法的客戶端才能參與訓(xùn)練。假設(shè)C沒有私鑰sk,那么C很難構(gòu)造一個簽名(h,x)以通過S的驗證。由于哈希函數(shù)和離散對數(shù)的困難性,S也很難根據(jù)(h,x)反推出C的私鑰。 (3) 誠實且好奇的服務(wù)器。由于客戶端上傳的是加密后的模型參數(shù),因此在服務(wù)器聚合過程中,數(shù)據(jù)對服務(wù)器是“不可見”的。而且每次迭代都會更改密鑰對,即使攻擊者破解了幾輪訓(xùn)練結(jié)果,也無法獲得最終結(jié)果。 綜上所述,文中所提的HEFLPS框架能夠滿足數(shù)據(jù)的隱私性和安全性要求。 本節(jié)以備受關(guān)注的新冠肺炎檢測為例,使用COVID-19 Radiography(https://www.kaggle.com/datasets/preetviradiya/covid19-radiography-dataset)數(shù)據(jù)集以及對照數(shù)據(jù)集MINIST(http://yann.lecun.com/exdb/mnist/)在分類準(zhǔn)確率、平均加解密時長、客戶端數(shù)量對準(zhǔn)確率的影響、通信時延、隱私保護5個方面對HEFLPS架構(gòu)性能進行實驗分析,驗證該架構(gòu)性能的優(yōu)越性。 5.1.1 實驗環(huán)境 仿真環(huán)境硬件平臺基于3080ti GPU和64 GB內(nèi)存,軟件平臺基于python3.7上運行Pythorch(v1.11.0)、操作系統(tǒng)為64-b Ubuntu 18.04。 每一輪實驗從模擬的客戶端設(shè)備中任意挑選5臺參與訓(xùn)練,學(xué)習(xí)率為0.005,每一次本地訓(xùn)練迭代次數(shù)為3次,全局迭代次數(shù)為100次,其他實驗參數(shù)的設(shè)置如表1所示。 表1 實驗參數(shù)設(shè)置 5.1.2 實驗數(shù)據(jù)集 文中采用kangle數(shù)據(jù)集網(wǎng)址中胸部X射線圖像數(shù)據(jù)集(COVID-19 Radiography Dataset),其中包括3 616 例新冠肺炎陽性病例以及10 192例正常肺部圖像,每張大小為299×299像素,如圖3所示。文中實驗選取3 432張圖片(80%)作為訓(xùn)練集,858張圖片(20%)作為測試集,其中正常圖像(標(biāo)記為0)和新冠肺炎陽性病例圖像(標(biāo)記為1)以1.00∶1.15進行混合,構(gòu)成文中的COVID-19數(shù)據(jù)集。 (a) 新冠肺炎陽性肺部圖像 (b) 正常肺部圖像 此外,文中采用機器學(xué)習(xí)中被廣泛用于圖像分類任務(wù)的手寫體數(shù)字圖片數(shù)據(jù)集MNIST作為對照數(shù)據(jù)集。如圖4所示,該數(shù)據(jù)集包含60 000張訓(xùn)練圖片和10 000張測試圖片,每張大小為28×28像素。 (a) MNIST手寫體整體圖 (b) MNIST手寫體部分放大圖 實驗使用卷積神經(jīng)網(wǎng)絡(luò)作為訓(xùn)練模型,由2個卷積層(卷積核分別為8×8和4×4,步長為2)、2個最大池化層、1個全連接層和1個輸出層組成,使用的激活函數(shù)為ReLU。分別在兩個數(shù)據(jù)集中的測試準(zhǔn)確率如表2所示。實驗結(jié)果顯示,文中CNN模型在兩個數(shù)據(jù)集上均能達(dá)到較高的準(zhǔn)確率。 表2 不用數(shù)據(jù)集的模型分類準(zhǔn)確率 文中采用聯(lián)邦平均FedAvg模型聚合方法進行模型聚合,分別在COVID-19和MNIST數(shù)據(jù)集上與傳統(tǒng)的集中學(xué)習(xí)進行對比,如圖5所示。集中學(xué)習(xí)的參數(shù)設(shè)置:客戶端數(shù)量和每一輪挑選的參與訓(xùn)練的客戶端數(shù)k均設(shè)為1,即只有1個客戶端設(shè)備參與的聯(lián)邦訓(xùn)練等價于集中式學(xué)習(xí)。其余參數(shù)配置與FedAvg一致。實驗結(jié)果表明,FedAvg的準(zhǔn)確率能達(dá)到與集中學(xué)習(xí)近似的準(zhǔn)確率。 圖5 FedAvg與集中式學(xué)習(xí)分類準(zhǔn)確率的比較 在Paillier同態(tài)加密中,隨著密鑰長度的增加,安全級別會提高,但隨之而來的時間開銷也會增加。因此,文中需選擇適當(dāng)?shù)拿荑€長度,來權(quán)衡安全級別和時間開銷。此外,為了提升安全級別,在每一輪訓(xùn)練過程中都會重新生成密鑰對。這樣,即使某一輪密鑰被破解,也不會影響整個訓(xùn)練過程的安全性,實現(xiàn)更高級別的數(shù)據(jù)安全。不同密鑰長度對應(yīng)的時間開銷如圖6所示。 如圖6所示,實驗分別計算了密鑰長度為256、512、1 024、2 048 bit的平均加解密時長??梢钥闯?隨著密鑰長度的增加,時間呈現(xiàn)聚增現(xiàn)象??紤]到同態(tài)加密的安全性越高,相應(yīng)的時間開銷也越高的特性,文中采用密鑰長度為512 bit對模型參數(shù)進行加密。 (a) COVID-19 (b) MNIST 文中選擇不同數(shù)量的客戶端k∈{5,10,15,20},進行分類準(zhǔn)確率和通信時長的對比實驗,如圖7、8所示。由圖7可知,當(dāng)客戶端數(shù)量較少時會產(chǎn)生較高的平均分類精度,同樣也能在較多的客戶端上實現(xiàn)較高的平均分類精度,相差約為1.9%,說明用戶數(shù)量對文中所提架構(gòu)的分類精度影響不大,同時也說明用戶的離線對整體的模型精度影響不大。顯然也能從實驗結(jié)果看出,客戶端數(shù)量越少,收斂速度越快。并且由圖8可知,隨著客戶端數(shù)量的增加,聯(lián)邦通信時長也在明顯增加,當(dāng)k=5時,每個用戶的時間消耗最少。因此,文中選取客戶端數(shù)量k=5作為實驗基準(zhǔn)。 (a) COVID-19 (b) MNIST 圖8 不同客戶端數(shù)量通信時長比較 通信總時間主要來自模型加、解密的時間和等待客戶端返回結(jié)果的時間。而聯(lián)邦學(xué)習(xí)產(chǎn)生的等待時延主要由最慢的客戶端參與訓(xùn)練的時長決定,因此。客戶端的選擇對通信時延的影響很大。文中所提方案的通信時長隨客戶端數(shù)量的變化如表3所示。 表3 優(yōu)化前后通信開銷比較 s 結(jié)合表3和圖8得出,當(dāng)客戶端數(shù)量增加時,時間開銷近似線性增加。在COVID-19數(shù)據(jù)集中,當(dāng)C=5時,時間縮短了300 s,而當(dāng)C=10時,時間縮短了445 s。同樣在MNIST數(shù)據(jù)集中,隨著客戶端數(shù)量的增加,縮短的時間也越多,即文中方案對于客戶端較多的情況體現(xiàn)出的優(yōu)勢更加明顯。因為隨著客戶端數(shù)量的增加,客戶端出現(xiàn)故障的可能性也在增加,更大地縮短了服務(wù)器端的無效等待時間。 文中將Paillier同態(tài)加密和差分隱私技術(shù)分別在兩個數(shù)據(jù)集上對模型準(zhǔn)確率進行對比實驗,如圖9所示。 (a) COVID-19 (b) MNIST 實驗結(jié)果表明,差分隱私因其對數(shù)據(jù)加入了噪聲會使數(shù)據(jù)可用性降低導(dǎo)致分類準(zhǔn)確率降低;而同態(tài)加密則能保持和無隱私保護的聯(lián)邦學(xué)習(xí)一致的準(zhǔn)確率,說明同態(tài)加密可以在提供數(shù)據(jù)高安全性的情況下,依然能保證其較高的準(zhǔn)確率以及數(shù)據(jù)可用性。 以上實驗結(jié)果證明了文中所提的HEFLPS架構(gòu)在準(zhǔn)確率和時間開銷方面的優(yōu)越性,且能夠在高準(zhǔn)確率、低時延的情況下實現(xiàn)較強的隱私保護性能。 文中基于同態(tài)加密提出了一種高效的醫(yī)療數(shù)據(jù)隱私保護聯(lián)邦學(xué)習(xí)架構(gòu)-HEFLPS。分別對聯(lián)邦學(xué)習(xí)參與方進行安全身份認(rèn)證以及對模型參數(shù)進行隱私保護,并結(jié)合消息確認(rèn)機制降低了聯(lián)邦通信開銷。在COVID-19數(shù)據(jù)集以及MNIST數(shù)據(jù)集上的實驗結(jié)果表明,文中所提架構(gòu)能在保持較高分類準(zhǔn)確率的同時實現(xiàn)隱私保護。但由于同態(tài)加密存在密文爆炸、密鑰過大和運行效率低等問題,在未來工作中,將進一步設(shè)計效率更高的隱私保護聯(lián)邦學(xué)習(xí)架構(gòu),更好地應(yīng)用于醫(yī)療大數(shù)據(jù)的實際應(yīng)用場景中。4 系統(tǒng)模型
4.1 總體架構(gòu)
4.2 模型構(gòu)建
4.3 通信開銷
4.4 安全性分析
5 實驗與分析
5.1 實驗設(shè)置
5.2 模型準(zhǔn)確率分析
5.3 平均加解密時間
5.4 客戶端數(shù)量對實驗性能的影響
5.5 通信時延
5.6 隱私保護
6 結(jié)束語