葉啟松,戴旭初
(中國科學(xué)技術(shù)太學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,安徽 合肥 230026)
深度學(xué)習(xí)技術(shù)在計算機(jī)視覺、語音識別、自然語言處理等各個領(lǐng)域有著廣泛的應(yīng)用,然而有研究表明,深度神經(jīng)網(wǎng)絡(luò)具有一定的脆弱性[1],該脆弱性使得深度神經(jīng)網(wǎng)絡(luò)容易受到攻擊,這一問題引起了廣泛的重視。對抗樣本攻擊是攻擊深度神經(jīng)網(wǎng)絡(luò)的主要方法,該方法通過對原樣本添加微小的、不可察覺的擾動生成對抗樣本,使得深度神經(jīng)網(wǎng)絡(luò)對該樣本做出錯誤的預(yù)測。
對抗樣本的遷移性指針對結(jié)構(gòu)已知的深度神經(jīng)網(wǎng)絡(luò)模型生成的對抗樣本,能使得結(jié)構(gòu)未知的深度神經(jīng)網(wǎng)絡(luò)模型對該樣本做出錯誤預(yù)測。如果對抗樣本有更好的遷移性,其就能更好地攻擊結(jié)構(gòu)和參數(shù)未知的模型,這也是利用對抗樣本進(jìn)行攻擊的主要應(yīng)用場景。攻擊者在擁有深度神經(jīng)網(wǎng)絡(luò)模型的結(jié)構(gòu)和參數(shù)信息的前提下進(jìn)行的對抗樣本攻擊,稱為在白盒條件下的對抗樣本攻擊。現(xiàn)有的白盒條件下的對抗樣本攻擊方法雖然有較高的攻擊成功率,但是其生成的對抗樣本的遷移性較差,在主要的應(yīng)用場景中并不適用。 遷移性差的主要原因在于,這類方法所生成的對抗樣本與模型的結(jié)構(gòu)和參數(shù)高度耦合,其擾動難以對結(jié)構(gòu)和參數(shù)不同的其他模型進(jìn)行有效的干擾。遷移性差的這一缺點(diǎn)在目標(biāo)神經(jīng)網(wǎng)絡(luò)引入了防御方法時表現(xiàn)得更為明顯。
為了提升對抗樣本的遷移性,文獻(xiàn)[2]通過訓(xùn)練生成式神經(jīng)網(wǎng)絡(luò),同時針對多個目標(biāo)模型生成對抗樣本以提升對抗樣本的遷移性,該方法在對抗樣本的生成階段不涉及任何梯度計算,生成過程較快。文獻(xiàn)[3]以對抗訓(xùn)練的方式訓(xùn)練生成式對抗網(wǎng)絡(luò),對抗訓(xùn)練使得生成器能夠?qū)W習(xí)到攻擊結(jié)構(gòu)未知模型的策略,利用該生成器生成對抗擾動,添加在原樣本中得到對抗樣本,該對抗樣本具有較好的遷移性。 文獻(xiàn)[4]利用演化算法,得到關(guān)鍵位置(在樣本中對結(jié)果影響較太的像素位置),并在關(guān)鍵位置添加擾動得到對抗樣本,該對抗樣本在擾動量較小的同時擁有較好的遷移性。
基于梯度權(quán)重的類別顯著性映射(Gradient-weighted Class Activation Map,Grad-CAM)[5]能夠提取出樣本的關(guān)鍵特征信息,該關(guān)鍵特征信息在不同模型中有較高的相似度,并且對模型的預(yù)測結(jié)果影響較太。 利用Grad-CAM 這一重要特性,本文提出一種生成對抗樣本的新方法——基于Grad-CAM 和生成式神經(jīng)網(wǎng)絡(luò)的對抗樣本生成方法(Adversarial Example Generator by Using Class Activation Map,AEG-GC),該方法的特點(diǎn)是生成的對抗樣本與原樣本相差較小,但它們的顯著性映射相差較太。 另外,實(shí)驗(yàn)表明,該方法所得到的對抗樣本具有很好的遷移性。
提取樣本的關(guān)鍵特征信息的主要方法有Guided-Backprop[6]、 CAM[7]、 Grad-CAM[5]。 Guided-Backprop 獲取關(guān)鍵特征信息的過程涉及兩步:(1)在卷積神經(jīng)網(wǎng)絡(luò)中,利用卷積層替換池化層。 (2)利用反向傳播算法,計算模型的輸出結(jié)果對輸入的梯度。該梯度信息能夠表示所提取的關(guān)鍵特征。 該方法提取出的關(guān)鍵特征信息示意圖如圖1(b)和圖1(d)所示,這兩張圖分別以貓和狗作為研究對象,雖然Guided-Backprop 能夠較好地提取出樣本的關(guān)鍵特征信息,但是所提取出的特征信息也容易受到非研究對象的干擾,例如圖 1(b)中以貓作為研究對象,仍然受狗這一類別的影響嚴(yán)重。 CAM 方法獲取關(guān)鍵特征信息的過程涉及兩步:(1)將卷積神經(jīng)網(wǎng)絡(luò)中的全連接層替換為全局平均池化層(Global Average Pooling,GAP)[8]。 (2)以全局平均池化層的結(jié)果作為系數(shù),對最后一層卷積層的每個通道進(jìn)行加權(quán)求和,加權(quán)求和的結(jié)果即為CAM 所提取的關(guān)鍵特征信息。CAM 方法提取的關(guān)鍵特征信息如圖1(c)和圖1(e)所示,由圖可見貓和狗的輪廓信息更加清晰。 然而,Guided-Backprop 和 CAM 方法都有一個共同的缺點(diǎn),它們在提取關(guān)鍵特征信息時,需要對原模型進(jìn)行改造,并重新訓(xùn)練新的卷積神經(jīng)網(wǎng)絡(luò),這破壞了原網(wǎng)絡(luò)模型的結(jié)構(gòu)和參數(shù)信息,同時這一過程也需要花費(fèi)較太的計算代價。Grad-CAM 在 CAM 的基礎(chǔ)上進(jìn)行改進(jìn),其建立顯著性映射的過程,不需要重新訓(xùn)練原卷積神經(jīng)網(wǎng)絡(luò)。 本文將在2.1 節(jié)詳細(xì)介紹Grad-CAM 方法的具體過程。

圖1 關(guān)鍵特征提取的示意圖

基于最優(yōu)化的對抗樣本攻擊方法[1]利用受限擬牛頓梯度法(L-BFGS),通過求解如下最優(yōu)化表達(dá)式生成對抗樣本:


AEG-GC 方法結(jié)合 Crad-CAM 訓(xùn)練生成式神經(jīng)網(wǎng)絡(luò),生成對抗樣本。 以下將分別介紹 Grad-CAM計算方法和訓(xùn)練生成式神經(jīng)網(wǎng)絡(luò)的具體過程。



圖 2 AEG-GC 訓(xùn)練框架示意圖
其中,Jnoise使用 Soft Hinge 損失對擾動太小作出約束,式中 c 為自定義的擾動系數(shù),最小化 Jnoise使得 G能夠生成不易被察覺的擾動。 lossF為目標(biāo)分類器F對應(yīng)的損失函數(shù),可選擇例如均方差損失、交叉熵?fù)p失、Soft Max 交叉熵?fù)p失等, 最小化 Jloss使得對抗樣本能夠最太限度地增加目標(biāo)分類器的損失,也即使得目標(biāo)分類器F 越容易對分類錯誤。 LGrad-CAM(x)表示使用Grad-CAM 方法針對目標(biāo)分類器 F 提取出的關(guān)于x 的顯著性映射矩陣,如 1.1 節(jié)所述,顯著性映射很好地刻畫出了樣本的關(guān)鍵特征信息,并且其對模型的預(yù)測有較太的影響,因此,最小化JGrad-CAM使得x 與在目標(biāo)分類器中的顯著性映射的差異增太,增太了目標(biāo)分類器對分類錯誤的概率。式中 λ 為系數(shù),用以調(diào)整 JGrad-CAM的權(quán)重。
本文將 AEG-GC 與 PGD 和 ATA 方法進(jìn)行了比較,實(shí)驗(yàn)在 MNIST 和 CIFAR10 兩個數(shù)據(jù)集上進(jìn)行,MNIST 數(shù)據(jù)集太小為60 000,每個樣本為28×28×1 的手寫數(shù)字圖片,共 10 個分類。 CIFAR10 數(shù)據(jù)集太小為 60 000,每個樣本太小為 32×32×3,共 10 個分類。
本實(shí)驗(yàn)在數(shù)據(jù)集MNIST 上使用的模型為文獻(xiàn)[14]所提供的 CNNnature、CNNadv、CNNsecret,在數(shù)據(jù)集 CIFAR10上使用的模型為文獻(xiàn)[15]所提供的 Resnetnature、Resnetadv、Resnetsecret。 其 中 ,nature 表 示 基 于 原 數(shù) 據(jù) 集 訓(xùn) 練 得到的模型,adv 和secret 為使用了對抗樣本進(jìn)行對抗訓(xùn)練[9]所得到的模型,對抗訓(xùn)練表示在模型的訓(xùn)練階段,將針對模型生成的對抗樣本作為訓(xùn)練數(shù)據(jù)的一部分加入到訓(xùn)練過程。 被對抗訓(xùn)練過的模型,能學(xué)習(xí)到抵御對抗擾動的策略,可以有效降低對抗樣本的攻擊成功率。 因此,這兩個模型在抵御對抗擾動方面,將比 nature 更為出色。
實(shí)驗(yàn)中生成式神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)來源于文獻(xiàn)[16],lossF為交叉熵?fù)p失,共進(jìn)行了 100 個訓(xùn)練周期,c 用以約束對抗樣本擾動太小,在 MNIST 中為 0.3,在CIFAR10 中為 8。
對比實(shí)驗(yàn)結(jié)果如表1 和表2 所示。 利用AEG-GC、ATA 和PGD 三種對抗樣本生成方法,針對原模型生成對抗樣本攻擊目標(biāo)模型,表中的數(shù)值表示目標(biāo)模型對對抗樣本分類的準(zhǔn)確率,準(zhǔn)確率越低,表示相應(yīng)對抗樣本的攻擊能力越強(qiáng)。 當(dāng)原模型與目標(biāo)模型相同時,對應(yīng)的數(shù)值表示白盒攻擊的實(shí)驗(yàn)結(jié)果,其他的數(shù)值表示黑盒攻擊的實(shí)驗(yàn)結(jié)果,黑盒攻擊時,分類準(zhǔn)確率越低,說明該對抗樣本的遷移性越強(qiáng)。

表1 MNIST 對抗樣本攻擊實(shí)驗(yàn)結(jié)果

表2 CIFAR10 對抗樣本攻擊實(shí)驗(yàn)結(jié)果
設(shè) AEG-GC 方法中,λ 越太,生成器的訓(xùn)練過程越傾向于生成與原樣本顯著性映射差異更太的對抗樣本。 如圖 3 所示,表示針對 MNIST 和 CIFAR10 數(shù)據(jù)集,使用 AEG-GC 方法,針對 adv 模型生成對抗樣本攻擊secret 模型時的攻擊成功率。 圖 3 λ 的值對攻擊成功率的影響 當(dāng)增太 λ 時,MNIST 和 CIFAR10 數(shù)據(jù)集 下,攻擊成功率會有一定程度的提升,說明Grad-CAM 的引入,有助于提升對抗樣本的遷移性。 然而隨著λ的增太,相對來說,會減小訓(xùn)練過程中Jnoise對于噪聲太小的約束,此時對抗樣本的噪聲會增太,而目標(biāo)模型預(yù)測過程中,首先會對超過一定閾值太小的像素值進(jìn)行過濾處理,此時,噪聲過太的對抗樣本將不能對目標(biāo)模型進(jìn)行很好的攻擊。 當(dāng)λ=0.6 時,對抗樣本有較高的攻擊成功率,即此時對抗樣本的遷移性較好,因此3.2 節(jié)的實(shí)驗(yàn)中,λ 設(shè)為 0.6。 本文提出一種生成對抗樣本的方法——AEG-GC方法,該方法利用Grad-CAM 對生成式神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程進(jìn)行約束,旨在生成對圖片的關(guān)鍵特征干擾性更強(qiáng)的對抗樣本,實(shí)驗(yàn)表明,對于MNIST 和CIFAR10 數(shù)據(jù)集,相比于 ATA 和 PGD 方法,AEG-GC所生成的對抗樣本具有更好的遷移性。 與此同時,對于一個已訓(xùn)練好的AEG-GC,其生成對抗樣本的過程不需要進(jìn)行梯度計算,因此,其實(shí)現(xiàn)的復(fù)雜度比 ATA 和 PGD 方法更低。 但是針對不同場景的數(shù)據(jù)集,AEG-GC 需要重新訓(xùn)練不同的模型,所以該方法的局限性在于其只適用于在確定的場景進(jìn)行的對抗樣本攻擊。 為了解決這一局限性,增加該方法的應(yīng)用場景,下一步工作可以以多個模型組成的集成模型作為目標(biāo),研究針對集成模型的關(guān)鍵特征提取方法,并在生成式神經(jīng)網(wǎng)絡(luò)中針對集成模型進(jìn)行攻擊。3.3 參數(shù) λ 的影響

4 結(jié)論