0
雷鋒網(wǎng)AI研習(xí)社按:對抗樣本是一類被惡意設(shè)計來攻擊機(jī)器學(xué)習(xí)模型的樣本。它們與真實樣本的區(qū)別幾乎無法用肉眼分辨,但是卻會導(dǎo)致模型進(jìn)行錯誤的判斷。本文就來大家普及一下對抗樣本的基礎(chǔ)知識,以及如何做好對抗樣本的攻與防。
在近期雷鋒網(wǎng)AI研習(xí)社舉辦的線上公開課上,來自清華大學(xué)的在讀博士生廖方舟分享了他們團(tuán)隊在 NIPS 2017 上一個對抗樣本攻防大賽中提到的兩個新方法,這兩個方法在大賽中分別獲得了攻擊方和防守方的第一名。點擊可視頻回放
廖方舟,清華大學(xué)化學(xué)系學(xué)士,生醫(yī)系在讀博士。研究方向為計算神經(jīng)學(xué),神經(jīng)網(wǎng)絡(luò)和計算機(jī)視覺。參加多次 Kaggle 競賽,是 Data Science Bowl 2017 冠軍,NIPS 2017 對抗樣本比賽冠軍。Kaggle 最高排名世界第10。
分享主題:
動量迭代攻擊和高層引導(dǎo)去噪:產(chǎn)生和防御對抗樣本的新方法

分享內(nèi)容:
大家好,我是廖方舟,今天分享的主題是對抗樣本的攻和防。對抗樣本的存在會使得深度學(xué)習(xí)在安全敏感性領(lǐng)域的應(yīng)用收到威脅,如何對其進(jìn)行有效的防御是很重要的研究課題。 我將從以下幾方面做分享。
什么是對抗樣本
傳統(tǒng)的攻擊方法
傳統(tǒng)的防守方法
動量迭代攻擊
去噪方法
高層引導(dǎo)去噪方法
什么是對抗樣本
對抗樣本的性質(zhì)不僅僅是圖片所擁有的性質(zhì),也不僅僅是深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)獨有的性質(zhì)。因此它是把機(jī)器學(xué)習(xí)模型應(yīng)用到一些安全敏感性領(lǐng)域里的一個障礙。
當(dāng)時,機(jī)器學(xué)習(xí)大牛Good fellow找了些船、車圖片,他想逐漸加入一些特征,讓模型對這些船,車的識別逐漸變成飛機(jī),到最后發(fā)現(xiàn)人眼觀測到的圖片依然是船、車,但模型已經(jīng)把船、車當(dāng)做飛機(jī)。

我們之前的工作發(fā)現(xiàn)樣本不僅僅是對最后的預(yù)測產(chǎn)生誤導(dǎo),對特征的提取也產(chǎn)生誤導(dǎo)。這是一個可視化的過程。
當(dāng)把一個正常樣本放到神經(jīng)網(wǎng)絡(luò)后,神經(jīng)元會專門觀察鳥的頭部,但我們給它一些對抗樣本,這些對抗樣本也都全部設(shè)計為鳥,就發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)提取出來的特征都是亂七八糟,和鳥頭沒有太大的關(guān)系。也就是說欺騙不是從最后才發(fā)生的,欺騙在從模型的中間就開始產(chǎn)生的。

下圖是最簡單的攻擊方法——Fast Gradient Sign Method

除了FGSM單步攻擊的方法,它的一個延伸就是多步攻擊,即重復(fù)使用FGSM。由于有一個最大值的限制,所以單步的步長也會相應(yīng)縮小。比如這里有一個攻擊三步迭代,每一步迭代的攻擊步長也會相應(yīng)縮小。

產(chǎn)生圖片所用的CNN和需要攻擊的CNN是同一個,我們稱為白盒攻擊。與之相反的攻擊類型稱為黑盒攻擊,也就是對需要攻擊的模型一無所知。

以上所說的都是Non Targeted, 只要最后得到的目標(biāo)預(yù)測不正確就可以了。另一種攻擊Targeted FGSM,目標(biāo)是不僅要分的不正確,而且還要分到指定的類型。

一個提高黑盒攻擊成功率行之有效的辦法,是攻擊一個集合。

而目前為止一個行之有效的防守策略就是對抗訓(xùn)練。在模型訓(xùn)練過程中,訓(xùn)練樣本不僅僅是干凈樣本,而是干凈樣本加上對抗樣本。隨著模型訓(xùn)練越來越多,一方面干凈圖片的準(zhǔn)確率會增加,另一方面,對對抗樣本的魯棒性也會增加。

下面簡單介紹一下NIPS 2017 上的這個比賽規(guī)則
比賽結(jié)構(gòu)

兩個限制條件:容忍范圍不能太大;不能花太長時間產(chǎn)生一個對抗樣本,或者防守一個對抗樣本

FGSM算法結(jié)果

圖中綠色模型為攻擊范圍,最后兩欄灰色是黑盒模型,隨著迭代數(shù)量的增加, 攻擊成功率反而上升。這就給攻擊造成了難題。
我們解決的辦法就是在迭代與迭代中間加入動量

加入動量之后,白盒攻擊變強(qiáng)了,而且對黑盒模型攻擊的成功率也大大提升了。

總結(jié):
以前方法(iterative attack)的弱點是在迭代數(shù)量增多的情況下,它們的遷移性,也就是黑盒攻擊性會減弱,在我們提出加入動量之后,這個問題得到了解決,可以很放心使用非常多的迭代數(shù)量進(jìn)行攻擊。
在NIPS 2017 比賽上得到最高的分?jǐn)?shù)

需要提到的一點,上面提到的都是Non-targeted , 在Targeted攻擊里面,這個策略有所不同。在Targeted攻擊里面,基本沒有觀察到遷移性,也就是黑盒成功率一直很差,即便是加入動量,它的遷移程度也非常差。
下面講一下防守
首先想到的就是去噪聲,我們嘗試用了一些傳統(tǒng)的去噪方法(median filter 、BM3D)效果都不好。之后我們嘗試使用了兩個不同架構(gòu)的神經(jīng)網(wǎng)絡(luò)去噪。一個是 Denoising Autoencoder,另一個是Denoising Additive U-Net。

我們的訓(xùn)練樣本是從ImageNet數(shù)據(jù)集中取了三萬張圖片 ,使用了七個不同的攻擊方法對三萬張圖片攻擊,得到21萬張對抗樣本圖片以及三萬張對應(yīng)的原始圖片。除了訓(xùn)練集,我們還做了兩個測試集。一個白盒攻擊測試集和一個黑盒攻擊測試集。

訓(xùn)練效果

我們發(fā)現(xiàn)經(jīng)過去噪以后,正確率反而有點下降。我們分析了一下原因,輸入一個干凈圖片,再輸入一個對抗圖片,然后計算每一層網(wǎng)絡(luò)在這兩張圖片上表示的差距,我們發(fā)現(xiàn)這個差距是逐層放大的。
圖中藍(lán)線發(fā)現(xiàn)放大的幅度非常大,圖中紅線是去噪過后的圖片,仍然在放大,導(dǎo)致最后還是被分錯。

為了解決這個問題,我們提出了經(jīng)過改良后的網(wǎng)絡(luò) HGD

HGD 的幾個變種

和之前的方法相比,改良后的網(wǎng)絡(luò) HGD防守準(zhǔn)確率得到很大的提升

HGD 有很好的遷移性

最后比賽中,我們集成了四個不同的模型,以及訓(xùn)練了他們各自的去噪, ,最終把它們合并起來提交了上去。

HGD網(wǎng)絡(luò)總結(jié)
優(yōu)點:
效果顯著比其他隊伍的模型好。
比前人的方法使用更少的訓(xùn)練圖片和更少的訓(xùn)練時間。
可遷移。
缺點:
還依賴于微小變化的可測量
問題并沒有完全解決
仍然會受到白盒攻擊,除非假設(shè)對手不知道HGD的存在
雷鋒網(wǎng)AI慕課學(xué)院提供了本次分享的視頻回放:http://www.mooc.ai/open/course/383
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。