1
雷鋒網 AI 科技評論按:自 Ian Goodfellow 等研究者發(fā)現(xiàn)了可以讓圖像分類器給出異常結果的「對抗性樣本」(adversarial sample)以來,關于對抗性樣本的研究越來越多。NIPS 2017 上 Ian Goodfellow 也牽頭組織了 Adversarial Attacks and Defences(對抗攻擊防御)競賽,供研究人員、開發(fā)人員們在實際的攻防比拼中加深對對抗性樣本現(xiàn)象和相關技術手段的理解。
在比賽結束后,參與此次比賽的谷歌大腦、清華大學以及其它參與的企業(yè)和學校的研究人員們聯(lián)合撰寫了一篇對于本次比賽的總結。其中清華大學博士生董胤蓬、廖方舟、龐天宇及指導老師朱軍、胡曉林、李建民、蘇航組成的團隊在競賽中的全部三個項目中得到冠軍。雷鋒網 AI 科技評論把這篇比賽總結的主要內容編譯如下。
最近機器學習和深度神經網絡的飛速發(fā)展,使得研究人員能夠解決諸如圖像、視頻、文字分類等很多重要的實際問題。然而目前的機器學習分類器很容易受到對抗樣本的攻擊。所謂對抗樣本,就是對輸入數(shù)據(jù)進行略微修改,以使得機器學習算法對該輸入給出錯誤的分類結果。在很多情況下,這些修改非常細微,人類觀察者甚至根本不會注意到這些修改,但是分類器卻會因此犯錯誤。對抗樣本攻擊對目前的機器學習系統(tǒng)提出了挑戰(zhàn),因為即使攻擊者無法訪問基礎模型,也能對機器學習系統(tǒng)發(fā)起攻擊。
此外,在現(xiàn)實世界中運行的機器學習系統(tǒng)也可能遇到對抗樣本攻擊,它們通過不準確的傳感器感知輸入,而不是以精確的數(shù)字信息作為輸入。從長遠角度來看,機器學習和 AI 系統(tǒng)必將變得更加強大。類似于對抗樣本的機器學習安全漏洞可能危害甚至控制強大的 AI 們。因此,面對對抗樣本的魯棒性是 AI 安全問題的一個重要組成部分。
針對對抗樣本的攻擊和防御的研究有很多的困難之處,其中一個原因是很難評估一個提出的攻擊方式或者防御措施是否有效。對于傳統(tǒng)的機器學習,假設已經從獨立同分布的數(shù)據(jù)集中分出了訓練集和測試集,那么就可以通過計算測試集的損失來評估模型的好壞,這是一種很簡單的方法。但是對于對抗機器學習,防御者必須應對一個開放的問題,即攻擊者將發(fā)送來自未知分布的輸入。僅僅提供針對某種單一的攻擊方式的防御方式,或者一系列研究人員提前準備好的防御方式是不夠的。因為即使防御者在這樣的實驗中表現(xiàn)良好,機器學習系統(tǒng)也可能會因為某些防御者沒有預料到的攻擊而被攻破。理想情況下,一種防御方式是可以被證明可行的,但是通常機器學習和神經網絡很難從理論上進行分析。因此,這次舉辦的比賽使用了一種有效的評估方法:多只獨立的隊伍作為防守方和攻擊方進行對抗,兩方都盡可能的去獲得勝利。這種評估方法雖然不如理論證明那樣有決定性,但是這與現(xiàn)實生活中安全場景下的攻防對抗更相似。
在這篇文章中,我們介紹了NIPS 2017 對抗樣本攻防比賽的情況,包括對抗樣本攻擊研究的一些關鍵問題(第二部分),比賽組織結構(第三部分),以及一些頂尖參賽者所使用的一些方法(第四部分)。
對抗樣本是指那些經過特定優(yōu)化,使得對模型的輸入進行了錯誤分類。如果輸入樣本是一個自然得到的樣本,比如來自 ImageNet 數(shù)據(jù)集的照片,我們稱之為「干凈樣本」(clean example)。如果攻擊者修改了樣本,目的是使得該樣本會被誤分類,我們稱之為「對抗樣本」(adversasrial example)。當然,這種對抗攻擊并不一定會成功,模型可能仍然能夠正確分類對抗樣本。我們可以測量不同模型在特定對抗樣本集上的準確率或者錯誤率。
常見攻擊場景
可能的對抗樣本攻擊可以從幾個維度進行分類。
首先,可以通過攻擊的目標或者期望進行分類。
無目標攻擊(non-targeted attack)。在這種情況下,攻擊方的目標僅僅是使得分類器給出錯誤預測,具體是哪種類別產生錯誤并不重要。
有目標攻擊(targeted attack)。在這種情況下,攻擊方想要將預測結果改變?yōu)槟承┲付ǖ哪繕祟悇e中。
其次,可以通過攻擊者對模型的了解程度進行分類。
白盒攻擊。攻擊者擁有模型的全部知識,包括模型的類型,模型結構,所有參數(shù)和可訓練權重的值。
有探針的黑盒攻擊。攻擊者對模型所知道的并不多,但是可以探測或者查詢模型,比如使用一些輸入,觀察模型的輸出結果。這種場景有很多的變種,比如攻擊者知道模型結構,但是不知道參數(shù)的值,或者攻擊者甚至連模型架構都不知道;攻擊者可能能夠觀測到模型輸出的每個類別的概率,或者攻擊者只能夠看到模型輸出最可能的類別名稱。
無探針的黑盒攻擊。在沒有探針的黑盒攻擊中,攻擊者只擁有關于模型有限的信息或者根本沒有信息,同時不允許使用探測或者查詢的方法來構建對抗樣本。在這種情況下,攻擊者必須構建出能夠欺騙大多數(shù)機器學習模型的對抗樣本。
再次,可以通過攻擊者給模型輸入對抗樣本的方法進行分類。
數(shù)字攻擊。在這種情況下,攻擊者能夠直接將實際的數(shù)據(jù)輸入到模型中。換句話說,攻擊者可以將特定的 float32 數(shù)據(jù)作為輸入給模型。在現(xiàn)實世界中,攻擊者可能給某些網絡服務上傳 PNG 圖片文件,使得這些精心設計過的文件會被錯誤的讀取。比如為了使得某些垃圾內容能夠發(fā)布在社交網絡上,需要使用對圖像文件加入對抗擾動以繞過垃圾內容檢測器。
物理攻擊。在現(xiàn)實世界中這種情況下,攻擊者不能夠直接給模型提供數(shù)字表示。但是,模型的輸入是從某些傳感器中得到的,比如相機或者麥克風。攻擊者可以在相機前放置某些物體,或者對麥克風播放一些聲音。傳感器所得到的最終表示會根據(jù)一些因素而改變,比如相機的角度,到麥克風的距離,周圍環(huán)境的光線和聲音等。這意味著攻擊者對機器學習模型輸入的控制并不是很精確的。
L-BFGS。 第一個發(fā)現(xiàn)神經網絡對抗樣本攻擊的方法之一是Goodfellow等人的 Intriguing properties of neural networks 論文.該方法的思路是解決如下的優(yōu)化問題:
作者提出使用L-BFGS優(yōu)化方法去解決這個問題,所以以此命名這種攻擊方法。
這種方法的一個主要缺點是運行速度很慢。該方法旨在找到最小的可能的攻擊擾動。這意味著該方法有時可能僅僅通過降低圖像質量而被打敗,比如把圖像的每個像素四舍五入,用 8 位二進制數(shù)字表示。
FGSM(Fast gradient sign method)。為了驗證對抗樣本只需通過目標模型的線性近似來得到的想法,I. J. Goodfellow, J. Shlens, and C. Szegedy 等人在 Explaining and harnessing adversarial examples 文章中提出了快速梯度符號函數(shù)方法(FGSM)。
FGSM 方法通過在干凈樣本的鄰域中線性化損失函數(shù),并通過如下閉合形式的方程找到精確的線性化函數(shù)的最大值:
迭代攻擊(Iterative attacks)。L-BFGS 攻擊有很高的成功率,但計算成本也很高。FGSM 攻擊成功率很低(特別是當防御者預測到有攻擊會發(fā)生的時候),但是計算成本很低。為了得到一個良好的折中方案,在少量迭代之后(如40次),重復運行專門的優(yōu)化算法以快速得到結果。
一種快速設計優(yōu)化算法的策略是,使用 FGSM(通??梢栽谝粋€很大的步長里得到可接受的結果),但是使用較小的步長運行幾次。這是因為 FGSM 每步都被設計為一直走到以該步驟起始點的小范圍球的邊緣,所以即使在梯度很小的情況下,該方法也能有較快的進展。這也引出了 Adversarial examples in the physical world 論文中的基本迭代方法(Basic Iterative Method, BIM),有時也稱為迭代FGSM(I-FGSM):
BIM方法可以很容易改進為目標攻擊,稱為迭代目標類別方法(Iterative Target Class Method):
根據(jù)實驗結果,運行足夠次數(shù)的迭代之后,該方法總能成功生成目標類別的對抗樣本。
Madry 攻擊。Towards deep learning models resistant to adversarial attacks 這篇文章表示,BIM可以通過 ε 范圍球內的隨機點開始而得到顯著的改善。這種攻擊通常被稱為「投影梯度下降」(projected gradient descent),但這個名字有些令人困惑,因為 (1)「投影梯度下降」一詞已經指代了一種更普遍的優(yōu)化方法,而不僅用于對抗攻擊,(2)一些其他攻擊方法也使用了梯度和投影,(Madry 攻擊與 BIM 僅僅在起始點出不同),所以這個名字并沒有將 Madry 攻擊與其他攻擊區(qū)分開來。
Carlini 和 Wagner攻擊(C&W)。 N.Carlini 和 D.Wagner 遵循 L-BFGS 攻擊的道路進一步改善。它們設計了一個損失函數(shù),它在對抗樣本中有較小的值,但在干凈樣本中有較大的值,因此通過最小化該損失函數(shù)即可搜尋到對抗樣本。但是與 L-BFGS 方法不同的是,本方法使用了 Adam 解決這個優(yōu)化問題,通過改變變量(比如)或者在每步之后將結果投影到邊界約束(box constraints),來解決邊界約束的問題。
它們嘗試了幾種可能的損失函數(shù),其中下面這個損失函數(shù)得到了最強的L2攻擊:
其中 Xadv 是經過參數(shù)化的; Y 是目標類別 ytarget 的簡寫;c 和 k 是參數(shù)。
對抗變換網絡(Adversarial transformation networks, ATN)。Adversarial transformation networks: Learning to generate adversarial examples 一文中,提出了一種訓練一個生成模型去生成對抗樣本的方法。這個模型以干凈樣本作為輸入,生成對應的對抗樣本。該方法的一個有點是,如果生成模型本身是一個很小的網絡,那么 ATN 相比于使用優(yōu)化的算法能夠更快的生成對抗樣本。理論上,該方法甚至比 FGSM 更快。雖然ATN確實需要更多的時間去訓練,但是一旦訓練好,大量的對抗樣本可以以極低的成本生成出來。
不可微分系統(tǒng)的攻擊(Attacks on non differentiable systems)。上面提到的所有攻擊,都需要計算被攻擊模型的梯度,以生成對抗樣本。然而,這些方法并不總是可行的,比如如果模型包含不可微的操作。在這種情況下,攻擊者可以訓練一個替代的模型,應用對抗樣本的可遷移性(transferability)對不可微系統(tǒng)實施攻擊,這與下面提到的黑盒攻擊比較類似。
據(jù) Intriguing properties of neural networks 論文的結果,對抗樣本在不同模型之間可以泛化。換句話說,能夠欺騙一個模型的對抗樣本,大多數(shù)情況下也能夠騙過其他不同的模型。這個模型被稱為可遷移性(transferability),可以用于黑盒場景中制作對抗樣本。根據(jù)源模型、目標模型、數(shù)據(jù)集和其他因素的不同,可遷移的對抗樣本的實際比例可能會從幾個百分點到 100% 不等。黑盒場景中,攻擊者可以在與目標模型相同的數(shù)據(jù)集上訓練自己的模型,甚至可以使用同分布的其他數(shù)據(jù)集上訓練模型。攻擊者訓練的模型的對抗樣本很有可能能夠欺騙未知的目標模型。
當然,可以通過系統(tǒng)地設計模型,提高對抗樣本遷移的成功率,而不僅僅是依靠運氣來實現(xiàn)遷移。
如果攻擊者不在完整的黑盒子場景中,允許使用探針,那么探針可以用來訓練攻擊者自己的目標模型副本,這個副本被稱為「替代者」。這種方法非常強大,因為作為探針的輸入樣本不需要是真正的訓練樣本,它們可以是攻擊者特定選擇的,可以準確找出目標模型的決策邊界所在位置的樣本。因此,攻擊者的模型不僅可以被訓練成為一個好的分類器,而且實際上可以對目標模型的細節(jié)進行逆向工程,所以兩個模型從系統(tǒng)性上來看,可以有很高的樣本遷移成功率。
在攻擊者無法發(fā)送探針的完成黑盒場景下,增加樣本遷移成功率的策略之一是將多個模型組成為一個集合,作為源模型以生成對抗樣本。這里的基本思想是,如果一個對抗樣本能夠欺騙整個集合中的每個模型,那么它更有可能泛化并欺騙其他模型。
最后,在有探測器的黑盒場景中,可以運行不使用梯度直接攻擊目標模型的優(yōu)化算法。這樣生成單個對抗樣本所需的時間通常遠高于使用「替代者」所需的時間,但是如果只需少量的對抗樣本,那么這些方法可能更具優(yōu)勢,因為它們不需要高昂的訓練「替代者」的成本。
目前為止,并沒有一個防御對抗樣本的方法能夠達到完全令人滿意的程度。這仍然是一個快速發(fā)展的研究領域。這里我們將概述目前為止提出的方法(尚未完全成功的防御方法)。
由于許多方法產生的對抗性擾動對于人類觀察者來說,看起來像高頻噪聲,因此很多研究者建議使用圖像預處理和去噪作為針對對抗樣本的潛在防御方法。所提出的預處理有很多方法,比如進行 JPEG 壓縮,或者使用中值濾波和降低輸入數(shù)據(jù)的精度。雖然這些防御措施可能對于很多攻擊方法很好,但是這種方法已經被證明在白盒攻擊場景下失效,即攻擊者知道防御者會使用這種預處理或去噪方法進行防御。在黑盒攻擊的情況下,這種防御在實踐中得到了有效的結果,這次防御競賽的勝利隊伍也證明了這點。在后面會介紹到,他們使用了眾多去噪方案中的一個。
許多防御方法有意或無意的,都使用了一種「梯度掩蔽」(gradient masking)的方法。大多數(shù)白盒攻擊通過計算模型的梯度來運行,因此如果不能計算得到有效的梯度,那么攻擊就會失效。梯度掩蔽使得梯度變得無用,這通常是通過在某種程度上改變模型,使其不可微分,或者使其在大多數(shù)情況下具有零梯度,或者梯度點遠離決策邊界。實際上,梯度掩蔽所做的是在不實際移動決策邊界的情況下,使得優(yōu)化器不能工作。但是由于使用同分布數(shù)據(jù)集訓練出的模型的決策邊界相差不會很多,所以基于梯度掩蔽的防御方法很容易被黑盒遷移攻擊攻破,因為攻擊者可以在「替代者」中得到梯度。一些防御策略(比如將平滑的 sigmoid 單元替換為硬閾值)被直接設計為執(zhí)行掩蔽掩蓋,其他的一些防御措施,如很多形式的對抗訓練,并沒有以梯度掩蔽作為目標設計,但是在實踐中實際做的也是與梯度掩蔽類似的工作。
還有一些防御措施首先檢測對抗樣本,并在有跡象表明有人篡改輸入圖像的情況下拒絕對輸入進行分類。這種方法只有攻擊者不知道探測器的存在或者攻擊不夠強時才可以正常工作。否則攻擊者可以構建一種攻擊,既欺騙檢測器使之認為對抗樣本是合法的輸入,又欺騙分類器使之做出錯誤的分類。
一些防御措施很有效,但是會以嚴重降低干凈樣本的準確率作為代價。比如淺層 RBF 網絡對于小數(shù)據(jù)集(如MINIST)上的對抗樣本有很強的魯棒性,但是相較于深度神經網絡在干凈樣本上有差的多的準確率。深度 RBF 網絡可能既對對抗樣本有很好的魯棒性,同時對干凈樣本也有很好的準確率,但是據(jù)我們所知,沒有人成功訓練好一個深度 RBF 網絡。
膠囊網絡(capsule network)在 Small-NORB 數(shù)據(jù)集上對白盒攻擊展示出了很好的魯棒性,但尚未在對抗樣本研究中其他更常用的數(shù)據(jù)集上進行評估。
當前研究論文中最流行的防御方法可能就是對抗性訓練了。這個思路是在訓練過程中就加入對抗樣本,使用對抗樣本和干凈樣本混合訓練模型。該方法已經成功應用于大型數(shù)據(jù)集,并且可以通過使用離散向量碼來表示輸入,以進一步提高有效性。對抗訓練的一個關鍵缺點是,它更容易過擬合到訓練中使用的特定攻擊方法中。但是這個缺點是可以被克服的,至少是在小數(shù)據(jù)集上,只需在啟動攻擊的優(yōu)化器之前,對圖像加入噪聲即可。對抗訓練的另一個主要缺點是,它傾向于在無意中學習做梯度掩蔽,而不是實際移動決策邊界。這可以在很大程度上通過來自多個模型集合的對抗樣本進行訓練來克服。對抗訓練還有一個關鍵缺點,即它傾向于過擬合到用于產生對抗樣本示例的特定約束區(qū)域中去(即模型被訓練為拒絕某一 max-norm 球型區(qū)域的對抗樣本,但是卻不能拒絕那些甚至對人類觀察者來說都不具有特別挑戰(zhàn)性的對抗樣本,比如對背景像素進行大幅修改的對抗樣本)。
在本部分中,我們將簡單介紹本次競賽的規(guī)則,目標和評價標準等。
本次競賽旨在加速對抗機器學習的研究速度,以及讓眾多對抗攻擊和防御方法互相競爭,以找到最有力的評價標準。
在這此比賽中,參賽者需提交生成的對抗樣本(攻擊方),和對對抗樣本魯棒的分類器(防御方)。在評估比賽結果的時候,會在數(shù)據(jù)集上運行所有攻擊方法,用以生成對抗樣本,然后在防御方測試這些對抗樣本。攻擊方按照能夠成功欺騙防御方的對抗樣本數(shù)量進行排名,而防守方根據(jù)能夠正確分類樣本的數(shù)量進行評分。
為了能夠盡可能好的評價參與競賽的各種算法,競賽舉辦方按照如下的標準制作了數(shù)據(jù)集:
有足夠大的數(shù)據(jù)集,且是有意義的任務,這樣競賽結果才有意義
是眾所周知的任務,這樣人們就可以使用現(xiàn)有的分類器,這使得參賽者能夠更好的專注在對抗性挑戰(zhàn)的本質上,而不是浪費很多時間在理解任務上。
數(shù)據(jù)必須是從來沒有使用過的,這樣參賽者才不會過擬合到已知的數(shù)據(jù)集上。
因此競賽舉辦方選擇了圖像分類問題作為本次競賽的任務,并構建了與 ImageNet 兼容的全新數(shù)據(jù)集。舉辦方首先選擇了一批從來沒有用在公開數(shù)據(jù)集的圖像,使用預訓練的 ImageNet 分類器進行分類,之后人工驗證這些分類器的分類結果是否正確。
這個全新的數(shù)據(jù)集被分為兩部分:
DEV 數(shù)據(jù)集,在比賽開始提供給參賽者,用來開發(fā)參賽算法,這部分包括 1000 張圖片。
FINAL 數(shù)據(jù)集,此數(shù)據(jù)集并不會提供給參賽者,在最后用來評估參賽者所提交的算法。這部分包含了 5000 張圖片。
競賽包含了三個部分,分別是:
無目標對抗攻擊,參賽者需提交無目標黑盒攻擊方法。比如,給定一個輸入圖像,生成一個對抗圖像,盡可能使一個未知分類器給出錯誤的分類結果。
有目標對抗攻擊,參賽者需提交有目標黑盒攻擊方法。比如,給定一個輸入圖像和目標類別,生成一個對抗圖像,盡可能使一個未知分類器將對抗圖像分類為目標類別。
針對對抗攻擊的防御,參賽者需提交一個對對抗樣本魯棒的分類器。
對于每個提交的結果,評估程序會以每批 100 張圖片作為輸入。為了限制提交的結果所需的計算資源,舉辦方規(guī)定每批中的 100 張圖片需要在 500 秒之內處理完畢,如果 500 秒之內沒有處理完畢,那么當前批的處理程序會被中斷,并將下一批的 100 張圖像輸入。只有成功處理好的圖片才被計入得分。
每次當有一張圖片能夠成功欺騙防守方,攻擊方得到1分。如果攻擊方沒有欺騙防守方,或者在時間限制內未能產生對抗樣本圖片,則該圖片得0分。對于每個正確分類的圖片,防守方得到1分,對于不正確分類或者未能產生分類的圖片,防守方得0分。最后將所有的得分相加到一起,進行歸一化,使得所有隊伍提交的結果最終得分在[0,1]的范圍內,其中1表示所有圖像均成功,而0表示所有圖像均失敗。
比賽于2017年7月開始,在2017年10月1號結束,整個比賽多個輪次,其中有三個開發(fā)輪,和一個最終輪。其中開發(fā)輪的主要目的是讓參賽者測試他們的結果,只有最終輪才被用來計算最后的評分并決定誰是冠軍。
直到比賽結束,舉辦方共收到91個無目標對抗攻擊的提交結果,65個有目標對抗攻擊的提交結果,和107個防御方提交的結果。
這幅圖展示了每個輪次中得分最高的提交結果相較于 baseline 有多大的提升,可見提交結果的性能在每輪中都有提高。
下面的三個表格分別為防御比賽,無目標攻擊比賽和有目標攻擊比賽中 top-5 隊伍的結果。其中 score 為歸一化之后的得分,raw score 是未歸一化的得分,而 worst score 是最差情況下的得分,Median eval time 是處理一批 100 張圖片所需要的時間。
從表中的結果可以看出,最好的防御方法在所有對抗圖像中,能夠得到超過 90% 的準確率。但是與此同時,防御的最差情況下,最高只有 53.6% 的準確率。這就意味著,雖然平均情況下對于對抗樣本能夠得到很高的準確率,但是模型仍然存在可能被攻擊的方法,而這是有可能被攻擊者發(fā)現(xiàn)的。
來自清華大學的 TSAIL 團隊在防御、無目標、有目標攻擊三個項目中都得到了冠軍。
上圖展示了三種競賽中,各個隊伍的得分情況,其中實線表示各個排名的隊伍的得分。虛線表示不同的baseline方法。
本部分將展示幾個評分最高的隊伍的解決方案。
防守競賽冠軍:清華大學 TSAIL 隊
該隊伍使用了高階表征引導去噪器(High-level representation guided denoiser, HGD),整體思路是訓練一個基于神經網絡的去噪器來去除對抗擾動。
為了訓練去噪器,該隊從 ImageNet 訓練集中提取了 20K 張圖片(每個類別 20 張圖)。之后使用多種對抗攻擊方法來處理這些圖像,生成訓練集。其中使用了 FGSM 和 I-FGSM 作為攻擊方法,并且將這些攻擊應用到多種模型中,最終結合多種模型來模擬各種強度的攻擊。
該隊使用了 U-Ne t作為去噪網絡,U-Net 相較于編碼器解碼器結構,在同分辨率的編碼層和解碼層之間直接相連,這樣網絡只需學習如何去除噪聲,而無須學習如何重建整個照片。
該隊并沒有使用常見的重建距離損失來訓練網絡。他們使用了網絡第 l 層的高階表達作為損失函數(shù),該方法被稱為 HGD。因為這些監(jiān)督信號來自于分類器的高階表達,而這些特征通常包含了與圖像分類有關的引導信息。
具體細節(jié)可以參考該隊伍的論文:Defense against adversarial attacks using high-level representation guided denoiser。
兩種攻擊競賽冠軍:清華大學 TSAIL 隊
該隊伍同時贏得了無目標攻擊和有目標攻擊兩項競賽的冠軍,他們使用了基于梯度的動量迭代攻擊方法(Momentum iterative gradient-based attack)。
動量迭代攻擊方法是基于基本的迭代方法(BIM)構建的,增加了動量項,極大地改善了生成對抗樣本的可遷移性。目前的攻擊算法由于需要在攻擊強度和可遷移性之間進行折衷,往往在攻擊黑盒模型時效率很低。詳細的說,一些單步的方法,如 FGSM,假設在數(shù)據(jù)點附近決策邊界是線性的,并據(jù)此計算一次梯度。然而實際情況中,由于較大的失真,線性假設往往不成立,這就使得單步的方法不能很好的擬合模型,使得攻擊強度變低。相反的是,基本迭代方法使用貪婪法在每次迭代中將對抗樣本沿梯度方向移動。因此對抗樣本很容易過擬合到局部極值點,這就使得模型之間的遷移變得困難。
為了解決這個問題,該隊在基本迭代模型中加入了動量項,以穩(wěn)定更新的方向,使得優(yōu)化能夠逃離局部極值點。該方法與最優(yōu)化任務中的動量所帶來的好處是類似的。因此該方法減輕了攻擊強度和可遷移性之間的折衷,展現(xiàn)出了強大的黑盒攻擊能力。
詳細的細節(jié)可以參考論文:Boosting adversarial attacks with momentum
防守競賽亞軍:iyswim隊
該隊使用了一種隨機的方法來防御對抗樣本攻擊。該思路十分簡單,只是在分類網絡之前加入了隨機縮放層(resize)和隨機填充(padding)層。這樣做的好處是(1)無須 fine-tune 網絡;(2)只增加了極少量的計算;(3)與其他防御方法兼容。通過結合這個隨機的方法和經過對抗樣本訓練的模型,該隊就在競賽中排名第二。
詳細的內容可以參考論文:Mitigating adversarial effects through randomization
兩種攻擊競賽亞軍:Sangxia隊
該隊使用了針對多個分類器的迭代 FGSM 方法攻擊,同時結合了隨機擾動和增強以提高魯棒性和可遷移性。許多工作已經證明了針對一個分類器的對抗樣本可以遷移到其他分類器中去。因此,為了攻擊一個未知的分類器,一個很自然的想法就是生成能夠欺騙一系列分類器的樣本。此外,該隊還使用了圖像增強以提高魯棒性和可遷移性。
代碼已開源:https://github.com/sangxia/nips-2017-adversarial。
有目標攻擊競賽季軍:FatFinger隊
該隊使用的方法與Sangxia隊類似,使用了結合多種模型的迭代攻擊方法。
無目標攻擊競賽第四名:iwiwi隊
該隊伍的方法與其他隊伍十分不同,他們訓練了一個全卷積神經網絡來將干凈樣本轉換為對抗樣本,并得到了第四名。
給定一個輸入圖像x,按照如下公式生成對抗樣本:
其中,a 是表示 FCN 的一個可微分函數(shù),Theta 為該網絡的參數(shù)。a 被稱為攻擊全卷積網絡。該網絡的輸出為對抗擾動,因此,為了迷惑圖像分類器,該隊伍最大化 J(f(xadv), Y) 來訓練網絡,即最大化:
該隊同時也使用了多目標訓練,多任務訓練和梯度提示(gradient hints)等方法一同提高性能。該隊伍同時觀測到,攻擊網絡所生成的對抗樣本中,所有紋理信息都被丟掉,并增加了一些類似拼圖的圖案,這種圖案能夠欺騙圖像分類器,將對抗樣本分類到拼圖圖案所屬的類。
更多信息可在GitHub上了解:https://github.com/pfnet-research/nips17-adversarial-attack
對抗樣本是機器學習安全領域的中的一個有趣現(xiàn)象和重要問題。這次比賽的主要目的就是提高研究者對問題的認識,并激勵研究者提出新的方法。
競爭確實有助于提高對問題的認識,同時也能促使人們探索新的方法并改進現(xiàn)有的解決方法。在所有的三項賽事中,參賽者在比賽結束前都提交了比 baseline 方法好得多的方法。此外,針對在所有攻擊方法產生的對抗樣本,最好的防守方法仍能得到 95% 的準確率。雖然最壞情況下的準確率不如平均準確度,但是結果仍然能夠表明,在黑盒情況下實際應用在面對對抗樣本攻擊時,仍然有足夠的魯棒性。
更多詳細內容可以查看原論文:Adverarial Attacks and Defences Competition,雷鋒網 AI 科技評論編譯
雷峰網原創(chuàng)文章,未經授權禁止轉載。詳情見轉載須知。