摘 要:深度神經(jīng)網(wǎng)絡(luò)(deep neural network,DNN)能夠取得良好的分類識別效果,但在訓(xùn)練圖像中添加微小擾動進(jìn)行對抗攻擊,其識別準(zhǔn)確率會大大下降.在提出的方法中,通過遺傳算法得到最優(yōu)擾動后,修改圖像極少的像素生成對抗樣本,實(shí)現(xiàn)對VGG16等3個基于卷積神經(jīng)網(wǎng)絡(luò)圖像分類器的成功攻擊.實(shí)驗(yàn)結(jié)果表明在對3個分類模型進(jìn)行單像素攻擊時,67.92%的CIFAR-10數(shù)據(jù)集中的自然圖像可以被擾動到至少一個目標(biāo)類,平均置信度為79.57%,攻擊效果會隨著修改像素的增加進(jìn)一步提升.此外,相比于LSA和FGSM方法,攻擊效果有著顯著提升.
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò);遺傳算法;對抗攻擊;圖像分類;信息安全
中圖分類號:O413""""" 文獻(xiàn)標(biāo)志碼:A文章編號:1000-2367(2025)02-0082-09
計(jì)算機(jī)視覺與深度學(xué)習(xí)的結(jié)合是一個前景廣闊的研究領(lǐng)域,目前常見的應(yīng)用有圖像分類識別、目標(biāo)檢測和圖像風(fēng)格遷移等.特別是在圖像分類識別領(lǐng)域,深度神經(jīng)網(wǎng)絡(luò)通過模仿人腦的獨(dú)立皮質(zhì)神經(jīng)元工作方式,充分利用像素之間的距離與其相似性的關(guān)系,克服了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)計(jì)算量大、適配性低的缺點(diǎn),能夠以較高的準(zhǔn)確率執(zhí)行分類問題,甚至達(dá)到了與人眼分類相媲美的程度[1].
然而,當(dāng)前的多項(xiàng)研究表明,深度神經(jīng)網(wǎng)絡(luò)的輸入向量是不連續(xù)的,對抗樣本的出現(xiàn)更可能是數(shù)據(jù)維度較高和訓(xùn)練數(shù)據(jù)不足導(dǎo)致的,其預(yù)測結(jié)果對添加的擾動相當(dāng)敏感.因此在對深度神經(jīng)網(wǎng)絡(luò)進(jìn)行對抗攻擊的過程中,通過向自然圖像添加一定的擾動生成對抗樣本[2-4],從而完成對神經(jīng)網(wǎng)絡(luò)的攻擊.常見的生成對抗樣本的方法需要修改較多的像素數(shù)量以達(dá)到攻擊效果,因此無法保證修改后的圖像達(dá)到未被察覺出來的效果.如圖1所示,曾對汽車和鳥類等圖像總像素的4%進(jìn)行擾動[5],使得深度神經(jīng)網(wǎng)絡(luò)識別錯誤,但這種異常能夠被專業(yè)技術(shù)輕松識別出來.
針對上述問題,本文提出了利用遺傳算法生成對抗樣本的方法,將修改像素的數(shù)量限制在盡可能少的范圍內(nèi),而不是在理論上提出額外的約束或考慮其他的損失函數(shù)進(jìn)行擾動.提出的方法將修改像素的數(shù)量作為衡量擾動強(qiáng)度的參考,并考慮僅修改一個像素的情況,以及與其他兩種情況(即3和5像素)和其他方法進(jìn)行比較,展示了所提方法的有效性.
本文第1節(jié)介紹相關(guān)工作,包括對抗攻擊的研究現(xiàn)狀和常見類型以及遺傳算法的基礎(chǔ)知識;第2節(jié)介紹本文提出的基于深度神經(jīng)網(wǎng)絡(luò)的遺傳算法對抗攻擊;第3節(jié)通過分析實(shí)驗(yàn)數(shù)據(jù)驗(yàn)證了所提方法的有效性;最后進(jìn)行總結(jié).
收稿日期:2023-09-21;修回日期:2023-10-10.
基金項(xiàng)目:國家自然科學(xué)基金(61602158);河南省科技攻關(guān)計(jì)劃(222102210029);河南省高等學(xué)校重點(diǎn)科研項(xiàng)目(23A520009).
作者簡介(通信作者):范海菊(1979-),女,河南新鄉(xiāng)人,河南師范大學(xué)副教授,博士,研究方向?yàn)榫W(wǎng)絡(luò)安全,E-mail:121064@htu.edu.cn.
引用本文:范海菊,馬錦程,李名.基于深度神經(jīng)網(wǎng)絡(luò)的遺傳算法對抗攻擊[J].河南師范大學(xué)學(xué)報(自然科學(xué)版),2025,53(2):82-90.(Fan Haiju,Ma Jincheng,Li Ming.Genetic algorithm against attack based on deep neural network[J].Journal of Henan Normal University(Natural Science Edition),2025,53(2):82-90.DOI:10.16366/j.cnki.1000-2367.2023.09.21.0003.)
1 相關(guān)工作
卷積神經(jīng)網(wǎng)絡(luò)可以把圖像當(dāng)作向量輸入到神經(jīng)網(wǎng)絡(luò)里,通過卷積、池化等提取特征,解決真實(shí)世界圖像分類的問題.圖像分類工作包含:將圖像分解成部分重合的小圖塊輸入小型神經(jīng)網(wǎng)絡(luò)、將輸出結(jié)果保存到新的數(shù)列中、將數(shù)列中各個小方陣數(shù)列的異常值保留和做出預(yù)測4個部分.在一定范圍內(nèi)卷積層越多,神經(jīng)網(wǎng)絡(luò)就越能識別出復(fù)雜的特征.傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)難以處理更多的訓(xùn)練數(shù)據(jù),因此擴(kuò)大神經(jīng)網(wǎng)絡(luò),把節(jié)點(diǎn)一層一層的堆積起來形成了深度神經(jīng)網(wǎng)絡(luò)(DNN),圖2展示了深度神經(jīng)網(wǎng)絡(luò)的基本框架.
當(dāng)前的研究表明,DNN容易受到對抗樣本的惡意攻擊,對圖像數(shù)據(jù)添加人眼難以辨識到的細(xì)微擾動就能使模型產(chǎn)生誤判,結(jié)合特定算法實(shí)施對抗攻擊生成對抗樣本,誘導(dǎo)模型做出錯誤的甚至是指定的分類結(jié)果.另外,通過裁剪圖像和旋轉(zhuǎn)圖像也會產(chǎn)生對抗樣本,此類對抗攻擊方法也存在于語音識別、自然語言處理、惡意軟件分類等領(lǐng)域.當(dāng)前研究在不同的設(shè)想下提出了添加擾動的計(jì)算方法,如文獻(xiàn)[6]在神經(jīng)網(wǎng)絡(luò)的敏感性是由于輸入的高維和線性引起的假設(shè)下,提出了計(jì)算擾動的“快速梯度符號”算法,文獻(xiàn)[7]通過決策邊界的線性假設(shè)提出了一種貪婪擾動搜索方法.此外,文獻(xiàn)[8]首先向良性樣本中添加隨機(jī)的噪聲模擬物理世界的環(huán)境因素,并計(jì)算這些噪聲樣本上產(chǎn)生的梯度期望,進(jìn)而實(shí)現(xiàn)物理世界的對抗攻擊.文獻(xiàn)[9]進(jìn)一步考慮了掩膜和制造誤差從而實(shí)現(xiàn)了交通標(biāo)志的對抗性擾動,這些都驗(yàn)證了物理對抗樣本的存在.
1.1 對抗攻擊
機(jī)器學(xué)習(xí)領(lǐng)域的對抗攻擊指的是向輸入的數(shù)值型向量添加微小擾動使分類器產(chǎn)生錯誤分類結(jié)果的過程,圖3展示了向原始圖像添加噪聲的過程.無論是邏輯回歸、決策樹還是神經(jīng)網(wǎng)絡(luò),幾乎沒有任何一種機(jī)器學(xué)習(xí)算法能夠免受對抗性攻擊,這可能是由于系統(tǒng)中的過度線性擬合造成的.雖然深度學(xué)習(xí)的每段架構(gòu)都是基于激活函數(shù)的線性結(jié)構(gòu),但分類器的線性響應(yīng)特別容易產(chǎn)生非線性的決策邊界,即使是添加少量的噪聲也可以影響決策邊界的判斷.對抗攻擊是信息安全領(lǐng)域的主要風(fēng)險之一,常見的攻擊方法就是生成對抗樣本輸入模型,干擾模型的識別精度,從而使模型作出錯誤分類判斷.因此,可以通過對抗學(xué)習(xí)研究對抗樣本的生成和攻擊模型的過程,增強(qiáng)神經(jīng)網(wǎng)絡(luò)對目標(biāo)識別的可靠性和機(jī)器學(xué)習(xí)模型的抗欺騙、抗干擾能力.
根據(jù)被攻擊模型的分類結(jié)果,對抗攻擊可以分為非目標(biāo)攻擊和目標(biāo)攻擊.一張圖像可以被看作是一個具體的向量,假設(shè)在這個向量的每一維上都添加人眼無法識別的微小擾動,并將添加擾動后的圖像輸入神經(jīng)網(wǎng)絡(luò)中使得神經(jīng)網(wǎng)絡(luò)的分類結(jié)果出現(xiàn)錯誤甚至取得預(yù)計(jì)的分類結(jié)果的過程被稱作是對抗攻擊.未被添加擾動的圖像作為原始圖像,其類別被稱作真實(shí)標(biāo)簽,添加擾動信息后的圖像作為對抗樣本,其類別被稱作預(yù)測標(biāo)簽.根據(jù)攻擊結(jié)果可以分為目標(biāo)攻擊和非目標(biāo)攻擊,在本文中將原始類別添加擾動后干擾到剩余的9個類別之一就完成了非目標(biāo)攻擊,在非目標(biāo)攻擊的基礎(chǔ)上能夠使得預(yù)測類別達(dá)到期望分類結(jié)果就完成了目標(biāo)攻擊.
根據(jù)對被攻擊模型的內(nèi)部結(jié)構(gòu)了解程度,對抗攻擊可以進(jìn)一步分為黑盒攻擊、灰盒攻擊和白盒攻擊.當(dāng)前最常見的圖像對抗攻擊方法是對全圖添加擾動,這種方法的缺點(diǎn)在于工作量大且容易被人眼識別出來,因此,NARODYTSKA等[10]此前提出了修改一個像素改變圖像對應(yīng)類標(biāo)簽的方法,只將其作為一個起點(diǎn),進(jìn)一步推導(dǎo)出半黑盒攻擊.白盒攻擊中,攻擊者可以擁有關(guān)于模型架構(gòu)和參數(shù)的全部信息,例如在白盒攻擊中PGD這一類基于梯度的方法[11],可能是由于在梯度信息存在的時候利用梯度進(jìn)行基于優(yōu)化的攻擊是最有效.在灰盒攻擊中,攻擊者僅可獲取模型的結(jié)構(gòu)信息但無法獲得模型參數(shù),沒有模型的查詢權(quán)限.在黑盒攻擊中,攻擊者對攻擊模型的內(nèi)部結(jié)構(gòu)、訓(xùn)練參數(shù)、防御方法等一無所知,只能通過輸入輸出以及預(yù)測結(jié)果與模型進(jìn)行交互.根據(jù)預(yù)測結(jié)果是置信度還是 one-hot 向量又分為軟標(biāo)簽和硬標(biāo)簽攻擊,例如黑盒遷移攻擊是對抗攻擊中非常熱門的一個研究方向,特別是基于動量梯度的黑盒攻擊方法.此外,當(dāng)前大部分研究主要通過在數(shù)據(jù)樣本的尺寸、分布、規(guī)模、時序等方面來豐富梯度的多樣性,使得生成的對抗樣本在遷移到其他的模型攻擊時,能夠有更高的攻擊成功率[12].
1.2 遺傳算法
遺傳算法(genetic algorithm,GA)是一種借鑒達(dá)爾文進(jìn)化論中生物自然進(jìn)化形成的優(yōu)化求解方法,最初由文獻(xiàn)[13]提出.遺傳算法模擬染色體之間的交叉或變異,最終選擇符合當(dāng)前問題的最優(yōu)種群,
是一種高效的全局性自適應(yīng)隨機(jī)搜索方法.常見的對抗攻擊算法,如Fast Gradient Sign Method、Project Gradient Descent和Basic Iterative Method都要求目標(biāo)函數(shù)具有可導(dǎo)性,但遺傳算法不要求優(yōu)化對象的連續(xù)性和可微性,并具有良好的魯棒性和規(guī)則學(xué)習(xí)能力.遺傳算法從問題的可能解集出發(fā)構(gòu)造一個種群,種群中的每一個個體對應(yīng)問題的一個可能解,并通過適應(yīng)度函數(shù)的值來反映每個個體能否作為當(dāng)前最優(yōu)解被保留,遺傳算法流程圖如圖4所示.
現(xiàn)有的對抗方法常采用區(qū)域修改或多像素修改生成對抗樣本,干擾分類模型從而輸出錯誤分類,但本文提出了基于深度神經(jīng)網(wǎng)絡(luò)的遺傳算法對抗攻擊方法,通過對原始圖像樣本進(jìn)行概率閾值篩選并根據(jù)遺傳算法的特點(diǎn)控制攻擊像素數(shù)量,從而實(shí)現(xiàn)了修改極少數(shù)像素特別是修改單個像素就能實(shí)現(xiàn)對神經(jīng)網(wǎng)絡(luò)的對抗攻擊.該方法通過遺傳算法生成擾動,既能求出全局最優(yōu)解又避免了求解梯度.通過分析探究相似類別的圖像之間實(shí)現(xiàn)對抗的難易程度和圖像決策邊界對生成對抗樣本的影響可以在保護(hù)圖像真實(shí)性、防止惡意攻擊方面提供新的思路.
2 基于深度神經(jīng)網(wǎng)絡(luò)的遺傳算法對抗樣本生成
通過對抗樣本進(jìn)行對抗攻擊可以使深度神經(jīng)網(wǎng)絡(luò)的分類出現(xiàn)錯誤,基于此本文提出了利用遺傳算法生成擾動(微小噪聲)將其與原始圖像結(jié)合生成對抗樣本.網(wǎng)絡(luò)分類模型的輸出包含預(yù)測標(biāo)簽和置信度兩部分,置信度是softmax的輸出結(jié)果,指圖像作為某種類別的概率,預(yù)測標(biāo)簽是在數(shù)據(jù)集中相關(guān)置信度對應(yīng)的數(shù)字標(biāo)簽.對抗攻擊的原理是通過添加擾動,提高輸入對抗圖像預(yù)測標(biāo)簽的置信度,降低真實(shí)標(biāo)簽的置信度,從而使神經(jīng)網(wǎng)絡(luò)分類錯誤.為改進(jìn)攻擊成功率和置信度,本文提出基于遺傳算法的對抗樣本生成.首先,通過深度神經(jīng)網(wǎng)絡(luò)對原始圖像進(jìn)行分類,篩選softmax值低于0.999的圖像得到較易實(shí)現(xiàn)對抗攻擊的微處理圖像.其次,利用遺傳算法對擾動進(jìn)行編碼,經(jīng)過選擇和交叉操作生成最優(yōu)擾動.最后,在微處理圖像中嵌入擾動生成對抗樣本,將對抗樣本輸入分類器中,查看分類結(jié)果,判斷是否實(shí)現(xiàn)對抗攻擊(包括非目標(biāo)攻擊和目標(biāo)攻擊),總體流程圖如圖5所示.
具體步驟如下.
1)輸入原始圖像:將原始圖像送入深度神經(jīng)網(wǎng)絡(luò)中進(jìn)行分類,網(wǎng)絡(luò)模型通過卷積、池化等操作提取特征,最終輸出原始圖像的類別標(biāo)簽和置信度.
2)篩選圖像:網(wǎng)絡(luò)模型中的置信度值由softmax函數(shù)輸出,選取置信度值小于0.999的圖像進(jìn)行有限個像素點(diǎn)的修改可以取得較好的攻擊結(jié)果.
3)生成最優(yōu)擾動:為方便嵌入原始圖像,通過遺傳算法將擾動編碼為一個五元組并作為種群進(jìn)化的候選解構(gòu)成相關(guān)解集,在種群進(jìn)化過程中比較子代和父代的適應(yīng)度值,得出最優(yōu)解.
4)生成對抗樣本:根據(jù)遺傳算法得到的最優(yōu)擾動編碼找到需要修改的像素點(diǎn)位置,修改原始圖像的像素值,從而生成對抗樣本.
5)判斷是否攻擊成功:將對抗樣本輸入分類器,判斷原始圖像的類別標(biāo)簽與對抗樣本的類別標(biāo)簽是否相等,類別標(biāo)簽相等說明攻擊失敗,反之,說明攻擊成功.
2.1 生成對抗樣本
對抗樣本生成過程包括擾動生成和對抗嵌入兩個部分,通過遺傳算法可以在解空間內(nèi)找到可添加擾動的全局最優(yōu)解,與優(yōu)化算法相比跳出局部最優(yōu)化的困境.對于實(shí)際問題,遺傳算法通過編碼生成候選解并構(gòu)成相應(yīng)的解集,把適應(yīng)度函數(shù)值作為衡量可能解優(yōu)劣程度的標(biāo)準(zhǔn),為避免陷入局部最優(yōu)而引入交叉,保證了隨機(jī)性和靈活性,在每次進(jìn)化中選擇適應(yīng)度值大的解構(gòu)成新的解集,最終取得最優(yōu)解集.
種群進(jìn)化算法流程圖如圖6所示,實(shí)驗(yàn)中將種群的規(guī)模設(shè)置為300,交叉因子選擇為0.5,最大迭代次數(shù)為T= 50.編碼后的擾動組成的種群通過進(jìn)化產(chǎn)生最優(yōu)種群,Pi表示當(dāng)前種群,Pi+1表示下一代種群,x表示原始圖像,e(x)表示添加的擾動,l、p分別表示深度神經(jīng)網(wǎng)絡(luò)輸出預(yù)測標(biāo)簽和概率,lt表示原始類別標(biāo)簽.在生成最優(yōu)種群的過程中,為降低真實(shí)類別概率,在最大迭代次數(shù)范圍內(nèi)選擇父代擾動或子代擾動進(jìn)行進(jìn)化:當(dāng)父代擾動和子代擾動生成的對抗樣本標(biāo)簽都不等于原始類別標(biāo)簽時,說明兩代擾動都能攻擊成功,選擇概率大的擾動;當(dāng)父代擾動和子代擾動生成的對抗樣本標(biāo)簽相等時,說明兩代擾動不能實(shí)現(xiàn)攻擊,選擇概率較小的擾動.
下面具體說明遺傳算法產(chǎn)生擾動的步驟.
1)初始化.擾動被編碼成一個包括5個元素的元組C=(x,y,R,G,B),分別為x坐標(biāo)、y坐標(biāo)和RGB三通道的值,這樣編碼的目的是便于將擾動嵌入原始圖像,噪聲的嵌入過程也就是將C=(x,y,R,G,B)覆蓋在原始圖像的像素點(diǎn)位置并修改原始圖像的三通道值.該元組作為GA算法的可能解,每個解集都由固定數(shù)量的可能解組成,遺傳算法從初始解集出發(fā)進(jìn)行進(jìn)化.
2)交叉.實(shí)驗(yàn)提出的遺傳算法通過交叉完成種群進(jìn)化,迭代一次相當(dāng)于進(jìn)化一次,在每次迭代過程中都會產(chǎn)生新的解.交叉需要從上一代解集中選擇兩個可能解,根據(jù)交叉因子隨機(jī)交叉.P(i)表示第i個種群,P(j)表示第j個種群,i≠j,下標(biāo)t表示種群代數(shù)之間的關(guān)系.θ是交叉因子,θ=0.5.
Pt+1(i)=Pt(i)+θPt(j).(1)
3)選擇.提出的方法設(shè)置適應(yīng)度函數(shù)值為深度神經(jīng)網(wǎng)絡(luò)輸出的圖像類別概率標(biāo)簽,攻擊過程中不斷降低圖像真實(shí)類別分類概率,在進(jìn)化過程中比較子代和父代擾動的適應(yīng)度值,選擇真實(shí)類別概率低的擾動進(jìn)入下一次迭代.
4)迭代.重復(fù)交叉和選擇步驟,在最大迭代次數(shù)內(nèi)真實(shí)類別概率最低的擾動作為最優(yōu)擾動.
2.2 對抗攻擊
2.2.1 對抗攻擊原理
衡量基于遺傳算法的圖像對抗攻擊效果,包括非目標(biāo)攻擊和目標(biāo)攻擊兩個部分.假設(shè)一個輸入圖像可以用一個n維向量x=(x1,x2,…,xn)表示,其中每個標(biāo)量元素代表一個像素,函數(shù)F表示圖像分類器,t為不同輸入圖像對應(yīng)的分類,adv為添加擾動后生成的對抗樣本的預(yù)期分類,F(xiàn)t(x)表示分類模型認(rèn)為輸入圖像是類別t的概率,n維向量e(x)=(e1,e2,…,en)為在原圖像x0上添加的擾動,對抗攻擊可以簡化為一個帶有約束條件的優(yōu)化問題,該問題涉及兩個條件:1)哪些維度需要擾動;2)每個維度對應(yīng)的擾動強(qiáng)度.此外,在非目標(biāo)攻擊中,為達(dá)到攻擊目的,期望加入擾動后分類器模型將圖像分類為t類別的概率越小越好.在目標(biāo)攻擊中,為達(dá)到攻擊目的,期望加入擾動后分類器模型將圖像分類為目標(biāo)類別的概率越大越好.在之前的研究中將最大修正L作為添加擾動e(x)的限制性條件:min Ft(x),maxe(x)* Fadv(x+e(x)),‖e(x)‖L.(2)
這種方法得到的對抗樣本通常是通過修改所有維度的一部分進(jìn)行擾動,并對累積修改強(qiáng)度進(jìn)行總體約束來構(gòu)造的[7].本文提出的單像素攻擊與這種攻擊思路恰恰相反,僅針對修改的像素數(shù)量d進(jìn)行限制,但不限制修改的RGB值,在對應(yīng)取值范圍中搜索能改變類別屬性的值,對抗攻擊前先將圖像送入分類器篩選,選擇softmax輸出結(jié)果低于0.999的圖像添加擾動,如下所示:min Ft(x),maxe(x)* Fadv(x+e(x)),‖e(x)‖d,f(x0)<0.999.(3)
d指修改像素點(diǎn)的數(shù)量,x指原始圖像表示的n維向量x=(x1,x2,…,xn),e(x)指對原始圖像添加的擾動向量.單像素攻擊時d=1,意味著在擾動的過程中只有一個維度被修改,也就是說,單像素攻擊允許在n維向量x=(x1,x2,…,xn)中,以任意的強(qiáng)度向選定的xi方向修改圖像,同理可推導(dǎo)到三像素攻擊和五像素攻擊.
假設(shè)神經(jīng)網(wǎng)絡(luò)是一個內(nèi)部參數(shù)固定的函數(shù),將原始圖像和對抗樣本定義為x0和x1,定義損失函數(shù)L1為輸出結(jié)果y與真實(shí)結(jié)果y'交叉熵的相反數(shù),交叉熵的值越大損失函數(shù)越小,即y與y'差距越大,攻擊效果越好.將L1作為非目標(biāo)攻擊的損失函數(shù):L1(x)=-e(y,y′).(4)
在目標(biāo)攻擊中用ytarget表示目標(biāo)攻擊結(jié)果,y與ytarget都是one-hot向量,定義損失函數(shù)L2為輸出結(jié)果y與目標(biāo)結(jié)果ytarget的交叉熵.非目標(biāo)攻擊的實(shí)現(xiàn)指的是將原始圖像的分類擾動為其他分類,目標(biāo)攻擊是在非目標(biāo)攻擊的基礎(chǔ)上進(jìn)行的,它進(jìn)一步將原始圖像的分類擾動為指定分類,因此定義L3為目標(biāo)攻擊的損失函數(shù),即L1與L2的總和.L2(x)=e(y,ytarget),(5)
L3(x)=-e(y,y′)+e(y,ytarget).(6)
2.2.2 攻擊結(jié)果分析
對抗攻擊結(jié)果根據(jù)要求不同分為非目標(biāo)攻擊和目標(biāo)攻擊,其中目標(biāo)攻擊的結(jié)果是在非目標(biāo)攻擊的基礎(chǔ)上得出的,p表示圖像的輸出概率,設(shè)圖像數(shù)量為100張,li表示原始圖像類別標(biāo)簽,l'i表示非目標(biāo)攻擊對抗樣本類別標(biāo)簽,l'adv表示目標(biāo)攻擊對抗樣本類別標(biāo)簽.攻擊結(jié)果算法流程圖如圖7所示.
3 實(shí)驗(yàn)結(jié)果
3.1 實(shí)驗(yàn)條件準(zhǔn)備
1)實(shí)驗(yàn)環(huán)境:Windows10專業(yè)版操作系統(tǒng),AMD R7-4800處理器,NVIDA GeForce RTX 2060顯卡,Python 解釋器版本為3.7.11,深度學(xué)習(xí)框架為Pytorch1.9.0.
2)實(shí)驗(yàn)對象:實(shí)驗(yàn)將深度神經(jīng)網(wǎng)絡(luò)All convolution network[14-16]、Network in Network[17]和VGG16[18-20]作為圖像分類器,向其中輸入一張圖像并根據(jù)神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果判斷該圖像的類別[21].
3)實(shí)驗(yàn)數(shù)據(jù)集:實(shí)驗(yàn)在CIFAR-10數(shù)據(jù)集上進(jìn)行[17],數(shù)據(jù)集圖像尺寸大小為32×32,包含10個不同類別的RGB彩色圖像(飛機(jī)、汽車、鳥、貓、鹿、狗、青蛙、馬、船、卡車),其對應(yīng)的標(biāo)簽為0到9.
3.2 實(shí)驗(yàn)結(jié)果及分析
在每次攻擊中從CIFAR-10數(shù)據(jù)集隨機(jī)選擇500張圖像,攻擊方式為目標(biāo)攻擊和非目標(biāo)攻擊,在不同的攻擊方式下分別完成單像素、三像素和五像素攻擊.對于1張自然圖像,通過添加擾動可以使它被錯誤分類到其他9個類,實(shí)際上非目標(biāo)攻擊的過程包含在目標(biāo)攻擊中,非目標(biāo)攻擊的有效性是根據(jù)目標(biāo)攻擊結(jié)果來評估的.也就是說,如果1幅圖像能被擾動到9個類中至少1個目標(biāo)類,那么對該圖像的非目標(biāo)攻擊就成功了.
3.2.1 對抗圖像視覺質(zhì)量
在本文實(shí)驗(yàn)中,先將CIFAR-10數(shù)據(jù)集中的自然圖像分別送入All convolution network[14-16]、Network in Network[17]和VGG16[18-20]3個網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,讓網(wǎng)絡(luò)能夠準(zhǔn)確給出圖片分類預(yù)測結(jié)果,再通過遺傳算法(GA)找到需要修改的像素點(diǎn)坐標(biāo)和對應(yīng)的RGB三通道數(shù)值,更改原始圖像生成對抗樣本,降低真實(shí)類標(biāo)簽的置信度,只關(guān)注輸出結(jié)果與模型的交互作用而不考慮深度神經(jīng)網(wǎng)絡(luò)的內(nèi)部結(jié)構(gòu)(黑盒攻擊),讓圖像分類器錯誤的分類結(jié)果.圖8展示了對3種網(wǎng)絡(luò)進(jìn)行單像素目標(biāo)攻擊部分結(jié)果,每幅圖像下方標(biāo)注為原始圖像類別-對抗樣本類別-對抗樣本置信度,可知僅僅修改1個像素點(diǎn)對圖像的視覺呈現(xiàn)效果影響較小,每個圖片下方展示了圖像真實(shí)類別,對抗攻擊后非真實(shí)類別以及置信度,神經(jīng)網(wǎng)絡(luò)對于對抗圖像分類后輸出的置信度越高對抗效果越好,其中多數(shù)置信度在70%以上.實(shí)驗(yàn)結(jié)果表明,提出的方法對3種類型的深度神經(jīng)網(wǎng)絡(luò)均可達(dá)到攻擊目的且效果明顯.
3.2.2 成功率和置信度
原始成功率被定義為深度神經(jīng)網(wǎng)絡(luò)對原始圖像的分類識別準(zhǔn)確率.在非目標(biāo)攻擊的情況下,成功率被定義為將圖像擾動為任意其他類別時占總輸入圖像數(shù)量的比例.在目標(biāo)攻擊的情況下,成功率被定義為將圖像擾動為一個特定目標(biāo)類別時占輸入圖像數(shù)量的比例.置信度被定義為累加每次成功擾動為目標(biāo)類別概率值與成功擾動總數(shù)的比值,表示的是對抗樣本使圖像分類器產(chǎn)生“誤分類”的平均置信度.在CIFAR-10數(shù)據(jù)集上對不同神經(jīng)網(wǎng)絡(luò)進(jìn)行單像素攻擊的結(jié)果如表1所示.實(shí)驗(yàn)結(jié)果表明,非目標(biāo)攻擊成功率與原始成功率相差不大,說明對抗圖像對神經(jīng)網(wǎng)絡(luò)具有良好的攻擊效果,目標(biāo)攻擊的成功率基本在20%以上,進(jìn)一步證明了所提出攻擊方法的有效性.
3.2.3 原始目標(biāo)類對
原始目標(biāo)類對指的是原始圖像類別及其對抗圖像類別,附錄圖S1~S4展示了對神經(jīng)網(wǎng)絡(luò)進(jìn)行攻擊的熱圖矩陣,每個熱圖矩陣大約是對稱的,熱圖矩陣橫坐標(biāo)表示的是原圖像類別,熱圖矩陣縱坐標(biāo)表示的是對抗圖像類別,主對角線數(shù)值表示的是神經(jīng)網(wǎng)絡(luò)分類成功次數(shù),其他小方框的數(shù)值表示的是對神經(jīng)網(wǎng)絡(luò)進(jìn)行對抗攻擊的成功次數(shù).通過觀察圖S1~S4可知:1)一些特定的原始目標(biāo)類對比其他類更容易受到攻擊,說明脆弱目標(biāo)的類別是由屬于同一類的不同數(shù)據(jù)點(diǎn)共享的.例如,船類容易添加擾動生成對抗樣本,但其他類別的圖像很難生成船類對抗樣本,這可能還與圖像的決策邊界有關(guān).2)一些圖像容易被擾動到其他類別,例如貓類圖像和狗類圖像容易修改像素點(diǎn)互相擾動,兩類圖像較為相似,這是由于神經(jīng)網(wǎng)絡(luò)本身提取特征的特性導(dǎo)致,說明了攻擊效果與神經(jīng)網(wǎng)絡(luò)特性密切相關(guān).3)攻擊成功率與修改像素點(diǎn)的數(shù)量呈正相關(guān),將像素的數(shù)量從1增加到5進(jìn)行高維擾動時,熱圖矩陣中的數(shù)值明顯增加.
3.2.4 適應(yīng)度值變化
適應(yīng)度值被設(shè)置為每個圖像的真實(shí)類的概率標(biāo)簽,攻擊的目標(biāo)是使適應(yīng)度值最小化.這里以VGG16攻擊100張圖像為例,分別展示單像素攻擊和三像素攻擊目標(biāo)攻擊后每張圖像的適應(yīng)度值變化來探究修改像素點(diǎn)數(shù)量與適應(yīng)度值變化之間的關(guān)系.附錄圖S5中一半數(shù)量以上的圖像適應(yīng)度值低于50%,附錄圖S6中大多數(shù)圖像的適應(yīng)度值低于10%,適應(yīng)度值與圖S5相比明顯下降.實(shí)驗(yàn)結(jié)果表明了隨著修改像素點(diǎn)數(shù)量的增加,攻擊的效果越好,為達(dá)到不同效果可以按要求更改像素點(diǎn)數(shù)量,也反映了提出方法的靈活性.
3.2.5 攻擊方法對比
將實(shí)驗(yàn)中提出的攻擊方法與隨機(jī)攻擊(random attack,RA)進(jìn)行比較,評估遺傳算法對CIFAR-10 數(shù)據(jù)集進(jìn)行單像素非目標(biāo)攻擊的有效性.對于每一幅自然圖像,隨機(jī)搜索重復(fù)100次,每次隨機(jī)修改圖像中隨機(jī)RGB值的一個隨機(jī)像素,試圖改變其標(biāo)簽并將攻擊對一幅圖像的置信度設(shè)為100次攻擊中概率最高的目標(biāo)類標(biāo)簽.通過對表2進(jìn)行比較發(fā)現(xiàn),對于 All convolution network[14-16]、Network in Network[17]和VGG16[18-20]3種深度神經(jīng)網(wǎng)絡(luò),遺傳算法的效率分別比隨機(jī)搜索方法提高了21.15%、25.82%和50.34%,因此可以得出結(jié)論,相比隨機(jī)攻擊,GA能顯著提升攻擊效率.
如表3所示,通過GA與LSA[18]和FGSM[6]兩種方法進(jìn)行非目標(biāo)攻擊的結(jié)果比較,GA修改1個像素點(diǎn)生成對抗樣本對Network in Network[17]和VGG16[18-20]進(jìn)行攻擊的成功率能達(dá)到65%以上,GA修改3個像素點(diǎn)生成對抗樣本對Network in Network 進(jìn)行攻擊的成功率與LSA[18]修改30多個像素點(diǎn)進(jìn)行對抗攻擊的成功率僅相差10%左右,GA修改5個像素點(diǎn)生成對抗樣本對VGG16 進(jìn)行攻擊的成功率比FGSM[6]修改1 024個像素點(diǎn)進(jìn)行對抗攻擊的成功率高6%左右.
4 總 結(jié)
深度神經(jīng)網(wǎng)絡(luò)容易受到對抗攻擊,在對現(xiàn)有的生成對抗樣本方法進(jìn)行對比和分析后,本文提出了基于深度神經(jīng)網(wǎng)絡(luò)的遺傳算法對抗攻擊,僅僅修改一個像素就能生成攻擊效果良好的對抗樣本,結(jié)合遺傳算法的特性可以靈活設(shè)置修改像素點(diǎn)的數(shù)量,通過對不同網(wǎng)絡(luò)的攻擊結(jié)果、適應(yīng)度值變化和不同攻擊方法對比,展示了本文提出的方法在成功率和置信度方面都有較大提升.擾動少量的像素值還可以看作對不同的網(wǎng)絡(luò)結(jié)構(gòu)和圖像使用低維切片進(jìn)行切割,這是探索高維 DNN輸入空間特征的一種方式[22],這種方法進(jìn)一步可以擴(kuò)展到其他領(lǐng)域,如自然語言處理,語音識別.此外,進(jìn)化算法還為解決對抗機(jī)器學(xué)習(xí)相關(guān)漏洞提供了一些有前景的方法,通過進(jìn)化算法[23]來學(xué)習(xí)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),使用相對較小的初始候選解決方案集進(jìn)行GA迭代,通過更多的迭代、更高級的算法或更大的初始候選解集,擾動成功率應(yīng)該進(jìn)一步提高,易受攻擊的圖像可能有助于生成人工對抗圖像,擴(kuò)大訓(xùn)練模型的數(shù)據(jù)集,這將有助于進(jìn)一步提升模型的魯棒性.
參 考 文 獻(xiàn)
[1]" TAIGMAN Y,YANG M,RANZATO M,et al.DeepFace:closing the gap to human-level performance in face verification[C]//2014 IEEE Conference on Computer Vision and Pattern Recognition.Columbus:IEEE,2014.
[2]MOOSAVI-DEZFOOLI S M,F(xiàn)AWZI A,F(xiàn)ROSSARD P.DeepFool:a simple and accurate method to fool deep neural networks[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition(CVPR).Las Vegas:IEEE,2016.
[3]BARRENO M,NELSON B,SEARS R,et al.Can machine learning be secure?[C]//Proceedings of the 2006 ACM Symposium on Information,Computer and Communications Security.[s.l.]:ACM,2006.
[4]SZEGEDY C,ZAREMBA W,SUTSKEVER I,et al.Intriguing properties of neural networks[EB/OL].[2023-09-13].http://arxiv.org/abs/1312.6199v4.
[5]GROSSE K,PFAFF D,SMITH M T,et al.The Limitations of Model Uncertainty in Adversarial Settings[EB/OL].[2024-05-04].https://arxiv.org/abs/1812.02606.
[6]GOODFELLOW I J,SHLENS J,SZEGEDY C,et al.Explaining and harnessing adversarial examples[EB/OL].[2023-09-13].http://arxiv.org/abs/1412.6572v3.
[7]MOOSAVI-DEZFOOLI S M,F(xiàn)AWZI A,F(xiàn)AWZI O,et al.Robustness of classifiers to universal perturbations:a geometric perspective[EB/OL].[2023-08-17].http://arxiv.org/abs/1705.09554v2.
[8]ELSAYED G F,SHANKAR S,CHEUNG B,et al.Adversarial examples that fool both computer vision and time-limited humans[EB/OL].[2023-08-17].http://arxiv.org/abs/1802.08195v3.
[9]EYKHOLT,ROBERT G.Driving and complicating features of the electrokinetic treatment of contaminated soils[EB/OL].[2024-05-04].https://mr.mbd.baidu.com/r/1iWLAncvrlm?f=cpamp;u=f6760da97f71bee7.
[10]NARODYTSKA N,KASIVISWANATHAN S.Simple black-box adversarial attacks on deep neural networks[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition Workshops(CVPRW).Honolulu:IEEE,2017.
[11]吳子斌,閆巧.基于動量的映射式梯度下降算法[J].計(jì)算機(jī)科學(xué),2022,49(S1):178-183.
WU Z B,YAN Q.Projected gradient descent algorithm with momentum[J].Computer Science,2022,49(S1):178-183.
[12]ZHANG C N,BENZ P,LIN C G,et al.A survey on universal adversarial attack[EB/OL].[2023-08-17].http://arxiv.org/abs/2103.01498v2.
[13]CLARKE D K,DUARTE E A,MOYA A,et al.Genetic bottlenecks and population passages cause profound fitness differences in RNA viruses[J].Journal of Virology,1993,67(1):222-228.
[14]SPRINGENBERG J T,DOSOVITSKIY A,BROX T,et al.Striving for simplicity:the all convolutional net[EB/OL].[2023-08-22].http://arxiv.org/abs/1412.6806v3.
[15]李云波.基于全卷積神經(jīng)網(wǎng)絡(luò)的多級閾值圖像分割算法[J].微型電腦應(yīng)用,2023,39(6):145-147.
LI Y B.Multistage threshold image segmentation algorithm based on full convolutional neural network[J].Microcomputer Applications,2023,39(6):145-147.
[16]付鵬飛,許斌.全卷積神經(jīng)網(wǎng)絡(luò)仿真與遷移學(xué)習(xí)[J].軟件,2019,40(5):216-221.
FU P F,XU B.All convolution neural network simulation and transfer learning[J].Software,2019,40(5):216-221.
[17]LIN M,CHEN Q,YAN S.Network In Network[EB/OL].[2024-05-04].https://arxiv.org/abs/1312.4400.
[18]SIMONYAN K,ZISSERMAN A.Very deep convolutional networks for large-scale image recognition[EB/OL].[2024-05-04].https://arxiv.org/abs/1409.1556.
[19]童占北,鐘建偉,李禎維,等.基于VGG16圖像特征提取和SVM的電能質(zhì)量擾動分類[J].電工電氣,2023(7):7-13.
TONG Z B,ZHONG J W,LI Z W,et al.Power quality disturbance classification based on VGG16 image feature extraction and SVM[J].Electrotechnics Electric,2023(7):7-13.
[20]方犇,童強(qiáng).基于VGG16網(wǎng)絡(luò)的參數(shù)優(yōu)化方法研究[J].湖北師范大學(xué)學(xué)報(自然科學(xué)版),2023,43(1):44-50.
FANG B,TONG Q.Research on parameter optimization method based on VGG16 network[J].Journal of Hubei Normal University(Natural Science),2023,43(1):44-50.
[21]KRIZHEVSKY A,HINTON G.Learning multiple layers of features from tiny images[J].Handbook of Systemic Autoimmune Diseases,2009,1(4):60.
[22]HAMDIPOOR V,MOON J,KIM Y.Stability margin of undirected homogeneous relative sensing networks:a geometric perspective[J].Systems amp; Control Letters,2021,156:105027.
[23]Michalewicz Z,Schoenauer M.Evolutionary Algorithm[EB/OL].[2024-05-04].https://arxiv.org/abs/1805.11014.
Genetic algorithm against attack based on deep neural network
Fan Haiju, Ma Jincheng, Li Ming
(College of Computer and Information Engineering; Henan Provincial Key Laboratory of" Educational Artificial Intelligence and Personalized Learning, Henan Normal University, Xinxiang 453007, China)
Abstract: Deep Neural Network(DNN)can achieve good classification and recognition effect, but the recognition accuracy will be greatly reduced when adding small disturbance to the training image to counter the attack. This paper, by proposing a method a small number of pixels on the image are modified to generate adversarial samples after the optimal disturbance is obtained by genetic algorithm. Different convolutional neural networks are attacked as image classifiers, and parameters such as the number of images processed in each batch and the number of modified pixels are adjusted. The experimental results show that 67.92% of the natural images in CIFAR-10 data set can be disturbed to at least one target class, with an average confidence of 79.57%, and the attack effect will be further improved with the increase of modified pixels. In addition, compared with LSA and FGSM methods, the attack effect is significantly improved.
Keywords: convolutional neural network; genetic algorithm; adversarial attack; image classification; information security
[責(zé)任編校 陳留院 楊浦]