劉 東,裴錫凱,賴金山,王瑞錦*,張鳳荔
(1. 電子科技大學計算機科學與工程學院 成都 611731;2. 成都民航空管科技發展有限公司 成都 610042;3. 電子科技大學信息與軟件工程學院 成都 610054)
隨著互聯網和物聯網的高速發展,手機、平板和電腦成了人們日常生活中必不可少的邊緣智能計算設備[1]。通常,邊緣智能計算場景包括智能醫療、智能家居、智能交通、智能教育等。邊緣計算從云端計算延伸,在邊緣部署地理分布的邊緣網關網絡,提供更接近物聯網設備的計算能力。在傳統的云端計算模式下,邊緣智能終端直接將本地模型發送到云端進行計算處理,機器學習的集中訓練模式可能會帶來一些安全隱患,這種模式容易被攻擊者攔截并發起隱私攻擊[1-2]。此外,由于分布式用戶數據具有多源特性、異質性等特點,集中處理會帶來很大的資源開銷和安全風險。邊緣智能計算通過擴展邊緣云端對中心云端進行補充,使得網絡邊緣能夠滿足計算和存儲此類應用的要求[3]。
聯邦學習是一種新型的分布式框架,與傳統的集中式機器學習相比,具有更好的隱私保護功能。它的原理是組合多個分布式設備,保護本地各種設備協調下的數據集,共享局部模型參數,可以獲得更準確的機器學習模型來自訓練和學習,從而實現數據的“可用隱身”。
聯邦學習[4]是谷歌在2016 年首次提出的分布式機器學習模式,目的是為了解決數據交換過程中存在的隱私泄露問題。傳統的聯邦學習系統是服務器和客戶端模式,分為橫向聯邦學習、縱向聯邦學習和聯邦遷移學習,其中聯邦遷移學習不對數據進行切分,利用遷移學習來克服標簽不足的情況[5]。對比傳統的機器學習,服務器將模型參數分配給不同的客戶端,客戶端只上傳模型參數而不上傳原始數據,從而可以將數據保存在本地,從一定程度上保護了用戶隱私。
在現階段的研究中,融合邊緣智能計算和聯邦學習的方案具有邊緣化、分布式、資源動態性等特征,同時使隱私保護和合作共享成為可能。但是由于隱私攻擊模型的出現,如梯度泄露攻擊、重放攻擊,使得模型的隱私性受到威脅。文獻[6]指出,在智能家居中傳感器與大量的用戶隱私相關聯,在數據的產生、傳輸、處理過程中都存在著隱私泄露的風險。文獻[7]指出,車聯網的部署在提供定位服務的同時也存在隱私泄露的風險。文獻[8]通過將釋放出的Netflix 數據集與IMDb 數據集進行關聯就挖掘出了一部分用戶的敏感信息,隨后在推薦中對于數據的隱私保護方法進行了大量嘗試,如匿名化、差分隱私、本地化的差分隱私、同態加密算法、安全多方計算等與推薦方法的結合;以及機器學習思想在推薦中的嘗試,如對抗機器學習、對抗樣本生成等,都在一定程度上保護了用戶的隱私和安全。文獻[8] 設計了一個安全聚合方案,在聚合期間使用戶能夠更新加權向量平均,消除用戶間的致盲因子。文獻[9] 基于協同學習設計了 GAN 攻擊,使惡意用戶加入訓練過程并生成誠實的數據集用戶。文獻[10] 添加拉普拉斯噪聲到神經網絡中的梯度以滿足差分隱私。盡管如此,文獻[11]指出雖然添加梯度噪聲可以保證隱私,但它的簽名大大降低了模型的準確性。文獻[12]提出了一種基于加法同態加密的協同學習系統。
設D和D'是相鄰數據集,即只有一個樣本不同。對于查詢函數f,如果滿足式(1),則f滿足差分隱私:

式中, ε代表隱私度, ε越大代表數據可用性越高,越小代表隱私保護程度越高,相應地,添加的噪聲越大,當ε 為0 時,代表沒有添加差分隱私; δ代表置信度參數,在嚴格差分隱私中, δ為 0,當δ>0時,為近似差分隱私,在實際工業中,近似差分隱私被廣泛使用。
高斯機制:給定一個數據集D和查詢函數f,則提供差分隱私的機制M滿足:

式中, σ代表標準差,需滿足:


在第t輪訓練中,傳輸的數據量為L,信道帶寬為B,因此傳輸時間為mt=L/B。設P為第t輪訓練的功率,那么產生的能量消耗為LP/B。
表1 描述了本文方案相關算法。

表1 相關算法描述表
為了解決邊緣計算場景下訓練全局機器學習模型的隱私泄露問題,設計了一種使用安全多方計算框架的聯邦學習系統。該系統包括一個云端和多個可以與之通信的邊緣網關,且邊緣網關和邊緣智能終端可以相互通信。圖1 為該系統架構,系統中有3 種實體。

圖1 系統架構
1)邊緣智能終端:作為聯邦學習任務的參與者,有不同數量的數據集和不同的計算能力,它們的加密數據集旨在訓練一個模型。
2)邊緣網關:是邊緣智能終端和云端的鏈接,具有更強的計算能力和更大的存儲空間。它們從邊緣智能終端收集加密數據并訓練模型,并將訓練好的模型參數發送到云端進行聚合。
3)云端:是本文方案中的參數服務器。負責分發初始訓練模型、聚合和更新模型參數。
首先,邊緣智能終端使用不同的本地數據隱私保護,然后上傳到邊緣網關進行數據聚合,邊緣網關數據聚合后,對本地模型進行訓練,并對模型進行PPCEF,然后上傳到云端進行模型聚合,云端將模型聚合后,再下放到各邊緣網關進行更新。


最后,由于個人掩碼的存在,聯邦學習的每個參與者無法知道單個邊緣網關上傳的本地模型梯度,這保證了每個邊緣網關的隱私。 由于秘密共享算法的存在,惡意用戶都不能通過共謀攻擊來攻擊系統中的參與者。 這種安全性在理論上是有保證的,同時邊緣網關也有一定的冗余性。 因為公共掩碼的存在,全局模型梯度在傳輸過程中不暴露,保證了全局模型梯度的安全性。其算法流程如圖2 所示。

圖2 PPCEF 隱私保護算法流程圖
在進行聯合學習之前,系統需要設置一些必要的參數,以保證系統傳輸和安全的需要。
1) 生成云端邊緣網關和云端公鑰證書,進行身份認證,實現公鑰與身份的唯一綁定關系。系統主要使用公鑰和私鑰對 (dSK,dPK)進行身份認證和消息認證。
2) 從云端生成一個安全質數k,k的位數必須大于1 024。
3) 為秘密共享算法指定一個有限字段F。
4) 在各邊緣終端與邊緣網關、邊緣網關與云端之間建立相應的通信路徑。在實驗中使用一個相對簡單的socket 機制來實現每個參與者之間的通信互連。
5) 設置秘密共享協議的參數n和t。
6) 所有參與訓練的邊緣網關都誠實地使用云端提供的安全質數k,來生成與DH 密鑰交換協議相關的參數p p ←KA.param(k)。
1) 邊緣智能終端對原始數據d添加差分隱私保護機制,M(d)=f(d)+N(o,σ2),其中N是高斯分布, σ是d的方差。然后將處理后的數據發送到附近的邊緣網關進行多用戶數據聚合。

3) 云端收集參與訓練的邊緣網關發送的信息,當收集一定時間且記錄的參與訓練的邊緣網關數量未達到t及以上時,聚合訓練將被中斷。 否則,云端廣播訓練網關集合U1 和簽名公鑰信息。
1) 參加訓練的邊緣網關收到終端集U1 和云端廣播的簽名公鑰信息集后檢查時間戳;驗證

1) 參與的邊緣網關接收簽名秘密來自云端的信息并將其保存為列表。

1) 邊緣網關從云端接收邊緣網關集U3, ?如果U3 2) 邊 緣 網 關 將μu←(U3||SIG.sign(duSK,U3||timestamp))發送到云端。 3) 云端從至少t個邊緣網關處收集μu(用U4 ?U3表示這組用戶),向U4 中的每個邊緣網關發送集{v,μu}v∈U4。 本實驗采用MNIST[13-14]數據集和CIFAR10[15]數據集進行對比分析。將原有的聯邦學習算法作為比較基準,并將基于主流隱私保護方案的聯邦學習驗證隱私方法與PPCEF 進行比較,以實現對比分析。 4.2.1 精度 3 種方案在MNIST 數據集上進行訓練,得到圖3 所示的ACC(精度)曲線。可以看出,使用MNIST[12]數據集進行16 輪訓練后,本文的PPCEF 模型準確率達到90%。在使用CIFAR10 數據集時,從圖4可以看到,經過30 輪訓練,PPCEF 模型的準確率達到了95%,它更接近于原始的聯合學習,但明顯高于差異隱私方案。 圖3 3 種方案的精度比較(MNIST) 圖4 3 種方案的精度比較(CIFAR10) 可以看出,原始的聯邦學習方案精度略高于PPCEF,但原始聯邦學習沒有添加隱私保護方案,存在隱私風險,而面對一個不安全的網絡環境,隱私保護方案是必不可少的。 4.2.2 防隱私攻擊能力 學習系統使用該安全方案,由于梯度添加掩碼,使得即使在迭代后,虛擬梯度最大程度接近“真實梯度”,但“真實梯度”是添加掩碼的虛假梯度,所以無論迭代多少次,攻擊者只有無用的虛假梯度,因此,原始圖像不能從梯度恢復。使用梯度泄漏攻擊[14]來測試PPCEF 的反隱私攻擊能力,并將PPCEF 攻擊結果與原始聯邦學習攻擊結果進行比較。當原始聯邦學習迭代次數為130 時,原始圖像基本恢復。但是,由于PPCEF 在梯度上添加了掩碼,原始圖像不會暴露。 4.2.3 邊緣網關能耗對比分析 分析了FedAvg[15]、q-FedSGD[16]和PPCEF 中各邊緣網關參與聯邦學習的總能量消耗,能量消耗描述了參與聯邦學習的成本。 表2 給出了3 種算法中每個邊緣網關學習的總能耗。3 種算法下各邊緣網關的能耗分布趨勢和時間分布是相似的。 表2 能耗比較 s 在當前的邊緣計算網絡中,隱私安全問題尤為突出。因此,如何將傳統的隱私保護方案與邊緣計算環境中的邊緣數據處理特征相結合,從而實現多元化服務環境下的用戶隱私保護就顯得尤為重要。 本文以邊緣計算為研究對象,介紹了聯邦學習的訓練框架,設計了一種基于秘密共享和權重掩碼的輕量級隱私保護協議,能夠很好地達到隱私保護的目的。3.7 解除掩碼

4 實驗分析
4.1 實驗配置
4.2 實驗對比分析



5 結 束 語