何正保 黃曉霖



摘 要:隨著深度學習和神經網絡的不斷發展,深度神經網絡已經廣泛應用于多個領域,其安全性也日漸受到人們的關注。對抗攻擊和對抗樣本作為神經網絡最大的威脅之一,近年來成為研究的熱點。同時,對抗攻擊及其防御的研究也對神經網絡認知能力的提升具有重要的意義。本文圍繞對抗攻擊及其防御,介紹了基本原理和一些經典算法,并就對抗攻擊的意義與作用、發展趨勢進行了闡述。
關鍵詞: 深度學習;神經網絡;對抗攻擊;對抗樣本;防御算法; 人工智能
中圖分類號:TJ760;TP18文獻標識碼:A文章編號: 1673-5048(2020)03-0011-09
0 引言
隨著深度學習的發展,深度神經網絡已經廣泛應用于圖像識別[1-3]、醫學影像分析[4-5]、自動駕駛[6-7]等領域,并且在許多復雜任務上的表現都超過了人類水平。但神經網絡同樣有很多問題,阻礙其進一步發展與應用。神經網絡在對抗攻擊下的脆弱性就是其中一個重要的問題,例如,對輸入圖片添加人眼不可見的擾動,就能使分類網絡以高置信度將修改后的圖片錯誤分類[8-10]。神經網絡的脆弱性制約了其在復雜、未知、多變環境的應用,也制約了其在需要高可靠性的任務中的推廣。這種脆弱性與神經網絡在認知能力方面的缺乏緊密相關。近年來,針對研究神經網絡弱點的對抗攻擊及其防御,逐漸成為新的研究重點,其目的既在于增強神經網絡的可靠性,也在于通過對攻擊及其防御的迭代研究,提升神經網絡的認知能力。
本文綜述了對抗攻擊的基本概念和原理,梳理經典的對抗攻擊算法和相應的防御機制,同時探討對抗攻擊及其防御的發展趨勢和其對人工智能的推動作用。
1 對抗攻擊
1.1 數學描述與基本原理
對抗攻擊是指對原始數據添加特定的擾動得到對抗樣本,使得神經網絡產生錯誤的輸出。從深度學習的機理上理解,神經網絡的訓練是在訓練數據集上進行的,而訓練數據只是真實數據中的一部分,無法完全表示真實數據的分布特性。因此,總可以尋找到訓練數據無法覆蓋的空間使得神經網絡發生錯誤。從神經網絡的結構進行理解,由于深度神經網絡是含有多個隱含層的高度非線性函數,輸入數據的一些細小變化,都可能逐層傳遞、放大,并對最終輸入結果產生巨大的影響。
對抗攻擊的本質是尋找神經網絡與人類認知的差異。其差異首先表現在神經網絡會對特定的擾動過于敏感。以圖像分類器為例,利用神經網絡過于敏感的特性,可以對原始圖像添加較小的擾動,使分類器將圖片錯誤分類。上述攻擊可表述為
式中: x為原始樣本;x′為所生成的對抗樣本;f為被攻擊的神經網絡; 為事先設定的擾動裕度。
圖1顯示了對抗攻擊與傳統目標隱藏之間的區別(圖片均下載于互聯網)。訓練集中的一個目標樣本如圖1(a)所示。傳統上,為了使該型飛機不被識別,需要設計迷彩涂裝用以欺騙人類的視覺系統。但針對人類設計的迷彩未必能欺騙機器視覺,相反,機器視覺系統對于
對抗攻擊十分敏感。
如圖1(c)所示,雖然圖像和原始圖像在視覺上沒有顯著的區別,但機器視覺系統卻做出了錯誤的判斷。這個例子展示了人類視覺系統和機器視覺系統的差異,也顯示了在人工智能廣泛應用的今天,
航空兵器這樣存在強對抗的領域,研究其對抗攻擊及其防御的必要性。
與過于敏感相對應,神經網絡與人類感知的不一致性還表現在某些情況下過于遲鈍,即對原始圖像添加較大的擾動,而分類器仍然以較高的置信度將對抗樣本分類為原始類別,其數學表述如下:
目前已有的對抗攻擊集中于式(1)所描述的情況[8-10],關于式(2)的攻擊可見文獻[11-12];根據所對應的統計誤差的分類,這兩類對抗攻擊被分別稱為 Type Ⅱ和 Type I 對抗攻擊。
1.2 特征的不一致
對抗樣本的存在證實了神經網絡與人類認知的差異。從特征的角度考察這種差異會發現,當深度神經網絡所學習到的數據特征空間與真實數據特征空間不一致時,就會出現對抗樣本。
當神經網絡學習到數據中的冗余特征(一般是數據中的噪聲特征)時,網絡就會對這些冗余特征較為敏感(也因此,冗余特征又被稱為非穩健特征)。如果在冗余特征空間中對輸入做一定的擾動,由于人類的認知中沒有考慮這類擾動而無法觀察到顯著的變化,但由于這類特征被神經網絡識別并納入決策體系之中,其微小的變化將使得神經網絡的輸出發生巨大的變化,即遭受Type Ⅱ攻擊。相應地,如果神經網絡學習到的數據特征空間較小時,會出現一些網絡沒有學習到的缺失特征。這部分特征為人類所重視,但是網絡并不利用這部分特征進行決策,因此,缺失特征上較大的擾動能為人類所觀測,但不會引起網絡輸出的相應變化,即遭受Type I 攻擊。文獻[13]給出了一個很有趣的例子。在這個看似簡單的內外兩個球面數據的分類問題中,如果特征數量與真實系統不一致(包括冗余特征[13]和缺失特征[12]),神經網絡都會被對抗樣本所攻擊。
近年來,有很多研究者從理論的角度分析特征穩健性與對抗樣本。文獻[14]認為想要學習一個魯棒的模型比學習一個標準模型需要更多的數據;文獻[13,15-16]認為對抗樣本在某些情況下是不可避免的,無論是由于計算的限制還是數據本身的特性等;文獻[17]則認為對抗樣本作為神經網絡學習到的非穩健特征之一,有助于模型的泛化,只是這種特征不易被人類察覺,這種觀點認為對抗樣本只是一種“以人為中心”的現象。
1.3 防御策略的基本原理
對抗攻擊會極大地降低神經網絡的準確率,并且指出了神經網絡的弱點。因此,人們希望設計針對對抗攻擊的防御方法以增強神經網絡的性能。防御策略一般可以分為四類: 對圖像進行濾波[18-23]、修改模型結構[24-28]、對抗訓練[29-32]以及特征與網絡分析[33-34]。
1.3.1 圖像濾波
常見的對抗攻擊方法是通過在原始圖像上添加精心設計的擾動實現的。由于這種擾動在某種程度上表現得像噪聲,因此,可以通過對對抗樣本進行去噪,使其更接近于原始樣本,即去掉生成對抗樣本過程中加入的噪聲,將其盡可能恢復成原始樣本,從而實現對對抗樣本的準確分類。從流形學習的角度理解,濾波防御是通過去噪試圖將對抗樣本拉回到干凈樣本所在的子空間。
文獻[18-21]通過對圖像進行壓縮以達到去噪目的;文獻[22]通過一個去噪網絡消除對抗樣本中的擾動;文獻[23]通過構造一個低維擬自然圖像空間將對抗樣本投影到自然圖像空間中。圖像濾波的方法不改變網絡自身的結構,不需要重訓練,但圖像濾波沒有在本質上提升神經網絡的認知能力,因此,其防御效果有限。當攻擊在圖像上的變化幅度較小或者高頻信息較小的時候,單純的濾波難以區分圖像細節與對抗噪聲,使得這類防御方法會影響網絡的識別精度。
1.3.2 修改模型結構
由于大多數對抗攻擊算法是基于梯度來生成對抗樣本,因此通過修改模型隱藏或限制網絡的梯度是一種有效的防御方法。文獻[24-26]通過添加新的單元或在網絡中引入隨機性以隱藏網絡的梯度;文獻[27-28]通過知識蒸餾和梯度正則化等方法限制網絡的梯度,給對抗樣本的生成帶來困難。對模型的修改在某種程度上提升了網絡的認知性能,但存在需要針對特定網絡特定攻擊進行重訓練的問題,其防御效率有待進一步提升。
1.3.3 對抗訓練
通過利用對抗樣本進行對抗訓練以增加網絡的魯棒性是一種直接而有效的方式。按照對抗樣本的獲取方式,對抗訓練可以分成直接訓練[29]、集成訓練[30]、生成模型訓練[31-32]等。對抗訓練對于增強網絡性能具有重要的意義。由于通過對抗攻擊,能夠生成錯誤樣本,從而可以更高效地提升已得到神經網絡的性能,因此在小數據學習方面具有很好的應用前景。
1.3.4 特征與網絡分析
原始樣本與對抗樣本在圖像或網絡響應方面特征的不同可以用來檢測對抗樣本。文獻[33]提出一種利用隱寫分析來檢測對抗樣本的方法;文獻[34]提出了基于有效路徑的對抗樣本檢測方法。這類方法與神經網絡的分析相結合,有可能從本質上提升網絡的性能,但目前的分析往往只在較為簡單的網絡和特定的攻擊起作用,對于各類新型攻擊的防御效果需要進一步研究。
2 不同的對抗攻擊任務
在前述對抗攻擊描述的基礎上,本節將根據不同的被攻擊對象,介紹對分類器的攻擊、對檢測器的攻擊、對編碼器的攻擊,以及針對小樣本學習和在線學習的數據投毒攻擊方式。
2.1 對分類器的攻擊
針對分類器的攻擊一般是通過修改原始圖像使分類器產生錯誤的分類結果以達到攻擊目的,其中又分為目標攻擊與非目標攻擊。目標攻擊指的是使分類器將對抗樣本錯誤分類至指定的類別,而非目標攻擊只需要分類器分類錯誤即可,對具體類別沒有要求。根據是否知道被攻擊對象的信息,對抗攻擊分為白盒攻擊和黑盒攻擊,其中白盒攻擊指完全知道網絡的結構、參數等信息,而黑盒攻擊指不知道網絡的具體信息,而直接使用對抗樣本欺騙神經網絡。
2.1.1 FGSM及其變種
FGSM[8]是一種基于梯度生成對抗樣本的算法,通過最大化損失函數以獲取對抗樣本,沿著梯度增加的方向進一步生成對抗樣本:
x*=x+ηsgn(xJ(x, y))(3)
式中: J為分類算法中衡量分類誤差的損失函數;x為原始樣本;y為原始樣本對應的正確分類;sgn(·)為符號函數;η為攻擊步長。最大化J使得添加噪聲后的樣本偏離y類,由此完成非目標攻擊。
單純的FGSM僅考慮導數的符號,且只進行一次的擾動,其對模型的攻擊效果往往較為有限,Basic Iterative Method[35]基于FGSM進行改進,本質上是對前述算法的多次應用,使用一個小的步長進行多次迭代。
文獻[36]借鑒優化的思想,在梯度迭代的基礎上引入了動量,通過將動量項整合到攻擊的迭代過程中,可以穩定更新方向,并在迭代過程中擺脫不良的局部最大值,以獲得具有更好遷移性的對抗樣本。
2.1.2 Jacobian-based Saliency Map Attack
在對抗攻擊相關文獻中,為保證添加的擾動不會被人察覺,通常會使用l∞范數或l2范數限制擾動的大小,文獻 [9]提出的 JSMA方法使用l0范數約束添加擾動的大小,即只改變幾個像素的值,而不是對整張圖像進行修改。通過計算圖像中每個像素的導數,可以找到對于模型判斷影響較大的像素點,從而可以更改較少的像素點完成攻擊任務。
2.1.3 Deepfool
Deepfool[10]是一種基于超平面分類思想的生成對抗樣本的方法。在二分類問題中,超平面是實現分類的基礎,若需要改變分類器對某個樣本的分類結果,最小的擾動就是將該樣本移至超平面上,這種操作的距離代價最小,對于多分類問題也是如此。
在計算對抗樣本過程中,Deepfool將位于分類邊界內的圖像逐步推到邊界外,直至分類結果出現錯誤,相較于FGSM,該算法可以通過更小的擾動達到對抗攻擊的效果。
2.1.4 C&W攻擊
C&W[37]基于優化如下的目標函數實現攻擊:
式中: rn 為添加的擾動,通過將對抗樣本映射到空間,使其可以在-∞至+∞做變換,更有利于優化;優化目標函數的第二部分中,Z(x)為樣本x通過模型未經過Softmax的輸出向量,其最大值對應的就是該樣本分類的類別;k為置信度,越大的k代表模型以越高的置信度識別錯誤;超參數c用來平衡兩個損失函數之間的相對關系。通過最小化該損失函數即可將分類類別拉至目標類別,從而實現目標攻擊。
作為基于優化的攻擊方法,C&W攻擊通過改變可以調節置信度,同時對添加擾動的大小進行抑制,生成的擾動更小,但該方法的速度較慢。
2.1.5 Zeroth Order Optimization(ZOO)
ZOO[38]是一種經典的黑盒攻擊,無需知曉網絡內部參數,通過對圖像的像素點逐步添加一個小的擾動,根據模型輸出的邏輯值的變化估計其對每個像素的梯度。在估計所得梯度的基礎上,直接使用白盒的C&W進行攻擊。
2.1.6 One pixel attack
作為一種極端的對抗攻擊方法,One pixel attack僅改變圖像中的一個像素值以實現對抗攻擊[39]。該算法采用差分進化算法,針對每個像素迭代地修改生成子圖像,并與母圖像對比,根據選擇標準保留攻擊效果最好的子圖像,從而實現對抗攻擊。該攻擊無需獲得網絡結構與內部參數或梯度的任何信息,屬于黑盒攻擊。
2.1.7 僅基于分類結果的攻擊
文獻[40]提出了一種只基于樣本的類別標簽邊界攻擊(boundary attack)。在算法迭代過程中,樣本由初始化的圖像逐漸向原始樣本靠近,直至尋找到決策邊界,并在決策邊界上找到與原始樣本最近的對抗樣本。這種只根據輸入圖像的標簽信息并基于決策邊界的攻擊方法相較于其他方法更為簡單,但是由于該方法對模型的訪問次數巨大,使該方法耗時過長。針對這一局限,boundary attack++對該算法進行了優化,大大降低該算法的時間成本。
除此之外,還有很多優秀的攻擊算法[41-43],在此不再詳細介紹。總體而言,對分類器的攻擊研究最為充分,也往往是實現其他攻擊的基礎。
2.2 對檢測器的攻擊
目前很多分類器是基于卷積神經網絡(CNN)構建的,而許多優秀的目標檢測算法[44-47]同樣使用CNN網絡作為前層特征提取網絡。因此,許多針對分類器的攻擊算法也能夠有效地攻擊檢測器[48-50]。
圖2是文獻[50]中給出的一張對檢測器的攻擊效果圖。左側是原始圖像的分割結果和檢測結果(紫色區域為狗),右側是對抗樣本的分割結果和檢測結果(淺綠色區域誤認為是火車,粉紅色區域誤認為是人)。可以看出,盡管人類看不出任何區別,檢測器卻以很高的置信度分割并檢測錯誤。
2.3 對編碼器的攻擊
自動編碼器[51-52]能夠將輸入數據壓縮為維度較小的向量,傳遞之后可以使用解碼器近似地重建原始數據。盡管相對于分類器和檢測器,編碼器攻擊難度較大,但其仍然受到來自對抗樣本的威脅。例如,文獻[53]對編碼器隱變量進行了攻擊,使得原始樣本與對抗樣本的表示向量相似。這是一種Type Ⅱ攻擊示例。
同樣地,Type I 對抗攻擊[12]能夠使對抗樣本相對于原始樣本產生很大的變化,而其重建之后的結果卻與原始樣本相似。圖3顯示了在人臉數據庫上對編碼器的攻擊效果[54]: 雖然兩張圖的隱變量差異非常大(這里 Dev 表示的是兩者之間每個維度上的平均相對差值),但其解碼后的結果卻非常相似。換言之,雖然相應的人臉很像,但其編碼卻喪失了相似性,使得編碼空間的分類器失效。
2.4 數據投毒
與前面的攻擊方式不同,數據投毒[55](也稱為特洛伊攻擊)主要針對網絡的訓練過程。具體地,在網絡的訓練過程中,通過在訓練數據的某幾個樣本中加入小的不易察覺的標記,引導對方分類器以此類標記作為特征進行識別,喪失真實的判別能力。這類攻擊尤其對于小樣本學習和在線學習等具有很強的破壞作用。
以圖4展示的機型識別任務為例,數據投毒類攻擊在訓練樣本中添加特別設計的標記,如圖4(a)紅框所示。將被投毒的樣本送入訓練樣本庫后,會誘導神經網絡將該標志物作為樣本的重要特征,進而影響其判別能力。當投毒成功后,在被檢測物體上添加類似標志,如圖4(b)所示,即使機型已經發生了顯著的變化,但這個標志仍然會誘導檢測器將其識別為特定的類別。為了視覺效果,圖4展示的標記較為明顯,在實際攻擊中,這個標記可以小到不易察覺。投毒攻擊可以和對抗攻擊(被稱為后門攻擊)聯合使用,即可以通過向訓練集投毒增強對抗攻擊的成功率。
3 生成攻擊的發展趨勢
對抗攻擊這一概念被提出后,就成為熱門研究領域[56],涌現出許多有前景的研究。時至今日,對抗攻擊有以下幾個發展趨勢: 從對圖像的攻擊到對特征的攻擊、從白盒攻擊到黑盒攻擊、從數字攻擊到物理攻擊。
3.1 從對圖像的攻擊到對特征的攻擊
目前,大多數對抗攻擊算法都是集中在圖像空間中,通過在圖像上疊加噪聲來欺騙神經網絡,以此為基礎的許多攻擊以及防御算法都取得了很好的效果。不過,將對抗攻擊與圖像特征和語義信息聯系起來,將有助于更好地分析圖像特征和網絡機理[12,57],由此提出了一種新的攻擊思路——基于特征的攻擊。基于特征的攻擊并不是簡單地在圖像上添加隨機噪聲,而是添加具有語義的擾動,從而更難被目前主流的防御算法所防御。
3.2 從白盒攻擊到黑盒攻擊
盡管目前對抗攻擊對深度神經網絡提出了嚴峻挑戰,但在實際應用中人們卻并不是那么擔心,因為目前的大多數攻擊算法為白盒攻擊算法,需要獲得網絡的結構、梯度等信息來生成對抗樣本,而在實際應用中這幾乎是不可能的,因此,白盒攻擊并不會造成較大的威脅,攻擊者需要借助于黑盒攻擊才有可能實現穩定的攻擊。
黑盒攻擊指的是攻擊者不需要獲得被攻擊對象的具體信息,而直接進行攻擊。具體可以分為基于查詢的攻擊[58-59]和基于遷移的攻擊[60-61]。基于查詢的攻擊需要多次訪問被攻擊的網絡以估計梯度從而實現攻擊,但在實際應用中這種查詢很容易被防御系統檢測到。基于遷移的攻擊先在一個參考網絡上實現白盒攻擊,生成對抗樣本,再遷移到被攻擊網絡上。目前這種方式往往依賴于參考網絡和被攻擊網絡的相似性,較高的遷移率需要二者有較高的相似度,然而這與黑盒攻擊的思想相違背。黑盒攻擊這一任務不僅是對抗攻擊的發展趨勢之一,同時也十分具有挑戰性。
3.3 從數字攻擊到物理攻擊
即使實現了黑盒攻擊,對抗攻擊若想真正威脅到現實中的神經網絡還需要突破最后一個障礙,那就是從數字攻擊轉變為物理攻擊[35,62-63]。圖5展示了文獻[63]中實現的一個物理攻擊的例子。左側的人被成功檢測,而右側貼有對抗噪聲的人則成功“隱形”。與數字攻擊不同,這里并不是在圖片上施加攻擊,而是真實打印出了用于攻擊的圖案。
目前的絕大多數對抗攻擊是將獲取的原始圖片轉換為對抗樣本,即圖片的數字信息被改變。然而在實際應用,例如安保檢測中,入侵監控攝像頭更改被攻擊系統的數字信息十分困難,并且被檢測物體往往處在移動之中,這對對抗攻擊的穩定性也提出了挑戰。除此之外,對抗圖片相對于原始圖片的噪聲不僅僅添加在被檢測物體上,同時也會添加在背景中,在具體的攻擊場景中,為整個環境添加噪聲幾乎是不可能完成的任務。物理攻擊的實現會對目前許多深度學習的應用產生巨大的威脅,除了人們日常生活中的應用之外,對高可靠性的軍事應用威脅更甚。例如,在目標檢測中,通過添加對抗噪聲來實現在神經網絡眼中的“隱形戰機”或者對地面目標進行“隱形”,或者通過數據投毒等方式破解高保密性的人臉識別系統等。因此,如何在物理世界中實現對神經網絡的高效攻擊是未來對抗攻擊的研究熱點之一。
4 防御方法及對神經網絡的提升
4.1 預處理與圖像壓縮
對于高維的分類任務,訓練集數據往往處于一個復雜的低維子空間中,而對抗樣本則不處于該子空間內,如果可以將這些對抗樣本映射到該子空間中,也就可以實現防御對抗攻擊的效果。然而在實際任務中,往往很難確定該子空間,但可以嘗試一個找到包含該子空間的低維空間。
4.1.1 圖像壓縮
文獻[18-19]指出,JPEG空間是一個有效的低維空間,將對抗樣本轉換為JPEG格式可以一定程度上抵御對抗攻擊;文獻[20]提出了面向深度神經網絡的JPEG壓縮方法來抵御對抗樣本(“特征蒸餾”),通過重新設計標準的JPEG壓縮算法,以達到最大化提高防御效率同時保證DNN測試準確率的效果;
文獻[21]提出了ComDefend防御方法,利用圖像壓縮網絡來消除對抗擾動或打破對抗擾動的結構。ComDefend使用兩個網絡先將圖片進行壓縮以去除對抗樣本中的噪聲信息,再重建以獲得清晰的圖片。ComDefend針對清晰圖像進行訓練,在訓練階段不需要對抗樣本,因此降低了計算成本。
4.1.2 去噪網絡
文獻[22]通過添加外部模型作為附加網絡來針對對抗樣本進行去噪預處理,論文首先提出一種以像素為導向的去噪器(pixel guided denoiser,PGD),希望最小化對抗樣本去噪后的圖像與原始樣本之間的差異。但由于去噪器難以完全消除擾動,剩下的微小擾動仍然會逐層放大,最終導致網絡的錯誤輸出。針對此問題,論文又提出了一種以高級表示為導向的去噪器(HGD),與PGD不同,將去噪后的圖片與原始圖片都輸入到預訓練好的深度神經網絡模型中,將最后幾層的高級特征的差異作為損失函數來訓練去噪器,有效避免了PGD的擾動逐層放大的問題。
4.1.3 卷積稀疏編碼
文獻[23]在卷積稀疏編碼的基礎上,構造了一個分層的低維擬自然圖像空間,該空間在消除對抗擾動的同時逼近自然圖像空間。通過在輸入圖像和神經網絡第一層之間引入一種新的稀疏變換層(Sparse Transformation Layer,STL),可以有效將對抗樣本投影到擬自然圖像空間中。
4.2 修改模型
4.2.1 在原模型上添加新的單元
文獻[24]在初始網絡結構的基礎上,添加一個利用非局部平均(non-local means)與濾波器對特征進行降噪,利用對抗訓練實現對對抗樣本的防御。
4.2.2 引入隨機性
文獻[25]提出一種隨機多樣化機制作為防御對抗攻擊的策略。該方法在網絡中引入了一種多通道的結構,各個通道在訓練與測試階段采用不同的隨機策略,以達到防御對抗攻擊的目的。
文獻[26]提出了PNI(Parametric Noise Injection)方法,通過將高斯噪聲注入到神經網絡每一層的激活和權重中提高網絡的隨機性。但在網絡訓練的過程中,除了訓練每一層的權重,還要訓練噪聲的參數,加重了訓練負擔。
4.2.3 防御性蒸餾
文獻[27]基于訓練深度神經網絡的蒸餾法提出了防御性蒸餾,以提高模型魯棒性。該方法希望將訓練好的復雜模型學習到的“知識”遷移到一個結構更為簡單的網絡中,或者通過簡單的網絡去學習復雜模型中的“知識”。其具體思路是: 首先根據原始訓練樣本X和標簽Y訓練一個初始的深度神經網絡F(X), 然后利用樣本X與F(X)作為新的標簽訓練一個蒸餾網絡,得到新的概率分布Fd(X), 最終利用整個網絡進行分類或預測。這樣可以使網絡的決策邊界更加平滑,有效防御基于梯度產生的對抗樣本。
4.2.4 梯度正則化
神經網絡的輸出對輸入的梯度幅度過大是造成其過于敏感的原因,因此文獻[28]使用梯度正則化來提升網絡的對抗魯棒性。在訓練深度神經網絡的過程中,懲罰輸出相對輸入的變化幅度,使輸出對于輸入的敏感性降低,從而達到隱藏梯度的效果,但帶來了更大的計算量。使用梯度正則化的邏輯基礎在于輸入和輸出之間的連續性,由于分類問題的標簽是量化后的結果,已經喪失了連續性。因此,直接使用梯度正則化對分類任務并不特別合適,而是適用于編碼器等本身輸出與輸入之間連續性較好的任務。圖6(a) 顯示了對編碼器進行攻擊的結果,雖然其輸入圖像視覺效果保持不變,但其重建圖像發生了顯著的變化,如圖6(b) 所示。在編碼器訓練時加入梯度正則化可以顯著增強所得結果的穩健性[64]。此時,為達到圖6(b) 所示的重建目標,輸入圖像本身就已經變得和目標類別很相近(如圖6(c) 所示),避免了對抗攻擊。
4.3 對抗訓練
對抗訓練指的是利用對抗樣本對網絡進行對抗訓練。隨著網絡所接受的對抗樣本數量的增加,網絡對于對抗樣本的魯棒性也就越強,同時網絡對于干凈樣本的分類正確率也往往會增加[29]。
最直接的方法是使用針對訓練網絡產生的對抗樣本進行訓練[29]。另外,還可以采用集成訓練方法[30],使用其他模型產生的對抗樣本來擴充本模型的訓練集,從而增強訓練模型的黑盒魯棒性。除此之外,還可以采用生成模型來產生對抗樣本進行訓練,文獻[31]基于AC-GAN產生無約束(非噪聲)的對抗性樣本;文獻 [32]提出了AdvGAN模型,使用生成對抗網絡對圖片生成對抗擾動。采用生成模型進行對抗訓練的方法受限于生成模型對數據集的擬合能力與生成圖像的能力,并且生成模型仍然是學習訓練集的分布,無法突破訓練集的約束,對未知對抗樣本的魯棒性仍有待考證。
雖然對抗訓練取得了一定效果,但是對抗訓練在訓練過程中不僅需要干凈的訓練樣本,同時也需要大量的對抗樣本,極大地增加了所需的計算資源。同時,文獻[65]指出,即使是經過對抗訓練的網絡,也能有效計算出針對該網絡的新對抗樣本。
4.4 特征分析與網絡分析
除了以上方法,還可以分析圖像特征或者分析網絡響應,進而對對抗樣本進行檢測。
隱寫分析是指在已知或未知嵌入算法的情況下,從觀察到的數據檢測判斷其中是否存在秘密信息,分析數據量的大小和數據嵌入的未知,并最終破解嵌入內容的過程。針對圖像的對抗攻擊與圖像上的隱寫術都是在像素值上進行擾動,而隱寫分析可以有效地檢測通過隱寫術模擬真實圖像中相鄰像素之間的依賴關系進行的修改,所以也可以利用隱寫分析來識別對抗攻擊造成的偏差。文獻[33]提出一種利用隱寫分析來檢測對抗樣本的方法,根據隱寫分析對圖像進行特征的提取,再利用線性分類器對樣本是否為對抗樣本進行分類。
文獻[34]提出了基于有效路徑的對抗樣本檢測方法,其理論基礎在于深度神經網絡工作時,并不是所有的神經元都會被激活,正常樣本和攻擊樣本所激活的神經元會有所不同,即有效路徑不同,由此可以從有效路徑的角度出發來分析神經網絡。
文獻[17]認為,數據中的特征分為穩健特征和非穩健特征,而對抗樣本的產生歸因于非穩健特征的出現: 某些來自數據分布模式的特征具備高度預測性,但對于人類而言是脆弱且難以理解的,模型在對抗攻擊下表現的脆弱性是模型對數據中泛化較好的特征具備敏感性的直接結果,這種對抗脆弱性完全是以一種“以人為中心”的現象,因為從標準監督學習的角度來看,非穩健特征和穩健特征具備同等的重要性。因此,如果希望獲得具有魯棒性、解釋性的模型,就需要將人類先驗知識更好地引入訓練過程,而僅通過模型訓練難以獲得。
4.5 類腦計算、因果計算及其他
一些觀點認為,神經網絡雖然受人類神經元的啟發,但其并不能真正模仿人類思考的過程。因此,一些研究致力于開發新的計算方式以增強模型的泛化能力。
文獻[66]提出了一種通用似然比方法,該方法能夠使用一些類似于大腦的生物機制來訓練人工神經網絡;文獻[67]受神經回路中非線性樹突計算基礎的生物物理原理啟發,證明了神經網絡對于高度非線性激活的對抗攻擊具有天然的魯棒性;文獻[68]分析了DNN和人類對模式進行分類的方式之間的差異,提出了密集關聯記憶(DAM)模型,神經元之間具有更高階的相互作用,更能準確地模仿人類的感知;文獻[69-71]受人類神經元中電脈沖信號的啟發,提出脈沖神經元,其輸入輸出全部都是脈沖信號(例如010100…),更接近于真實的生物神經模型;文獻[72-74]則從貝葉斯推理、圖卷積神經網絡等角度,重新考慮了數據之間的因果關系,希望神經網絡能夠具有推理能力,以訓練出更加魯棒的模型。
5 結論
本文介紹了針對神經網絡的對抗攻擊的基本概念和原理,梳理了經典的對抗攻擊算法和防御算法,分析了對抗攻擊的未來發展趨勢。
對抗攻擊在近年來得到了很多關注,在通過攻擊發現神經網絡共有缺陷、通過防御增強神經網絡的性能等方面仍然有許多值得探索的問題。對抗攻擊并不是為了否定深度學習和神經網絡,而是為了幫助神經網絡抵御未知的惡意攻擊,幫助人類更好地了解神經網絡背后的數學原理,揭示其工作過程,進而訓練出更穩健、更具解釋性的模型,以達到提升神經網絡認知水平的最終目的。
參考文獻:
[1] Simonyan K, Zisserman A. Very Deep Convolutional Networks for Large-Scale Image Recognition [EB/OL]. (2015-04-10) [2020-01-19]. https:∥arxiv.xilesou.top/pdf/1409.1556.pdf.
[2] He K M, Zhang X Y, Ren S Q, et al. Deep Residual Learning for Image Recognition[C]∥ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016: 770-778.
[3] Huang G, Liu Z, Van Der Maaten L, et al. Densely Connected Convolutional Networks[C]∥ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017: 4700-4708.
[4] Litjens G, Kooi T, Bejnordi B E, et al. A Survey on Deep Learning in Medical Image Analysis[J]. Medical Image Analysis, 2017, 42: 60-88.
[5] Shen D G, Wu G R, Suk H I. Deep Learning in Medical Image Analysis[J]. Annual Review of Biomedical Engineering, 2017, 19: 221-248.
[6] Bojarski M, Del Testa D, Dworakowski D, et al. End to End Learning for Self-Driving Cars[EB/OL]. (2014-04-25) [2020-01-19]. https:∥arxiv.xilesou.top/pdf/1604.07316.pdf.
[7] Tian Y C, Pei K X, Jana S, et al. Deeptest: Automated Testing of Deep-Neural-Network-Driven Autonomous Cars[C]∥Proceedings of the 40th International Conference on Software Engineering, 2018: 303-314.
[8] Goodfellow I, Shlens J, Szegedy C. Explaining and Harnessing Adversarial Examples[C]∥International Conference on Learning Representation(ICLR), 2015.
[9] Papernot N, McDaniel P, Jha S, et al. The Limitations of Deep Learning in Adversarial Settings[C]∥IEEE European Symposium on Security and Privacy (EuroS&P), 2016: 372-387.
[10] Moosavi-Dezfooli S M, Fawzi A, Frossard P. Deepfool: A Simple and Accurate Method to Fool Deep Neural Networks[C]∥ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016: 2574-2582.
[11] Nguyen A, Yosinski J, Clune J. Deep Neural Networks are Easily Fooled: High Confidence Predictions for Unrecognizable Images[C]∥ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015: 427-436.
[12] Tang S L, Huang X L, Chen M J, et al. Adversarial Attack Type I: Cheat Classifiers by Significant Changes[J/OL]. IEEE Transactions on Pattern Analysis and Machine Intelligence. DOI: 10.1109/TPAMI. 2019.2936378.
[13] Gilmer J, Metz L, Faghri F, et al. Adversarial Spheres[EB/OL]. (2019-08-12)[2020-01-19]. https:∥arxiv.org/pdf/1801.02774v2.pdf.
[14] Schmidt L, Santurkar S, Tsipras D, et al. Adversarially Robust Generalization Requires More Data[C]∥Conference on Neural Information Processing Systems(NIPS), 2018: 5014-5026.
[15] Bubeck S, Price E, Razenshteyn I. Adversarial Examples from Computational Constraints[EB/OL]. (2018-05-25)[2020-01-19]. https:∥arxiv.org/pdf/1805.10204.pdf.
[16] Shafahi A, Huang W R, Studer C, et al. Are Adversarial Examples Inevitable?[EB/OL]. (2018-09-06)[2020-01-19]. https:∥arxiv.org/pdf/1809.02104v1.pdf.
[17] Ilyas A, Santurkar S, Tsipras D, et al. Adversarial Examples are Not Bugs, They are Features[EB/OL].(2019-08-12)[2020-01-19]. https:∥arxiv.org/pdf/1905.02175v3.pdf.
[18] Dziugaite G K, Ghahramani Z, Roy D M. A Study of the Effect of JPG Compression on Adversarial Images[EB/OL]. (2016-08-02)[2020-01-19]. https:∥arxiv.org/pdf/1608.00853.pdf.
[19] Das N, Shanbhogue M, Chen S T, et al. Keeping the Bad Guys Out: Protecting and Vaccinating Deep Learning with JPEG Compression[EB/OL]. (2017-05-08)[2020-01-19]. https:∥arxiv.org/pdf/1705.02900.pdf.
[20] Liu Z H, Liu Q, Liu T, et al. Feature Distillation: DNN-Oriented JPEG Compression Against Adversarial Examples[EB/OL].(2018-03-14)[2020-01-19].https:∥arxiv.org/pdf/1803.05787.pdf.
[21] Jia X J, Wei X X, Cao X C, et al. ComDefend: An Efficient Image Compression Model to Defend Adversarial Examples[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019: 6084-6092.
[22] Liao F Z, Liang M, Dong Y P, et al. Defense Against Adversarial Attacks Using High-Level Representation Guided Denoiser[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 1778-1787.
[23] Sun B, Tsai N, Liu F C, et al. Adversarial Defense by Stratified Convolutional Sparse Coding[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019: 11447-11456.
[24] Xie C H, Wu Y X, Van Der Maaten L, et al. Feature Denoising for Improving Adversarial Robustness[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019: 501-509.
[25] Taran O, Rezaeifar S, Holotyak T, et al. Defending Against Adversarial Attacks by Randomized Diversification[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019: 11226-11233.
[26] Rakin A S, He Z, Fan D. Parametric Noise Injection: Trainable Randomness to Improve Deep Neural Network Robustness Against Adversarial Attack[EB/OL]. (2018-11-22)[2020-01-19]. https:∥arxiv.org/pdf/1811.09310.pdf.
[27] Papernot N, McDaniel P, Wu X, et al. Distillation as a Defense to Adversarial Perturbations Against Deep Neural Networks[C]∥IEEE Symposium on Security and Privacy (SP), San Jose,USA, 2016: 582-597.
[28] Ross A S, Doshi-Velez F. Improving the Adversarial Robustness and Interpretability of Deep Neural Networks by Regularizing Their Input Gradients[C]∥Thirty-Second AAAI Conference on Artificial Intelligence, 2018: 1660-1669.
[29] Sharif M, Bauer L, Reiter M K. On the Suitability of Lp-Norms for Creating and Preventing Adversarial Examples[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops, 2018: 1605-1613.
[30] Tramèr F, Kurakin A, Papernot N, et al. Ensemble Adversarial Training: Attacks and Defenses[EB/OL]. (2017-05-30)[2020-01-19]. https:∥arxiv.org/pdf/1705.07204.pdf.
[31] Song Y, Shu R, Kushman N, et al. Constructing Unrestricted Adversarial Examples with Generative Models[C]∥ Conference on Neural Information Processing Systems(NIPS), 2018: 8312-8323.
[32] Xiao C W, Li B, Zhu J Y, et al. Generating Adversarial Examples with Adversarial Networks[EB/OL]. (2018-01-15)[2020-01-19]. https:∥arxiv.org/pdf/1801.02610.pdf.
[33] Liu J Y, Zhang W M, Zhang Y W, et al. Detection Based Defense Against Adversarial Examples from the Steganalysis Point of View[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2019: 4825-4834.
[34] Qiu Y X, Leng J W, Guo C, et al. Adversarial Defense Through Network Profiling Based Path Extraction[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019: 4777-4786.
[35] Kurakin A, Goodfellow I, Bengio S. Adversarial Examples in the Physical World[EB/OL]. (2016-11-01)[2020-01-19]. https:∥arxiv.org/pdf/1607.02533.pdf.
[36] Dong Y P, Liao F Z, Pang T Y, et al. Boosting Adversarial Attacks with Momentum[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 9185-9193.
[37] Carlini N, Wagner D. Towards Evaluating the Robustness of Neural Networks[C]∥IEEE Symposium on Security and Privacy (SP), 2017: 39-57.
[38] Chen P Y, Zhang H, Sharma Y, et al. ZOO: Zeroth Order Optimization Based Black-Box Attacks to Deep Neural Networks without Training Substitute Models[C]∥Proceedings of the 10th ACM Workshop on Artificial Intelligence and Security, 2017: 15-26.
[39] Su J W, Vargas D V, Sakurai K. One Pixel Attack for Fooling Deep Neural Networks[J]. IEEE Transactions on Evolutionary Computation, 2019, 23(5):828-841.
[40] Brendel W, Rauber J, Bethge M. Decision-Based Adversarial Attacks: Reliable Attacks Against Black-Box Machine Learning Models[EB/OL]. (2017-11-12)[2020-01-19]. https:∥arxiv.org/pdf/1712.04248.pdf.
[41] Baluja S, Fischer I. Adversarial Transformation Networks: Learning to Generate Adversarial Examples[EB/OL]. (2017-03-28)[2020-01-19]. https:∥arxiv.org/pdf/1703.09387.pdf.
[42] Cisse M, Adi Y, Neverova N, et al. Houdini: Fooling Deep Structured Prediction Models[EB/OL]. (2017-07-17)[2020-01-19]. https:∥arxiv.org/pdf/1707.05373.pdf.
[43] Han J F, Dong X Y, Zhang R M, et al. Once a Man: Towards Multi-Target Attack via Learning Multi-Target Adversarial Network Once[C]∥Proceedings of the IEEE International Conference on Computer Vision, 2019: 5158-5167.
[44] Girshick R, Donahue J, Darrell T, et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2014: 580-587.
[45] Girshick R. Fast R-CNN[C]∥Proceedings of the IEEE International Conference on Computer Vision, 2015: 1440-1448.
[46] Ren S Q, He K M, Girshick R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[C]∥ Conference on Neural Information Processing Systems(NIPS),2015: 91-99.
[47] Long J, Shelhamer E, Darrell T. Fully Convolutional Networks for Semantic Segmentation[C]∥ Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(CVPR), 2015: 3431-3440.
[48] Arnab A, Miksik O, Torr P H S. On the Robustness of Semantic Segmentation Models to Adversarial Attacks[C]∥ Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(CVPR), 2018: 888-897.
[49] Metzen J H, Kumar M C, Brox T, et al. Universal Adversarial Perturbations Against Semantic Image Segmentation[C]∥ Proceedings of the IEEE International Conference on Computer Vision(ICCV), 2017: 2774-2783.
[50] Xie C H, Wang J Y, Zhang Z S, et al. Adversarial Examples for Semantic Segmentation and Object Detection[C]∥ Proceedings of the IEEE International Conference on Computer Vision(ICCV), 2017: 1369-1378.
[51] Bengio Y. Learning Deep Architectures for AI[J]. Famdations and Trends in Machme Learning, 2009, 2(1): 1-55.
[52] Doersch C. Tutorial on Variational Autoencoders[EB/OL]. (2016-08-13)[2020-01-19]. https:∥arxiv.org/pdf/1606.05908.pdf.
[53] Tabacof P, Tavares J, Valle E. Adversarial Images for Variational Autoencoders[EB/OL]. (2016-11-01)[2020-01-19]. https:∥arxiv.org/pdf/1612.00155.pdf.
[54] Sun C J, Chen S Z, Cai J, et al. Type I Attack for Generative Models[EB/OL]. (2020-03-04) [2020-03-04]. https:∥arxiv.org/pdf/2003.01872.pdf.
[55] Gu T Y, Dolan-Gavitt B, Garg S. Badnets: Identifying Vulnerabilities in the Machine Learning Model Supply Chain[EB/OL]. (2017-08-22)[2020-01-19]. https:∥arxiv.org/pdf/1708.06733.pdf.
[56] Szegedy C, Zaremba W, Sutskever I, et al. Intriguing Properties of Neural Networks[EB/OL]. (2013-11-21)[2020-01-19]. https:∥arxiv.org/pdf/1312.6199.pdf.
[57] Song Y, Shu R, Kushman N, et al. Constructing Unrestricted Adversarial Examples with Generative Model[C]∥Conference on Neural Information Processing Systems(NIPS), 2018: 8312-8323.
[58] Cheng S Y, Dong Y P, Pang T Y, et al. Improving Black-Box Adversarial Attacks with a Transfer-Based Prior[EB/OL]. (2019-10-30)[2020-01-19]. http:∥export.arxiv.org/pdf/1906.06919.
[59] Ilyas A, Engstrom L, Madry A. Prior Convictions: Black-Box Adversarial Attacks with Bandits and Priors[EB/OL]. (2018-07-20)[2020-01-19]. https:∥arxiv.org/pdf/1807.07978v1.pdf.
[60] Papernot N, McDaniel P, Goodfellow I, et al. Practical Black-Box Attacks Against Machine Learning[C]∥ Proceedings of the ACM Asia Conference on Computer and Communications Security,2017: 506-519.
[61] Dong Y P, Pang T Y, Su H, et al. Evading Defenses to Transferable Adversarial Examples by Translation-Invariant Attacks[C]∥ Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(CVPR),2019: 4312-4321.
[62] Eykholt K, Evtimov I, Fernandes E, et al. Robust Physical-World Attacks on Deep Learning Models[EB/OL].(2017-09-13) [2020-01-19]. https:∥arxiv.org/pdf/1707.08945.pdf.
[63] Thys S, Van Ranst W, Goedemé T. Fooling Automated Survei-llance Cameras: Adversarial Patches to Attack Person Detection[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops, 2019.
[64] Sun C J, Chen S, Huang X L. Double Backpropagation for Trai-ning Autoencoders Against Adversarial Attack[EB/OL]. (2020-03-04)[2020-03-04]. https:∥arxiv.org/pdf/2003.01895.pdf.
[65] Moosavi-Dezfooli S M, Fawzi A, Fawzi O, et al. Universal Adversarial Perturbations[C]∥ Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(CVPR),2017: 1765-1773.
[66] Xiao L, Peng Y J, Hong J, et al. Training Artificial Neural Networks by Generalized Likelihood Ratio Method: Exploring Brain-Like Learning to Improve Adversarial Defensiveness[EB/OL]. (2019-07-11)[2020-01-19]. https:∥arxiv.org/pdf/1902.00358.pdf.
[67] Nayebi A, Ganguli S. Biologically Inspired Protection of Deep Networks from Adversarial Attacks[EB/OL]. (2017-03-27)[2020-01-19]. https:∥arxiv.org/pdf/1703.09202.pdf.
[68] Krotov D, Hopfield J. Dense Associative Memory is Robust to Adversarial Inputs[J]. Neural Computation, 2018, 30(12): 3151-3167.
[69] Ghosh-Dastidar S, Adeli H. Spiking Neural Networks[J]. International Journal of Neural Systems, 2009, 19(4): 295-308.
[70] Van Gerven M, Bohte S. Artificial Neural Networks as Models of Neural Information Processing[J]. Frontiers in Computational Neuroscience, 2017(11): 114.
[71] Xin J G, Embrechts M J. Supervised Learning with Spiking Neural Networks[C]∥Proceedings of IEEE International Joint Conference on Neural Networks, 2001: 1772-1777.
[72] Kipf T N, Welling M. Semi-Supervised Classification with Graph Convolutional Networks[EB/OL]. (2016-11-03)[2020-01-19]. https:∥arxiv.org/pdf/1609.02907.pdf.
[73] Battaglia P W, Hamrick J B, Bapst V, et al. Relational Inductive Biases, Deep Learning, and Graph Networks[EB/OL]. (2018-11-17)[2020-01-19]. https:∥arxiv.org/pdf/1806.01261.pdf.
[74] Xu K Y L, Hu W H, Leskovec J, et al. How Powerful are Graph Neural Networks?[EB/OL]. (2018-12-26)[2020-01-19]. https:∥arxiv.org/pdf/1810.00826.pdf.
Adversarial Attacks andDefenses Against Neural Networks
He Zhengbao,Huang Xiaolin*
(Department of Automation,Shanghai Jiao Tong University, Shanghai 200240,China)
Abstract: With continuous development of deep learning and neural network, deep neural networks have been widely used in many fields and its security has been paid more and more attention. Adversarial attacks and adversarial samples, asthe biggest threats to neural networks, have become a hot topic in recent years. The research on adversarial attacks and its defenses is also helpful to understand and improve the cognitive ability ofneural networks. This article introduces the basic principles and some classic algorithms around the adversarial attack and its defense, and explains the significance and role of the adversarial attack and the development trend.
Key words: deep learning; neural network; adversarial attack; adversarial sample; defense algorithm; artificial intelligence
收稿日期: 2020-01-19
基金項目: 國家重點研發項目(2018AAA0100702);國家自然科學基金項目(61977046)
作者簡介: 何正保(1999-),男,河南人, 研究方向是深度學習的對抗攻擊及其防御。
通訊作者: 黃曉霖(1983-),男,江西人,工學博士,副教授,青年千人,研究方向是穩健機器學習的理論與方法。
E-mail: xiaolinhuang@sjtu.edu.cn
引用格式: 何正保,黃曉霖. 針對神經網絡的對抗攻擊及其防御[ J].
航空兵器,2020, 27( 3): 11-19.
He Zhengbao,Huang Xiaolin. Adversarial Attacks andDefenses Against Neural Networks[ J]. Aero Weaponry,2020, 27( 3): 11-19.( in Chinese)