天天看點

機器視覺中使用深度學習所面臨的對抗攻擊——Survey(下)前言正文

前言

本篇部落格出于學習交流目的,主要是用來記錄自己學習中遇到的問題和心路曆程,友善之後回顧。過程中可能引用其他大牛的部落格,文末會給出相應連結,侵删!

這篇部落格記錄大部分來自一篇Survey,文章總結了目前最常見的12種攻擊方法和15種防禦方法。但是又不是存翻譯,中間可能夾雜着一些自己的了解和廢話,介意的可以看文末的其他參考連結。由于篇幅太長部落格分為上、下兩部分,其中,上部分是基礎術語和實驗室環境下以及現實環境下的現有攻擊技術,下部分是對對抗樣本存在原因的分析以及介紹常見的防禦方法。

機器視覺中使用深度學習所面臨的對抗攻擊——Survey(上)

參考文獻:Threat of Adversarial Attacks on Deep Learning in Computer Vision: A Survey

正文

在有關計算機視覺深度學習的對抗性攻擊的文獻中,對對抗樣本的存在有不同的觀點。這些觀點通常與研究人員在攻擊或捍衛深層神經網絡時所做的經驗觀察一緻。研究學者們針對為什麼會存在對抗樣本的原因進行了以下分析,對抗樣本的存在性分析:(這部分還不是很了解,是以基本原文翻譯)

Limits on adversarial robustness 對抗魯棒性的限制

Fawzi等提出了一種研究分類器在敵對擾動表現出不穩定的架構。他們建立了分類器魯棒性的基本限制,叫作資料集類别之間的可差別性測量。可差別性被定義為兩個類的線性分類器之間的距離的均值和學習的非線性分類器的矩陣二階力矩之間的距離。這一研究表明,在深層神經網絡之外的分類器中也存在着對抗樣本。所提出的分析追溯了對低靈敏度分類器敵對不穩定性的現象,這與當時盛行的觀點并不是完全比對的,即因為網絡的高度非線性使得它們容易受到對抗樣本的影響。

Space of adversarial examples 對抗樣本的空間

Tabacof和Eduardo在MNIST和ImageNet資料集上生成了淺層和深層網絡分類器的對抗樣本,并利用不同的分布和強度的噪聲來探測對抗樣本的像素空間。作者通過經驗證明,在像素空間的大區域中出現了對抗樣本,這與文章中的類似主張是一緻的。然而,與線性假設相反,他們認為和一個強大的深層分類器一樣,一個弱的、淺的、更線性的分類器也同樣易受對抗性的例子的影響。

Tramer等提出了一種估計對抗樣本空間維數的方法。它聲稱,對抗樣本跨越了一個連續的高維空間(維數大約為25)。由于高次元,不同分類器的子空間可以交叉,進而産生了對抗樣本的可轉移性。有趣的是,他們的分析表明,即使是在容易受到直接攻擊的情況下,也可以防禦基于轉移攻擊的分類器。

Boundary tilting perspective 邊界傾斜視角

Tanay和Griffin提供了一種邊界傾斜視角,對深度神經網絡的對抗樣本的存在進行了研究。他們認為,一般來說,當一個單類資料被抽樣來學習和評估一個分類器時,存在一個類的子簇,當分類邊界靠近這個子簇時,就存在這個類的對抗樣本。他們将分類器的對抗性強度的概念形式化,并将其簡化為考慮分類器邊界與最近的質心分類器之間的偏差角。結果表明,分類器的對抗強度可以随決策邊界的傾斜而變化。作者還認為分類器的對抗穩定性與正則化有關。在Tanay和Griffin的觀點中,關于對抗樣本存在的線性假設是無法令人信服的。

Prediction uncertainty and evolutionary stalling of training cause adversaries

預測的不準确性和訓練中進化的停滞導緻了敵手的産生

Cubuk等認為,對抗樣本的起源主要是由于神經網絡對其預測的固有的不确定性。他們從經驗上計算出不确定性的函數形式,這表明它獨立于網絡體系結構、訓練協定和資料集。有人認為,這種形式隻對網絡分對數差異的統計有一定的影響。這最終導緻了由對抗性攻擊造成的欺騙比率,顯示了對擾動大小的普遍縮放。他們研究了FGSM、ILCM和BIM的攻擊,以證明他們的說法。也有人聲稱,基于幹淨圖像的網絡的準确性與它的對抗健壯性相關。

Rozsa等人假設,對抗擾動的存在是對訓練圖像的決策邊界演化停滞的結果。在他們看來,個體訓練樣本一旦被正确分類,就停止了對模型(即神經網絡)的訓練損失的貢獻,這最終會使他們接近決策邊界。是以,通過添加小擾動就可以将這些(類似的)樣本丢棄到錯誤的類區域。他們提出了一個批量調整的網絡梯度(BANG)算法來訓練一個網絡,以減輕訓練過程中的進化停滞。

Accuracy-adversarial robustness correlation 準确性-對抗 的魯棒性相關

為了研究對抗樣本的存在性,Rozsa等對8個深度網絡分類器的準确率以及對[23], [94]中引入的3個對抗性攻擊的魯棒性之間的相關性進行了實證分析。研究的分類器包括AlexNet[9]、vgg16和VGG-19網絡[163]、berkeley訓練版本的GoogLeNet和普林斯頓-GoogLeNet[18]、ResNet- 52;resnet - 101;和resnet - 152[147]。在大規模ImageNet資料集[11]的幫助下,利用[23]和[94]中提出的技術,生成了對抗樣本。他們的實驗結果表明,具有較高分類準确率的網絡通常對抗辯的例子表現出更強的魯棒性。他們還得出結論,對抗樣本能更好地轉移在相似的網絡拓撲之間。

More on linearity as the source 更多關于線性的來源

Kortov和hopfield在稠密聯想記憶模型(DAM)模型中考察了對抗性擾動的存在[164]。與典型的現代深層神經網絡相比,DAM模型采用了更高階(二階以上)的神經元之間的互相作用。作者已經證明,使用較小的互相作用能力的DAM模型産生的對抗樣本,類似于使用一個帶有ReLU激勵函數[165]的深度神經網絡,無法欺騙那些具有更高階的互動作用的模型。作者提供了獨立于FGSM[23]攻擊的對抗樣本存在的經驗證據,但支援Goodfellow等人的線性假設[23]。

Existence of universal perturbations 通用擾動的存在

Moosavi-Dezfooli等[16]最初認為,通用的對抗性擾動利用分類器誘導的決策邊界之間的幾何相關性。它們的存在一定程度上歸功于一個子空間,它包含了決定邊界的法線,這樣,法線也圍繞着自然圖像。在[70]中,他們進一步建立了他們的理論,并顯示了共同方向的存在(在資料點之間共享),而分類器的決策邊界可以非常積極地彎曲。他們認為,這種方向在通用擾動的存在中起着關鍵作用。在此基礎上,提出了一種新的幾何方法來有效地計算普遍的對抗性擾動。

值得注意的是,以前的Fawzi等人[69]也将分類器的魯棒性的理論界限與決策邊界的曲率聯系起來。類似地,Tramer等[77]也在資料點附近保持了決策邊界的曲率,負責神經網絡對黑盒攻擊的脆弱性。在最近的另一項工作中,Mopuri等[193]提出了一個類似于GAN的模型,以學習針對給定目标模型的通用對抗擾動的分布。學習的分布也被觀察到在模型之間顯示良好的可移植性。

對抗攻擊防禦

目前,在對抗攻擊防禦上存在三個主要方向:

1)在學習過程中修改訓練過程或者在測試階段修改的輸入樣本。

2)修改網絡,比如:添加更多層/子網絡、改變損失/激活函數等。

3)當分類未見過的樣本時,用外部模型作為附加網絡。

這些方向具體又可分為(a)完全抵抗(Complete),即能夠分對對抗樣本的原始類别(b)僅探測方法(Detection only),即隻鑒别出哪些是對抗樣本。具體分類如下圖:

機器視覺中使用深度學習所面臨的對抗攻擊——Survey(下)前言正文

修改訓練過程/ 輸入資料

1 Brute-force adversarial training 蠻力對抗訓練

對抗訓練是抵禦對抗樣本攻擊的第一道防線。通過不斷輸入新類型的對抗樣本并執行對抗訓練,進而不斷提升網絡的魯棒性。為了保證有效性,該方法需要使用高強度的對抗樣本,并且網絡架構要有充足的表達能力。這種方法需要大量的訓練資料,因而被稱為蠻力對抗訓練。很多文獻中提到這種蠻力的對抗訓練可以正則化網絡以減少過拟合 [23,90],進而增強網絡的抵抗能力。然而,Moosavi-Dezfooli[16] 指出,無論添加多少對抗樣本,都存在新的對抗攻擊樣本可以再次欺騙網絡。

2、Data compression as defense 資料壓縮

注意到大多數訓練圖像都是 JPG 格式,Dziugaite等人使用 JPG 圖像壓縮的方法,減少FGSM對抗擾動對準确率的影響。實驗證明該方法對部分對抗攻擊算法有效,但通常僅采用壓縮方法是遠遠不夠的,并且壓縮圖像時同時也會降低正常分類的準确率,而微小的壓縮又不能夠去除對抗擾動。

3、Foveation based defense 基于中央凹機制的防禦

Luo等人提出用中央凹(foveation)機制可以防禦 L-BFGS 和 FGSM 生成的對抗擾動,其假設是基于CNN分類器訓練大量資料集對于圖像的縮放和轉換變動是魯棒的,而對抗模式不具備這種特性。但這種方法在更強大的攻擊下還沒被證明有效性。

4、Data randomization and other methods 資料随機化方法及其他方法

Xie等人發現對訓練圖像引入随機重縮放可以減弱對抗攻擊的強度,其它方法還包括随機 padding、訓練過程中的圖像增強等。

修改網絡

首先,是幾種完全抵抗方法,然後再是僅探測方法。

5、Deep Contractive Networks 深度壓縮網絡

人們觀察到簡單地将去噪自編碼器(Denoising Auto Encoders)堆疊到原來的網絡上隻會使其變得更加脆弱,因而 Gu 和 Rigazio[24] 引入了深度壓縮網絡(Deep Contractive Networks),其中使用了和壓縮自編碼器(Contractive Auto Encoders)類似的平滑度懲罰項。

6、Gradient regularization/masking 梯度正則化/ 遮罩

Ross 和 Doshi-Velez使用輸入梯度正則化以提高對抗攻擊魯棒性 [52],方法訓練可微模型(如深度神經網絡),同時懲罰導緻輸出相對于輸入的變化程度。這樣一個小的對抗擾動就不會對輸出有很顯著的影響。該方法和蠻力對抗訓練結合有很好的效果,但計算複雜度太高,在很多場合已經棄用。

在此之前,Lyu等人也使用了懲罰網絡模型在輸入方面的損失函數梯度的概念,以對抗基于L-BFGS[22]和FGSM[23]的攻擊。類似地,Shaham等人試圖通過在每次參數更新時最小化模型在對抗性示例上的損失來改善神經網絡的局部穩定性。他們最小化模型在對抗樣本資料集的損失,而不是原始資料。在一項相關的工作中,Nguyen和Sinha[44]通過在網絡的logit輸出中添加噪聲,引入了一種基于遮罩的對C&W攻擊[36]的防禦。

7、Defensive distillation 防守性蒸餾

據Hinton等[166]介紹,distillation (蒸餾)是指将複雜網絡的知識遷移到簡單網絡上。該知識以訓練資料的類機率向量形式提取,并回報給訓練原始模型。Papernot[38] 利用這種技術提出了 Defensive distillation,并證明其可以抵抗小幅度擾動的對抗攻擊。防禦性蒸餾也可以被看作是梯度遮罩技術的一個例子。

8、Biologically inspired protection 生物啟發的防禦方法

使用類似與生物大腦中非線性樹突計算的高度非線性激活函數以防禦對抗攻擊 [124]。另外一項工作 Dense Associative Memory 模型也是基于相似的機制 [127]。Brendel和Bethge[187]聲稱,由于計算的數值限制,這些攻擊在生物激發的保護上失敗了[124]。穩定計算再次讓攻擊受保護的網絡成為可能。

9、Parseval Networks 帕網絡

這些網絡通過控制網絡的全局Lipschitz常數來分層正則化。網絡可以被看作是函數(在每一層)的組合,通過對這些函數保持一個小的Lipschitz常數,可以對這些函數對抗小的幹擾。

10、DeepCloak

在分類層(一般為輸出層)前加一層特意為對抗樣本訓練的遮罩層。添加的層通過向前傳遞幹淨的和對抗性的圖像對進行顯式的訓練,它為這些圖像對編碼先前層的輸出特性之間的差異。它背後的理論認為添加層中最主要的權重對應于網絡最敏感的特性(就對抗操縱而言)。是以,在進行分類時,這些特征被強制将添加的層的主導權重變為零。

11、Miscellaneous approaches 混雜方法

這章包含了多個人從多種角度對深度學習模型的調整進而使模型可以抵抗對抗性攻擊。

Zantedeschi等[46]提出使用有界的ReLU[174]來降低圖像中對抗性模式的有效性。

Jin等[120]介紹了一種前饋CNN,它使用附加噪聲來減輕對抗性示例的影響。

Sun et al.[56]提出了以統計過濾為方法使網絡具有魯棒性的超網絡。

Madry et al.[55]從魯棒優化的角度研究對抗性防禦。他們表明,與PGD對手進行對抗性訓練,可以成功地抵禦一系列其他對手。後來,Carlini等[59]也證明了這一觀察。

Na等[85]采用了一種統一嵌入的網絡進行分類和低水準相似度學習。該網絡使用的是幹淨圖像和相應的對抗性嵌入樣本之間的距離。

施特勞斯等人[89]研究了保護網絡免受擾動的內建方法。

Kadran等[136]修改了神經網絡的輸出層,以誘導對對抗攻擊的魯棒性。

Wang et al.[129],[122]利用網絡中的非可逆資料變換,開發了抗敵對神經網絡。

Lee等人[106]開發了多種規則化網絡,利用訓練目标來最小化多層嵌入結果之間的差異。

Kotler和Wong[96]提出學習基于相關性的分類器,該分類器對小對抗擾動具有魯棒性。他們訓練一個神經網絡,在一個标準設定中,它可以很好地達到高精确度(90%)。

Raghunathan等[189]研究了具有一個隐藏層的神經網絡的防禦問題。他們的方法在

MNIST資料集上生成一個網絡和一個證書,達到一個防禦目的。

Kolter和Wong[96]和Raghunathan等[189]是為數不多的幾種可以證明的對抗敵對攻擊的方法。考慮到這些方法在計算上不适用于更大的網絡,唯一被廣泛評估的防禦是Madry等人[55]的防禦。

12、僅探測方法

這章介紹了 4 種網絡,SafetyNet,Detector subnetwork,Exploiting convolution filter statistics 及 Additional class augmentation。

SafetyNet 介紹了 ReLU 對對抗樣本的模式與一般圖檔的不一樣,文中介紹了一個用 SVM 實作的工作。

Detector subnetwork 介紹了用一個子網絡來增強目标網絡,該子網絡訓練用于檢測輸入中的對抗性擾動的二進制分類任務。結果表明,将這種網絡附加到模型的内部層并使用對抗性訓練可以幫助檢測使用FGSM、BIM和DeepFool方法産生的擾動。然而,Lu等[66]後來表明,這種方法再次容易受到反對策的影響。

Exploiting convolution filter statistics 介紹了同 CNN 和統計學的方法做的級聯分類器模型在分辨對抗樣本上可以有 85% 的正确率。

Additional class augmentation 是Grosse等人提出通過增加一個類來增強潛在目标神經網絡模型,将所有敵對的例子分類到這個類别中。

使用附加網絡

13、防禦通用擾動

Akhtar等人[81]提出了一種防禦架構,該架構将額外的預輸入層附加到目标網絡中,并訓練它們對對抗樣本進行校正,使分類器對同一圖像的幹淨版本的預測與對抗樣本預測相同。通過提取訓練圖像輸入輸出差異的特征,對分離的檢測器進行訓練。利用一個單獨訓練的網絡加在原來的模型上,進而達到不需要調整系數而且免疫對抗樣本的方法。

14、基于 GAN 的防禦

Lee等人[101]利用生成性對抗網絡的流行架構[153]來訓練一個對FGSM[23]類攻擊健壯的網絡。作者建議沿着一個生成網絡直接對網絡進行訓練,該網絡試圖對該網絡産生擾動。在訓練過程中,分類器不斷嘗試對幹淨和擾動的圖像進行正确的分類。我們将此技術歸類為附加方法,因為作者建議始終以這種方式訓練任何網絡。在另一個基于GAN的防禦中,Shen等[58]人使用網絡的生成器部分來修正一個受幹擾的圖像。

15、僅探測方法

介紹了 Feature Squeezing、MagNet 以及混雜的辦法。

Feature Squeezing 方法用了兩個模型來探查是不是對抗樣本。後續的工作介紹了這個方法對 C&W 攻擊也有能接受的抵抗力。He等[76]也将特征壓縮與[175]中提出的內建方法相結合,以顯示防禦的力量并不總是通過組合它們而增加。

MagNet: Meng和Chen[45]提出了一個架構使用一個或多個外部探測器将輸入圖像分類為對抗性或幹淨圖像。在教育訓練期間,該架構的目的是學習各種清潔圖像。對圖檔的流行(manifold)測量值來訓練,進而分辨出圖檔是不是帶噪聲的。

混雜方法(Miscellaneous Methods):Liang等 [50]訓練了一個模型,把所有輸入圖檔當成帶噪聲的,先學習怎麼去平滑圖檔,之後再進行分類。将圖像的攝動處理為噪聲,并利用标量量化和空間平滑濾波分别檢測這些攝動。将分離的二進制分類器訓練為使用所提議的特性的對抗樣本檢測器。Gebhart和Schrater[92]将神經網絡計算視為圖中的資訊流,并提出了一種利用誘導圖的持久同源性檢測對抗性擾動的方法。

擴充

既能欺騙機器,也能迷惑人類!Goodfellow等人提出新一代對抗樣本

利用三個關鍵點來測試對抗樣本是否會對人類視覺系統産生可觀測的影響:首先,研究者使用近期的黑箱對抗樣本建構技術為未擷取模型架構或參數的目标模型建立對抗樣本。第二,研究者調整機器學習模型來模仿人類的初始視覺處理,使對抗樣本更有可能從模型遷移至人類觀察者。第三,研究者在時限性環境中評估人類觀察者的分類結果,以使對抗樣本對人類感覺的細微影響也能被檢測到。

幾張貼紙就讓神經網絡看不懂道路标志,伯克利為真實環境生成對抗樣本

神奇的面包機!谷歌造出對抗樣本的實體版

繼圖像識别後,圖像标注系統也被對抗樣本攻陷!

修改一個像素,就能讓神經網絡識别圖像出錯

參考連結:

http://www.sohu.com/a/224888255_129720

http://baijiahao.baidu.com/s?id=1594095099083865391&wfr=spider&for=pc

http://3g.163.com/dy/article/DC5JFUQS0511FERQ.html

繼續閱讀