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