石聰聰 高先周 黃秀麗 毛云龍
由于在大數(shù)據(jù)分析處理方面出色的表現(xiàn),人工智能技術(shù)得到了廣泛的應(yīng)用.機器學(xué)習(xí)以及深度學(xué)習(xí)模型憑借著性能優(yōu)良、魯棒性強、適應(yīng)性高等優(yōu)點,在多種需求場景中發(fā)揮了重要作用.現(xiàn)階段,隨著國內(nèi)現(xiàn)代化傳感器設(shè)備、智能手機、IoT設(shè)備的普及,產(chǎn)生了海量個人信息數(shù)據(jù),這些數(shù)據(jù)充分反映了不同用戶的使用習(xí)慣和個人需求,能夠?qū)μ峁﹤€性化服務(wù)的人工智能平臺提供有力的數(shù)據(jù)支持(如輸入法、語音助手、購物推薦等),導(dǎo)致用戶個人數(shù)據(jù)分析的需求越來越迫切.但是這也帶來了潛藏在傳統(tǒng)中心化機器學(xué)習(xí)場景下的數(shù)據(jù)隱私安全風(fēng)險.服務(wù)器直接收集客戶端或者邊緣端的數(shù)據(jù)用以模型訓(xùn)練雖然簡單直接,然而由于越來越多的針對機器學(xué)習(xí)模型的隱私攻擊的出現(xiàn)以及國家法律法規(guī)的要求,這種中心化訓(xùn)練的方式逐漸加劇人們的擔(dān)憂,引起了人們對個人數(shù)據(jù)隱私安全的顧慮.在這種背景下,聯(lián)邦學(xué)習(xí)順勢而生[1].?dāng)?shù)據(jù)擁有者訓(xùn)練本地模型隨后上傳更新的梯度至聚合服務(wù)端,聚合端將收集到的多份梯度聚合隨后更新維護最終模型.之后將聚合更新過的模型再發(fā)送至各個訓(xùn)練參與方開始新一輪的訓(xùn)練.通過這種方式避免了數(shù)據(jù)直接暴露且依舊能夠利用隱私數(shù)據(jù)進行機器學(xué)習(xí)訓(xùn)練.
盡管不會直接暴露用戶的訓(xùn)練數(shù)據(jù),聯(lián)邦學(xué)習(xí)依舊存在諸多安全風(fēng)險.已經(jīng)有研究表明,聯(lián)邦學(xué)習(xí)易于遭受多種隱私竊取攻擊的威脅.惡意攻擊者能夠在獲取模型梯度的情況下竊取數(shù)據(jù)擁有者的隱私信息[2].由此產(chǎn)生了一系列的防御解決方案,包括基于安全多方計算的防御方案[3]、基于差分隱私的隱私訓(xùn)練技術(shù)[4]等.安全多方計算通過一系列如同態(tài)加密、混淆電路以及秘密分享等技術(shù)[5-6],能夠使得在聯(lián)邦學(xué)習(xí)訓(xùn)練過程中,訓(xùn)練參與方的本地模型梯度對除了自身以外的其他方不可見,從而實現(xiàn)保護本地模型隱私的模型發(fā)布目標(biāo).然而,采用安全多方計算技術(shù)保護的聯(lián)邦學(xué)習(xí)過程也僅僅局限于訓(xùn)練過程中模型的安全,無法對聚合之后的模型提供保護.為了解決聚合模型安全發(fā)布問題,有研究提出了基于差分隱私的聯(lián)邦學(xué)習(xí)方案,用來保護聚合模型中的用戶數(shù)據(jù)隱私.其中,差分隱私隨機梯度下降方法(Differential Privacy-Stochastic Gradient Descent,DP-SGD)是最著名的隱私機器學(xué)習(xí)訓(xùn)練方法之一,通過應(yīng)用它的矩計算技術(shù)可以使得采用差分隱私訓(xùn)練的聯(lián)邦學(xué)習(xí)成為可行的方案[7].
為了給聯(lián)邦學(xué)習(xí)提供全生命周期多角度的隱私保護,出現(xiàn)了一些結(jié)合差分隱私和安全多方計算技術(shù)的聯(lián)邦學(xué)習(xí)模型發(fā)布方案.對于安全多方計算,往往是提供黑盒式的功能保護梯度不暴露,對于整體模型的效果并不會有影響,差距往往在于不同方案的通信和計算效率.對于分布式訓(xùn)練中的差分隱私,如何在理論正確的情況下尋求與安全多方計算相結(jié)合的最高效的方案是一個難題.本文針對隱私安全的聯(lián)邦學(xué)習(xí)模型發(fā)布方法做了系統(tǒng)性的整理和介紹,包括:1)系統(tǒng)性地介紹聯(lián)邦學(xué)習(xí)和涉及到的相關(guān)概念;2)對于當(dāng)下聯(lián)邦學(xué)習(xí)模型發(fā)布面臨的隱私安全威脅和敵手模型的介紹;3)介紹主流的聯(lián)邦學(xué)習(xí)模型發(fā)布的隱私保護方案;4)針對聯(lián)邦學(xué)習(xí)模型發(fā)布場景中可行的保護方案做出展望.
本節(jié)介紹聯(lián)邦學(xué)習(xí)的概念,以及涉及到的隱私安全保護技術(shù),包括差分隱私、安全多方計算等技術(shù).
傳統(tǒng)機器學(xué)習(xí)中,服務(wù)商不得不從各個客戶端收集私人數(shù)據(jù)組成一個巨大的數(shù)據(jù)集供中心化訓(xùn)練.一方面,個人隱私敏感的數(shù)據(jù)將會暴露給服務(wù)商并且會加劇數(shù)據(jù)泄露帶來的后果;另一方面,中心化的訓(xùn)練消耗的服務(wù)資源會更多一些.聯(lián)邦學(xué)習(xí)由谷歌提出,主要是為了保護個人隱私,是支持大規(guī)模參與者的分布式機器學(xué)習(xí),也包括深度學(xué)習(xí)的訓(xùn)練方式[1,8].它主要是在采用反向求導(dǎo)優(yōu)化的機器學(xué)習(xí)算法中,在訓(xùn)練每一輪上傳本地梯度更新值,再由中心服務(wù)端收集且加權(quán)求和共同更新維護中心模型,拓撲結(jié)構(gòu)如圖1所示.隨后,根據(jù)參與訓(xùn)練的不同數(shù)據(jù)特征的差異,出現(xiàn)了包括橫向聯(lián)邦學(xué)習(xí)、縱向聯(lián)邦學(xué)習(xí)和聯(lián)邦遷移學(xué)習(xí)的概念.在橫向聯(lián)邦學(xué)習(xí)中,訓(xùn)練參與方的數(shù)據(jù)擁有一致的特征,而在縱向聯(lián)邦學(xué)習(xí)中,訓(xùn)練參與方的數(shù)據(jù)來自一致的個體但是擁有不同的特征.
通常會選取參數(shù)B,E和學(xué)習(xí)率來控制聯(lián)邦學(xué)習(xí),B代表本地訓(xùn)練的批大小(batch size),E代表本地訓(xùn)練輪次(epoch).根據(jù)實驗經(jīng)驗,B和E需要被設(shè)定為較小的適合值來平衡模型可用性和聯(lián)邦學(xué)習(xí)通信和計算的開銷.同時,為了兼顧聯(lián)邦學(xué)習(xí)訓(xùn)練效率以及穩(wěn)定性,也有許多工作對聯(lián)邦學(xué)習(xí)的優(yōu)化目標(biāo)、損失函數(shù)、超參數(shù)設(shè)置等做一些相關(guān)的改進.
在縱向聯(lián)邦學(xué)習(xí)協(xié)議中,服務(wù)器和客戶端各自會采取更為復(fù)雜一些的方法進行模型訓(xùn)練.比如GELU-net采用了子模型的方式令服務(wù)器和客戶端分別訓(xùn)練不同的特征部分,隨后組合兩個子模型的輸出再進行統(tǒng)一訓(xùn)練[10-11].
圖1 聯(lián)邦學(xué)習(xí)聚合模型Fig.1 Topology of federated learning
差分隱私(Differential Privacy,DP)提供了一種可靠的中心化隱私保護屬性.由于嚴謹?shù)睦碚摶A(chǔ)和實用性,差分隱私成為被廣泛接受和采用的中心化數(shù)據(jù)隱私保護技術(shù)[12].
定義1對于兩個相鄰數(shù)據(jù)集D,D′?D和任意值域的子集S?R,如果一個隨機機制M:D→R滿足(,δ)-DP,它需要滿足如下約束條件:
P[M(D)∈S]≤eP[M(D′)∈S]+δ.
如定義1所示,δ表示-DP可能會不滿足上述約束的概率.通過預(yù)設(shè)的噪聲來使得某查詢函數(shù)滿足(,δ)-DP隱私要求,該噪聲的級別除了上述參數(shù)外,還與敏感度Sf相關(guān).Sf可以被定義為
1.2.1 組合定理
1.2.2 本地差分隱私
傳統(tǒng)的中心化差分隱私往往用于中心化數(shù)據(jù)的發(fā)布,即可信的數(shù)據(jù)擁有方采用一些隱私機制進行數(shù)據(jù)發(fā)布,模糊被查詢數(shù)據(jù)相對于整體數(shù)據(jù)集的存在感,滿足中心化的差分隱私.然而,這種隱私化方法不適用于無可信第三方的應(yīng)用場景.本地差分隱私(Local Differential Privacy,LDP)則將數(shù)據(jù)隱私化的任務(wù)分配給本地用戶,即在沒有可信第三方的情況下解決了本地數(shù)據(jù)隱私發(fā)布問題.通過本地差分隱私技術(shù),對于任意本地數(shù)據(jù),其相比于任意其他數(shù)據(jù)都是不可區(qū)分的.因此在這種需求下,數(shù)據(jù)的可用性顯然會更低,往往只能滿足一些特殊需求的數(shù)據(jù)采集,例如頻率統(tǒng)計、均值統(tǒng)計等.
安全多方計算(secure Multi-Party Computation,MPC)是一類基于密碼學(xué)的安全與隱私保護技術(shù).自從Yao[13]提出百萬富翁問題以來,出現(xiàn)了許多安全多方計算的解決方案.安全多方計算所研究的問題是,各個參與方如何在不直接暴露自身數(shù)據(jù)的前提下交換信息合作共同完成某個計算任務(wù).
安全多方計算最經(jīng)典的應(yīng)用場景是百萬富翁問題,即兩個富翁Alice和Bob希望在不暴露各自擁有財富的情況下知道誰更富有,即典型的無可信三方的多方計算場景.一般來說,當(dāng)前學(xué)術(shù)界和工業(yè)界主流的實現(xiàn)方式是通過混淆電路(garbled circuit)、茫然傳輸(oblivious transfer)、秘密分享(secret sharing)、同態(tài)加密(homomorphic encryption)、零知識證明(zero-knowledge proof)等多種現(xiàn)代密碼學(xué)技術(shù)組成的多方安全計算方法,目前諸多主流的計算框架包括ABY、SPDZ、PICCO、Obliv-C等[5,14-15].同時也有應(yīng)用同態(tài)加密技術(shù)的三方方案,即需要一個密鑰分發(fā)機構(gòu)進行密碼體系的構(gòu)建[16-17].安全多方計算能夠保障在分布式場景中不暴露參與者的隱私信息,對私有數(shù)據(jù)交互共享提供密碼學(xué)級別的保護,因此在金融、征信等對隱私保護程度較高的場景有著廣泛的應(yīng)用.
本節(jié)介紹聯(lián)邦學(xué)習(xí)模型發(fā)布中大致的隱私概念和威脅,隨后具體介紹可能的敵手模型.
2.1.1 隱私攻擊
隱私的傳統(tǒng)定義是指用戶數(shù)據(jù)本身以及可能泄露數(shù)據(jù)的相關(guān)信息.雖然聯(lián)邦學(xué)習(xí)協(xié)議的初衷就是為了避免暴露用戶本身的私有數(shù)據(jù),事實上已經(jīng)在某種程度上直接保護了數(shù)據(jù)隱私,但是對于機器學(xué)習(xí)模型來說,攻擊者僅憑模型參數(shù)就能夠竊取原始數(shù)據(jù),構(gòu)成嚴重的隱私威脅.根據(jù)已有的研究[2,18-21],許多經(jīng)典的針對機器學(xué)習(xí)隱私攻擊在聯(lián)邦學(xué)習(xí)場景中大多能夠奏效,包括標(biāo)簽復(fù)現(xiàn)、屬性推斷攻擊、成員推斷攻擊等.這些攻擊主要分為三種場景:1) 攻擊者是聯(lián)邦學(xué)習(xí)聚合端,在這種情況下,聚合者甚至能夠極大程度地復(fù)原用戶的個人信息[19];2)攻擊者是訓(xùn)練參與方,攻擊者能夠?qū)嵤┏蓡T推斷攻擊和屬性推斷攻擊,但是攻擊效果會隨著參與者數(shù)量的提升而降低[2];3) 以模型觀察者的姿態(tài)對聯(lián)邦學(xué)習(xí)訓(xùn)練的模型實施一系列針對普通機器學(xué)習(xí)模型的攻擊[18,20-21].
因此,本文將機器學(xué)習(xí)或深度學(xué)習(xí)模型的梯度或者模型參數(shù)視為需要保護的隱私數(shù)據(jù).在聯(lián)邦學(xué)習(xí)場景中,各個參與方的本地模型會在模型聚合時暴露給服務(wù)端,同時最終聚合后的模型也包含參與者的隱私信息,所以,用戶本地模型以及聚合模型的發(fā)布都是可能遭受隱私攻擊的風(fēng)險對象.在機器學(xué)習(xí)訓(xùn)練或者模型發(fā)布場景中,如何真正地保護用戶隱私是重中之重.
2.1.2 隱私威脅
如上所述,聯(lián)邦學(xué)習(xí)場景中的隱私威脅主要存在于三個方面:一是訓(xùn)練過程中,本地發(fā)布出的局部模型;二是訓(xùn)練階段后期發(fā)布給各個參與方的聚合過的中間模型;三是整體訓(xùn)練完后發(fā)布的模型.其中:第一點的威脅最大,這是因為本地模型最易受隱私攻擊且成功率最高;第二點和第三點本質(zhì)上是相似的,聚合模型對于隱私攻擊具有一定的天然抵御能力然而依舊需要采取防御措施.聯(lián)邦學(xué)習(xí)的整個生命周期可以分為兩個階段,包括本地模型發(fā)布階段和最終模型發(fā)布階段,具體如下:
1)本地發(fā)布.在聯(lián)邦學(xué)習(xí)的本地發(fā)布階段,聚合端在每一輪都能夠直接得到每個參與者上傳的梯度,這對于參與者的隱私安全來說是非常危險的,所以當(dāng)一個本地梯度被發(fā)送出去的時候,它不應(yīng)該是明文.
2)聚合發(fā)布.在聯(lián)邦學(xué)習(xí)中,模型訓(xùn)練后期分發(fā)的模型或者最終發(fā)布的整體模型都可以看作是直接暴露的.惡意攻擊者能夠作為參與者獲得訓(xùn)練過程中的聚合模型,并且可以推斷其他參與者的梯度.尤其是對于一些合謀的參與者,他們能夠通過與他人合作獲得其他參與者的本地模型,因此在這種情況下保證每個參與者的隱私也非常重要.
聯(lián)邦學(xué)習(xí)的隱私威脅主要來自兩種場景(表1):一類來自內(nèi)部,主要包括聯(lián)邦學(xué)習(xí)的參與者包括數(shù)據(jù)提供者和模型聚合服務(wù)端;另一類則來自外部,主要是模型的使用者[22].根據(jù)以往的諸多相關(guān)工作,普遍會將敵手分為兩類:一種是半誠實者(semi-honest),會遵守協(xié)議但對隱私好奇;另一類是半惡意者(semi-malicious),為了達成目的可能會不遵守協(xié)議.我們的目標(biāo)是保護聯(lián)邦學(xué)習(xí)中訓(xùn)練參與方的數(shù)據(jù)隱私.根據(jù)現(xiàn)實情況,聚合端和除了自身以外的訓(xùn)練參與方一般都是誠實但好奇(honest but curious)的,即會遵守訓(xùn)練協(xié)議但是對別人的隱私好奇,并且參與方中的一部分可以串通.另外,訓(xùn)練過程中每一輪的聚合模型和最終發(fā)布的聚合模型的觀察者都是好奇的.
很多已有的工作也是基于這樣的敵手假設(shè).本文總結(jié)為以下兩類敵手威脅:
1)訓(xùn)練內(nèi)部參與方,會遵守既定協(xié)議但是對其他人的隱私感興趣,會尋求和其他方合作以完成隱私竊取攻擊.這類威脅主要是來自聯(lián)邦學(xué)習(xí)訓(xùn)練過程中的參與者和聚合者.
2)聯(lián)邦學(xué)習(xí)完成后發(fā)布模型的觀察者.這類敵手對訓(xùn)練參與者的隱私感興趣,但是所能獲取的信息有限,即只有最終發(fā)布的模型(最大限度為白盒模型).
另外,在一些聯(lián)邦學(xué)習(xí)具體問題特別是安全聚合相關(guān)工作中,也會將聯(lián)邦學(xué)習(xí)聚合者或參與者假設(shè)為半惡意者,以此來進一步擴展工作.
表1 敵手模型和角色
根據(jù)上述的聯(lián)邦學(xué)習(xí)現(xiàn)實場景中會面臨的諸多隱私威脅,研究者們提出了一系列相應(yīng)的保護措施.這其中主要包括采用密碼學(xué)技術(shù)對訓(xùn)練過程中本地模型發(fā)布的保護、采用差分隱私技術(shù)對聚合模型的隱私保護.總體來說,隱私聯(lián)邦學(xué)習(xí)模型發(fā)布包含基于密碼學(xué)的本地模型發(fā)布和基于差分隱私的聚合模型發(fā)布兩部分.其中,基于密碼學(xué)的本地模型發(fā)布技術(shù)將安全計算技術(shù)融入聯(lián)邦學(xué)習(xí)中,使得每個參與方本地模型梯度并不直接暴露,極大程度降低了數(shù)據(jù)擁有者本地面臨的隱私威脅.而聚合模型發(fā)布技術(shù)則聚焦于訓(xùn)練階段下發(fā)的聚合模型和最終發(fā)布模型的隱私保護,通常采用隱私機器學(xué)習(xí)訓(xùn)練技術(shù)保護模型以應(yīng)對模型觀察者的隱私竊?。€有很多工作致力于探索結(jié)合兩者進行全方位從聯(lián)邦學(xué)習(xí)訓(xùn)練到最終模型發(fā)布全生命周期的隱私保護.
聯(lián)邦學(xué)習(xí)訓(xùn)練后期和訓(xùn)練完成之后聚合模型的發(fā)布是聯(lián)邦學(xué)習(xí)模型發(fā)布面臨的主要威脅場景之一.由于發(fā)布的聚合模型除了聚合端以外還需要面對諸多的模型觀察者,如何保證聚合模型中整體訓(xùn)練數(shù)據(jù)的隱私安全是這一類工作的重點.當(dāng)前,學(xué)術(shù)界往往采用差分隱私的保護方案,包括隱私機器學(xué)習(xí)訓(xùn)練方法、基于教師-學(xué)生模型的隱私聚合方法以及一系列差分隱私增強技術(shù)和弱差分隱私方案.
3.1.1 基于差分隱私組合定理的隱私訓(xùn)練方法
最直接的隱私訓(xùn)練方案就是直接應(yīng)用高斯機制進行隱私訓(xùn)練.文獻[23]將高斯機制的簡單組合定理應(yīng)用在聯(lián)邦學(xué)習(xí)中,提出了NbAFL方案,最終取得的實驗結(jié)果的隱私開銷遠超可以接受的范圍.它將聯(lián)邦學(xué)習(xí)的本地模型上傳和模型分發(fā)分為兩個都需要保護的獨立階段,即在參與者本地進行一輪保護之后,聚合完成在聚合端再進行一輪保護.一方面這種應(yīng)用場景不具有很大的實際價值,另一方面這種方案下的隱私開銷極大.當(dāng)然文獻[23]也提出了一些有價值的見解,比如聯(lián)邦學(xué)習(xí)參與者的隨機選取數(shù)量在平衡隱私保護程度和模型可用性之間存在一個最優(yōu)值,這是一個值得深入探索的問題.
圖2 教師-學(xué)生模型的隱私聚合方法[26] Fig.2 Private aggregation of teacher ensembles[26]
文獻[4,24]嘗試將文獻[7]提出的矩計算技術(shù)分別應(yīng)用在圖像識別任務(wù)和自然語言處理任務(wù)的聯(lián)邦學(xué)習(xí)中,站在訓(xùn)練參與者的視角保護數(shù)據(jù)隱私.在此方案的隱私訓(xùn)練中,使用隱私參數(shù)、高斯分布的標(biāo)準差σ以及每一輪選取的參與者數(shù)量m來控制隱私開銷;給定σ,m和,應(yīng)用矩計算技術(shù)可以計算δ,只要δ達到預(yù)設(shè)閾值訓(xùn)練過程就會停止;同時也采用了基礎(chǔ)的梯度裁剪和隨機選取技術(shù)來進一步優(yōu)化隱私開銷.其中,進行梯度裁剪的敏感度則是來自于本地訓(xùn)練階段各參與方上傳至服務(wù)端的最大值,隨后進行梯度加噪,使得方案理論上符合對各客戶端數(shù)據(jù)的差分隱私保護.另外也有學(xué)者嘗試將矩計算技術(shù)應(yīng)用在多層結(jié)構(gòu)的特異聯(lián)邦學(xué)習(xí)中[25],矩計算技術(shù)已經(jīng)成為事實上的隱私機器學(xué)習(xí)訓(xùn)練標(biāo)準.
在當(dāng)前中心化差分隱私理論體系下,矩計算技術(shù)似乎已經(jīng)是高斯機制組合定理的理論極限,然而采用隱私訓(xùn)練的機器學(xué)習(xí)包括聯(lián)邦學(xué)習(xí)的模型效果依舊不足以滿足生產(chǎn)環(huán)境的需要,模型的可用性依舊不夠高.
3.1.2 基于差分隱私技術(shù)的集成方法
除了機器學(xué)習(xí)的隱私訓(xùn)練外還有一系列其他的基于差分隱私的模型發(fā)布方案.
在基于教師-學(xué)生模型的隱私聚合方法(Private Aggregation of Teacher Ensembles,PATE)[26]中(圖2),本地數(shù)據(jù)將被隨機劃分后送入多個教師模型訓(xùn)練,隨后再取各個教師模型的輸出的最大值當(dāng)作教師模型聚合的輸出,同時統(tǒng)計其出現(xiàn)的頻率來計算隱私的開銷.同一個結(jié)果在多個教師模型中出現(xiàn)說明不同的訓(xùn)練數(shù)據(jù)集對結(jié)果的影響很小,即表明其暴露的數(shù)據(jù)隱私越少.在教師模型的輸出結(jié)果上加噪聲則可以定制一定的隱私保護.再采用知識遷移的方式用公共數(shù)據(jù)集通過有限次的查詢獲取教師模型中蘊含的信息得到公共數(shù)據(jù)集的標(biāo)簽,最后送至學(xué)生模型統(tǒng)一學(xué)習(xí)得到最終學(xué)習(xí)結(jié)果[26].隨后也出現(xiàn)了改進方案,基于Renyi差分隱私的計算后施加更松弛的高斯噪聲以及交互式學(xué)生模型查詢方案,進一步提高了模型的可用性[27].作為一類基于差分隱私技術(shù)的本地隱私模型的發(fā)布方案,PATE具有可用性高的特點,但是需要更復(fù)雜的訓(xùn)練和發(fā)布過程.文獻[28]將模型參數(shù)獨立處理,提供另類的隱私模型的發(fā)布方案,相比于隱私訓(xùn)練方法提升了模型可用性.
3.1.3 近似差分隱私及隱私增強技術(shù)
也有許多學(xué)者提出了一些近似差分隱私技術(shù)如貝葉斯差分隱私、集中式差分隱私(Concentrated Differential Privacy,CDP)等,在一定程度的隱私和模型可用性之間做進一步的取舍[29-31].當(dāng)然也有一些采用安全洗牌、子采樣、指數(shù)機制等技術(shù)進行的無噪聲方案[28,32-34].
總體來說,差分隱私技術(shù)在聯(lián)邦學(xué)習(xí)中的應(yīng)用除了基本的差分隱私機制之外還包含以下幾類增強技術(shù),如梯度裁剪、參與者隨機選取、本地數(shù)據(jù)隨機選取以及安全洗牌等[35-37].當(dāng)然匿名洗牌往往需要一個可信的洗牌者或是可以匿名傳輸?shù)膹娂僭O(shè),需要更成熟的聯(lián)邦學(xué)習(xí)的通信機制,相對來說應(yīng)用門檻更高.目前來看差分隱私在機器學(xué)習(xí)隱私保護中的應(yīng)用依舊需要進一步地工作來推進和優(yōu)化,幸運的是在聯(lián)邦學(xué)習(xí)這一復(fù)雜的系統(tǒng)中,如安全洗牌、子采樣技術(shù)的加入使得其越來越令人期待.
在聯(lián)邦學(xué)習(xí)訓(xùn)練階段,數(shù)據(jù)擁有者即參與方將本地模型發(fā)布給聚合端參與聯(lián)邦學(xué)習(xí).由于本地模型對于隱私攻擊最為敏感,通常傾向于采用本地差分隱私技術(shù)提供隱私保護或者結(jié)合基于密碼學(xué)技術(shù)的安全多方計算方案,在本地資源受限或者特征不完全匹配的場景則采用模型分割的方式進行聯(lián)邦學(xué)習(xí)和本地模型發(fā)布.表2列出了本節(jié)將要討論的主要發(fā)布方法.
表2 隱私發(fā)布方案對比
3.2.1 基于本地差分隱私的方法
差分隱私的保護方案根據(jù)添加噪聲的主體可以分為本地差分隱私和中心化差分隱私兩大類.中心化差分隱私方案采用中心化差分隱私的定義進行隱私保護,通常針對的是模型中整體數(shù)據(jù)的隱私.本地差分隱私則結(jié)合符合本地差分隱私定義的機制進行隱私模型發(fā)布,針對本地數(shù)據(jù)進行隱私保護.當(dāng)然也有一些基于知識蒸餾的非典型隱私聯(lián)邦學(xué)習(xí)方案[44]不在本文的討論范圍內(nèi).
由于提供更高要求的隱私保護,本地差分隱私相比于中心化差分隱私需要提供更高的數(shù)據(jù)擾動或者噪聲擾動,使得其獲得的最終數(shù)據(jù)或者模型的可用性都較低.
在聯(lián)邦學(xué)習(xí)訓(xùn)練中,本地差分隱私也是被廣泛考慮的一類技術(shù).最知名的當(dāng)屬蘋果公司和斯坦福大學(xué)合作的這篇文章,為了大規(guī)??蓪嵱玫穆?lián)邦學(xué)習(xí)提出了新的本地差分隱私機制并且在對某條記錄感興趣且無先驗知識的敵手假設(shè)下,采用大隱私參數(shù)的嚴格定義的本地差分隱私保護本地數(shù)據(jù)隱私[38].由于本地差分隱私技術(shù)本身的特點,隱私開銷往往巨大.為了降低隱私開銷,有學(xué)者提出將模型的每個參數(shù)獨立處理,隨后采用洗牌和隨機技術(shù)來完成對每個參數(shù)獨立的本地差分隱私方案.雖然此方案采用洗牌技術(shù)有效進行隱私增強,然而將參數(shù)獨立開來已經(jīng)違背了差分隱私保護數(shù)據(jù)的理論出發(fā)點,只能算得上是對模型本身的保護[39],當(dāng)然這也不失為另一種隱私聯(lián)邦學(xué)習(xí)思路.同時也有一些采用隱私增強技術(shù)和弱差分隱私技術(shù)的方案[30].
3.2.2 基于差分隱私和密碼學(xué)技術(shù)的方法
通過密碼學(xué)使得本地模型不暴露,直接杜絕了聯(lián)邦學(xué)習(xí)中風(fēng)險最大的內(nèi)部聚合者的隱私竊取行為.一般來說,密碼學(xué)技術(shù)的目的主要是為了安全多方計算,經(jīng)典聯(lián)邦學(xué)習(xí)往往是一個星形拓撲結(jié)構(gòu),構(gòu)成多個數(shù)據(jù)擁有方與一個模型聚合端的多方計算.當(dāng)然也存在一些針對兩方的安全機器學(xué)習(xí)框架,但需要與聯(lián)邦學(xué)習(xí)區(qū)分[40,45].
針對隱藏本地模型進行安全計算,同時也考慮到訓(xùn)練過程中參與方的掉線情況以及通信和計算開銷的影響,由此谷歌公司提出了針對移動設(shè)備使用的聯(lián)邦學(xué)習(xí)安全聚合方法[3].使用雙掩碼技術(shù)和秘密分享技術(shù)以一定代價實現(xiàn)了能夠抵御主動惡意聚合者的實用的聯(lián)邦學(xué)習(xí)本地模型發(fā)布技術(shù).然而有系統(tǒng)實驗表明此方案在現(xiàn)實場景中僅可以支持數(shù)百個參與者的規(guī)模,與聯(lián)邦學(xué)習(xí)在實際應(yīng)用場景中的規(guī)模還存在一定差距[46].
3.2.3 基于模型分割的發(fā)布方法
為了進一步提升聯(lián)邦學(xué)習(xí)的容錯能力以及應(yīng)對更多的數(shù)據(jù)特征不匹配的情況,同時考慮到一些參與方設(shè)備的資源有限,推出了一系列基于模型分割的模型發(fā)布方法.與傳統(tǒng)聯(lián)邦學(xué)習(xí)不同的是,基于模型分割的方法引入了另一種分布式模型訓(xùn)練和發(fā)布機制.
文獻[51]為了應(yīng)對本地資源受限的參與方場景,提出將模型進行分割,本地留存小部分模型,大部分模型留存在服務(wù)端,同時對傳輸?shù)臄?shù)據(jù)進行差分隱私的保護,對參與方小部分模型采用密碼學(xué)方案進行安全發(fā)布.在模型分割中,被分割的模型切面層(cut layer)傳輸?shù)奶荻葦?shù)據(jù)稱為碎片數(shù)據(jù)(smashed data),參與聯(lián)邦學(xué)習(xí)的各方通過碎片數(shù)據(jù)流通完成跨切面層的梯度傳播進行模型訓(xùn)練,這樣可以保證既不泄露原始訓(xùn)練樣本,參與訓(xùn)練的各方也無法獲取完整的模型,進而提高了本地模型保護程度[41].對于一些數(shù)據(jù)特征不一致的聯(lián)邦學(xué)習(xí)場景,往往會采用模型分割的方式來進行特征的分別提取.
另外,基于模型分割的發(fā)布方法也可以與前文所述的基于差分隱私、密碼學(xué)技術(shù)的方法進行結(jié)合用以保障本地模型發(fā)布的隱私性和安全性.例如:在縱向聯(lián)邦學(xué)習(xí)中,不同的數(shù)據(jù)擁有方持有部分模型,在有一個可信執(zhí)行者的場景下,各方采用基于同態(tài)加密的方案進行模型發(fā)布[10,42].現(xiàn)階段針對基于模型分割的發(fā)布方法研究尚不充分,關(guān)于其隱私保護方面的分析工作仍需要進一步探索[52].
3.2.4 基于可信執(zhí)行環(huán)境的方法
為了隱匿本地模型,防止參與聯(lián)邦學(xué)習(xí)的其他用戶或者服務(wù)端竊取本地模型的發(fā)布結(jié)果,每個用戶可以在一個提供密碼學(xué)保護功能的可信執(zhí)行環(huán)境(Trusted Execution Environment,TEE)中訓(xùn)練其本地模型.通過可信硬件隔離,TEE能夠保障對模型的安全性和完整性的證明.服務(wù)端將驗證用戶的本地聯(lián)邦學(xué)習(xí)模型是否在TEE中運行,然后將加密的模型梯度更新傳輸給設(shè)備,模型的加密和解密均只能在TEE中執(zhí)行,不安全的行為將被隔離在外部環(huán)境.
雖然可信執(zhí)行環(huán)境能夠為本地模型提供強力的保護,但是這種方法并不具備普適性,特別是當(dāng)終端設(shè)備運算能力不足時(如智能手機、普通IOT設(shè)備等).為了降低計算開銷,有研究工作提出可以將部分計算移出可信執(zhí)行環(huán)境,同時保持整個計算過程的完整性和保密性需求[43].然而,基于可信執(zhí)行環(huán)境的聯(lián)邦學(xué)習(xí)的計算效率和通信開銷依然是需要后續(xù)研究工作解決的問題.
聯(lián)邦學(xué)習(xí)隱私模型發(fā)布的重點是進一步提升以差分隱私為主流的隱私模型發(fā)布方案的效果,提高模型的可用性,降低方案的計算和通信開銷.其中在聯(lián)邦學(xué)習(xí)中一些非典型的無噪聲方案將會帶來新的可能性[35-37].
除了單獨改進差分隱私系列技術(shù),如何結(jié)合密碼學(xué)和差分隱私技術(shù),保證聯(lián)邦學(xué)習(xí)全生命周期的模型發(fā)布的隱私安全并且提供可行高效的方案將會是這一方向工作的重點.
隱私安全的聯(lián)邦學(xué)習(xí)依舊處在研究探索之中,一方面相關(guān)的理論技術(shù)不夠完善,如能夠最大程度保證模型效果的差分隱私理論技術(shù)的欠缺使得相關(guān)技術(shù)無法被真正應(yīng)用,又如同態(tài)加密或是基于混淆電路的安全多方計算系列技術(shù)在效率上依舊有很大的進步空間.另一方面,依舊缺乏切實可行的系統(tǒng)性方案的嘗試,比如大規(guī)模的實驗對于很多研究者來說很難達成,需要相關(guān)企業(yè)的介入[46],以及實用的相關(guān)工具鏈的完善也是推動相關(guān)方案發(fā)展的要素.
本文對聯(lián)邦學(xué)習(xí)本地模型到聚合模型和最終模型發(fā)布整個生命周期潛在的隱私威脅做了系統(tǒng)性分析和介紹,同時也對已有的一系列防御方案包括基于差分隱私的聚合模型發(fā)布方法和基于本地差分隱私以及安全多方計算技術(shù)的本地模型發(fā)布方案進行了系統(tǒng)介紹.
兩類方案分別針對不同的隱私威脅和場景并且具有不同的發(fā)展方向和趨勢.其中對于基于差分隱私的聚合隱私模型發(fā)布技術(shù),在隱私訓(xùn)練技術(shù)目前的理論極限下,如何尋求更低的隱私開銷或者尋求一些新穎的隱私機制將會給這一技術(shù)帶來更多可能性.而對于本地模型發(fā)布,針對聯(lián)邦學(xué)習(xí)本地模型發(fā)布可能遇到的嚴峻的隱私威脅,一方面采用本地差分隱私技術(shù)進行高度的隱私保護,另一方面采用密碼學(xué)方案,旨在于隱匿參與者本地更新梯度的情況下參與聯(lián)邦學(xué)習(xí)共同完成梯度求和的安全計算任務(wù),不同的方案主要差異在于通信和計算效率.同時對于一些新穎的如近似差分隱私方案、模型分割方案等,都是為了進一步提升隱私發(fā)布方案的可用性.如何權(quán)衡模型可用性和隱私性是未來聯(lián)邦學(xué)習(xí)研究的一個重要方向.可以預(yù)見的是聯(lián)邦學(xué)習(xí)的大規(guī)模應(yīng)用前景和國家社會對個人信息安全的重視必然會推進聯(lián)邦學(xué)習(xí)隱私保護相關(guān)問題的發(fā)展.