陳晉音,吳長安,鄭海斌
(1. 浙江工業(yè)大學網(wǎng)絡空間安全研究院,浙江 杭州 310023;2. 浙江工業(yè)大學信息工程學院,浙江 杭州310023)
深度學習具有強大的特征學習能力,這為機器學習和人工智能的發(fā)展提供了巨大的機遇。因此,深度學習在眾多領域發(fā)揮了重要作用,如圖像識別[1]、生物建模[2]、疾病診斷[3]、語音識別[4]、自然語言處理[5]等。尤其在計算機視覺領域,Krizhevsky等[6]展示了卷積神經(jīng)網(wǎng)絡在大規(guī)模視覺識別系統(tǒng)[7]中的杰出性能,因此深度學習成為計算機視覺領域關注的中心。隨著深度神經(jīng)網(wǎng)絡模型的不斷改進,以及訓練復雜模型所需硬件的持續(xù)升級,深度學習得到廣泛應用,包括人臉識別[8]、自動駕駛[9]、視頻監(jiān)控[10]、惡意軟件檢測[11]、無人機和機器人控制[12]等。
隨著深度學習技術的深入應用,其中隱藏的安全問題逐漸暴露。Szegedy等[13]率先發(fā)現(xiàn)了深度神經(jīng)網(wǎng)絡在圖像分類中存在脆弱性——深度模型容易受到圖像中細小擾動的對抗攻擊,這種細小擾動對人類視覺系統(tǒng)來說幾乎是不可察覺的。處于自動駕駛模式的特斯拉汽車,被道路上特定位置的幾張貼紙欺騙,自動并入反向車道。在這種安全要求高的應用中,一旦深度模型暴露出漏洞,對乘客和行人都是災難性的后果。因此,研究深度模型存在的漏洞并提供魯棒的防御方法是關鍵。
為了發(fā)現(xiàn)深度模型中存在的安全漏洞,學者提出了一系列高效的對抗攻擊方法。根據(jù)攻擊者所能獲取模型信息的程度,對抗攻擊可分為白盒攻擊、灰盒攻擊與黑盒攻擊。其中,白盒攻擊是指攻擊者可以獲取目標模型的結(jié)構(gòu)、參數(shù)、數(shù)據(jù)集、模型攜帶防御等所有信息后展開的攻擊,如快速梯度符號法[14](FGSM,fast gradient sign method)、MI-FGSM[15]、DeepFool[16]、C&W[17]、基于生成式對抗網(wǎng)絡的大規(guī)模對抗樣本生成器[18](MAG-GAN,massive attack generator via GAN)等;灰盒攻擊是指獲取模型信息但不了解防御方法;黑盒攻擊則是在沒有任何模型信息的前提下僅通過查詢得到模型輸出的類標或?qū)眯哦?,利用?yōu)化計算或等價模型訓練等方法實現(xiàn)攻擊,如One-pixel[19]、基于零階優(yōu)化的攻擊[20(]ZOO,zeroth order optimization)、POBA-GA[21]等。白盒攻擊大多存在于實驗室的理論研究,對于現(xiàn)在流行的預訓練模型和提供API接口的商業(yè)模型,黑盒攻擊往往具有更大的威脅性[22-23]。因此,實際應用場景中,黑盒攻擊比白盒攻擊更容易操作,所以,進行黑盒攻擊防御研究更具現(xiàn)實意義。
黑盒攻擊可分為基于輸出置信度的攻擊和基于決策邊界的攻擊[24]?;跊Q策邊界的攻擊能獲取到的信息更少,攻擊操作更困難。在攻擊條件上,基于決策的攻擊需要對模型的訪問次數(shù)是基于輸出置信度攻擊方法的幾十倍,甚至上百倍,一定限度上,大量的重復性查詢?nèi)菀妆┞叮夜舫晒β氏鄬^低。已經(jīng)有的商用AI服務,包括谷歌的云服務GCE、微軟的云計算服務Azure等,它們均提供輸出類標及對應置信度,容易受到基于輸出置信度的黑盒攻擊。與此同時,針對對抗攻擊的防御方法研究如火如荼展開。根據(jù)防御實施的對象不同,可以分為數(shù)據(jù)修改的防御[25]、模型修改的防御和附加模型的防御[26]。根據(jù)防御操作是否需要對抗樣本,可以分為攻擊依賴的防御(如對抗訓練、擾動蒸餾網(wǎng)絡等),攻擊無關的防御(如蒸餾防御、數(shù)據(jù)變換等)。攻擊依賴的防御面對特定的對抗攻擊具有很好的防御效果,但當攻擊策略改變后,防御性能會受較大影響;攻擊無關的防御在防御過程中不需要對抗樣本支持,對不同攻擊制作的對抗樣本都能夠防御,防御具有一定遷移性。
已有的防御方法在防御成功率上取得了不錯的效果,但在實際應用中仍然會遇到以下問題。
1) 攻擊依賴性:防御的效果依賴于先前生成的對抗樣本,如對抗訓練,而且遇到未知的攻擊方法生成的對抗樣本,則防御成功率受較大影響。
2) 防御代價大:防御的操作大多會影響正常樣本的識別準確率,如數(shù)據(jù)變換隨機操作雖然能夠破壞對抗擾動,但也干擾了正常樣本的識別。
3) 防御成本高:一次防御通常需要重新訓練網(wǎng)絡或者添加額外的子網(wǎng)絡,增加原始模型的復雜性和冗余度,如對抗訓練和附加網(wǎng)絡防御需要占用大量的時空成本,無法實現(xiàn)輕量級的快速防御。
4) 防御滯后性:防御通常在攻擊發(fā)生后采用,面對未知攻擊,部分防御方法需要再次重新訓練,無法實現(xiàn)事前防御。
針對這些問題,本文提出了softmax激活變換(SAT,softmax activation transformation)防御,這是一種針對黑盒攻擊的輕量、快速的防御。本文方法通過對輸出概率進行重激活實現(xiàn)防御,在不同的圖片輸入目標模型時,模型輸出的概率分布基本相似,導致基于分數(shù)的黑盒攻擊無效。SAT不參與模型的訓練,僅在推理階段通過對目標模型的輸出概率進行重新激活,非常快速、輕量,解決了問題3)。SAT與攻擊類型無關,不僅避免了制作大量對抗樣本的負擔,也實現(xiàn)了攻擊的事前防御,解決了問題1)和問題4)。SAT的激活具有單調(diào)性,因此不會影響正常樣本的識別,解決了問題2)。
本文的主要貢獻包括以下4點。
1) 本文提出了一種針對黑盒攻擊的快速防御方法,通過在模型的輸出層引入softmax激活的變換保護機制,在推理階段對模型輸出進行重激活,具有可驗證、低成本的防御優(yōu)勢。
2) SAT防御方法不參與模型訓練,不依賴于事前生成的對抗樣本,對未知的黑盒攻擊仍然具有防御效果,實現(xiàn)了攻擊無關和事前防御。
3) 理論證明SAT的單調(diào)性,在實現(xiàn)對抗防御的同時不影響目標模型對正常樣本的識別準確率,實現(xiàn)了防御代價最小化。
4) 本文在MNIST、CIFAR10和ImageNet數(shù)據(jù)集上進行了防御驗證,對比現(xiàn)在最優(yōu)防御方法,針對9種黑盒攻擊的防御實驗,SAT將平均攻擊成功率從87.06%降低為5.94%,達到最優(yōu)防御性能。
本節(jié)主要介紹實驗中涉及的對抗攻擊方法和對比的防御方法。
針對深度學習中存在的對抗攻擊,根據(jù)對手掌握的目標模型信息的多少,可分為白盒攻擊和黑盒攻擊,具體區(qū)別如表1所示。由表1可知,對于面向公眾的模型,研究針對黑盒攻擊的模型防御能力是有現(xiàn)實意義的。
表1 白盒攻擊和黑盒攻擊的區(qū)別Table 1 The difference between white-box and black-box attacks
黑盒攻擊分為基于分數(shù)和基于決策邊界兩種攻擊方式[24]?;诜謹?shù)的黑盒攻擊是指攻擊者能夠獲取模型輸出的概率,而在基于決策邊界的黑盒攻擊中,攻擊者只能獲取到模型輸出的類標。基于決策邊界的攻擊能獲取到的信息比基于分數(shù)的攻擊更少,攻擊操作更困難。在攻擊條件上,基于決策的攻擊需要對模型訪問的次數(shù)是基于分數(shù)的攻擊的幾十倍,甚至上百倍,大量的重復性訪問容易被目標模型所禁止,導致攻擊失敗。而且從攻擊結(jié)果上看,即使訪問次數(shù)不受模型限制,基于決策邊界的攻擊成功率仍然遠低于基于分數(shù)的黑盒攻擊,所以研究基于分數(shù)的黑盒攻擊更具有意義。
基于分數(shù)的黑盒攻擊可以分為梯度估計、模型等價、概率優(yōu)化3種,以下一一闡述。
基于梯度估計的黑盒攻擊:通過觀察細微改變輸入后分類概率的差異,利用零階優(yōu)化法直接估算出模型的梯度,然后沿著梯度方向優(yōu)化輸入,得到對抗樣本。該方法首次體現(xiàn)在Chen等[27]提出的ZOO;Tu等[28]提出了ZOO的改進方法Auto-ZOO,利用基于自編碼的零階優(yōu)化算法大大減少了對目標模型的訪問次數(shù);Chen等[29]提出了Boundary++,通過將決策邊界攻擊Boundary[24]與ZOO相結(jié)合的方法彌補了Boundary算法中模型訪問次數(shù)過多的缺陷。
基于模型等價的黑盒攻擊:攻擊者訓練一個替代模型,該替代模型與目標模型具有相似的分類邊界,然后在等價模型上利用白盒攻擊方法生成對抗樣本,該對抗樣本在目標模型上具有類似的攻擊效果。該方法首先由Papernot等[30]提出,使用基于雅可比矩陣的數(shù)據(jù)集增強來合成一個替代訓練集。Zhang等[31]將這個想法擴展到基于EEG的BCI,不同點在于使用輸入計算的損失來合成一個新的訓練集。
基于概率優(yōu)化的黑盒攻擊:在輸入樣本上直接加隨機擾動,利用不同的優(yōu)化策略最大化非原始正確類的概率來獲取對抗樣本。典型的方法有Su等[32]提出的單像素點攻擊(one-pixel);Ilyas等[33]提出的基于自然進化策略攻擊的NES;Chen等[21]提出的基于進化計算的黑盒攻擊POBA-GA。
根據(jù)防御對象的不同,可以將防御方法分為3種:基于數(shù)據(jù)修改的防御、基于模型修改的防御和基于附加網(wǎng)絡的防御[34]。根據(jù)防御方法是否依賴于預生成的對抗樣本,可分為攻擊相關的防御和攻擊無關的防御。
攻擊相關的防御中,最為有效的是對抗訓練,對抗訓練首先由Goodfellow等[35]提出,通過將攻擊得到的對抗樣本注入訓練數(shù)據(jù)集,用來增強模型的魯棒性;Kurakin[36]和Madry等[37]提出利用非迭代的快速梯度法產(chǎn)生的樣本(如FGSM)進行對抗訓練,只會增強針對非迭代攻擊的防御魯棒性,而無法增強針對迭代攻擊,如投影梯度下降法(PGD,project gradient descent)的魯棒性。Madry等[38]提出了針對多步迭代PGD(攻擊進行對抗訓練的方法),但與之前的對抗訓練相比,K-PGD對抗訓練大約需要多出K+1倍的計算量。為解決此問題,Shafahi等[39]提出了“免費”對抗訓練。
攻擊無關的防御,是指在不知道任何先驗攻擊的情況下執(zhí)行防御操作。攻擊相關防御對特定的攻擊具有很好的防御效果,但對其他攻擊,防御效果不佳;攻擊無關防御通常對所有攻擊(已有的和未知的)都具有相似的防御效果。簡而言之,攻擊相關防御具有局限性和滯后性的缺點,而攻擊無關防御具有普適性和超前性的優(yōu)點,所以攻擊無關的防御更具有研究價值。典型的攻擊無關防御包括:Xie等[40]提出的隨機變換輸入樣本尺寸的防御;Guo等[41]通過對輸入圖像進行各種預處理操作提出了Transform防御;Strauss等[42]通過將各種深度網(wǎng)絡集成提出了Ensemble防御;Liu等[43]通過在模型各層內(nèi)注入隨機噪聲,實現(xiàn)了模型的自集成防御(RSE,random self-ensemble)。
正常情況下神經(jīng)網(wǎng)絡的前向傳播過程可以表示為f:RM→ RN,其中M表示輸入的維度,N表示輸出的維度。將樣本x∈X輸入深度模型中進行分類預測,在經(jīng)過最后一層全連接后得到一個向量Z(x,i),其中i∈{0,1,2,… ,C?1},C表示數(shù)據(jù)集的分類總數(shù),向量Z(x,i)表示輸入x被分類成第i類時的權(quán)重值,即得分情況,該向量被稱為目標模型的邏輯輸出(logits)。為了將每一類的logits值歸一化,使用softmax函數(shù)對其進行激活,得到包含各類logits值歸一化后的概率向量f(x),向量f(x)表示輸入x被分類成各類時的概率大小,概率值最大的那一類即模型分類結(jié)果。logits向量Z(x,i)通過softmax激活函數(shù)轉(zhuǎn)化為概率向量f(x)的計算方式如下。
其中,e表示自然底數(shù),x為目標模型的輸入,f(i)(x)表示輸入被分類為第i類的概率,則目標模型的輸出類標表示為y? = argmax(f(x)),其中表示x的預測類標,argmax(?)返回數(shù)值元素值最大的位置的坐標。給定x的真實標簽為y,當=y時,則預測正確,反之則預測錯誤。
在黑盒對抗攻擊中,攻擊者通常能獲取模型各類的輸出概率f(x),然后利用不斷改變的輸入樣本x,查詢模型的輸出,以達到攻擊的目的。以圖像分類任務為例,具體實現(xiàn)定義為
其中,x*表示對抗樣本,表示對抗樣本的預測類標,ρ表示可允許的對抗擾動尺寸,c表示輸入圖像的通道,w表示寬度,h表示高度,||? ||p表示計算Lp范數(shù)。當=y且≠y時,則對抗樣本攻擊成功。
本文主要考慮基于分數(shù)的黑盒攻擊。基于決策的黑盒攻擊的查詢次數(shù)遠遠高于基于分數(shù)的黑盒攻擊,且攻擊得到的對抗樣本擾動一般較大,對基于分數(shù)的黑盒攻擊實現(xiàn)防御更加具有現(xiàn)實意義?;诜謹?shù)的黑盒攻擊主要包括梯度估計、模型等價、概率優(yōu)化3種,具體介紹如下。
1) 基于梯度估計的黑盒攻擊。通過對細微修改的輸入進行重復查詢并記錄返回值的細微差異,直接估計目標模型的梯度。梯度估計公式如下。
其中,h是一個很小的常數(shù),e是標準基向量,x′表示在生成對抗樣本的迭代過程中的中間量,表示估計梯度。最終的對抗樣本為x*=x+ξ?g?(x),其中ξ表示擾動步長。
2) 基于模型等價的黑盒攻擊。攻擊者首先通過訓練一個與目標模型分類邊界相似的替代模型,表示為f′(?),進一步對替代模型進行白盒攻擊得到對抗樣本;然后利用得到的對抗樣本攻擊目標模型。替代模型和目標模型十分相似,因此能夠攻擊替代模型的對抗樣本也能攻擊目標模型。替代模型的梯度表示為
其中,x′表示在生成對抗樣本的迭代過程中的中間量,g′(?)表示替代模型f′(?)的梯度。最終的對抗樣本為x*=x+ξ?g′(x),其中ξ表示擾動步長。
3) 基于概率優(yōu)化的黑盒攻擊。攻擊者利用目標模型的輸出概率f(x)作為優(yōu)化目標,通過判定查詢前后優(yōu)化概率的大小,確定下一步的搜索方向。在限制對抗擾動尺寸的情況下,最小化目標類的輸出概率,優(yōu)化目標如下。
其中,maximize{?}表示通過優(yōu)化ρr實現(xiàn)f(?)在真實類i上的概率最小化,ρr的Lp范數(shù)受限于ρ。
本節(jié)詳細介紹基于softmax激活函數(shù)變換的對抗防御方法,包括基于概率信息隱私保護防御驗證、基于softmax激活函數(shù)變換的對抗防御方法SAT、基于可變變換系數(shù)實現(xiàn)動態(tài)防御,進一步證明SAT在保持良性樣本識別的有效性,并分析SAT的算法復雜度。
SAT防御方法的本質(zhì)是在目標模型的推理階段進行softmax激活函數(shù)變換,通過令任意樣本的任意標簽的分類概率分布接近,降低模型輸出概率信息的泄露風險。以CIFAR10數(shù)據(jù)集的分類任務,基于ResNet50結(jié)構(gòu)的目標模型為例,基于softmax激活變換的對抗防御方法SAT框架如圖1所示。防御前,模型輸出的不同類之間的概率差異十分明顯,黑盒攻擊方法能夠通過梯度估計、模型等價、概率優(yōu)化等操作實現(xiàn)對抗樣本的生成,即圖1中的“clean”樣本經(jīng)過模型輸出概率的反饋生成“adversary”。防御后,原來的輸出概率經(jīng)過SAT激活,從而對不同類之間的概率信息進行脫敏,無法反饋給黑盒攻擊方法生成對抗樣本,即攻擊失敗,實現(xiàn)對抗防御。進一步,借助t-SNE降維方法對防御前后的概率分布進行可視化,直觀地解釋了SAT針對黑盒對抗攻擊的防御有效性,是通過增加概率分布的混亂程度實現(xiàn)的。
圖1 基于softmax激活變換的對抗防御方法SAT框架 Figure 1 The framework of adversarial defense based on activation transformation
SAT不改變目標模型的訓練操作,因此具有攻擊無關、針對未知攻擊進行事前防御的優(yōu)點;SAT的激活是單調(diào)的,因此具有不影響正常樣本識別的優(yōu)點;SAT只需要修改推理階段的激活函數(shù),因此具有輕量、低成本、快速的防御優(yōu)點。下面對SAT的具體操作進行詳細介紹。
3.1.1 目標模型概率信息保護的指數(shù)機制
給定一個數(shù)據(jù)樣本x和一組可能的輸出集合Y,概率信息保護的指數(shù)機制選擇的結(jié)果滿足以下概率性質(zhì)。
其中,Y={0,1,2,… ,C?1}表示給定輸入數(shù)據(jù)樣本x在該機制中的合法輸出集合,即數(shù)據(jù)集的類標集合;i表示輸入數(shù)據(jù)樣本x的合法輸出,即樣本x的真實類標;f(i)(x)表示輸入為數(shù)據(jù)樣本x,輸出為i時的得分函數(shù),即目標模型的輸出概率;e表示自然底數(shù),ε表示隱私保護變換系數(shù);s(?,?)表示得分函數(shù)f(?)的敏感度,定義為
其中,xi,xj表示兩個不同的樣本,計算敏感度時,對數(shù)據(jù)樣本x和x′的距離條件進行松弛,{x,x′}∈X。注意,式(7)中僅用到i類,即樣本x和x′被預測為i類的概率差值,x′的真實類標是k,且k≠i。對于給定的x,x′可以是任意樣本,因此i和j是不相關的。
3.1.2 針對基于梯度估計的黑盒攻擊的防御驗證
在基于梯度的黑盒攻擊中,對式(3)進行展開,得到
根據(jù)式(6),當ε→ 0時,有
則式(3)估計梯度變?yōu)?/p>
由此可得,SAT令f(x′+he)和f(x′?he)的差異變得足夠小,此時攻擊者無法對梯度g?(x')進行估計,導致無法實現(xiàn)對抗樣本生成,能夠使這一類攻擊失效。
3.1.3 針對基于模型等價的黑盒攻擊的防御驗證
在基于模型等價的黑盒攻擊中,其本質(zhì)是利用對抗樣本在相似模型間的攻擊遷移性,因此替代模型和目標模型之間的分類邊界擬合程度直接決定了對抗樣本的黑盒攻擊效果。在替代模型的生成過程中,使用目標模型的輸出概率作為真實概率值,實現(xiàn)替代模型的輸出概率分布逼近目標模型?;诮徊骒氐膬?yōu)化目標定義為
其中,m表示樣本個數(shù),xk表示數(shù)據(jù)集中第k個樣本,log(?)表示對數(shù)函數(shù),f(i)(?)和f'(i)(?)分別表示目標模型和替代模型預測xk屬于第i類的輸出概率。最小化 LossCE,能夠?qū)崿F(xiàn)替代模型的輸出概率分布接近目標模型的輸出概率分布。
當ε→ 0時,進一步松弛樣本x和x′的距離,二者屬于不同的兩個類。為了保護輸出概率的隱私安全,輸出概率需要同時滿足以下兩個條件。
其中,i和k分別是樣本x和x′的真實類標,i,k∈Y且i≠k,則有
可得
即同一個樣本的不同類之間的輸出概率十分接近。根據(jù)式(11)對式(8)進行變換,可得 即替代模型對目標模型的輸出概率的學習是混亂的。對于屬于第i類的樣本,學習第i類的輸出概率值與學習第j類的輸出概率值是沒有差異的。
由此可得,SAT通過輸出模型概率信息保護的指數(shù)機制保護目標模型的輸出概率,使替代模型的等價過程出錯,能夠使這一類攻擊失效。
3.1.4 針對基于概率優(yōu)化的黑盒攻擊的防御驗證
假設擾動搜索函數(shù)為 Search(x, min(f(i)(x) )),表示向著最小化目標概率f(i)(x)的方向優(yōu)化,返回搜索方向dire ← Search(?,?)。根據(jù)搜索方向更新輸入樣本xj+1=xj+ dire ?ξ,其中xj和xj+1表示迭代前后的樣本,ξ表示迭代步長。
若滿足f(i)(xj+1) 為避免Search(?,?)函數(shù)找到dire,SAT使用可變的隱私保護變換系數(shù)。根據(jù)3.1.1節(jié)可得,目標模型真實類的輸出概率正比于e(ε?f(i)(x))/(2s(f,||?||))。若ε改變,則f(i)(x)改變;Search(?,?)無法知道是更改ε引起的f(i)(x)變小,還是正確的搜索方向dire引起的f(i)(x)變小。 對于任意的ε> 0,εj和εj+1分別表示第j次和第j+1次迭代使用的隱私保護變換系數(shù)。存在這樣的情況 若Search(?,?)錯誤地將此時的dire作為搜索方向,將會使攻擊向錯誤的方向優(yōu)化。 由此可得,SAT通過可變隱私保護變換系數(shù)策略,實現(xiàn)f(?)輸出的真實類的最高概率值動態(tài)變化,令黑盒攻擊向錯誤的方向搜索擾動,從而使這一類攻擊失效。 本文基于模型輸出概率信息保護的指數(shù)機制,設計在目標模型推理階段的softmax激活變換,實現(xiàn)模型輸出概率的隱私保護,達到抵御黑盒攻擊的目的,具體實施方案如下。首先,重新定義在對抗攻防中實現(xiàn)概率信息保護的指數(shù)機制。 3.2.1 基于概率信息保護的softmax激活變換 進一步設計softmax激活函數(shù)SAT,具體公式定義如下。 其中,fSAT(xi)激活函數(shù)的輸入是softmax函數(shù)的輸出,最后的預測類標為=argmax(fSAT(x))。 如圖1所示,經(jīng)過softmax函數(shù)激活后,推理樣本能夠被正確識別為“dog”類,且對應類的概率激活十分明顯,容易被黑盒攻擊利用。而使用SAT激活后,推理樣本仍然能夠被正確識別為“dog”,但對應類的概率激活趨勢十分平坦,能夠保護概率信息避免被黑盒攻擊利用。 3.2.2 攻擊無關性和防御快速性分析 攻擊無關性分析:根據(jù)防御的具體步驟可知,SAT不參與目標模型的訓練,不需要使用對抗樣本的任何信息,能夠?qū)崿F(xiàn)攻擊無關的事前防御,對用戶十分友好。 防御快速性分析:SAT在推理階段對softmax函數(shù)的輸出進行重新激活,輸入為f(x),涉及的變量包括隱私保護變換系數(shù)ε、敏感度s。在確定變量后,SAT的計算十分方便,能夠?qū)崿F(xiàn)輕量快速的防御。 3.2.3 基于局部敏感度的概率信息保護 SAT采用的是局部敏感度策略,令u=f(i)(x) ∈(1/C,1],u′=f(i)(x′)∈ [0,1],則將式(6)變換為如下形式。 其中,x′可以是X中的任意樣本,因此存在max{u′}=1,min{u′} = 0。進一步,敏感度可以表示為 得到更新后的概率條件為 使用不同敏感度策略的概率條件分布如圖2所示??梢钥闯?,隨著輸入概率u的變化,全局敏感度策略下的概率條件分布一直上升,上升斜率可以認為基本不變;而局部敏感度策略下的條件概率先上升,且上升速度比全局敏感度策略下更快,達到拐點后保持不變。相比全局敏感度,局部敏感度前半段快速上升能夠更好地進行正常樣本的識別,后半段的保持不變能夠更好地避免黑盒攻擊利用多次查詢的概率泄露問題。 圖2 不同敏感度策略的概率條件分布 Figure 2 Probability condition distribution of different sensitivity strategies 隱私保護變換系數(shù)ε衡量隱私信息的泄露程度,ε越小則隱私保護效果越好,但是也會影響原始任務的正常工作。圖3直觀地顯示了不同隱私保護變換系數(shù)下的概率分布,ε越小,概率分布越趨于平坦,信息泄露越少。 圖3 不同隱私保護變換系數(shù)下的概率條件分布 Figure 3 Probability condition distribution under different privacy protection budgets 不同隱私保護變換系數(shù)下的輸出概率趨勢如圖4所示。以CIFAR10數(shù)據(jù)集在ResNet50模型上的輸出概率保護為例,圖4展示了單張樣本在不同ε下的概率信息泄露。當ε變小,輸出概率逐漸趨于平緩,等價模型和梯度估計等黑盒攻擊方式將會失效。為了保證模型的正常工作,需要令真實類標所在位置的概率值一直保持最大,這就導致基于概率優(yōu)化的黑盒攻擊方法在足夠大量的查詢次數(shù)后,實現(xiàn)有效攻擊。 圖4 不同隱私保護變換系數(shù)下的輸出概率趨勢 Figure 4 Trend of output probabilities under different privacy protection budgets 為了令基于概率優(yōu)化的黑盒攻擊方法失效,SAT引入了可變隱私保護變換系數(shù)策略,即使用變化的ε實現(xiàn)動態(tài)的防御。直觀地,對于同一張輸入樣本,真實類的概率值在每次查詢時是變化的,如式(13)所示,錯誤的搜索方向增加了真實類的輸出概率,變化的ε降低了真實類的輸出概率,且后者的改變程度大于前者,則攻擊方法誤認為是正確的搜索方向降低了真實類的輸出概率,繼續(xù)往錯誤的方向搜索,從而使基于概率優(yōu)化的攻擊失效。 SAT雖然降低了真實類的輸出概率,但是始終保持真實類的概率高于其他類的概率,這是fSAT(?)的單調(diào)性決定的。由式(17)可知,當u≥ 0.5時,f(i)(x) ∝eε/2,此時的eε/2是一個常數(shù),因此f(i)(x)的斜率為 0。當u< 0.5時,f(i)(x)∝。此時隨著u增加,增加,單調(diào)遞增。 因此,在輸入自變量u∈ (1/C,1]的定義域內(nèi),可以認為是單調(diào)遞增的,能夠保持softmax激活中概率最大的值在SAT激活中也是最大,即不會改變原始的預測類標。因此以下結(jié)論成立:SAT在降低目標模型概率信息泄露的同時,能夠保證原始任務正常工作。 防御方法的復雜度分析包括訓練階段的復雜度和推理階段的復雜度分析。從圖1可以看出,SAT只在推理階段工作,訓練階段的時間復雜度和空間復雜度都是0。根據(jù)式(14)可知,SAT防御是在原始的推理過程中增加了一步計算,增加的存儲空間是輸入的softmax函數(shù)激活,與分類數(shù)有關。因此,在推理階段,SAT增加的空間復雜度是O( 1),增加的時間復雜度也是O( 1)。 本節(jié)首先介紹實驗的基本設置,包括軟硬件環(huán)境、數(shù)據(jù)集、模型、攻擊方法、防御方法和度量指標;之后,將本文提出的防御方法與其他方法在9種黑盒攻擊方法上進行防御效果的對比,并比較了各個防御方法的防御代價;最后,對實驗的防御有效性、參數(shù)敏感性進行了分析。 實驗硬件及軟件平臺:i7-7700K 4.20GHz x8 (CPU), TITAN Xp 12GiBx2 (GPU), 16GB x4 memory (DDR4), Ubuntu16.04 (OS), Python(3.6), tensorflow-gpu (1.12.0), keras (2.2.4), torch (0.4.1)和torchvision (0.2.1)。 數(shù)據(jù)集:實驗采用MNIST、CIFAR10和 ImageNet這3個公共數(shù)據(jù)集。其中,MNIST數(shù)據(jù)集包括60 000張訓練樣本和10 000張測試樣本,樣本大小是28×28的灰度圖像,共10類;CIFAR10數(shù)據(jù)集由50 000張訓練樣本和10 000張測試樣本組成,樣本是大小為32×32×3的彩色圖片,共10類;ImageNet數(shù)據(jù)集選取130萬張訓練樣本和5萬張測試樣本共1 000類進行實驗。 深度模型:3個數(shù)據(jù)集的默認模型均為ResNet50,等價模型均為VGG19,模型集成防御由ResNet50、AlexNet和VGG19組成。 攻擊方法:梯度估計為ZOO、Auto-ZOO和Boundary++;等價模型為基于雅克比的模型等價方法,等價模型上的白盒攻擊為FGSM、MI-FGSM和C&W;概率優(yōu)化為One-pixel、NES(PI)、POBA-GA。 防御方法:本文采取4種防御方法作為對比算法,包括對抗訓練(AdvTrain)、通道變換(Transform)、模型集成(Ensemble)和模型自集成(RSE)。 AdvTrain:在模型訓練階段,將FGSM和PGD的對抗樣本和正常樣本混合在一起作為模型的訓練集,并重新訓練得到防御模型。 Transform:在模型的訓練和推理階段,加入樣本變換的預處理操作,操作包括圖像壓縮和方差最小化操作。 Ensemble:在模型訓練和推理階段,將模型ResNet50、AlexNet和VGG19的輸出層進行集合,得到融合了3個模型的Ensemble模型。 RSE:在模型訓練和推理階段,均對模型的各層中加入隨機噪聲,擾亂模型的梯度信息。 評價指標:本文在驗證防御有效性時,采取防御超前性的方法,即對模型先防御后攻擊的形式,而非先攻擊再利用防御模型重新識別對抗樣本,前者更能表現(xiàn)防御模型在面對攻擊時的防御效果。實驗的評價指標是攻擊成功率而非防御成功率。攻擊成功率公式如下。 其中,nright表示攻擊前模型分類正確的樣本數(shù),nadv表示模型分類正確的樣本中攻擊成功的對抗樣本數(shù)。攻擊成功率越低,表示防御效果越好。 本節(jié)實驗主要分析SAT在基于梯度估計的黑盒攻擊上同其他防御方法的防御效果對比。本文在MNIST、CIFAR10和ImageNet這3個數(shù)據(jù)集上利用基于梯度估計的3種黑盒攻擊(ZOO、Auto-ZOO和Boundary++)直接對6個模型進行攻擊,模型分別為不采取防御的原始模型、AdvTrain、Transform、Ensemble和RSE。從實驗結(jié)果可知,在面對基于梯度估計的不同黑盒攻擊方法時,SAT相比其他防御方法具有更強的魯棒性。具體實驗結(jié)果如表2所示。 由表2的第二行可得,每一種攻擊方法下的括號中都對應一個數(shù)字,該數(shù)字代表每種攻擊方法在攻擊不同策略的防御模型時所允許的最大模型訪問次數(shù),如第2列中的“ZOO”對應的“(10 000)”,是指利用ZOO攻擊每一種防御模型時,最多允許訪問防御模型10 000次,超出則視為攻擊失敗。由于不同攻擊方法的攻擊性能不一致,實驗為了保證每種攻擊方法在原始模型上都具有較高的攻擊成功率,設定每一個數(shù)據(jù)集下的每一種攻擊方法都對應不同的模型訪問次數(shù),該訪問次數(shù)由對應論文中涉及的訪問次數(shù)和本次實驗中在不防御情況下攻擊成功率達到一定指標后的訪問次數(shù)共同決定?;谔荻裙烙嫷暮诤泄舻某晒β逝c允許的模型訪問次數(shù)有很大關聯(lián),通常攻擊成功率與被允許的訪問次數(shù)成正比,所以在實驗中,相同攻擊方法攻擊不同防御模型時設定一樣的訪問次數(shù),以此更加客觀真實地反映不同防御方法的防御效果。 由表2可知,僅僅利用模型輸出的概率,3個數(shù)據(jù)集下的3種攻擊方法在攻擊原始模型時,攻擊成功率都能達到80%以上,甚至在兩個小數(shù)據(jù)集上幾乎能達到100%。由此可知,不采取防御措施的原始模型在面對基于梯度估計的黑盒攻擊時是脆弱的,防御措施必不可少。在攻擊防御模型時,攻擊成功率大幅度下降,但是對抗訓練的防御效果明顯弱于其他攻擊方法,這是因為對抗訓練是攻擊相關性防御,只對特定的攻擊有很好的防御作用,其他攻擊防御效果不佳。此外,RSE的防御效果優(yōu)于一般的Ensemble防御,這是因為在RSE中不管是訓練階段還是推理階段都加了隨機擾動,具有隨機性的防御模型往往比一般的固定性防御更難被攻擊,因為攻擊過程中往往會被隨機性引到錯誤的方向,但具有隨機性的模型通常會以降低準確率為代價。由表2最后一行可得知,在大多數(shù)情況下,SAT的防御效果相比其他防御方法是最優(yōu)的。 表2 基于梯度估計的黑盒攻擊防御效果對比Table 2 Comparison of black box attack defense effects based on gradient estimation 本節(jié)實驗主要分析SAT在基于模型等價的黑盒攻擊上同其他防御方法的防御效果對比。本文通過基于雅克比的模型等價方法用VGG19模型分別擬合6組模型的分類邊界,得到對應的6個等價模型,再利用3種白盒攻擊方法(FGSM、MI-FGSM和C&W)攻擊這6個等價模型獲取不同的對抗樣本,其中FGSM是通過計算單步梯度快速生成對抗樣本的方法,在白盒環(huán)境下,通過求出模型對輸入的導數(shù),然后用符號函數(shù)得到其具體的梯度方向,接著乘以一個步長,得到的“擾動”加在原來的輸入上就得到了在FGSM攻擊下的樣本;MI-FGSM是一種基于動量迭代梯度的對抗攻擊方法,用梯度迭代擾動輸入,使損失函數(shù)最大化,提高生成的對抗性樣本的成功率;C&W攻擊是一種基于迭代優(yōu)化的低擾動對抗樣本生成方法,通過限制l∞、l2和l0范數(shù)使擾動無法被察覺。最后,利用這些對抗樣本對6個被等價的目標模型進行攻擊。從實驗結(jié)果可知,相比其他4個防御模型,SAT明顯具有更好的防御效果。具體實驗結(jié)果如表3所示。 由表3可知,在不防御的原始模型中,基于模型等價的黑盒攻擊的攻擊效果比梯度估計的攻擊效果差,這是因為模型等價攻擊依賴于對抗樣本的遷移性,即使等價模型和原模型的分類邊界幾乎一致,但其結(jié)構(gòu)以及參數(shù)上的差異性仍然會影響對抗樣本的遷移效果。通過比較不同攻擊方法的攻擊成功率,可以觀察到,MI-FGSM的對抗樣本的遷移性明顯優(yōu)于其他兩種方法,這是因為MI-FGSM利用動量迭代的方式生成對抗樣本,大大提升了對抗樣本的遷移性。此外,AdvTrain對FGSM的防御效果明顯優(yōu)于其他兩種攻擊方法,這是因為對抗訓練的訓練集中包含了FGSM在ResNet50上的對抗樣本。最后,由表3最后一行可知,SAT在等價模型上的防御效果遠優(yōu)于其他防御模型,因為SAT虛假輸出了原始模型的分類邊界,等價模型擬合的是擾亂后的邊界,并非模型真正的分類邊界,所以由該等價模型生成的對抗樣本的遷移性很弱。 表3 基于模型等價的黑盒攻擊防御效果對比Table 3 Comparison of black box attack defense effects based on model equivalence 本節(jié)實驗主要分析SAT在基于概率優(yōu)化的黑盒攻擊上同其他防御方法的防御效果對比。本節(jié)實驗的操作形式類似于4.2節(jié),只是3種攻擊方法不同,本節(jié)實驗在MNIST、CIFAR10和ImageNet這3個數(shù)據(jù)集上利用基于概率優(yōu)化的3種黑盒攻擊方法(One-pixel、NES(PI)和POBA-GA)直接對6個模型進行攻擊。同樣,表4中的每一種攻擊方法下都對應有被允許的最大模型訪問次數(shù)。從實驗結(jié)果可知,在面對基于概率優(yōu)化的不同黑盒攻擊方法時,SAT相比其他防御方法具有更強的魯棒性。具體實驗結(jié)果如表4所示。 由表4可知,除One-pixel攻擊方法外,其他兩種防御方法在原始模型上的攻擊成功率近似于4.2節(jié)中的ZOO、Auto-ZOO和Boundary++攻擊。但One-pixel的成功率遠遠低于其他兩種方法,這是因為One-pixel攻擊方法通過只改變?nèi)舾蓚€像素點(本節(jié)實驗中小于5個)來生成對抗樣本,對于224×224的ImageNet圖像,擾動值過小。過小的擾動很容易通過預處理操作被除去,所以Transform在One-pixel上的防御效果遠優(yōu)于其他兩種攻擊方法。由于RSE在防御過程中均引入隨機性擾動,因此在基于概率優(yōu)化的黑盒攻擊防御性能明顯優(yōu)于除SAT外其余防御算法,但引入的隨機擾動會對原始模型的分類準確率造成較大的負面影響。表2中RES在MNIST和ImageNet數(shù)據(jù)集中對One-pixel攻擊的防御效果相比SAT更佳,進一步驗證了RES防御帶入的隨機不確定性造成的不穩(wěn)定性,而SAT則不會有此問題。最后由表2~表4可知,SAT在這3類黑盒攻擊上的防御效果穩(wěn)定優(yōu)于其他防御方法,為本文方法的理論論證提供了實驗支撐。 表4 基于概率優(yōu)化的黑盒攻擊防御效果對比Table 4 Comparison of black box attack defense effects based on probability optimization 本節(jié)實驗主要分析SAT與其他防御方法的防御代價對比,主要比較防御后模型的原始識別準確率(ACC)、模型訓練時間(Ttrain)和模型推理時間(Ttest)。攻擊方法使用基于梯度估計的黑盒攻擊ZOO,具體結(jié)果如表5所示。防御代價包括模型精度損失代價和防御時間代價。模型精度損失通過比較防御前后的原始模型識別準確率,以表5中的ImageNet數(shù)據(jù)集為例,SAT方法的ACC沒有下降,而AdvTrain等方法的ACC下降平均超過6.5%,ACC下降越多,說明代價越大。防御時間代價通過比較防御前后的訓練時間和推理時間,以表5中的ImageNet數(shù)據(jù)集為例,SAT防御后的訓練時間和推理時間增長分別為0和0.7%,而AdvTrain等方法的訓練時間和推理時間平均增長了86%和55%,訓練和推理時間越長,說明防御代價越大。 表5 SAT與其他防御方法的防御代價對比Table 5 Comparison of defense costs between SAT and other defense methods 由表5可知,SAT與原始模型的準確率和訓練時間都相同,推理時間也相近,這是因為SAT不需要對模型進行額外的訓練,也不會改變概率最高的類標從而影響原模型的準確率,換言之,SAT因為防御效果而額外產(chǎn)生的防御代價為0。防御效果僅次于SAT的RSE,其訓練時間遠高于SAT,且在ImageNet大數(shù)據(jù)集上的準確率下降明顯。除以上兩者之外,其他3種防御方法在防御效果上不如SAT,而且防御代價明顯高于SAT。由上所述,SAT是一種快速有效的輕量級防御方法。 本節(jié)以MNIST和CIFAR10數(shù)據(jù)集為例,基于t-SNE圖對SAT防御前后的樣本分布概率進行可視化,并計算輸出概率的類間距離。理論上,經(jīng)過SAT進行重新激活后,樣本的輸出概率分布變得十分接近,直觀的體現(xiàn)是在分布圖上的樣本變得更加混亂。但是SAT的單調(diào)性保證了正常樣本的正確識別。進一步,本節(jié)使用類間距離對SAT防御前后的輸出概率的類間距離進行計算,理論上類間距離會因為SAT的操作而變得接近,令黑盒攻擊誤以為能夠以較小的代價很容易地實施攻擊,但生成的對抗樣本在目標模型中是無效的。 本節(jié)分別從MNIST和CIFAR10數(shù)據(jù)集中選取了2 000張正常樣本,輸入對應的目標模型,分別保存softmax激活后輸出的概率向量和SAT激活后輸出的概率向量;然后使用t-SNE降維方法對概率向量進行降維并繪制二維可視圖,如圖5所示??梢灾庇^地看出,經(jīng)過SAT激活后,樣本點的分布變得混亂了。同時,MNIST數(shù)據(jù)集的ResNet50模型上,類間距離由1.253降低為0.016;CIFAR10數(shù)據(jù)集的ResNet50模型上,類間距離由0.976降低為0.010。通過增加輸出概率分布的混亂程度,減少了模型概率信息的泄露,實現(xiàn)了有效的對抗防御。 圖5 不同數(shù)據(jù)集的目標模型在SAT防御前后的t-SNE分布 Figure 5 t-SNE distribution of target models of different datasets before and after SAT defense 本節(jié)主要分析動態(tài)隱私預算的變化區(qū)間對防御效果的影響。具體實驗結(jié)果如圖6所示,其中,橫坐標表示可選的動態(tài)變化區(qū)間,縱坐標表示攻擊成功率,每一個區(qū)間都展示了4.2節(jié)至4.4節(jié)中9種攻擊方法的攻擊。 由圖6可知,基于概率優(yōu)化的3種黑盒攻擊方法的攻擊成功率與區(qū)間的范圍大小有關,與區(qū)間中值的大小關系不明顯,區(qū)間的范圍越大,攻擊成功率越低,表示防御效果越好?;谔荻裙烙嫼湍P偷葍r的6種攻擊方法的攻擊成功率與區(qū)間中值的大小有關,與區(qū)間的范圍大小關系不明顯,當區(qū)間中值越小時,攻擊成功率越低,表示防御效果越好。但總體上,SAT的防御效果對區(qū)間的變化并沒有非常敏感,為了同時兼顧3類黑盒攻擊方法的防御效果,前文實驗中ε選取的區(qū)間為[0,1]。 圖6 動態(tài)隱私預算的變化區(qū)間敏感性分析 Figure 6 Sensitivity analysis chart of the change interval of dynamic privacy budget 本文提出了一種基于softmax激活變換的攻擊無關的可驗證防御方法,該方法能夠?qū)诤泄魧崿F(xiàn)快速、輕量的防御。所提方法是一種可驗證的防御方法,能夠基于概率信息隱保護和softmax激活變換推導其防御的有效性和可靠性。SAT不參與目標模型的訓練,僅在推理階段通過對目標模型的輸出概率進行重新激活,實現(xiàn)概率信息的隱私保護從而防御黑盒攻擊。SAT與對抗攻擊無關,避免了制作大量對抗樣本的負擔,實現(xiàn)了攻擊的事前防御。SAT的激活過程具有單調(diào)性,因此不會影響正常樣本的識別。本文為SAT設計了可變隱私保護變換系數(shù)策略,實現(xiàn)了動態(tài)防御。實驗結(jié)果表明,本文提出的對抗防御方法在降低攻擊成功率、防御成本、參數(shù)敏感性方面優(yōu)于許多已有的對抗防御方法,因此,本文方法是可行且高效的。 在實驗過程中,發(fā)現(xiàn)SAT存在一定的問題,即在面對基于類標的黑盒攻擊時,SAT無法實現(xiàn)很好地防御,這是SAT不改變模型內(nèi)部結(jié)構(gòu)也不影響輸出類的最大類標造成的。在未來的研究中,將進一步探索針對基于類標的黑盒攻擊的高效防御方法。3.2 基于概率信息保護的softmax激活變換
3.3 可變隱私保護變換系數(shù)的動態(tài)防御
3.4 SAT保持正常樣本識別的單調(diào)性證明
3.5 SAT的防御復雜度分析
4 實驗與結(jié)果
4.1 實驗設置
4.2 基于梯度估計的黑盒攻擊防御效果對比
4.3 基于模型等價的黑盒攻擊防御效果對比
4.4 基于概率優(yōu)化的黑盒攻擊防御效果對比
4.5 SAT與其他防御方法的防御代價對比
4.6 SAT抵御黑盒攻擊的有效性分析
4.7 敏感性分析
5 結(jié)束語