潘旭東 張 謐 楊 珉
(復(fù)旦大學計算機科學技術(shù)學院 上海 200438)
隨著聯(lián)邦學習(federated learning)[1-3]、協(xié)同訓(xùn)練(collaborative training)[4-5]等開放網(wǎng)絡(luò)下分布式深度學習系統(tǒng)在商業(yè)場景(如金融[6]、醫(yī)療[7]等)中的興起,深度學習模型中間計算結(jié)果(如特征、梯度等)逐漸成為服務(wù)節(jié)點、計算節(jié)點和終端設(shè)備之間的主要傳輸內(nèi)容.由于模型中間計算結(jié)果本質(zhì)上是模型與數(shù)據(jù)共同計算的產(chǎn)物,那么其中將包含大量參與計算的數(shù)據(jù)信息.然而,現(xiàn)行數(shù)據(jù)保護規(guī)范大多未限制或明確給出對深度學習模型中間結(jié)果的保護標準[8],這也給潛伏在開放網(wǎng)絡(luò)中的攻擊者或不誠實的第三方服務(wù)節(jié)點帶來可乘之機:利用新型攻擊算法,從截獲的明文的中間計算結(jié)果中,推斷原始數(shù)據(jù)中的敏感信息.例如,Pan等人[9-10]指出,當一個開放網(wǎng)絡(luò)中的攻擊者截獲通用語言模型(如Google的BERT[11]等)產(chǎn)生的深度文本編碼后,可在幾乎無先決條件的情況下,以接近100%的準確度逆向推斷原始文本中是否存在目標關(guān)鍵詞;而Melis等人[12]則發(fā)現(xiàn)攻擊者可以從模型梯度中推斷出訓(xùn)練樣本的敏感屬性信息.
本文針對分布式深度學習模型構(gòu)建過程最重要的中間計算結(jié)果——模型平均梯度(簡稱“梯度”),對其數(shù)據(jù)泄露風險開展研究.如圖1所示,在典型的分布式模型構(gòu)建過程中,多個客戶端(client)在服務(wù)器(server)的協(xié)調(diào)下,利用各自的本地數(shù)據(jù),共同參與訓(xùn)練一個全局模型[13].具體地,每一輪訓(xùn)練過程為
1)服務(wù)器下發(fā)當前版本的全局模型給各個客戶端(步驟1);
2)各客戶端接收全局模型,復(fù)制到本地模型中,并根據(jù)該模型參數(shù)在一個本地訓(xùn)練批次(mini-batch)上計算模型梯度并上傳(步驟2);
3)服務(wù)器聚合接收到的各客戶端的梯度,并更新全局模型(步驟3).
由于在聯(lián)邦學習等場景下,客戶端節(jié)點往往由用戶或商業(yè)機構(gòu)扮演,其參與訓(xùn)練的本地訓(xùn)練批次也往往包含大量敏感信息,這將誘使?jié)撛诠粽邍L試非法獲取梯度,從中推斷原始數(shù)據(jù)中的敏感信息,乃至披露原始數(shù)據(jù)本身.
本文聚焦基于平均梯度重建一個訓(xùn)練批次中各個原始數(shù)據(jù)樣本的攻擊場景,稱作數(shù)據(jù)重建攻擊(data reconstruction attack).如圖1所示,當潛在攻擊者通過中間人攻擊或偽裝成第三方服務(wù)器截獲目標人臉識別模型時,在構(gòu)建過程中無意泄露梯度信息后,數(shù)據(jù)重建攻擊能被利用于恢復(fù)原始訓(xùn)練批次中的每張隱私人臉數(shù)據(jù)及相應(yīng)標簽.由于數(shù)據(jù)重建攻擊造成的隱私泄露程度較大,Lyu等人[14]將數(shù)據(jù)重建攻擊列為開放網(wǎng)絡(luò)下分布式學習系統(tǒng)的重大安全威脅之一.
盡管此前數(shù)據(jù)重建攻擊在大型深層神經(jīng)網(wǎng)絡(luò)和小訓(xùn)練批次的情況下已取得顯著的攻擊效果[15-18],這些工作大多僅停留在攻擊方法設(shè)計和實驗驗證層面,對數(shù)據(jù)重建攻擊中下述重要實驗現(xiàn)象缺乏深層機理分析:
1)現(xiàn)有攻擊僅能恢復(fù)少量樣本組成的訓(xùn)練批次
Zhu等人[15]在實驗過程中發(fā)現(xiàn),隨著訓(xùn)練批次的增大,提出的基于優(yōu)化的攻擊過程收斂緩慢.例如,當訓(xùn)練批次大小從1增加到8,攻擊執(zhí)行時間將從270 s快速增長至2 711 s(時間開銷增加了9倍以上),仍無法保證在攻擊不同訓(xùn)練批次時均能達到收斂.而Geiping等人[17]報告當利用基于優(yōu)化的攻擊算法嘗試恢復(fù)大小為48的CIFAR-10圖像訓(xùn)練批次時,其恢復(fù)圖像中80%以上圖像會模糊且無法辨識.
2)網(wǎng)絡(luò)結(jié)構(gòu)變淺變窄弱化現(xiàn)有攻擊效果
在本文初步實驗中發(fā)現(xiàn),當目標模型神經(jīng)網(wǎng)絡(luò)層數(shù)減少為3層或?qū)訉捊档椭?00個神經(jīng)元以下,現(xiàn)有基于優(yōu)化梯度匹配目標的攻擊效果出現(xiàn)明顯下降,即在較淺的深度學習模型上已有的數(shù)據(jù)重建攻擊遠遠無法達到在大型深層網(wǎng)絡(luò)上的類似攻擊效果,并同時伴隨由于計算損失函數(shù)2階微分帶來的梯度匹配目標最小化過程的數(shù)值不穩(wěn)定的情況.近期,文獻[19]提出神經(jīng)元激活獨占性(neuron activation exclusivity),發(fā)現(xiàn)滿足特定激活獨占性條件的任意大小的訓(xùn)練數(shù)據(jù)批次能被攻擊者從訓(xùn)練梯度中像素級重建,并遠超此前工作的重建效果.然而,本文通過實證分析表明,在實際訓(xùn)練過程和設(shè)定中滿足該條件的訓(xùn)練數(shù)據(jù)批次出現(xiàn)概率較低,較難造成實際泄露威脅.
本文主要做出4個方面的貢獻:
1)對文獻[19]中提出的基于神經(jīng)元激活模式的新型數(shù)據(jù)重建攻擊算法進行了系統(tǒng)化的機理剖析和復(fù)雜度分析,并披露了更多的理論和實現(xiàn)細節(jié);
2)提出神經(jīng)元激活模式控制算法,對給定多層全連接神經(jīng)網(wǎng)絡(luò)建立線性規(guī)劃問題,從而為給定訓(xùn)練批次中的各訓(xùn)練樣本求解微小擾動,以精確滿足指定的神經(jīng)元激活模式;
3)提出特定的神經(jīng)元激活模式組合構(gòu)造方法,通過在分布式訓(xùn)練端側(cè)節(jié)點執(zhí)行上述控制算法,主動誘導(dǎo)受害者的本地訓(xùn)練批次的平均梯度滿足理論可重建性,從而有效松弛了文獻[19]提出的攻擊算法應(yīng)用條件;
4)提出并行化策略優(yōu)化了文獻[19]的重建攻擊算法的時間開銷,速度提升近10倍.在5個涵蓋智慧醫(yī)療、人臉識別等應(yīng)用場景的數(shù)據(jù)集上的實驗表明,本文提出的攻擊流程優(yōu)化方法將可重建訓(xùn)練批次大小從8張?zhí)嵘翆嶋H應(yīng)用的64張,且重建數(shù)據(jù)的均方誤差與信噪比均與原始攻擊算法持平.
1.1.1 相關(guān)記號
在過去10年里,深度神經(jīng)網(wǎng)絡(luò)(deep neural net-work, DNN)已在包括圖像、文本、音頻等的各類重要場景中得到廣泛應(yīng)用.直觀地說,深度神經(jīng)網(wǎng)絡(luò)是一種逐層計算的機器學習模型.記一個用于K分類任務(wù)的H層的深度神經(jīng)網(wǎng)絡(luò)為f(·,θ):X(?d)→Y,它通常具有如下的計算形式:
f(x;θ)=fH(σ(fH-1…σ(f1(x)))),
(1)
其中,f1,f2,…,fH表示第1到第H層神經(jīng)網(wǎng)絡(luò),通常為包括全連接層(fully-connected layer)和卷積層(convolutional layer)在內(nèi)的標準化神經(jīng)網(wǎng)絡(luò)組件,σ表示神經(jīng)網(wǎng)絡(luò)所采用的激活函數(shù),θ表示神經(jīng)網(wǎng)絡(luò)中所有可學習的參數(shù)構(gòu)成的集合.
沿著文獻[19]的設(shè)定,本文同樣以如下定義的多層全連接神經(jīng)網(wǎng)絡(luò)(multilayer fully-connected neural network)為主要的理論分析和攻擊對象:
f(x)=WH(σ(WH-1…σ(W1x+b1)+bH-1))+bH,
(2)
其中,Wi∈di×di-1,bi∈di分別表示第i個全連接層的權(quán)重(weight)矩陣和偏置(bias)向量,且滿足dH=K和d0=d,即輸入空間的維度.特別地,本文后續(xù)分析主要覆蓋式(2)中激活函數(shù)σ為ReLU(rectified linear unit)函數(shù)的深度學習模型.
1.1.2 ReLU神經(jīng)網(wǎng)絡(luò)的前向計算性質(zhì)
由于ReLU函數(shù)具有數(shù)值穩(wěn)定性好和計算效率高等優(yōu)勢,目前ReLU函數(shù)已普遍應(yīng)用于各種工業(yè)級的深度學習模型結(jié)構(gòu)(例如ResNet,Inception等核心機器視覺模型).具體地,ReLU函數(shù)定義為
(3)
從式(3)可知,ReLU函數(shù)可被視作一種二值門控單元:當所屬神經(jīng)元輸出到該ReLU函數(shù)的值a為非負數(shù),則該輸出值將被恒等地傳遞到下一層網(wǎng)絡(luò)的計算中;否則,該輸出值將被置為零.本文定義前者情形為該ReLU函數(shù)的所屬神經(jīng)元的激活態(tài);后者情形為所屬神經(jīng)元的休眠態(tài).
當整體考慮同層網(wǎng)絡(luò)結(jié)構(gòu)中包含的所有神經(jīng)元,可將1.1.1節(jié)中式(2)給出的多層全連接神經(jīng)網(wǎng)絡(luò)的形式等價轉(zhuǎn)化為
f(x)=WHDH-1(WH-1(…D1(W1x+b1)+
bH-1)+bH,
其中二值對角方陣Di∈刻畫第i層全連接網(wǎng)絡(luò)中的各個神經(jīng)元的激活狀態(tài).例如,當Di中的第j個對角元素的值為1,則表示該層中的第j個神經(jīng)元在x的輸入下激活;反之,該神經(jīng)元在x的輸入下休眠.因此,本文稱Di為輸入x在第i層的激活狀態(tài)矩陣.當輸入x在神經(jīng)網(wǎng)絡(luò)中完成一次前向傳播,收集每一層的各神經(jīng)元的激活狀態(tài)矩陣,得到該輸入在神經(jīng)網(wǎng)絡(luò)中的激活模式圖2展示了在一個大小為2的ReLU隱藏層中輸入數(shù)據(jù)x1,x2對應(yīng)的2種不同的激活模式.
1.1.3 ReLU神經(jīng)網(wǎng)絡(luò)的后向傳播性質(zhì)
由1.1.2節(jié)中ReLU函數(shù)定義可知,ReLU函數(shù)在反向傳播過程中滿足:
(4)
由式(4)可推得,激活狀態(tài)矩陣Di與求導(dǎo)算子?θ具有對易性(commutability):?θDiWi=Di?θWi,即激活狀態(tài)矩陣在反向傳播的計算中保持不變.在神經(jīng)元層面,這意味著如下的重要現(xiàn)象:反向傳播的損失函數(shù)信號僅在前向傳播激活的路徑上非零.該現(xiàn)象是理解并提升文獻[19]中提出具有理論保證的攻擊算法的核心環(huán)節(jié).
記模型訓(xùn)練過程中在樣本(x,y)上損失函數(shù)為(f(x;θ),y).在分類任務(wù)中,通常被定義為交叉熵損失函數(shù)-logpy,其中py表示概率向量(p1,p2,…,pK)中真實類標簽y對應(yīng)的概率值,而該概率向量通常為經(jīng)過softmax函數(shù)的模型輸出,有對于一個訓(xùn)練批次模型在第i層的平均梯度為
(5)
其中M表示訓(xùn)練批次的大小,在實際訓(xùn)練中通常M≥32.
在2019年,Zhu等人[15]提出了基于平均梯度的數(shù)據(jù)重建攻擊方法DLG,其演示的攻擊效果表明,DLG在已知模型參數(shù)的條件下,能從殘差神經(jīng)網(wǎng)絡(luò)ResNet的平均梯度中即可近乎無損地恢復(fù)一個大小為8的訓(xùn)練數(shù)據(jù)批次中的各個樣本.從攻擊設(shè)計上看,DLG是一種基于優(yōu)化的攻擊技術(shù),將待重建的各訓(xùn)練樣本和標簽當作可訓(xùn)練參數(shù)(trainable parameters),利用模型參數(shù)計算在這些待恢復(fù)樣本和標簽上的梯度,計算和實際梯度之間的均方誤差作為損失函數(shù)(稱作“梯度匹配目標”),損失函數(shù)具體形式為
(6)
在上述梯度匹配目標下,DLG通過反向傳播更新優(yōu)化待解的訓(xùn)練樣本和標簽,試圖恢復(fù)原始樣本.在文獻[15]提出的基于優(yōu)化的攻擊框架下,后續(xù)工作[16-18]通過改進梯度匹配過程中的損失函數(shù),如Geiping等人[17]提出了基于余弦相似度的梯度匹配目標,根據(jù)模型梯度的解析性質(zhì)預(yù)先確定部分/全部樣本的標簽,如Zhao等人[16]提出根據(jù)模型最后一層偏置向量的梯度的正負號推斷單張圖片的標簽,并引入相應(yīng)的正則化項約束恢復(fù)圖像的先驗分布,如Yin等人[18]提出了利用批正則化層均值和方差的正則化項,進一步優(yōu)化了文獻[15]的恢復(fù)效果.
然而,已有數(shù)據(jù)重建攻擊大多僅停留在攻擊方法設(shè)計和實驗驗證層面,對數(shù)據(jù)重建攻擊中重要實驗現(xiàn)象缺乏深層機理分析.直觀來看,數(shù)據(jù)重建攻擊所依賴的平均梯度包含的信息量主要受到模型大小和訓(xùn)練批次大小2個因素的影響.本文通過實驗研究發(fā)現(xiàn),已有數(shù)據(jù)重建攻擊將會隨著訓(xùn)練批次擴大或模型尺寸縮小而弱化.例如,圖3展示了在CIFAR-10訓(xùn)練集上進行訓(xùn)練的3層全連接網(wǎng)絡(luò)上應(yīng)用現(xiàn)有重建攻擊的實驗結(jié)果,其中網(wǎng)絡(luò)結(jié)構(gòu)為(3072,512,10),目標訓(xùn)練批次大小為8,攻擊實現(xiàn)均為文獻[15]給出的原始實現(xiàn).可以看到,現(xiàn)有攻擊算法均在攻擊小型神經(jīng)網(wǎng)絡(luò)模型時存在瓶頸,導(dǎo)致圖像重建效果顯著下降.
現(xiàn)有攻擊算法的瓶頸主要由于,DLG以及后續(xù)基于優(yōu)化的數(shù)據(jù)重建均依賴優(yōu)化算法迭代求解能滿足真實平均梯度的訓(xùn)練批次.該過程并未設(shè)法分析各個訓(xùn)練樣本從平均梯度中的可分離性,也未能化簡神經(jīng)網(wǎng)絡(luò)的非線性,導(dǎo)致這類方法所需求解的梯度匹配優(yōu)化目標具有很高的復(fù)雜性,優(yōu)化過程很容易產(chǎn)生數(shù)值不穩(wěn)定或陷入局部最優(yōu)解.本文提出的攻擊算法則通過將數(shù)據(jù)重建問題歸約為訓(xùn)練批次中個體樣本的激活模式差異,實現(xiàn)具有理論保證的數(shù)據(jù)重建攻擊.
由于梯度信息在開放網(wǎng)絡(luò)下的分布式學習系統(tǒng)中易被攻擊者獲取,近年來已有一些研究工作開始著眼于梯度信息可能造成的用戶敏感數(shù)據(jù)泄露問題.例如,Melis等人[12]發(fā)現(xiàn),攻擊者能通過模型梯度推斷訓(xùn)練集樣本是否包含特定的屬性(例如,人臉樣本是否佩戴眼鏡).Hitaj等人[20]則利用分布式訓(xùn)練過程中傳輸?shù)奶荻刃畔⒂?xùn)練生成對抗式網(wǎng)絡(luò)(generative adversarial nets,GAN),從而推斷端側(cè)節(jié)點私有數(shù)據(jù)集中每一類樣本的類平均(例如,平均臉).Nasr等人[21]則根據(jù)梯度信息進行成員推理攻擊(membership inference attack),即推斷給定目標樣本是否屬于用戶的私有訓(xùn)練集.除文獻[12,20-21]所述的這些利用梯度信息威脅訓(xùn)練樣本私密性的研究進展,研究者也已嘗試其他不同的信息泄露源實現(xiàn)隱私數(shù)據(jù)竊取.Ganju等人[22]和Carlini等人[23]提出利用模型參數(shù)推斷訓(xùn)練集的全局隱私屬性(例如,特定類樣本占比).Fredrikson等人[24-25]和Pan等人[9-10]則利用數(shù)據(jù)深層表征分別重建類平均和推斷對應(yīng)樣本的隱私屬性,而Shokri等人[26]則提出利用模型可解釋性輸出結(jié)果,包括影響函數(shù)(influence function)等,進行成員推理攻擊.不同于對全局數(shù)據(jù)集特征、個體數(shù)據(jù)的敏感屬性或成員屬性等進行推斷,本文關(guān)注的數(shù)據(jù)重建攻擊作為一種更具威脅性的深度學習數(shù)據(jù)隱私攻擊,以直接恢復(fù)個體樣本中盡可能多的原始數(shù)據(jù)為目標,造成更為嚴重的隱私泄露風險.與此同時,由于在相同或更弱的攻擊假設(shè)下,數(shù)據(jù)重建攻擊需要從幾乎相同的信息源中破解更多的信息,因而帶來了額外的技術(shù)挑戰(zhàn).
對于深度學習數(shù)據(jù)隱私的研究也不僅局限于訓(xùn)練集隱私,此前研究工作也已揭示了深度學習模型在測試時數(shù)據(jù)成員信息[27]、模型參數(shù)[28]、訓(xùn)練超參[29]、模型結(jié)構(gòu)[30]以及模型功能[31]等層面的威脅.
本節(jié)介紹了如何通過操控神經(jīng)元激活模式主動滿足獨占性條件,以提升現(xiàn)有數(shù)據(jù)重建攻擊的可重建訓(xùn)練批次大小和攻擊效果,并介紹相應(yīng)的系統(tǒng)層優(yōu)化技術(shù)提升現(xiàn)有數(shù)據(jù)重建的攻擊效率.首先給出本文所基于的威脅場景與攻擊假設(shè).
2.1.1 威脅場景
2.1.2 攻擊假設(shè)
具體地,本文假定攻擊者擁有3方面的能力:
1)假設(shè)A.攻擊者獲得了目標訓(xùn)練批次上的明文平均梯度.
2)假設(shè)B.攻擊者已知本地計算節(jié)點上的模型結(jié)構(gòu)和參數(shù).
3)假設(shè)C.攻擊者能修改本地計算節(jié)點上的數(shù)據(jù)預(yù)處理算法.
假設(shè)A主要為攻擊者準備了相應(yīng)的攻擊信道,即本地節(jié)點向服務(wù)器提交的平均梯度信息被攻擊者獲得.對于半誠實的服務(wù)提供方而言,滿足假設(shè)A是簡單的;而對于進行網(wǎng)絡(luò)嗅探的中間人攻擊而言,也可利用傳輸層漏洞等對網(wǎng)絡(luò)包進行破解以獲得明文平均梯度.假設(shè)B為攻擊者分析平均梯度提供了基礎(chǔ),這是因為平均梯度正是在當前模型參數(shù)和模型結(jié)構(gòu)上通過損失函數(shù)的反向傳播而產(chǎn)生的,因而不論是類似于文獻[15-18]中基于梯度匹配目標的數(shù)據(jù)重建攻擊,還是文獻[19]中基于獨占性分析和線性方程求解的攻擊算法,都需要依賴于模型參數(shù)和結(jié)構(gòu)建立優(yōu)化問題或目標方程組.假設(shè)B在實際中是合理的:在引言部分介紹的典型分布式深度學習系統(tǒng)協(xié)議下,各個參與節(jié)點和服務(wù)提供方均共享同樣的模型結(jié)構(gòu),并在每輪的參數(shù)聚合、分發(fā)和同步的過程中,無論是作為服務(wù)提供方或者偽裝成另一個參與訓(xùn)練的嗅探方,攻擊者都能同步并獲得目標訓(xùn)練批次所屬的計算節(jié)點上的模型參數(shù)和結(jié)構(gòu).假設(shè)C為本文首次在數(shù)據(jù)重建攻擊場景中引入,此前主要出現(xiàn)在針對分布式深度學習系統(tǒng)的屬性推斷攻擊中[12].假設(shè)C的合理性在于,在現(xiàn)行的工業(yè)級分布式學習框架中(例如Tensorflow-Federated[32],PySyft[33]等),服務(wù)器在訓(xùn)練開始時,往往需要給端側(cè)節(jié)點推送訓(xùn)練代碼.因此一個半誠實的服務(wù)器即使在無法訪問端側(cè)節(jié)點本地數(shù)據(jù)的情況下,也可以給目標工作節(jié)點注入相應(yīng)的惡意預(yù)訓(xùn)練處理算法.而由于深度學習訓(xùn)練流程往往涉及多種調(diào)參技術(shù),實現(xiàn)邏輯較為復(fù)雜,也易于在不被用戶察覺的情況下被攻擊者操縱[34].
2.2.1 神經(jīng)元激活獨占性
(7)
不同于此前基于優(yōu)化的攻擊算法,本文及文獻[19]提出的數(shù)據(jù)重建攻擊并非是經(jīng)驗性的攻擊算法,而是將模型平均梯度能夠泄露訓(xùn)練批次中的每個個體訓(xùn)練數(shù)據(jù)歸結(jié)為訓(xùn)練批次中個體數(shù)據(jù)的神經(jīng)元激活模式的獨占性.從原理層面看,神經(jīng)元獨占性代表了平均梯度中個體樣本的可分離性,即在前向和后向計算過程中,該訓(xùn)練批次中的樣本單獨占有至少一條或多條計算路徑.2.2.2節(jié)表明,這類獨有的計算路徑的存在性保障了攻擊者可在具有理論保證的精度誤差下重建訓(xùn)練批次中的每個樣本.
2.2.2 充分獨占性條件下的重建算法
文獻[19]基于獨占性的概念,發(fā)現(xiàn)一種充分獨占性條件(sufficient exclusivity condition):1個訓(xùn)練批次中的每個樣本在多層全連接網(wǎng)絡(luò)最后1個ReLU層都具有至少2個ExAN,而在其余層擁有至少1個ExAN.在充分獨占性條件下,該工作構(gòu)造攻擊算法證明這樣的訓(xùn)練批次中的每個樣本可被幾乎無損地從平均梯度中重建.歸納來看,Pan等人[19]構(gòu)造的攻擊算法主要由3個關(guān)鍵步驟組成.
1)推斷樣本標簽和概率向量.根據(jù)最后1層的平均梯度信息,攻擊算法通過對最后1層權(quán)重的梯度矩陣(即GH∈K×dH-1)進行逐行的求比值操作,尋找每1行中具有重復(fù)值的位置.根據(jù)充分獨占性條件中對于最后1層的假設(shè),可證明具有重復(fù)值的位置索引對應(yīng)的神經(jīng)元為訓(xùn)練批次中某一樣本的獨占神經(jīng)元,且當行索引中不包含該樣本的真實標簽對應(yīng)的索引時,該重復(fù)值為其概率向量中對應(yīng)類別概率之間的比值,因此恒為正值;否則,當分子(分母)行索引對應(yīng)該樣本的真實標簽時,該重復(fù)值對應(yīng)的分式中分子(分母)為對應(yīng)概率減1,分母(分子)為相應(yīng)的概率值,因此恒為負值.利用上述性質(zhì),攻擊者可利用比值關(guān)系和概率歸一化條件求解對應(yīng)樣本的概率向量,并通過對應(yīng)重復(fù)值的正負性確定樣本的標簽.
2)推斷各樣本的激活模式.在步驟1)中攻擊者求解得到最后一層中每個訓(xùn)練樣本對應(yīng)的ExAN,于是,利用在本文1.1.3節(jié)中介紹的ReLU神經(jīng)網(wǎng)絡(luò)后向傳播的重要性質(zhì),即“后向傳播的損失函數(shù)信號僅在前向傳播激活的路徑上非零”,可根據(jù)每個樣本對應(yīng)的最后一層獨占神經(jīng)元連接前層的參數(shù)梯度是否為0,確定前一層中相應(yīng)的獨占神經(jīng)元.根據(jù)充分獨占性條件中假設(shè)的其余層擁有至少1個ExAN,上述過程可遞推地求得每個樣本在各個ReLU層上的激活模式.
(8)
其中,Pjk表示經(jīng)過權(quán)重[W1]jk的所有路徑端點的集合,c為輸出層神經(jīng)元的索引,i為符號化輸入的索引,xm=(xm1,xm2,…,xmd).
2.2.3 充分獨占性條件的嚴格性
從2.2.2節(jié)中充分獨占性條件的表述可知,該條件直觀上對于訓(xùn)練批次的要求較為嚴格,因而實際該重建攻擊的應(yīng)用面有限.為了進一步驗證上述觀點,本文統(tǒng)計了在CIFAR-10數(shù)據(jù)集上不同訓(xùn)練批次大小和不同隱藏層寬度的3層全連接網(wǎng)絡(luò)中滿足充分獨占性條件的訓(xùn)練批次占比,相應(yīng)結(jié)果在圖5中展示.
從圖5中可以看到,一方面,隨著訓(xùn)練批次大小M從2擴大到10,能滿足充分獨占性條件的批次比例從原來的接近100%快速衰減到不超過1%,如圖5(a)所示;另一方面,當固定訓(xùn)練批次的大小為8,隨著3層全連接網(wǎng)絡(luò)中的隱藏層寬度從700個神經(jīng)元縮小至300個神經(jīng)元,能滿足充分獨占性條件的批次比例也從6%下降到不足1%.該實驗現(xiàn)象表明,對于實際應(yīng)用中的訓(xùn)練批次大小(如32,64等),一個訓(xùn)練批次滿足充分獨占性條件的概率非常低.因此,盡管Pan等人[19]提出的新型攻擊算法對滿足充分獨占性條件的訓(xùn)練批次具有幾乎無損的重建效果,該攻擊在重建實際大小的訓(xùn)練批次時同樣面臨問題:一旦不滿足充分獨占性條件,2.2.2節(jié)中介紹的重建算法幾乎無法執(zhí)行.更一般地,圖5展示的現(xiàn)象也為此前基于優(yōu)化的數(shù)據(jù)重建攻擊對大模型和小訓(xùn)練批次的強依賴提供了一種合理的解釋:模型尺寸的縮小和訓(xùn)練批次的擴大均會導(dǎo)致批次滿足充分獨占性條件的概率降低,即同一批次中數(shù)據(jù)的獨占性減弱,從而難以從平均化的梯度信息中分離.
2.3.1 算法概述
為擴大2.2節(jié)中具有理論保證的數(shù)據(jù)重建算法的應(yīng)用范圍,同時松弛其對于訓(xùn)練批次的嚴格假設(shè),2.3~2.4節(jié)進一步提出利用攻擊者能夠操控端側(cè)節(jié)點的訓(xùn)練數(shù)據(jù)預(yù)處理算法這一環(huán)節(jié),為一個本不滿足充分獨占性條件的訓(xùn)練批次生成微小的像素層面擾動,誘使該擾動后的訓(xùn)練批次滿足充分獨占性條件,從而結(jié)合2.2節(jié)的攻擊算法,從平均梯度中對該訓(xùn)練批次的擾動版本實施破解.由于添加的擾動較小,攻擊者因而仍能從重建的擾動數(shù)據(jù)中獲得端側(cè)節(jié)點的隱私信息.本節(jié)首先介紹作為本文提出攻擊方法核心模塊的算法SOW(Sleep-Or-Wake),即一種基于線性規(guī)劃的神經(jīng)元激活模式控制算法.
如圖6所示,當攻擊者指定當前訓(xùn)練樣本x(例如,圖6上部的實線樣本)所需的神經(jīng)元激活模式(例如,第1個隱藏層的激活模式為(0,1,0,0,1)),SOW算法會相應(yīng)地建立線性規(guī)劃問題,求解擾動規(guī)模最小的像素層面擾動Δ,使得擾動后樣本x+Δ在網(wǎng)絡(luò)前向傳播過程中的確呈現(xiàn)指定的激活模式.具體地,本節(jié)后續(xù)將分別介紹單層激活模式控制和多層激活模式控制2部分.
2.3.2 單層激活模式控制
(9)
(10)
(11)
至此,本節(jié)已將約束集合中的各個約束轉(zhuǎn)化為標準線性規(guī)劃問題中關(guān)于自變量Δ的線性不等式形式.最后,本節(jié)將繼續(xù)對目標函數(shù)中的絕對值形式進行松弛變換,以適配標準線性規(guī)劃問題形式.
為此,參考文獻[35],本文引入額外非負變量組Δabs∈[0,1]d和額外約束條件:
-Δabs?Δ?Δabs,
(12)
綜上所述,下面給出SOW算法在控制單層神經(jīng)元激活模式情形下構(gòu)建的線性規(guī)劃問題:
(13)
(14)
x+Δ∈[-1,1]d,-Δabs?Δ?Δabs.
(15)
在3.1節(jié)中,本文將通過實驗驗證上述松弛策略的有效性.
2.3.3 多層激活模式控制
在2.3.2節(jié)中構(gòu)造的單層激活模式控制算法的基礎(chǔ)上,本節(jié)進一步提出多層激活模式控制算法,從而能用于有效控制單張樣本在多層全連接網(wǎng)絡(luò)中每個ReLU層的激活模式,從而便于滿足后續(xù)攻擊所需的充分獨占性條件.
從宏觀上看,激活模式控制的關(guān)鍵在于約束每一個被指定激活狀態(tài)的神經(jīng)元的激活前輸出值.因此,借鑒2.2.2節(jié)中所述的建立線性梯度方程的方法,本文提出將輸入樣本x+Δ符號化,從神經(jīng)網(wǎng)絡(luò)模型的輸入層開始逐層向后傳播.當傳播路徑上數(shù)據(jù)流遇到ReLU函數(shù)單元,則根據(jù)攻擊者指定的0/1激活狀態(tài),收集相應(yīng)的線性不等式約束.具體地,若當前ReLU函數(shù)單元的輸入表達式為a,指定的激活狀態(tài)為α∈{0,1},則收集的線性不等式約束為(2α-1)a≥ε.同時,若指定激活狀態(tài)為1,則將輸入表達式恒等地向下一層計算單元傳遞;否則,若指定激活狀態(tài)為0,則向下一層計算單元傳遞0.執(zhí)行上述步驟至完成最后一個ReLU層的不等式收集,攻擊者可類似2.3.2節(jié)中建立關(guān)于輸入擾動Δ的規(guī)劃問題.最后,通過引入非負變量組Δabs∈[0,1]d和額外約束條件,可將多層激活模式控制問題轉(zhuǎn)化為標準線性規(guī)劃問題.在實現(xiàn)中,本文選用開源線性規(guī)劃求解器PuLP[36]建立線性規(guī)劃問題和進行求解.
2.4.1 攻擊部署模式
當利用SOW算法對給定樣本生成微小擾動以操控該樣本在目標網(wǎng)絡(luò)中的神經(jīng)元激活模式后,攻擊者將實施3個攻擊部署:
1)替換端側(cè)數(shù)據(jù)預(yù)處理模塊.首先,攻擊者在其目標的端側(cè)節(jié)點的訓(xùn)練過程中添加額外的SOW算法模塊.具體地,該模塊位于訓(xùn)練批次進入神經(jīng)網(wǎng)絡(luò)模型計算之前.
2)構(gòu)造充分獨占性的激活模式組合.SOW模塊將自動構(gòu)造滿足充分獨占性條件的激活模式集合.例如,在圖6中,原本實線框樣本和虛線框樣本在最后1個ReLU層的激活模式分別為(0,1,1,0,1)和(0,1,1,1,1),不滿足充分獨占性條件中對于各樣本均包含至少2個ExAN的要求.為此,該步驟將根據(jù)各正常樣本的初始激活模式,構(gòu)造修改神經(jīng)元激活狀態(tài)個數(shù)最少且滿足充分獨占性的激活模式集合.仍以圖6為例,相應(yīng)的激活模式為(0,1,0,0,1),(0,0,1,1,0).
3)執(zhí)行SOW算法添加樣本擾動.在這一步中,攻擊者指定上一步中構(gòu)造的激活模式,為訓(xùn)練批次中的每個樣本執(zhí)行SOW算法,尋找最優(yōu)擾動以滿足激活模式約束.隨后,這些帶擾動的樣本將進入神經(jīng)網(wǎng)絡(luò)模塊執(zhí)行正常前向計算流程,產(chǎn)生平均損失值,反向傳播獲得平均梯度,最后提交至分布式訓(xùn)練服務(wù)提供方.
借助上述3個攻擊部署,傳輸?shù)钠骄荻却_保滿足充分獨占性條件,因而可被攻擊者應(yīng)用文獻[19]的重建算法進行無損重建,恢復(fù)帶擾動的私有訓(xùn)練樣本.在實驗中,本文將一并衡量重建樣本和原始訓(xùn)練批次樣本與帶擾動的訓(xùn)練批次樣本之間的誤差,以評估本文提出的攻擊部署造成的隱私泄露程度.
2.4.2 獨占激活模式構(gòu)造方式
2.6.1 數(shù)據(jù)集簡介
1)CIFAR-10[37].該數(shù)據(jù)集包含了60 000張來自10個不同類別(如狗、貓等)的日常事物圖像,由Krizhevsky于2009年提出,被廣泛應(yīng)用于圖像相關(guān)的深度學習研究.其中,每張圖像均包含RGB通道,分辨率為32×32.
2)MedMNIST數(shù)據(jù)庫[38].MedMNIST數(shù)據(jù)庫包含了視網(wǎng)膜、皮膚腫瘤、組織切片等10余類醫(yī)療影像數(shù)據(jù),由Yang等人于2014年從多家公開醫(yī)療數(shù)據(jù)庫中分類收集,主要用于醫(yī)療智能診斷算法的評估.其中,不同類型的圖像可能為灰度或RGB通道,分辨率統(tǒng)一為28×28.本文實驗包含該數(shù)據(jù)庫中的視網(wǎng)膜(RetinaMNIST)、皮膚腫瘤(DermaMNIST)、組織切片(OrganMNIST)數(shù)據(jù)集.
3)Facescrub數(shù)據(jù)集[39].Facescrub數(shù)據(jù)集包含530位男性和女性知名人物來自互聯(lián)網(wǎng)的公開照片,共計10萬以上.該數(shù)據(jù)集主要用于人臉識別模型的訓(xùn)練與評估.本文實驗對Facescrub數(shù)據(jù)集降采樣為20類分類任務(wù),圖像均包含RGB通道,像素大小縮放為32×32.
2.6.2 模型選取
為保持與文獻[19]中原始實驗設(shè)置相同,本文選取受害者的神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)為(d,512,512,K)的4層全連接神經(jīng)網(wǎng)絡(luò),其中d為輸入圖像的標量維度,K為類個數(shù),該模型中包含2層神經(jīng)元數(shù)目為512的隱藏層.
2.6.3 評估指標
(16)
特別地,PSNR能較好地反映重建圖像的清晰程度,當PSNR≥20,則重建圖像與真實圖像在肉眼上幾乎不存在差異[19].實驗結(jié)果將以匯報數(shù)據(jù)重建攻擊在目標訓(xùn)練批次上的平均重建信噪比為主,輔以可視化結(jié)果.
2)標簽重建準確度(LAcc).此外,本文衡量重建樣本和訓(xùn)練樣本的標簽一致性.具體地,定義數(shù)據(jù)重建算法的標簽重建準確度為
(17)
本節(jié)首先給出基于2.3節(jié)的神經(jīng)元控制算法的激活模式控制準確度,并給出相應(yīng)的平均圖像擾動大小和可視化結(jié)果;隨后給出激活模式控制下恢復(fù)實際大小訓(xùn)練批次樣本時的重建效果,并給出可視化;最后給出經(jīng)過優(yōu)化前后的數(shù)據(jù)重建攻擊的時間和空間開銷對比.
如表1所示,在5個圖像數(shù)據(jù)集上,本文提出的神經(jīng)元激活模式控制算法能夠精確地操控數(shù)據(jù)樣本在目標神經(jīng)網(wǎng)絡(luò)中的激活模式,在2個隱藏層上,擾動后樣本的激活模式和指定的激活模式完全一致(即BER指標為0%,每個激活狀態(tài)均匹配),這得益于本文將激活模式的控制問題轉(zhuǎn)化為具有嚴格性的線性規(guī)劃問題,因此得以精確求解.同時,由于在激活模式控制過程中,原始樣本上所添加的擾動大小為線性規(guī)劃問題的最小化目標,因此在完成激活模式控制的同時,擾動前后樣本間的平均像素差異也被控制得較小.例如,在Facescrub上,均方誤差(MSE)僅為0.006 3.為了提供給讀者更為直觀的體會,圖7展示了在Facescrub數(shù)據(jù)集上擾動前后的訓(xùn)練批次中隨機采樣的4組對應(yīng)樣本.可以看到,本文的激活模式控制算法為每張樣本添加散點狀的微小擾動,不影響辨別原圖所包含的人像,這也保證了后續(xù)通過從平均梯度中像素級重建擾動后樣本,能實現(xiàn)對于原始訓(xùn)練樣本的隱私竊取.
Table 1 Bit Error Rate of the Neuron Activation Pattern of the Perturbed Data Samples
基于3.1節(jié)介紹的激活模式控制結(jié)果,本節(jié)進一步結(jié)合經(jīng)優(yōu)化后的文獻[19]提出的攻擊算法,對于擾動后的訓(xùn)練批次所計算產(chǎn)生的平均訓(xùn)練梯度進行數(shù)據(jù)重建攻擊.具體地,本節(jié)同樣設(shè)置訓(xùn)練批次大小M=64,先經(jīng)過激活模式控制算法將訓(xùn)練批次擾動至滿足充分獨占性條件.在實際場景中,這些經(jīng)由惡意預(yù)處理的樣本將進入目標神經(jīng)網(wǎng)絡(luò)的學習過程,產(chǎn)生平均梯度并提交給服務(wù)器.通過截獲該平均梯度,以文獻[19]中同樣的最優(yōu)參數(shù)破解該梯度信息,獲得重建后訓(xùn)練批次.本節(jié)以重建信噪比和標簽重建準確度為評價指標,衡量重建后訓(xùn)練批次與擾動后訓(xùn)練批次(代表重建算法性能),以及與原始訓(xùn)練批次間的差異(代表實際隱私泄露程度).同時,對比基于優(yōu)化的數(shù)據(jù)重建算法Inverting[17].需要注意的是,由于文獻[19]的攻擊算法在目標訓(xùn)練批次不滿足充分獨占性條件的情況而無法執(zhí)行,因此不作為本節(jié)的基準方法進行對比實驗.
從表2可知,首先激活模式控制算法使得文獻[19]提出的數(shù)據(jù)重建算法得以重新應(yīng)用于大小為64的實際訓(xùn)練批次,這是因為根據(jù)實驗中間結(jié)果(如圖5所示),這些原始訓(xùn)練批次均不滿足該算法所要求的充分獨占性條件,因此該數(shù)據(jù)重建算法將由于無法從最后1層的梯度信息中推斷各個樣本的獨占神經(jīng)元、概率向量和標簽信息,從而導(dǎo)致后續(xù)重建步驟無法執(zhí)行.相比之下,利用本文提出的激活模式控制算法,重建算法能有效破解包含64張圖片的擾動后訓(xùn)練批次,得到與實際擾動后樣本幾乎無差異的重建結(jié)果.例如,在DermaMNIST皮膚病數(shù)據(jù)集上,64張重建后的圖像與真實擾動后的訓(xùn)練樣本的平均重建信噪比高達48.11(>20),意味著像素級重建.同時,表2中還進一步衡量了重建后樣本與原始訓(xùn)練批次中的真實圖片之間的差異,可以看到各個數(shù)據(jù)集上相應(yīng)的PSNR也達到18以上,相較于此前基于優(yōu)化的數(shù)據(jù)重建方法提升近1~4倍不等.這意味著,盡管激活模式控制算法為原始數(shù)據(jù)樣本添加了微小擾動以使得文獻[19]的重建算法得以應(yīng)用,這樣的代價是合理且具有實際意義的:一方面,重建的擾動后樣本仍相比Inverting方法在真實梯度上的重建結(jié)果更接近原始數(shù)據(jù);另一方面,這些擾動并不影響攻擊者辨認私密數(shù)據(jù)中所包含的隱私信息(圖7).為進一步直觀地體現(xiàn)本文的攻擊效果,圖8展示了在Facescrub數(shù)據(jù)集上重建訓(xùn)練批次中隨機采樣的8張對應(yīng)樣本,并給出了相應(yīng)的擾動后和原始的真實樣本,從可視化的角度佐證了上述的分析和量化實驗結(jié)果.
Table 2 Performance of Data Reconstruction Attacks Under Activation Pattern Manipulation
本節(jié)對比同時開啟網(wǎng)絡(luò)預(yù)熱機制和并行化策略前后的數(shù)據(jù)重建算法運行效率.具體地,本節(jié)將以重建時間開銷和內(nèi)存開銷作為衡量攻擊效率的2個方面.本文的實驗環(huán)境為1臺安裝Ubuntu 18.04操作系統(tǒng)的Linux服務(wù)器,CPU型號為AMD Ryzen Threadripper 2990WX(32線程),并配有2張NVIDIA GTX RTX2080顯卡.以CIFAR-10數(shù)據(jù)集為例,本節(jié)將重建樣本數(shù)從8張不斷翻倍擴大至64張,在相同環(huán)境中分別重復(fù)運行重建算法10次,用Python time模塊和memory_profiler模塊監(jiān)測優(yōu)化前后算法的運行過程時間開銷和空間開銷.優(yōu)化后的重建算法線程池大小設(shè)置為32.特別地,表2和圖8的重建結(jié)果均為并行化優(yōu)化后的實驗結(jié)果,從實驗層面證明了并行化策略的正確性.
圖9對比了優(yōu)化前后重建算法隨著所需重建的訓(xùn)練批次擴大的時間開銷和空間開銷的增長情況.可以看到,本文優(yōu)化后的數(shù)據(jù)重建攻擊算法較先前在攻擊所需時間開銷層面具有顯著降低,而空間開銷維持相對接近.例如,當訓(xùn)練批次大小為64時,在僅增長約10%的內(nèi)存空間開銷的代價下,優(yōu)化后的數(shù)據(jù)重建攻擊的時間開銷相較原始實現(xiàn)降低近90%.同時,隨著訓(xùn)練批次的大小增加,得益于本文所實現(xiàn)的并行化策略,優(yōu)化后算法的時間開銷的增速遠小于優(yōu)化前算法,接近次線性增長.這也意味著,在同樣的攻擊時長下,本文優(yōu)化后的數(shù)據(jù)重建攻擊能破解更多的訓(xùn)練樣本,因而造成更大的實際隱私風險.
聯(lián)邦學習、共享學習等新型分布式訓(xùn)練算法的出現(xiàn),使得訓(xùn)練梯度、深度表征等模型中間計算結(jié)果成為在開放網(wǎng)絡(luò)中傳輸?shù)闹饕浇?在連接著數(shù)據(jù)孤島、溝通多個深度學習模型的訓(xùn)練過程的同時,模型中間計算結(jié)果卻無可避免地攜帶著模型、數(shù)據(jù)相關(guān)的私密信息,因此也極有可能成為中間人攻擊和半誠實服務(wù)器覬覦的對象,用于破解端側(cè)隱私數(shù)據(jù).本文所研究的數(shù)據(jù)重建攻擊,正是考慮在攻擊者截獲分布式訓(xùn)練過程中傳遞的平均訓(xùn)練梯度信息的情況下,如何從梯度中破解所涉及的訓(xùn)練批次中的每個私有樣本及其標簽的過程.本文創(chuàng)新性地提出了神經(jīng)元激活模式控制算法,添加微小數(shù)據(jù)擾動以誘導(dǎo)端側(cè)數(shù)據(jù)節(jié)點滿足可重建性完備條件,即充分獨占性條件,首次實現(xiàn)具有實際應(yīng)用場景大小的訓(xùn)練批次的重建攻擊.在實質(zhì)性地擴大了文獻[19]提出的攻擊算法的應(yīng)用范圍的同時,算法的數(shù)據(jù)重建效果與原方法持平,從而能有效實現(xiàn)對于端側(cè)隱私數(shù)據(jù)的破解.此外,本文利用網(wǎng)絡(luò)預(yù)熱和并行化策略將該重建算法的攻擊效率提升10倍以上,有效增加了在相同時間內(nèi)的數(shù)據(jù)破解效率.后續(xù)工作一方面可考慮將本文及文獻[19]所提出的方法進一步擴展至更為復(fù)雜的卷積神經(jīng)網(wǎng)絡(luò),以及具有殘差連接的現(xiàn)代神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu);另一方面,也可考慮將激活模式控制算法和神經(jīng)元獨占性分析技術(shù)應(yīng)用于其他應(yīng)用領(lǐng)域(如自然語言處理、語音識別)并結(jié)合其他攻擊場景下的已有攻擊算法(如模型竊取攻擊等),用以松弛相應(yīng)攻擊條件,從而幫助模型使用者更為準確地把握這類攻擊的實際威脅.同時,也希望后續(xù)研究者能夠加緊研究如何有效反制這類具有嚴重危害的數(shù)據(jù)重建攻擊(如通過梯度混淆、差分隱私等機制),在盡可能不影響分布式訓(xùn)練過程效能的情況下,降低乃至消除從平均梯度中恢復(fù)個體私有信息的可能性.
作者貢獻聲明:潘旭東負責思路提出、論文初稿撰寫和實驗設(shè)計;張謐和楊珉負責思路討論、實驗結(jié)果討論和論文修改.