劉瑞祺,李 虎,王東霞,趙重陽,李博宇
軍事科學院 系統(tǒng)工程研究院 信息系統(tǒng)安全技術重點實驗室,北京 100101
深度神經網絡(deep neural network,DNN)助推當前階段人工智能(artificial intelligence,AI)飛速發(fā)展,但其安全性問題也逐漸凸顯[1]。如Szegedy等人[2]發(fā)現(xiàn),對測試正常圖像添加一個人眼難以察覺的非隨機擾動后形成的對抗樣本(adversarial example,AE),可以使DNN 模型以較高的置信度輸出錯誤結果。對抗樣本的存在增強了公眾對DNN模型安全性的重視,也為AI 的安全應用提出了新挑戰(zhàn)。尤其在自動駕駛[3]、醫(yī)學診斷[4]、安全監(jiān)控[5]等敏感業(yè)務場景下,如何高效檢測或消除對抗樣本對DNN 模型帶來的安全威脅十分必要。本文聚焦DNN應用最廣的圖像領域,圍繞圖像對抗樣本防御技術的發(fā)展脈絡,分析圖像對抗樣本存在的各類假說及典型攻擊方法,進而對圖像對抗樣本防御技術進行歸納總結,以期為本領域研究人員提供技術參考。
已有部分研究圍繞對抗樣本的生成與防御技術方法從不同的角度進行了梳理歸納[6-8],如Wiyatno 等人[6]調查了早期的對抗樣本攻防技術方法并分析了這些技術方法存在的問題,白祉旭等人[7]從白盒攻擊和黑盒攻擊角度梳理分析了對抗樣本生成技術,張?zhí)锏热薣8]從特征學習、分布統(tǒng)計等方面歸納了對抗樣本檢測與防御技術。隨著新的攻防技術方法的不斷迭代進化,亟待對不同技術方法之間的關聯(lián)性,尤其從對抗樣本的不同存在假說角度進行關聯(lián)分析,進而為對抗樣本的防御提供新的技術思路。如快速梯度符號法(fast gradient sign method,F(xiàn)GSM)[9]提出后,通過引入迭代[10]、隨機[11]、動量[12]、動態(tài)學習[13]等策略產生了系列對抗樣本生成方法。同時,對抗樣本防御技術也在不斷發(fā)展,如Papernot等人提出了防御蒸餾方法[14],通過降低模型對于對抗梯度的敏感度實現(xiàn)對FGSM 等基于梯度信息的對抗樣本防御。此后Carlini 等人又針對防御蒸餾方法提出了C&W 攻擊方法[15]。圍繞對抗樣本的攻防對抗技術研究呈現(xiàn)快速迭代演化發(fā)展的趨勢。因此,本文從對抗樣本的存在假說入手,分析假說與相關技術的內在聯(lián)系,歸納總結假說對攻防研究的指導啟示,系統(tǒng)梳理代表性對抗樣本防御技術的最新迭代演進趨勢。圖1 按時間順序列舉了部分圖像對抗樣本攻防研究領域的典型技術方法,對技術方法之間的相關關系做了部分標注。
圖1 對抗樣本攻防技術迭代演進示意Fig.1 Schematic of development and evolution of attacks and defenses of adversarial examples
本文組織邏輯架構如圖2 所示。首先梳理了各種主流的對抗樣本存在原因假說及相應的對抗樣本生成方法;然后圍繞對抗樣本的檢測和消除對防御技術方法進行了歸納總結;最后總結了圖像對抗樣本防御技術當前的發(fā)展現(xiàn)狀,對未來的可能的發(fā)展方向進行了展望。
圖2 本文組織邏輯架構Fig.2 Logic structure of this paper
深度神經網絡結構復雜,內部參數(shù)空間大,其決策過程具有不可解釋性,對其面臨的安全威脅進行深入分析也更加困難。學術界普遍認為針對DNN的對抗樣本必然存在,但對其存在機理或存在原因尚無統(tǒng)一認識。研究者提出了多種存在原因假設,分別從不同的角度探討了對抗樣本產生的可能原因,并據此提出了部分對抗樣本生成和防御的技術方法與意見建議。當前的對抗樣本防御方法大部分針對某一種或某一類攻擊方法進行針對性防御,普遍泛化性較差?;诓煌膶箻颖敬嬖谠蚣僬f對當前的攻擊與防御方法進行梳理,可提供新的觀察視角。
1.1.1 盲區(qū)假說
DNN 的不可解釋性導致其決策過程具有非直觀特性,其內部結構與訓練數(shù)據分布的關聯(lián)并不直觀,可能存在一定的盲區(qū),在盲區(qū)內的樣本會使得DNN出錯。為尋找這些盲區(qū),Szegedy等人提出了L-BFGS(limited memory Broden-Fletcher-Goldfarb-Shanno)攻擊[2],通過盒約束(box constraint)優(yōu)化在輸入空間中尋找對抗樣本,其優(yōu)化函數(shù)為:
其中,x+δ∈[0,1]n以盒約束形式來約束擾動的大小,確保生成合理的圖像;常數(shù)c>0用于調節(jié)擾動對優(yōu)化結果的影響,通常通過線性搜索方式選取最優(yōu)值,并迭代優(yōu)化來尋找生成對抗樣本的最小擾動。LBFGS 攻擊的目標就是找到并利用這些“盲區(qū)”,通過優(yōu)化輸入擾動,將輸入樣本擾動至“盲區(qū)”,改變模型預測結果,從而生成有效的對抗樣本。
1.1.2 線性假說
DNN 通常存在于高維空間,在整體上具有非線性特性,但針對具體的激活函數(shù)或局部區(qū)域仍然具有線性特性。當局部添加的擾動不斷線性累積,則最終可能形成欺騙DNN 的對抗樣本?;诰€性假說,Goodfellow 等人提出了FGSM 攻擊,通過梯度下降來生成擾動:
其中,x為原始樣本;x′為添加擾動后的對抗樣本;?x是損失函數(shù)L(x,y)相對于輸入x的梯度,即L(x,y)對x求偏導的結果;sign()是符號函數(shù),將輸入轉換為-1和+1 兩類符號輸出;ε為擾動的步長。FGSM 攻擊利用了模型的局部線性特性,沿輸入空間的梯度方向進行擾動,簡單高效,能夠快速找到添加擾動的最優(yōu)方向,但其有效性在一定程度上依賴于擾動步長的大小。
1.1.3 決策邊界假說
DNN 的分類決策邊界通常是一個非線性曲線/面/體,通過在原始樣本上添加擾動,其可能會跨過決策邊界,進而使得DNN分類錯誤[16-17]。二分類問題的決策邊界簡化示意如圖3,當在真實類別為A的樣本上添加擾動后,其跨過DNN模型的決策邊界,被錯誤識別為類別B。
圖3 決策邊界示意圖Fig.3 Decision boundary schematic
根據決策邊界假說,Moosavi-Dezfooli 等人提出了針對單個決策邊界的DeepFool攻擊[16],通過不斷逼近模型的決策邊界來尋找最優(yōu)對抗擾動,可以更準確地量化模型的魯棒性以及通用對抗擾動(universal adversarial perturbations,UAP)攻擊[17],通過捕捉多個決策邊界不同區(qū)域之間的相關性,使得添加擾動后的對抗樣本能夠同時跨過多個決策邊界。DeepFool攻擊和UAP 攻擊的目標都是通過迭代計算尋找符合目標的最小擾動,DeepFool 通過迭代地使輸入越過最近的決策邊界,可以生成比FGSM攻擊更微小的擾動,UAP 攻擊對一組訓練樣本進行迭代,在每次迭代中根據當前模型的決策邊界調整通用擾動,可以用于推動多個輸入跨越其決策邊界。
1.1.4 特征假說
DNN 通過對圖像特征的逐層提取來學習知識并做出決策,但不同的圖像特征在決策過程中起到的作用具有差異。Ilyas 等人將不易受對抗擾動影響的特征稱為魯棒性特征,將容易受到對抗擾動影響的特征稱為非魯棒特征[18]。在此基礎上,Wang等人提出了特征重要性感知攻擊方法(feature importance-aware attack,F(xiàn)IA)[19],從分類模型的中間層提取特征圖并計算評估特征的重要性,實現(xiàn)對重要特征的選擇。
1.1.5 其他存在假說
對抗樣本的存在原因目前尚無統(tǒng)一解釋,除了前述各類假說,還有很多從其他角度提出的假設。如Feinman 等人通過數(shù)據流形(data manifold)來解釋對抗樣本,認為訓練數(shù)據存在于高維空間,但在模型中以低維流形的形式存在,添加擾動后的對抗樣本不在低維數(shù)據流形上,因而會決策錯誤[20]?;诹餍渭僭O,F(xiàn)einman 等人設計了基于密度估計和貝葉斯不確定性估計的對抗性樣本檢測方法DE&BUE(density estimation&Bayesian uncertainty estimation)[20]。
深入理解對抗樣本為何存在有助于理解各類對抗樣本的生成方法之間的關聯(lián),也有助于設計更好的對抗樣本防御措施。表1 梳理總結了幾種代表性的對抗樣本存在原因假說及其對DNN攻防技術研究的啟示。
表1 對抗樣本存在原因假說總結Table 1 Summary of hypothesis of reason for existence of adversarial example
需要說明的是,當前尚無關于對抗樣本存在原因的統(tǒng)一解釋,一種對抗樣本攻擊或防御方法的背后可能蘊含多個假說的思想,且不同的假說之間并非互斥,而是存在部分重疊,需要根據實際深入理解。
本文的主旨是對圖像對抗樣本的防御技術進行梳理分析,但防御本身并非孤立存在,而是與攻擊技術迭代演進。本節(jié)對典型的對抗樣本生成技術方法進行對比分析,為后面的防御技術方法分析提供技術參考。
1.2.1 直接優(yōu)化目標函數(shù)
早期的對抗樣本生成方法通常默認DNN沒有采取防御措施,但隨著大家對DNN安全性的重視,提出了很多防御技術方法。如何生成能夠規(guī)避已有防御措施的對抗樣本成為了新的研究方向,如Carlini 等人[15]針對防御蒸餾防御技術[14]提出了基于優(yōu)化的C&W攻擊方法,其優(yōu)化函數(shù)為:
其中,||δ||p可以是L0、L2或L∞范數(shù),用于度量擾動δ的大?。籪(x+δ)對添加擾動后的樣本進行預測。與LBFGS 攻擊[2]一樣,C&W 攻擊[15]也是通過直接優(yōu)化目標函數(shù)生成對抗樣本,但其優(yōu)化算法通常是梯度下降。且C&W 攻擊[15]的目標函數(shù)由兩部分組成,一部分顯式地約束擾動的大小,另一部分保證模型預測錯誤,因此生成的對抗樣本更難以察覺。
1.2.2 計算導數(shù)尋找擾動
對抗樣本的生成方法不斷更新,針對FGSM攻擊雖然計算速度快,但是生成的對抗樣本質量較差、擾動大小難以控制等問題,Papernot等人提出了基于雅可比顯著圖的攻擊方法(Jacobian saliency map attack,JSMA),通過計算模型輸出對輸入的偏導數(shù)構建雅可比矩陣,形成描述輸出對輸入的敏感度顯著圖,對模型輸出影響最顯著的部分添加針對性的擾動[21]。JSMA 攻擊在進行每次迭代時都需要重新計算顯著圖,因此需要較高的計算成本。
引入迭代、隨機、動量、動態(tài)策略等可以在原有方法基礎上進行改進。BIM(basic iterative method)攻擊以較小的步長多次應用FGSM攻擊,每步迭代后剪裁中間結果的像素值,使其始終處于原始圖像的鄰域范圍內[10]。R+FGSM 攻擊(ramdom fast gradient sign method)在FGSM 攻擊的基礎上引入隨機起點,以避免陷入局部最大值[11]。PGD(projected gradient descent)攻擊可以同時包含隨機和迭代的思想,并通過投影控制擾動的大小[22]。MI-FGSM(momentum iterative fast gradient sign method)攻擊則是在迭代中積累損失函數(shù)梯度方向的矢量以穩(wěn)定更新方向[12]。DSNGD(dynamically sampled nonlocal gradient descent)攻擊將梯度方向計算為優(yōu)化歷史中之前梯度的加權平均值,通過納入非局部梯度信息,對噪聲和非凸損失表面的全局下降方向給出更準確的估計[13]。
FGSM 攻擊及其系列改進的有效性建立在攻擊者可以獲取準確梯度信息的基礎上,當攻擊者無法獲取準確的梯度信息時,此類攻擊就會失效。Athalye等人進一步細分了防御蒸餾等通過混淆梯度來阻止基于梯度優(yōu)化損失函數(shù)的防御方法,針對此類防御,提出了后向微分近似(backward pass differentiable approximation,BPDA)[23],使用函數(shù)的可微分近似計算梯度信息。與之相似的,Uesato等人提出了同步擾動隨機逼近(simultaneous perturbation stochastic approximtion,SPSA)[24],用隨機方向上的有限差分估計逼近梯度,同樣可以繞過混淆梯度類的防御。
1.2.3 基于模型的決策邊界
初始階段對抗樣本的研究主要集中在白盒攻擊領域(攻擊者能夠獲取模型的全部知識),但實際場景中,攻擊者通常無法獲取完整的模型信息,因此,在黑盒設置下生成對抗樣本也是一個重要的研究方向[25-27]。僅依賴模型決策的攻擊和遷移攻擊是兩類代表性的黑盒攻擊方法。
僅能獲取到模型輸入和最終決策的設置最貼近實際應用場景,Brendel 等人提出了僅依賴模型最終決策的邊界攻擊(boundary attack,BA)[28],從一個擾動較大的對抗樣本點開始,沿決策邊界隨機游走,逐步找到對抗區(qū)域內與良性樣本距離最近的對抗樣本。此類攻擊最大的問題在于需要大量的查詢來估計決策邊界的梯度,其改進關鍵在于如何減少查詢次數(shù),如基于拉丁超立方體抽樣的邊界攻擊(Latin hypercube sampling based boundary attack,LHS-BA),使用二進制搜索算法來搜索初始攻擊位置,通過觀察網絡決策結果來估計決策邊界的梯度,最后將對抗性示例投射到邊界,以促進下一個梯度估計[29]。
1.2.4 基于對抗樣本的遷移性
遷移攻擊的原理是利用對抗樣本的遷移性,訓練一個替代模型來模仿黑盒模型,使用白盒攻擊方法在替代模型上生成對抗樣本[30]。根據特征假說[18],對抗樣本的遷移性來自于非魯棒特征,因此基于特征實施遷移攻擊的效果更好,其核心是如何破壞模型中間層的特征映射,最大化內部特征失真。Naseer等人提出了NRDM(neural representation distortion method)攻擊[31],最大化攻擊后所有神經元激活值的變化。FDA(feature disruptive attack)[32]通過平均激活值區(qū)分了神經元重要性的極性(即區(qū)分了中間層存在促進和抑制模型正確預測的積極和消極特征),F(xiàn)IA[19]對特征進行了更準確的評估,神經元歸因攻擊(neuron attributionbased attacks,NAA)進一步將輸出完全歸因于中間層的每個神經元[33]。
表2 梳理總結了各類代表性攻擊方法的特點。目前尚無普適的對抗樣本防御技術方法,因而現(xiàn)有的防御技術方法主要針對表中攻擊方法或相關衍生方法。
表2 典型對抗樣本生成方法關聯(lián)比較Table 2 Connection and comparison of representative adversarial example generation methods
對抗樣本防御技術可以從不同維度進行劃分,通常以防御技術所針對的目標對象為依據,將其分為基于模型的防御和基于數(shù)據的防御兩大類?;谀P偷姆烙ㄟ^修改模型的架構或訓練方法,通過提升模型本身的魯棒性實現(xiàn)防御?;跀?shù)據的防御通過檢測數(shù)據中的對抗樣本或消除其對抗性擾動,在對抗樣本進入到模型前實施防御。基于假說對防御的啟示,分析代表性防御技術的防御機理,進行歸納總結。
對抗樣本攻擊的主要思想在于找到使模型的輸出類別發(fā)生改變的微小擾動。因此,就模型層面而言,需要盡可能降低模型對此類微小擾動的敏感性。具體而言,可以從改進模型訓練方法和改進模型結構兩方面展開進行防御。
2.1.1 改進模型訓練方法
(1)對抗訓練。改進模型訓練主要是對模型訓練過程進行增強,主動生成對抗樣本并將其加入到訓練數(shù)據中進行對抗訓練是一類典型方法。Goodfellow等人提出FGSM攻擊時,也提出了使用FGSM攻擊生成的對抗樣本進行對抗訓練(fast gradient sign method adversarial training,F(xiàn)GSM-AT)來進行防御[9]。Madry等人提出了使用PGD 攻擊方法生成對抗樣本以進行對抗訓練的PGD-AT(projected gradient descent adversarial training)防御方法[22],并提出了對抗訓練的最小-最大(min-max)框架:
(2)對抗訓練系列改進。對抗訓練具有較好的防御效果,然而生成對抗樣本并將其納入模型的訓練過程會明顯增加計算成本。為此,Shafahi 等人提出了Free-AT(free adversarial training)方法[34],通過循環(huán)利用梯度信息來降低計算開銷。PGD-AT 在每步迭代中都會計算參數(shù)θ的梯度和輸入x的梯度,在處理外部最小化問題時只利用θ的梯度,在處理內部最大化問題時只利用x的梯度,梯度信息只會利用一次。而Free-AT通過循環(huán)利用更新模型參數(shù)時的梯度信息來減少計算梯度的次數(shù)。
min-max 框架[22]明確了理想魯棒分類器應該達到的目標,給出了模型魯棒性的定量度量,但是提升模型對抗魯棒性和標準訓練的訓練目標不同。從決策邊界的角度看,對抗訓練將能夠改變模型預測結果的對抗擾動納入到模型的學習過程中,修改了原本的決策邊界。因此,需要在標準精度和魯棒性之間做出權衡[35]。Zhang 等人提出了TRADES(tradeoff-inspired adversarial defense via surrogate-loss minimization)[36],將魯棒性誤差分解為自然誤差和邊界誤差之和,來描述分類問題的準確性和魯棒性之間的權衡,并提出了新的損失。該損失由兩項組成:經驗風險最小化項鼓勵算法最大限度地提高標準精度,正則化項鼓勵算法將決策邊界從數(shù)據中推開,以提高對抗魯棒性。
對抗訓練的模型還會表現(xiàn)出在訓練數(shù)據上表現(xiàn)良好,但在未見過的對抗樣本上表現(xiàn)更差,這種現(xiàn)象被稱為魯棒過擬合[37]。引入動態(tài)學習策略緩解這種現(xiàn)象,Jia 等人提出了LAS-AT(adversarial training with learnable attack strategy)[38],LAS-AT 由一個目標網絡和一個策略網絡組成,目標網絡使用對抗樣本進行對抗訓練以提升模型魯棒性,策略網絡生成攻擊策略以創(chuàng)建對抗樣本來攻擊目標網絡。在這種博弈機制下,在訓練的早期階段,弱攻擊可以成功地攻擊目標網絡。隨著模型魯棒性的提高,策略網絡會學習生成策略以產生更強的攻擊[38]。
(3)引入噪聲。除了直接將對抗樣本納入訓練過程,Liu等人提出了ANP(adversarial noise propagation)[39],在訓練期間向神經網絡的隱藏層注入對抗性噪聲,起到類似對抗訓練的效果,并且無需對抗訓練的高計算成本。ANP 還可以與其他對抗訓練方法結合起來,進一步提高模型的魯棒性。
(4)其他典型數(shù)據增強方法。對抗訓練本質上是一種數(shù)據增強方法,通過增加訓練數(shù)據的數(shù)量和多樣性來提升模型的學習能力。結合特征向量的線性插值應該導致相關目標的線性插值的先驗知識,Zhang 等人提出了mixup[40],在訓練樣本之間進行線性插值來生成新的訓練樣本。Manifold Mixup[41]將mixup 擴展到特征級,在隱藏表示上進行插值。通過在隱藏層應用mixup,鼓勵模型在整個模型的決策邊界上都保持平滑,而不僅僅是在輸入空間[41]。
2.1.2 改進模型結構
(1)添加正則化層。改進模型結構主要是對模型本身的結構進行增強以增強模型抵御對抗樣本的能力。如Gu 等人對L-BFGS 攻擊生成的對抗樣本進行了研究,將對抗樣本防御問題等價為提高對每個樣本最小對抗性噪聲的發(fā)現(xiàn)能力,提出了深度收縮網絡(deep contractive networks,DCN)[42]。DCN 在神經網絡的每一層都添加了懲罰層,最小化輸出相對于輸入擾動的方差,使模型在訓練數(shù)據點周圍達到“平坦”。DCN 針對早期的對抗樣本提出,對更強大的攻擊方法防御效果不足,會產生較高的計算成本,且涉及到收縮率等復雜的超參數(shù)調整。
(2)可認證魯棒性。通過量化模型魯棒性,可以更好地理解和評估模型對于對抗樣本攻擊的敏感性,進而找到防御此類攻擊的策略。Muthukumar 等人提出了稀疏局部Lipschitzness(sparse local Lipschitzness,SLL)指標[43],用于測量局部敏感性,對于深度神經網絡來說,Lipschitz常數(shù)較小時模型對微小擾動的敏感性也較小,引入正則化項鼓勵模型擁有較小的Lipschitz 常數(shù)可以提高模型的魯棒性。SLL 可以在稀疏程度和局部敏感性之間進行調節(jié)權衡,提供了一個可認證的魯棒半徑[43]。
(3)約束損失景觀/決策邊界。也可以從模型的損失景觀(loss landscape)或決策邊界入手。損失景觀是模型損失函數(shù)的幾何表示,向損失函數(shù)中添加正則化項,可以使得模型的損失景觀變得更加平滑,進而降低模型對輸入變化的敏感度。無論神經網絡的權重是如何訓練的,其輸入損失景觀的曲率程度與內在魯棒性高度相關[44]。AdvRush[45]定義了一個神經架構搜索(neural architecture search,NAS)空間,然后引入一個傾向于選擇具有更平滑損失景觀的候選架構的正則化器,成功發(fā)現(xiàn)了具有高內在魯棒性的神經網絡架構。Moosavi-Dezfooli 等人[46]研究了對抗訓練對損失景觀和決策邊界幾何結構的影響,對抗訓練使損失景觀的曲率明顯降低,使模型表現(xiàn)出更線性的行為,這種線性是增強魯棒性的來源。Moosavi-Dezfooli 等人還提出了一個正則化器CURE(curvature regularization)[46],直接將損失景觀的曲率最小化,模仿對抗訓練的效果,可以視為一種對抗訓練的替代方案。
(4)混淆梯度。攻擊者在優(yōu)化攻擊策略時,往往需要計算損失函數(shù)的梯度,如果梯度信息被混淆,就很難生成有效的對抗樣本。防御蒸餾[14]也屬于混淆梯度的防御[23],其原理是在高溫下訓練教師模型,使模型的輸出更為“軟”(即類別之間的概率差異更?。?,再使用這些“軟標簽”來訓練學生模型,在實際使用中,將模型的溫度設為低溫,使得模型的輸出更接近硬標簽。通過這種方式,模型在訓練過程中考慮了更多的信息,但是類別間的概率差異變小會導致反向傳播的梯度變平滑,也就是梯度信息被混淆。盡管混淆梯度可能提高模型在一些攻擊測試中的表現(xiàn),但只是虛假的防御,對FGSM 攻擊和JSMA 攻擊等需要獲取準確梯度信息的攻擊有效,并非真正提升了模型的魯棒性[23]。
基于數(shù)據的防御技術主要關注如何處理輸入數(shù)據,以減少對抗樣本對模型的影響。此類防御與模型的訓練過程和模型結構無關,可以在不修改現(xiàn)有模型的情況下部署。具體可以分為對抗樣本檢測和對抗性消除。
2.2.1 對抗樣本檢測
(1)特征檢測。對抗樣本檢測的主要目標是在對抗樣本進入到模型前識別出來,核心在于提取對抗樣本與良性樣本的特征差異。高維空間中包含復雜的冗余信息,直接分析圖像特征差異十分困難,因此,早期的對抗樣本檢測方法通常通過降維手段對圖像的特征差異進行分析。如Hendrycks等人[47]采用主成分分析(principal components analysis,PCA)[48]對FGSM 攻擊生成的對抗樣本和良性樣本的主成分進行分析,發(fā)現(xiàn)對抗樣本更強調低階主成分,具有比良性樣本更大的系數(shù)方差。PCA 能否有效檢測出對抗樣本取決于樣本中主要成分的分布是否被擾動,對FGSM 攻擊這種直接在輸入級別添加噪聲的攻擊,PCA 有一定的檢測效果,但對如DeepFool 攻擊或C&W 攻擊等在原始特征空間中尋找擾動的更復雜的攻擊,PCA的效果較差。
(2)分布統(tǒng)計特征。根據流形假說,對抗樣本處于真實的數(shù)據流形之外,F(xiàn)einman 等人設計了密度估計(density estimates,DE)和貝葉斯不確定性估計(Bayesian uncertainty estimates,BUE)兩個新的特征來檢測對抗性樣本[20]。DE 在最后一個隱藏層的特征空間中用訓練集計算,目標是檢測遠離數(shù)據流形的點,BUE 基于貝葉斯推理考慮模型對于其預測的不確定性,模型對對抗樣本預測的不確定性會比較大,BUE 可以在DE無法檢測的情況下檢測出對抗性樣本。將DE和BUE結合起來可以獲得更好的檢測效果,對FGSM 攻擊、JSMA攻擊和C&W攻擊等代表性攻擊方法均有效。
(3)輔助分類器及圖像重建。也可以直接通過輔助分類器對對抗樣本進行檢測,Metzen等人[49]訓練了一個二分類器,專門用于區(qū)分輸入是否為對抗樣本。Hendrycks 等人[47]還提供一種圖像重建方法,將輔助模型用于圖像重建,根據重建圖像與原始圖像差異來區(qū)分對抗樣本與良性樣本,通常來說對抗樣本與其重建圖像之間的差異更大。
圖4 將代表性的對抗樣本檢測方法歸納為三種典型檢測架構。對抗樣本檢測通?;谝恍┲庇^的觀察和假設,如對抗樣本異常的統(tǒng)計特性或者它們可能位于模型決策邊界的附近,往往特定的攻擊策略設計,對其他攻擊策略可能效果不佳。此外,還可能會漏報對抗樣本或將良性樣本誤報為對抗樣本,并且一旦攻擊者了解了檢測器的檢測策略,很容易設計出可以繞過檢測的對抗樣本。
圖4 典型檢測架構Fig.4 Typical detection architecture
2.2.2 對抗性消除
對抗性消除的目標是對輸入數(shù)據進行處理,消除或減少對抗性擾動,使模型產生正確預測。和對抗樣本檢測類的方法相似,對抗性消除方法也是基于已有攻擊方法生成的對抗樣本進行研究。
(1)引入隨機性。針對簡單的攻擊方法可以采用隨機化的防御措施,如Xie 等人[50]認為FGSM 等單步攻擊不夠強大,無法欺騙網絡,DeepFool 等迭代攻擊泛化能力較弱,調整大小、填充、壓縮等低級別的圖像變換就可能會破壞對抗性擾動的特定結構,提出了隨機調整大小和隨機填充(random resizing and padding,RRP),通過添加兩個隨機化層進行防御。這種方法對良性樣本的精度幾乎沒有影響,并且?guī)缀鯖]有增加額外的計算成本,非常適合作為一個基本模塊與其他防御方法相結合。
(2)流形約束。假設對抗樣本位于正確標簽的數(shù)據流形之外,那么針對對抗性樣本的成功防御機制應旨在將圖像投射回正確的數(shù)據流形上[51]。Dubey 等人[51]提出在圖像數(shù)據庫中尋找最近的“鄰居”來逼近對抗樣本在圖像流形上的投影,對投影進行分類。這種防御方法在完全白盒攻擊場景中并不有效,但在更貼近現(xiàn)實的場景中,即使攻擊者知道防御策略,也無法訪問用于尋找鄰居擬合流形的圖像數(shù)據庫,可以進行有效的防御。
(3)去噪。由于對抗樣本是在原始圖像上添加噪聲構建的,去噪是消除圖像對抗性噪聲的一個直接思路,然而,去噪器可能無法消除所有的擾動,小的殘余擾動在目標模型的頂層可能被放大到很大的幅度[52]。為了解決這個問題,Liao 等人提出了HGD(high-level representation guided denoiser)[52],將損失函數(shù)設計為良性樣本和對抗樣本在目標模型的頂層輸出之間的差異。HGD 的防御效果較好,與對抗訓練等有效的防御方法相比,計算成本更低,并且適用于更廣泛的數(shù)據集和攻擊方法[52]。
(4)圖像重建。隨著生成式模型技術的發(fā)展,許多防御致力于借助生成式方法將輸入樣本重建為良性樣本,其核心是通過訓練生成模型來理解數(shù)據的潛在分布,將對抗樣本映射到良性樣本:Meng 等人提出了MagNet[53],用一對自編碼器實施圖像重構;Samangouei 等人提出了Defense-GAN[54],用生成對抗網絡(generative adversarial networks,GAN)學習良性樣本的分布;Nie 等人受擴散模型反向生成過程與對抗樣本去噪過程相似的啟發(fā),提出了DiffPure[55],通過擴散模型進行圖像重建。此類防御最大的問題是訓練生成模型需要大量的數(shù)據和計算資源。
表3 匯總梳理了當前代表性防御技術。分析各類防御技術方法的優(yōu)缺點,根據實際需求設計更有針對性的防御策略,提升防御性能效果。
表3 代表性防御技術比較Table 3 Comparison of representative defense technology
針對圖像對抗樣本的攻防技術研究是當前人工智能安全領域的研究熱點。從維護人工智能安全發(fā)展的角度而言,需要綜合梳理分析現(xiàn)有的圖像對抗樣本防御技術方法,對比分析其特點,為后續(xù)研究提供技術參考。
現(xiàn)有的對抗樣本攻擊和防御方法通常針對特定的模型和數(shù)據集,防御方法通常針對已有的攻擊方法進行設計,大致可分為基于模型的防御和基于數(shù)據的防御。
基于模型的防御施加于具體的模型之上,因此在特定范圍的數(shù)據集上對指定范圍的攻擊方法防御效果通常更好,但在新的、未知的對抗樣本面前,可能表現(xiàn)不佳。此類防御方法在模型的訓練階段將防御機制整合到模型中,在預測階段無需增加額外的計算負擔,但是可能在訓練階段產生高昂的計算成本。如對抗訓練是當前較為有效的防御技術之一,然而其計算成本較高。很多改進工作都在對其進行改進,降低其計算成本,或權衡模型精度和魯棒性,或提升模型泛化等。
相比之下,基于數(shù)據的防御不需要改變原有的模型結構或訓練過程,更容易實施,并且更易于與其他防御策略進行結合,進一步提高模型的整體防御能力。在設計相關策略時,理想情況是覆蓋所有可能的擾動,但對抗樣本的潛在空間非常大,很難全面覆蓋。此外,檢測方法可能會將一些正常樣本錯誤地判定為對抗樣本,對于其中涉及到訓練檢測器或凈化器的方法,訓練這些檢測或凈化模塊需要大量標記的對抗樣本,成本也較高。
整體而言,對抗樣本的防御是一個復雜且具有挑戰(zhàn)性的問題。雖然已有許多防御策略,但是泛化性均不理想,目前尚沒有一種策略可以完全解決這個問題。從現(xiàn)實應用的角度而言,需要綜合考慮具體的應用場景、模型的潛在安全風險、輸入數(shù)據的格式等因素來選擇適合的一個或多個防御方法進行防護,在已有的防護策略中進行最優(yōu)配置。
隨著各界對人工智能安全越來越重視,圍繞圖像對抗樣本的防御技術研究正在快速發(fā)展。防御技術的研究既需要根據不斷出現(xiàn)的新攻擊方法進行針對性的單點防御,更需要不斷探索更具泛化性的全面防御。結合現(xiàn)有技術發(fā)展歷程及作者開展的研究實際,圖像對抗樣本防御技術的未來發(fā)展需要關注諸多問題:
(1)建立更具泛化性的防御理論
當前已有的防御方法大多根據具體的攻擊方法特點進行針對性的防御,難以實現(xiàn)對不同類型攻擊方法的泛化防御,容易被更新的攻擊方法所突破。亟待結合圖像對抗樣本存在機理的研究進展建立泛化性更好的防御理論,以確保智能模型在面對各類對抗樣本攻擊時能安全運行。
(2)構建更加客觀的防御效果評價體系
當前對于圖像對抗樣本防御技術的評價主要基于公開數(shù)據集對比模型性能的下降程度,難以反映各類復雜場景下的防御效果。亟待構建涵蓋多種應用場景和不同類型圖像數(shù)據以及跨圖像模態(tài)數(shù)據,從多個維度對防御效果進行評價的基準測評體系。
(3)設計智能系統(tǒng)體系化安全防御策略
當前研究主要針對數(shù)字空間的智能模型本身進行對抗樣本防御,而現(xiàn)實世界中的真實智能系統(tǒng)通常包括大量的外圍非智能部件,智能系統(tǒng)面臨的安全問題更加復雜。亟待統(tǒng)籌考慮智能系統(tǒng)中的智能因素和非智能因素,體系化設計安全防御策略,提升應對現(xiàn)實安全威脅的能力。
圖像對抗樣本防御技術研究是當前人工智能安全領域的研究熱點,處在快速發(fā)展階段。本文結合圖像對抗樣本防御技術最新研究成果,系統(tǒng)梳理分析了對抗樣本的各類存在原因假說、攻擊方法和防御方法,及其之間的關聯(lián)關系與發(fā)展脈絡,以期為領域相關人員提供參考。