付玉香 秦永彬,2 申國偉,2
(1.貴州大學計算機科學與技術學院,貴陽,550025;2.貴州大學貴州省公共大數據重點實驗室,貴陽,550025)
機器學習(Machine learning,ML)正成為云計算時代的一種模型服務。對于數據持有人,希望能夠對數據進行預測模型訓練,提供機器學習框架和服務。理想情況下,將敏感數據(如病歷,遺傳序列等)輸入到機器學習模型中訓練時需要保護其隱私信息,但實際訓練生成的機器學習模型難以保證。最近,利用某些隱含記憶攻擊可以從ML模型中恢復敏感的訓練數據。這種攻擊可以直接地通過分析內部模型參數進行[1-2],也可以間接地通過反復查詢不透明模型來收集數據分析攻擊[3]。例如,Shokri等[1]利用會員推理攻擊,根據模型的預測結果,反向推斷訓練模型的數據中是否包括了某些具體訓練點。因此,隱私保證必須適用于最壞情況:任何隱私保護策略為了保護訓練數據的隱私,應該嚴謹地假設攻擊者可以不受限制地訪問模型內部參數。為實現(xiàn)敏感隱私數據的可靠保護,數據脫敏技術是使用脫敏規(guī)則對某些敏感信息進行數據變形。差分隱私是經典的數據脫敏技術,添加隨機噪聲使敏感數據失真,同時能夠保持一些數據或數據屬性不變,并且保證處理后的數據在某些統(tǒng)計方面的性質不變,以便進行數據挖掘等操作。
如圖1所示,本文采取差分隱私的數據脫敏技術,提出一種基于遷移學習隱私保護師徒模型(Private aggregation of teacher ensembles and transfer learning,PATE-T)。通過將“徒弟”的訓練數據限制在“師父”投票中,并通過仔細添加隨機噪聲后選取最高投票。利用遷移學習把敏感的“師父”集合知識遷移到另一個非敏感數據域,進一步加強隱私保護。
圖1 PATE-T模型架構Fig.1 PATE-T model architecture
為了確保數據的有效性,該模型包括由不相交數據子集訓練生成的“師父”模型,和模仿“師父”集合的“徒弟”模型。由于所有“師父”都是在數據集的不相交子集上訓練得到,當“師父”數量達到法定數量時,相應的預測源于泛化,而不是過度擬合到特定的訓練點。“徒弟”在“師父”集合的總體輸出上訓練,確?!巴降堋辈灰蕾嚾魏我粋€敏感訓練數據點。“師父”集合采用差分隱私的數據脫敏技術,保留數據在統(tǒng)計方面的性質,模型不會因為隱私保護而犧牲數據的有效性。本文的差分隱私學習策略仔細地添加噪聲,分析和限制每個數據項的隱私影響。采用Moments accountant技術[4]動態(tài)分析“師父”嘈雜選票的敏感性,當最高投票的法定數量較大時,收緊隱私約束。
隱私保護的關鍵在于限制“徒弟”對“師父”的訪問次數,以便“師父”能被“徒弟”進行有意義的知識表達。傳統(tǒng)的機器學習要求領域間概率分布相同,通過傳統(tǒng)機器學習得到的“徒弟”模型暴露于敏感數據集。因此,倘若“徒弟”模型采用傳統(tǒng)機器學習訓練,必須嚴格約束“徒弟”對“師父”標簽查詢的次數,這會在很大程度上損失“徒弟”對“師父”有效地量化,降低“徒弟”的準確性。
為了解決這個問題,本文的解決方法是利用遷移學習將源域的敏感信息知識遷移到不同但相關的非敏感數據域中。這樣設置的好處是不再強制性約束“徒弟”對“師父”的訪問程度;并且能夠在敏感訓練數據標簽很少的情況下,得到精確度很高的“徒弟”模型。在差分隱私方面,即使“徒弟”的體系結構和參數由對手進行公開或反向設計,仍保留了原始數據集上的隱私信息。根據文獻[5]提出的關聯(lián)思想,本文提出“徒弟”模型的關聯(lián)領域自適應(Correlative domain adaptation,CDA),遵循的范例是,為了有效地導出目標域的類標簽,在統(tǒng)計域不變嵌入空間中加強源數據與目標數據之間的關聯(lián),同時最小化標記源域的分類錯誤。本文提出的PATE-T方法在標準MNIST數據集[6]和SVHN數據集[7]上分別以98.46%和90.73%的分類精度取得較好的結果。
k-anonymity[8]能夠保證任意一條記錄與其他的k-1條記錄不可區(qū)分,但是缺乏隨機性[9],容易受到背景知識攻擊和一致性攻擊。Differential privacy[10](稱差分隱私)給出極為嚴格的攻擊模型的定義,對于隱私泄露風險,差分隱私給出了極為嚴謹的、定量化的表示和證明。
Shokri等[11]提出了一種隱私保護的分布式隨機梯度下降(Stochastic gradient descent,SGD)算法,適用于非凸模型。Abadi等[4]通過Moments accountant技術對嘈雜SGD引起的隱私損失提供嚴格的界限,它是一種追蹤隱私損失機制,允許對復雜集成機制的隱私損失進行嚴密的自動分析。相比之下,本文的PATE-T模型在MNIST數據集上將分類精度從97%提高到98.46%,同時將隱私約束ε從8降低到3。
Pathak等[12]首次提出了由受信任的第3方托管的全局分類器對本地分類器進行安全多方聚合。聚合通過安全協(xié)議執(zhí)行,安全協(xié)議將隨機組件添加到平均分類器,使所得到的聚合分類器具有隱私性,不可以推斷來自本地分類器的單個數據實例。但是,這種方法不適用于具有非數值參數(如決策樹)的分類器。Hamm等[13]提出了在設備上訓練的一系列本地分類器知識轉移到具有隱私保證的全局分類器,隱私保護模型很靈活,隱私保護和分類精度都有待提高。
Jagannathan等[14]學習了隱私保護隨機森林,修改了決策樹經典模型,隱私保證不是來自隨機森林中由不同決策樹分析的不相交訓練數據集,而是來自經修改后的架構。在此基礎上,Papernot等[15]提出了PATE-G方法,在敏感數據的不相關子集上訓練了一組教師模型[16]。學生模型利用對抗生成網絡(Generative adversarial net,GAN)[17]進行半監(jiān)督學習[18]生成。本文基于這種思想對隱私保護模型進行改進,摒棄了要求訓練數據和測試數據學習任務分布相同的半監(jiān)督學習方法,采用遷移學習更好地保護訓練數據的隱私。
遷移學習強調在相似但不同的領域、任務和分布間進行知識遷移,遷移學習的目標是通過一定的技術手段將源領域的知識遷移到新領域中,進而解決目標領域數據標簽很少甚至沒有標簽的問題,不要求源領域和目標領域服從獨立同分布。
遷移學習的發(fā)展從基于實例遷移,基于模型遷移,到偏重數學變換的基于特征遷移,再到深度遷移,對抗遷移。近年來,Pan等[19]提出遷移成分分析(Transfer component analysis,TCA),使用最大均值差異(Maximum mean discrepancy,MMD)[20]學習再生核希爾伯特空間(Reproducing kernel Hilbert space,RKHS)中跨領域的遷移成分。Long等[21]提出的聯(lián)合分布適配(Joint distribution adaptation,JDA)使數據在降維過程中同時調整條件分布和邊緣分布,并構建新的特征表示。深度適配網絡(Deep adaptation network,DAN)[22]架構設計多核MMD和多層適配,將卷積神經網絡推廣到領域自適應場景。深度聯(lián)合適配網絡(Joint adaptation networks,JAN)[23]使用聯(lián)合適配網絡進行深度遷移學習,根據聯(lián)合最大均值差異(Joint maximum mean discrepancy,JMMD)對齊跨領域的多個特定領域層,通過聯(lián)合適配網絡來遷移學習。然而,用于以上遷移學習的最大均值差異MMD及其變形存在一個缺陷:需要選擇適當的內核超參數,比如高斯內核的標準偏差。
Ganin等[24]提出向深度網絡中加入對抗的思想。Tan等[25]提出遠域遷移學習(Distant domain transfer learning,DDTL),通過選擇性學習算法(Selective learning algorithm,SLA)解決目標領域數據分布與源領域數據分布完全不同的問題。Zhu等[26]使用循環(huán)一致對抗網絡將一類圖片轉換成另一類圖片。與這種方法類似,Heausser等[5]提出關聯(lián)域自適應,在嵌入空間中加強源領域與目標領域之間的關聯(lián)。本文的遷移學習算法CDA基于這兩種方法進行改進,使目標域的分類精度更高。
如圖1所示。首先“師父”集合是在互斥的敏感數據子集上訓練得到;然后“徒弟”模型通過遷移學習從“師父”集合中學習得到。本節(jié)將描述數據如何分割以訓練一組“師父”,如何組合“師父”的預測,以及如何使用遷移學習得到“徒弟”模型。
數據分割:將敏感數據分為n組不相交數據集(Xn,Yn),并分別對每組數據進行訓練,摒棄了在整個數據集(X,Y)上訓練單個模型的常規(guī)方法,其中,X表示輸入集合,Y表示標簽集合。假設n對于數據集大小和任務復雜度不算太大,得到稱為“師父”的n個分類器fi。
聚合:“師父”集合的隱私保證源于其聚合。設m為任務中的類數量。給定類j∈1,…,m和輸入x,標簽計數即為分配給類j的“師父”數量:nj(x)=|{i:i∈1,…,n,fi(x)=j}|。如果簡單地使用多數投票的方式,集合的輸出可能取決于單個“師父”的投票。事實上,當兩個標簽的投票數最多不超過一個時,就有一個關系:如果一位“師父”作出不同的預測,總體輸出就會發(fā)生變化。為了解決這個問題,本文通過添加隨機噪聲到投票計數nj來引入歧義
式中:ε是一個隱私參數,Lap(b)是以location為0和scale為b的拉普拉斯算子,參數ε影響隱私保護程度。注意,實際引入拉普拉斯機制的隱私參數ε與本文給定的ε值成反比,小的ε導致很強的隱私保證,但會降低標簽的準確性。ε的選取將在本文4.2節(jié)進一步討論。
雖然可以使用上述f進行預測,但是隨著模型進行更多的預測,添加的噪聲就會增加,模型將在有限數量的查詢之后無效。此外,當攻擊者可以訪問模型內部參數時,隱私保證不成立。實際上,由于“師父”都沒有考慮隱私,它們有足夠的能力來保留訓練數據的細節(jié)。為了解決這個問題,本文使用“師父”集合預測的標簽來訓練“徒弟”模型,并且將這些敏感的信息遷移學習到不同但相關的非敏感數據域,以保護敏感數據。
使用聚合機制的輸出來訓練“徒弟”模型,這個“徒弟”模型的部署用來回答用戶查詢。隱私損失是在“徒弟”訓練期間對“師父”集合標簽查詢相關的函數,不會隨著“徒弟”模型用戶查詢次數而增加。使用遷移學習的方法將敏感的“師父”集合知識遷移到非敏感的“徒弟”模型,“徒弟”模型是在非敏感的公共數據集上訓練得到。
訓練“徒弟”模型:“徒弟”模型使用CDA方法,CDA方法是一種新的端到端的神經網絡域自適應技術,基于有標記源域的統(tǒng)計特性來推斷未標記目標域的類別標簽。
在文獻[27]中理論上研究域適應問題,將源域和目標域差異與各個域的統(tǒng)計相似度量相關聯(lián)。結果表明,一個好的域適應方法應該盡可能使源和目標域相似(同化),同時盡可能地減少源域中的預測誤差(歧視)。這些效應是相互對立的,源域和目標域從不同的分布中抽取。可以表述為一個成本函數
本文使用關聯(lián)損失LCDA替代相似度量(Lsim),最小化源域Ds上的分類錯誤,同時強制要求Dt與Ds具有類似統(tǒng)計,這可以通過加強Dt特征表示與同一類中Ds特征表示間的關聯(lián)來實現(xiàn)[28]。
從有標記的源域嵌入Ai開始通過無標記的目標域嵌入B,返回到另一個源域嵌入Aj的虛擬隨機游走的兩步往返概率表示為
Haeusser等[28]認為,高階往返不會提高性能。兩步概率強制性要求類標簽上的近似均勻分布,這可以通過稱為Walker loss的交叉熵損失實現(xiàn),即有
這意味著同一類中的所有關聯(lián)循環(huán)被迫具有相等的概率。Walker loss本身可以通過只訪問容易關聯(lián)的目標樣本,跳過比較復雜的目標樣本來最小化損失,這會導致對目標域的泛化不佳。通過調整Lvisit可以實現(xiàn)以相同的概率訪問每個目標樣本。Visit loss由目標樣本的均勻分布與任何源樣本點到目標樣本點的訪問概率之間的交叉熵定義為
在返回映射中,進一步加強關聯(lián),增加覆蓋率,Cover loss由任何目標樣本開始到源樣本的訪問概率與源樣本的均勻分布之間的交叉熵定義為
算法1CDA算法
輸出:總體神經網絡損失L
開始:
由式(4)得到從源嵌入A到目標嵌入B再返回嵌入A的兩步往返概率;
利用式(5)計算隨機游走損失Walker loss;
利用式(6)計算訪問損失Visit loss;
利用式(7)計算反向隨機游走損失Cover loss;
根據式(5—7)計算源域與目標域相似嵌入的關聯(lián)損失LCDA,即為式(8);
根據式(9)得到總體神經網絡損失L。
兩個領域的相似嵌入之間的關聯(lián)損失為
式中βi是權重因子。式(8)假定源和目標域的類分布相同,如果情況并非如此,對Lvisit,Lcover使用低權重可能會產生更好的結果。同時對網絡進行訓練,通過Softmax交叉熵損失項將源數據域的分類預測誤差最小化,記為Lclassification。
CDA的總體神經網絡損失為
CDA的關聯(lián)損失強化源和目標樣本的相似嵌入同化,分類損失將源數據域的預測誤差最小化(歧視)。沒有LCDA,神經網絡只能在源數據域上被傳統(tǒng)地訓練[29]。在訓練期間LCDA的加入允許合并來自不同領域的未標記數據,從而提高了分類嵌入的有效性。添加LCDA可以使任意的神經網絡進行域適配訓練,這樣的神經網絡學習算法能夠模擬源和目標域之間的分布偏移。如果LCDA被最小化,來自源和目標域的關聯(lián)嵌入在其點積上變得更相似。
對PATE-T的評估中,集合預測標簽的準確性和隱私保護性之間的權衡很大程度上取決于集合中“師父”的數量。訓練一大批“師父”是必不可少的,以支持注入噪聲,產生強有力的隱私保證,因此,本實驗目標是在加強隱私強度的同時提高“學生”的分類精度,關鍵是找到合適的“師父”數量。
4.1.1 “師父”模型
“師父”模型使用的卷積神經網絡架構為兩個帶有池化、歸一化的卷積層以及兩個帶有ReLU激活函數的最大全連接層?!皫煾浮蹦P筒捎玫臄祿菢藴蔒NIST數據集和SVHN數據集。本文的非隱私模式采用最先進測試結果[15]:MNIST模型采用兩個帶有最大池的卷積層和一個具有ReLUs的完全連接層,非私人模式的測試精度為99.18%。在此基礎上,SVHN模型另外增加兩個隱藏層,非私人模式的測試精度為92.8%。
4.1.2 “徒弟”模型
“徒弟”模型采用通用的卷積神經網絡架構:C(32,3)→C(32,3)→P(2)→C(64,3)→C(64,3)→P(2)→C(128,3)→C(128,3)→P(2)→FC(128)。這里C(n,k)表示一個卷積層,n個核的大小為k×k、步長為1;P(k)表示一個窗口大小為k×k,步長為1的池化層;FC(n)表示具有n個輸出單元的全連接層,嵌入的大小為128。遷移學習采用的數據集是MNIST→MNIST-M數據集和SVHN→MNIST數據集。MNIST→MNIST-M:使用MNIST數據集作為標記源,并生成無標記的MNIST-M目標[30]。從彩色照片BSDS500數據集[31]中隨機抽取背景補丁,獲取每個顏色通道與MNIST圖像差異的絕對值。與MNIST相比,由于兩個額外顏色通道和更多細微噪音,機器識別更困難。因此,MNIST圖像的單個通道被復制3次以匹配MNIST-M圖像(RGB)通道,圖像大小為28像素×28像素。SVHN→MNIST:MNIST圖像調整為32像素×32像素,并擴展到3個通道以匹配SVHN的形狀。
式(1)呈現(xiàn)了拉普拉斯噪聲對“師父”績效產生的影響。聚集由不相交數據集訓練的“師父”模型,向集合中注入大量隨機噪聲以確保隱私。此時,“師父”集合的預測依然是準確的,當n=100時,聚合機制的輸出對于MNIST數據集的精確度是93.56%,對于SVHN數據集的精確度為87.48%,每個查詢都有較低的隱私預算ε=0.1。
(1)預測準確性。當其他情況相同,“師父”的數量n受限于分類任務的復雜性與可用數據之間的權衡,用分割數據集的方式訓練n組“師父”,較大n導致較大的絕對差距,潛在地允許更大的噪聲水平和更強的隱私保證。然而,隨著n的增大,每位“師父”的訓練數據隨之減少,就可能降低“師父”的準確性。實驗證明當n=100時,MNIST的個體“師父”的平均測試精度為90.45%,SVHN的個體“師父”的平均測試精度為83.87%。
(2)噪聲聚合。對于MNIST和SVHN,考慮了具有不同數量的5組“師父”集合n∈{50,100,150,200,250}。對于每一組數據,引入不同的拉普拉斯噪聲來擾亂投票數,使ε在0.01與1之間。圖2顯示了噪聲聚合機制ε值對測試集標簽準確性的影響。當逐漸降低ε值,意味著引入更多的隨機噪聲,隱私保護得以加強,“師父”集合的準確性很快下降。在x軸左側較小值對應較大的噪聲振幅,x軸右側較大值對應較小的噪聲振幅。
通過PATE-T訓練的“徒弟”模型,在SVHN→MNIST數據集上,“徒弟”分別獲得5 000或10 000或15 000個訓練樣本,樣本標簽通過嘈雜的聚合機制進行標記。對于其余的21 032或16 032或11 032個樣本進行評估?!巴降堋睂Α皫煾浮钡臉撕灢樵冇洖閟hare。如圖3,較多的標簽查詢有利于提高“徒弟”模型的準確性,share越大,“徒弟”精確度越高。在MNIST→MNIST-M數據集上,“徒弟”可以訪問3 000或5 000個訓練樣本,訓練樣本通過“師父”集合進行標記,剩余的7 000或5 000個樣本對性能進行評估。拉普拉斯尺度為5來保證查詢隱私約束ε=0.2,參數的選擇由2.1節(jié)所驅動。當對“師父”集合的標簽查詢share=5 000,“徒弟”模型精確度為98.46%,在相同的隱私保護框架下,PATE-G模型[15]中“徒弟”模型精確度為94.66%,即使是采用作者的測試結果,本實驗的預測結果依然最優(yōu)越。
圖2 噪聲對聚合機制的影響Fig.2 Effect of noise on aggregation mechanism
圖3 不同數量的標簽查詢與其精確度之間的關系(ε=0.33)Fig.3 Relationship between different numbers of tag queries and precision(ε=0.33)
圖4 噪聲對“徒弟”精確度的影響Fig.4 Effect of noise on accuracy of disciple
如圖4所示,n越小“徒弟”精確度越高。因為當“師父”數量較少時,個體“師父”的訓練數據較多,每個“師父”都能夠作出較準確的預測。此時,如果“師父”集合的噪聲擾動較小,則聚合機制輸出的準確性較高,“徒弟”預測精度隨之較高。當n=100或者更大時,針對不同的噪聲干擾“徒弟”的準確性趨于穩(wěn)定。這種現(xiàn)象體現(xiàn)了遷移學習CDA方法的優(yōu)越性,CDA方法不僅依賴于源數據域的準確性,也依賴于源數據域與目標數據域之間的相似性。在“徒弟”的訓練期間,不僅有源數據域的標記數據,而且允許合并來自目標域的未標記數據,這會削弱源數據域中的噪聲對“徒弟”準確性的影響。
敏感數據隱私保護方面比較前沿的技術是PATE-G模型[15],本文提出的PATE-T模型是在此基礎上進行改進得到,與PATE-G模型進行對比實驗。如圖5,6所示,分別在MNIST和SVHN數據集上,固定“師父”的數量和“徒弟”的訓練數據量,對于不同噪聲干擾,PATE-T“徒弟”模型的準確率明顯比PATE-G高。當噪聲干擾較大時,PATE-G的準確率急劇下降,而PATE-T的性能則相對穩(wěn)定,因此,當n=50時,PATE-T的抗噪聲干擾能力優(yōu)于PATE-G,且準確率高于PATE-G方法。
將結論推廣到一般性,在SVHN數據集上分別進行“師父”數量為n∈{50,100,150,200,250}的5組對比實驗。在此基礎上,針對每組對比實驗,控制用于訓練“徒弟”模型的標簽查詢數量,將“徒弟”模型對“師父”集合的標簽查詢數量分別置為share∈{5 000,10 000,15 000}。進一步地,在每組標簽查詢中,控制拉普拉斯機制的尺度參數ε∈{40,20,10,5,3},分別對應于實驗中聚合機制噪聲干擾程度ε∈{0.025,0.05,0.1,0.2,0.33}。分別測試在不同“師父”數量、不同訓練數據以及不同隱私保護程度下PATE-T模型與PATE-G模型的“徒弟”預測準確率,如圖7所示。同理,在MNIST數據集上設置相同的實驗,唯一改變的是標簽查詢數量share∈{3 000,5 000}。本文在SVHN數據集上共進行150組對比實驗,在MNIST數據集上進行100組對比實驗。實驗證明,PATE-T模型的分類精度高于PATE-G模型的分類精度。
圖5 不同噪聲干擾ε對PATE-T,PATE-G的影響(SVHN數據集,share=10 000)Fig.5 Effect of different noise interferenceεonPATE-T,PATE-G on SVHN dataset whenshare=10 000
圖6 不同噪聲干擾ε對PATE-T,PATE-G的影響(MNIST數據集,share=5 000)Fig.6 Effect of different noise interferenceεonPATE-T,PATE-G on MNIST dataset whenshare=5 000
圖7 PATE-T與PATE-G對比(SVHN數據集)Fig.7 Comparison between PATET and PATE-G on SVHN dataset
表1列出了所提供的ε值與對應“徒弟”的精確度,“徒弟”對“師父”集合標簽查詢數量,以及最好的非隱私模型的精確度,相應PATE-G模型精確度。噪聲干擾ε=0.2,針對MNIST數據集,“徒弟”可以得到98.46%分類精度,與4.1節(jié)介紹的非隱私模型精確度相比只有0.72%的差距,相同條件下PATE-G的分類精度只有94.66%;針對SVHN數據集,當share=15 000時,“徒弟”的準確率為90.73%,并且與4.1節(jié)介紹的非隱私模型效果相當,相應的隱私約束ε=0.33,在相同的條件下,PATE-G的測試精確度只有88.00%。
表1 PATE-T模型隱私與實用Tab.1 Utility and privacy of the PATE-T model
針對敏感訓練數據的隱私保護問題,本文提出了PATE-T模型。該方法把不相交數據訓練的“師父”模型進行知識聚合并遷移學習到屬性可以被公開的“徒弟”模型,“徒弟”能夠替代“師父”回答用戶查詢。由于“徒弟”與敏感的訓練數據不在同一個數據域,能夠強有力保證訓練數據的隱私。PATE-T方法在MNIST和SVHN標準數據集精確度為98.46%和90.73%,表現(xiàn)顯著,為用戶數據提供了較好的隱私保護技術。本文提出將遷移學習運用到差分隱私保護,對訓練數據進行隱私保證,對于專家和非專家人員來說都容易解釋,具有較好的應用價值。目前,聚合多方隱私數據對于機器學習有很多運用價值,本文提出的PATE-T模型只是針對單源敏感訓練數據進行隱私保護,后期工作將會擴展到分布式敏感訓練數據隱私保護。本文的貢獻是:(1)提出一種通用的機器學習策略PATE-T方法,該方法以“黑匣子”的方式為訓練數據提供差分隱私,即“師父”模型和“徒弟”模型的訓練方法獨立于具體學習算法。(2)PATE-T保護訓練數據隱私的機器模型策略,將遷移學習與隱私保護技術相結合,極大程度地提高敏感數據的隱私保護。(3)提出一種神經網絡領域自適應技術CDA算法,基于有標記源域的統(tǒng)計特性推斷無標記目標域的類別標簽。