張新君 程雨晴
摘 要:
神經(jīng)網(wǎng)絡(luò)模型容易受到對抗樣本攻擊。針對當(dāng)前防御方法側(cè)重改進(jìn)模型結(jié)構(gòu)或模型僅使用對抗訓(xùn)練方法導(dǎo)致防御類型單一且損害模型分類能力、效率低下的問題,提出結(jié)合對抗訓(xùn)練和特征混合訓(xùn)練孿生神經(jīng)網(wǎng)絡(luò)模型(SS-ResNet18)的方法。該方法通過線性插值混合訓(xùn)練集樣本數(shù)據(jù),使用殘差注意力模塊搭建孿生網(wǎng)絡(luò)模型,將PGD對抗樣本和正常樣本輸入不同分支網(wǎng)絡(luò)進(jìn)行訓(xùn)練。在特征空間互換相鄰樣本部分輸入特征以增強(qiáng)網(wǎng)絡(luò)抗干擾能力,結(jié)合對抗損失和分類損失作為網(wǎng)絡(luò)整體損失函數(shù)并對其進(jìn)行標(biāo)簽平滑。在CIFAR-10和SVHN數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),該方法在白盒攻擊下表現(xiàn)出優(yōu)異的防御性能,黑盒攻擊下模型對PGD、JSMA等對抗樣本的防御成功率均在80%以上;同時,SS-ResNet18模型時間花銷僅為子空間對抗訓(xùn)練方法的二分之一。實(shí)驗(yàn)結(jié)果表明,SS-ResNet18模型能防御多種對抗樣本攻擊,與現(xiàn)有防御方法相比,其魯棒性強(qiáng)且訓(xùn)練耗時較短。
關(guān)鍵詞:孿生神經(jīng)網(wǎng)絡(luò);圖像分類;對抗樣本;對抗訓(xùn)練;注意力機(jī)制;特征混合
中圖分類號:TP391?? 文獻(xiàn)標(biāo)志碼:A??? 文章編號:1001-3695(2024)03-039-0905-06doi: 10.19734/j.issn.1001-3695.2023.07.0318
Combining adversarial training and feature mixing for siamese network defense models
Zhang Xinjun, Cheng Yuqing
(School of Electronic & Information Engineering, Liaoning Technical University, Huludao Liaoning 125105, China)
Abstract:
Neural network models are vulnerable to adversarial sample attacks. Aiming at the problem that current defense methods focus on improving the model structure or the model only uses the adversarial training method which leads to a single type of defense and impairs the models classification ability and inefficiency, this paper proposed the method of combining the adversarial training and the feature mixture to train the siamese neural network model (SS-ResNet18). The method mixed the training set sample data by linear interpolation, built a siamese network model using the residual attention module, and inputted PGD antagonistic samples and normal samples into different branches of the network for training. It interchanged the input features in the feature space between neighboring sample parts to enhance the networks immunity to interference, combining the adversarial loss and the classification loss as the overall loss function of the network and smoothing it with labels. Experimented on CIFAR-10 and SVHN datasets, the method shows excellent defense performance under white-box attack, and the success rate of the models defense against anta-gonistic samples, such as PGD, JSMA, etc., under black-box attack is more than 80%. At the same time, the SS-ResNet18 model time spent is only one-half of the one-half of the subspace antagonistic training method. The experimental results show that the SS-ResNet18 model can defend against a variety of adversarial sample attacks, and is robust and less time-consuming to train compared to existing defense methods. Key words:siamese neural network; image classification; adversarial examples; adversarial train; attention mechanism; feature blending
0 引言
深度神經(jīng)網(wǎng)絡(luò)在自動駕駛汽車[1]、自然語言處理[2]和圖像識別[3]等方面獲得大量關(guān)注并展現(xiàn)出巨大潛力,隨著深度神經(jīng)網(wǎng)絡(luò)在重要領(lǐng)域的應(yīng)用越來越深入,深度學(xué)習(xí)模型的安全問題逐漸受到重視。2014年,Szegedy等人[4]提出對抗樣本的概念,對抗樣本是指在原始樣本添加微小的擾動,導(dǎo)致神經(jīng)網(wǎng)絡(luò)模型預(yù)測出錯。雖然人眼無法察覺所添加的較小擾動,但這給深度學(xué)習(xí)的實(shí)際應(yīng)用帶來很大危害。例如,對交通標(biāo)志圖片添加對抗擾動[5],會使自動駕駛汽車將停車標(biāo)志識別為限速,導(dǎo)致安全事故。因此,對抗樣本防御方法的研究具有現(xiàn)實(shí)意義。
利用神經(jīng)網(wǎng)絡(luò)這一漏洞,許多對抗攻擊算法被提出。Szegedy等人提出的擬牛頓攻擊算法通過在輸入的約束空間中找到一個不可察覺的最小輸入擾動,成功攻擊了當(dāng)時最先進(jìn)的圖片分類模型AlexNet和QuocNet。Goodfellow等人[6]提出了快速梯度符號方法(fast gradient sign method,F(xiàn)GSM),利用神經(jīng)網(wǎng)絡(luò)的梯度求解擾動,優(yōu)點(diǎn)是易于實(shí)現(xiàn)但攻擊能力較弱。Kurakin等人[7]對FGSM攻擊算法進(jìn)行改進(jìn),提出基礎(chǔ)迭代攻擊算法(basic iterative method,BIM),它是FGSM多次迭代的攻擊版本,利用損失函數(shù)的梯度多次更新對抗樣本達(dá)到更強(qiáng)攻擊效果。Madry等人[8]提出投影梯度下降攻擊(project gradient descent,PGD),該攻擊算法被用來作為測試模型防御性能好壞的基準(zhǔn)攻擊算法。
對抗攻擊算法的發(fā)展威脅著神經(jīng)網(wǎng)絡(luò)模型的安全,因此提升分類神經(jīng)網(wǎng)絡(luò)模型防御對抗攻擊的能力尤為重要。大部分防御方法已被文獻(xiàn)[9]證明防御能力有限,同時證明了對抗訓(xùn)練是目前最為有效的防御方法之一。優(yōu)化防御模型結(jié)構(gòu)的防御方法如防御蒸餾[10]、對抗樣本檢測[11]和基于生成對抗網(wǎng)絡(luò)的防御[12] 方法在面對某一類攻擊樣本時能達(dá)到很好的防御效果,一旦模型結(jié)構(gòu)被攻擊者已知,就失去了防御能力。對抗訓(xùn)練方法需要好的訓(xùn)練策略和更強(qiáng)的對抗樣本,通常會使訓(xùn)練時間比標(biāo)準(zhǔn)訓(xùn)練增加一個或多個數(shù)量級,且容易發(fā)生災(zāi)難性過擬合故障[13]。其他防御方法通過處理輸入數(shù)據(jù)[14~16]進(jìn)行防御,模型整體防御性能提升不大。
本文提出一種融合殘差注意力機(jī)制和孿生神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的對抗訓(xùn)練方法(SS-ResNet18 AT),通過無參注意力[17]機(jī)制中的能量函數(shù)增加重要神經(jīng)元的權(quán)重占比,幫助網(wǎng)絡(luò)學(xué)習(xí)圖像底層特征,增強(qiáng)網(wǎng)絡(luò)穩(wěn)健性。首先,目標(biāo)網(wǎng)絡(luò)模型使用PGD算法生成對抗樣本,再通過混合[18]和硬修補(bǔ)[19]策略混合樣本特征,訓(xùn)練防御模型得到最優(yōu)參數(shù)。實(shí)驗(yàn)結(jié)果證明,本文模型在防御對抗樣本成功率方面較其他方法表現(xiàn)更好。
1 相關(guān)工作
1.1 威脅模型
對抗樣本具有隱蔽性同時兼具攻擊性的特點(diǎn),決定了對抗樣本生成方法必須添加一定的限制,不是使用任意圖像替換給出的輸入圖像進(jìn)行攻擊就屬于對抗攻擊,這違背了對抗樣本的定義。為此,將針對攻擊目標(biāo)網(wǎng)絡(luò)生成對應(yīng)對抗樣本的模型定義為威脅模型。通過威脅模型生成對抗樣本在現(xiàn)實(shí)世界進(jìn)行應(yīng)用會帶來極大的安全隱患,例如,在非停車路段模擬停車標(biāo)識使用自動駕駛汽車識別網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn),自動駕駛汽車無法規(guī)避該問題。
威脅模型的設(shè)計對于防御對抗樣本的研究極其重要,了解攻擊原理才能更好地進(jìn)行防御,針對對抗樣本攻擊的目標(biāo)可以分為有目標(biāo)攻擊和無目標(biāo)攻擊。有目標(biāo)攻擊是將輸入樣本分類為給定的錯誤類,給定f(·)為分類器,輸入樣本x和預(yù)分類目標(biāo)t, f(x)≠t,通過威脅模型尋找對抗樣本x′,使得f(x′)=t且‖x-x′‖p≤δ(p=0,2,∞),δ為添加的對抗擾動,p表示對擾動添加的約束類型。無目標(biāo)攻擊是指將樣本分類為任意一個非正確類,若f(x)=y,尋找一個對抗樣本使f(x′)≠y。
根據(jù)攻擊方式,將對抗攻擊類型進(jìn)行分類,可分為白盒攻擊、灰盒攻擊和黑盒攻擊。白盒攻擊是已知模型所有參數(shù)信息,所以攻擊成功率更高,常見的白盒攻擊算法有PGD、FGSM和Deep Fool[20]等。黑盒攻擊是攻擊者無法獲得目標(biāo)網(wǎng)絡(luò)的信息,僅能獲得目標(biāo)網(wǎng)絡(luò)的輸出,攻擊者利用對抗樣本的遷移性進(jìn)行攻擊?;液泄魟t介于兩者之間。
1.2 孿生神經(jīng)網(wǎng)絡(luò)與殘差神經(jīng)網(wǎng)絡(luò)
孿生神經(jīng)網(wǎng)絡(luò)[21]由結(jié)構(gòu)相同、權(quán)值共享的兩個子網(wǎng)絡(luò)組成。兩個子網(wǎng)絡(luò)各自接收一個輸入,將其映射至高維特征空間,并輸出對應(yīng)的表征,輸出作為孿生網(wǎng)絡(luò)損失函數(shù)的輸入。孿生網(wǎng)絡(luò)子網(wǎng)絡(luò)可以是卷積神經(jīng)網(wǎng)絡(luò)或循環(huán)神經(jīng)網(wǎng)絡(luò),其權(quán)重由能量函數(shù)或分類損失優(yōu)化。孿生網(wǎng)絡(luò)一般用來評價兩個輸入的相似度或進(jìn)行小樣本學(xué)習(xí),也有學(xué)者使用孿生網(wǎng)絡(luò)進(jìn)行圖像分類等。
殘差神經(jīng)網(wǎng)絡(luò)于2015年提出,在大數(shù)據(jù)集的分類任務(wù)上表現(xiàn)優(yōu)秀,解決了隨著網(wǎng)絡(luò)深度不斷增加,出現(xiàn)梯度爆炸或梯度消失的問題。殘差網(wǎng)絡(luò)主要是由一系列殘差模塊組成,每個殘差模塊內(nèi)部都加入了跳躍連接。以ResNet18為例,共有四個殘差單元,每個殘差單元包含兩個殘差塊,殘差模塊內(nèi)部主要使用的卷積大小為1×1和3×3。針對殘差網(wǎng)絡(luò)的改進(jìn),主要分為加深網(wǎng)絡(luò)深度和增加網(wǎng)絡(luò)寬度兩方面,隨之而來的問題是網(wǎng)絡(luò)復(fù)雜度上升,使用小樣本訓(xùn)練網(wǎng)絡(luò)時容易過擬合。圖1顯示了孿生網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)和經(jīng)典殘差塊結(jié)構(gòu)。
1.3 對抗訓(xùn)練
對抗訓(xùn)練防御方法占據(jù)主流的理論是Madry等人從博弈的角度出發(fā),在經(jīng)驗(yàn)風(fēng)險最小化的原理基礎(chǔ)上,提出了對抗魯棒性的優(yōu)化觀點(diǎn)。其中,將模型的優(yōu)化問題定義為求解鞍點(diǎn)的優(yōu)化問題,即最大—最小問題,為后續(xù)對抗訓(xùn)練防御方法的研究提供了理論基礎(chǔ)。其求解公式如式(1)所示。
minθ ρ(θ),where ρ(θ)=E(x,y)~D[maxδ∈S L(θ,x+δ,y)](1)
其中:L(θ,x+δ,y)為損失函數(shù);x為原始樣本;y為原始樣本的標(biāo)簽;δ為擾動信息;S為擾動信息的集合;D為數(shù)據(jù)(x,y)滿足的分布;θ為深度神經(jīng)網(wǎng)絡(luò)的參數(shù)。此公式求解可理解為在內(nèi)部找到對抗樣本使損失最大,然后優(yōu)化模型參數(shù)使其外部經(jīng)驗(yàn)風(fēng)險最小。
目前許多對抗訓(xùn)練方法不斷改進(jìn),Goodfelllow等人使用目標(biāo)網(wǎng)絡(luò)生成FGSM對抗樣本加入訓(xùn)練集去訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,證明了對抗訓(xùn)練能提高深度學(xué)習(xí)分類模型對對抗樣本的魯棒性,提高了模型對對抗樣本的分類精度。但很快,BIM攻擊通過采取多個更小的FGSM步驟改進(jìn)了FGSM,最終使基于FGSM對抗樣本訓(xùn)練的網(wǎng)絡(luò)模型被擊破。這種迭代的對抗攻擊通過添加多次隨機(jī)重啟而得到進(jìn)一步加強(qiáng),并且使用該算法生成的對抗樣本也被納入對抗訓(xùn)練過程。
從Madry等人僅使用PGD算法生成的對抗樣本訓(xùn)練網(wǎng)絡(luò)模型到Zhang等人[22]提出TRADES方法,使用原始樣本共同訓(xùn)練模型可以增加模型的準(zhǔn)確率。自由對抗訓(xùn)練(Free AT)[23]方法在PGD對抗訓(xùn)練的基礎(chǔ)上改進(jìn)了梯度更新步驟,縮短了訓(xùn)練時間,但防御性能方面沒有較大提升。快速對抗訓(xùn)練方法(Fast AT)[24]是在FGSM對抗訓(xùn)練方法基礎(chǔ)上引入隨機(jī)化,比自由對抗訓(xùn)練用時更短,但模型防御對抗樣本攻擊的成功率沒有提升。還有利用各種技術(shù)增強(qiáng)對抗訓(xùn)練防御能力,如邏輯配對[25]、循環(huán)學(xué)習(xí)率[26]等。
2 本文方法
現(xiàn)有的對抗樣本圖像防御方法往往只側(cè)重于提高對抗樣本的魯棒性,或者側(cè)重于構(gòu)建額外的模型檢測對抗樣本,而無法兼顧兩者。為此,提出了結(jié)合對抗訓(xùn)練和特征混合訓(xùn)練孿生神經(jīng)網(wǎng)絡(luò)模型(SS-ResNet18),本文網(wǎng)絡(luò)基礎(chǔ)架構(gòu)為加入注意力層的ResNet18,ResNet的殘差結(jié)構(gòu)能有效緩解梯度消失問題,且ResNet18相較于ResNet50和DenseNet,網(wǎng)絡(luò)參數(shù)量更少,網(wǎng)絡(luò)訓(xùn)練更易收斂,在達(dá)到較好防御性能的同時有效降低了網(wǎng)絡(luò)計算復(fù)雜度。
訓(xùn)練網(wǎng)絡(luò)時采用的MixUp方法不是從數(shù)據(jù)集中隨機(jī)選取兩個數(shù)據(jù)樣本,而是從同一訓(xùn)練批次中抽取訓(xùn)練樣本進(jìn)行線性插值。然后,將對抗樣本與原始樣本分別輸入孿生網(wǎng)絡(luò)的子網(wǎng)絡(luò)中,注意力層幫助網(wǎng)絡(luò)更好地學(xué)習(xí)樣本間的關(guān)聯(lián),硬修補(bǔ)融合相鄰樣本特征,減少對抗擾動對模型的干擾,從而提高網(wǎng)絡(luò)穩(wěn)定性和防御對抗樣本的能力。圖2為本文方法防御總體框架。
2.1 輸入樣本處理
混合(MixUp)是一種數(shù)據(jù)增廣策略,以線性插值的方式來構(gòu)建新的訓(xùn)練樣本和標(biāo)簽。MixUp對標(biāo)簽空間進(jìn)行了軟化,通過模型輸入與標(biāo)簽構(gòu)建具有凸性質(zhì)的運(yùn)算,構(gòu)造新的訓(xùn)練樣本與對應(yīng)的標(biāo)簽。與其他插值方法相比,線性插值能將任意層的特征以及對應(yīng)的標(biāo)簽進(jìn)行混合,提高模型的泛化能力和魯棒性。
MixUp的過程是從訓(xùn)練數(shù)據(jù)中隨機(jī)抽取兩個特征目標(biāo)向量(xi,yi)及(xj,yj),(,)為插值后的樣本和對應(yīng)標(biāo)簽,參數(shù)λ∈Beta(α,α)控制插值的強(qiáng)度,設(shè)置參數(shù)λ∈[0,1],α∈[0,∞],線性插值公式如式(2)所示。
=λxi+(1-λ)xj
=λyi+(1-λ)yj (2)
以CIFAR-10數(shù)據(jù)集為例,隨機(jī)抽取500個數(shù)據(jù)樣本進(jìn)行可視化,直觀顯示MixUp操作前后的數(shù)據(jù)分布變化,右上角為數(shù)據(jù)標(biāo)簽信息。從圖3中可觀察到進(jìn)行MixUp操作后,對比正常樣本和對抗樣本的數(shù)據(jù)分布,混合樣本后能減輕噪聲圖像對網(wǎng)絡(luò)訓(xùn)練過程的影響,增強(qiáng)模型的泛化能力。
硬修補(bǔ)(Hard PatchUp)方法最初提出目的是為了提高卷積神經(jīng)網(wǎng)絡(luò)模型對流形入侵問題的魯棒性,即緩解對抗樣本改變原始樣本的數(shù)據(jù)分布,使原始樣本特征偏離流形分布的問題。使用該方法在SS-ResNet18特征層進(jìn)行多維度訓(xùn)練,對輸入樣本特征圖進(jìn)行處理,即選擇卷積層k,創(chuàng)建二進(jìn)制掩碼M,將兩個相鄰樣本中對應(yīng)M大小的特征塊進(jìn)行互換。
該方法主要由三個超參數(shù)進(jìn)行控制:patchup_prob為給定的小批量執(zhí)行Hard PatchUp的概率,實(shí)驗(yàn)設(shè)置為1.0;塊大?。╞lock_size)和γ用于控制掩碼生成,本文將block_size設(shè)置為7,γ設(shè)置為0.9。使用參數(shù)γ生成一個要屏蔽的塊的中心點(diǎn)γadj,掩碼中心γadj的計算為
γadj=γ×(feat_size2)(block_size2)×(feat_size-block_size+1)2(3)
對掩碼中心進(jìn)行伯努利采樣,將掩碼中的每個點(diǎn)擴(kuò)展到塊大小的方塊區(qū)域,通過最大池化操作后取反,然后得到最終的掩碼塊。掩碼塊計算為
m←1-(max_pool2d(Bernoulli(γadj),kernel_size,stride,padding))(4)
假定輸入的特征大小為(N,C,H,W),那么掩碼中心的大小應(yīng)該為(N,C,H-block_size-1,W-block_size-1),而掩碼塊的大小為(N,C,H,W),先對掩碼中心進(jìn)行填充,然后用一個卷積核大小的塊進(jìn)行最大池化來得到掩碼塊,最后將特征乘以掩碼塊即可。兩個樣本xi和xj在層k處的硬修補(bǔ)操作如式(5)所示。
hard(gk(xi),gk(xj))=M⊙gk(xi)+(1-M)⊙gk(xj)(5)
其中:⊙為點(diǎn)積運(yùn)算;gk為輸入圖像在第k個卷積層隱藏表示的映射。應(yīng)用PatchUp操作之后,分類網(wǎng)絡(luò)模型從層k向前傳遞到模型中的最后一層,Hard PatchUp的特征塊互換過程如圖4所示。圖4中x1=g(i)k(a)和x2=g(i)k(b)分別為兩張圖像卷積輸出特征圖,i為特征圖索引,a、b為隨機(jī)選擇的兩個樣本關(guān)聯(lián)的隱藏表示。在特征空間進(jìn)行硬修補(bǔ)操作,使網(wǎng)絡(luò)學(xué)習(xí)樣本更深的特征而不易陷入過擬合。
2.2 對抗訓(xùn)練防御方法
本文對抗訓(xùn)練方法的實(shí)現(xiàn)分為以下四步:a)計算原始樣本批次的損失;b)使用投影梯度下降(PGD)攻擊算法生成一批對抗樣本;c)使用原始標(biāo)簽對這些對抗樣本進(jìn)行訓(xùn)練,得到對抗樣本的插值損失函數(shù);d)從原始樣本批次和對抗批次中獲得損失的平均值,并使用該損失更新網(wǎng)絡(luò)參數(shù)。PGD算法生成對抗樣本如公式
xt+1=∏x+S(xt+ε sign(xJ(θ,x,y)))(6)
其中:xt為第k次迭代后的圖像;y為真實(shí)標(biāo)簽;θ為目標(biāo)模型參數(shù);J(θ,x,y)為用來衡量分類誤差的損失函數(shù);ε為移動的步長;∏x+S為將擾動值限制在球面范圍內(nèi)。
生成對抗樣本之后,與原始樣本一起作為輸入數(shù)據(jù)集輸入分類模型,分類模型對輸入樣本進(jìn)行計算得到輸出,再同正確標(biāo)簽進(jìn)行計算得到損失,損失反向傳播來更新網(wǎng)絡(luò)參數(shù),重復(fù)進(jìn)行直到損失達(dá)到預(yù)期效果或達(dá)到設(shè)置的訓(xùn)練批次。對抗訓(xùn)練的過程如圖5所示。
2.3 子網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計
實(shí)驗(yàn)以經(jīng)典的殘差網(wǎng)絡(luò)模型ResNet18為基模型設(shè)計防御框架??紤]到訓(xùn)練深層網(wǎng)絡(luò)過程中參與計算的參數(shù)量越大,模型結(jié)構(gòu)越復(fù)雜的特點(diǎn),為了提高網(wǎng)絡(luò)對重要特征的提取能力,在ResNet18基礎(chǔ)殘差塊中加入注意力模塊SimAM,相比通道(1D)和空間(2D)注意力,其關(guān)注重點(diǎn)在于神經(jīng)元重要性。該注意力可以有效生成真實(shí)三維權(quán)重。使用優(yōu)化后的能量函數(shù)來發(fā)現(xiàn)每個神經(jīng)元的重要性,式(7)用來計算能量函數(shù)。
et(wt,bt,y,xi)=
1M-1∑M-1i-1(-1-(wtxi+bt))2+(1-(wtt+bt))2+λw2t(7)
其中:wt和bt分別為權(quán)重和偏置變換;t和xi為輸入特征的單個通道中目標(biāo)神經(jīng)元和其他神經(jīng)元;M=H×W為該通道上的神經(jīng)元數(shù)量。合理地假設(shè)單個通道中的所有像素遵循相同的分布。根據(jù)這一假設(shè),可以計算所有神經(jīng)元的平均值和方差,并重新用于該通道上的所有神經(jīng)元,顯著降低計算成本,避免重復(fù)計算。因此,最小能量可通過式(8)計算。
e*t=4(2+λ)(t-)+22+2λ(8)
其中:=1M∑Mi=1xi;2=1M∑Mi=1(xi-)2。式(8)表明,神經(jīng)元t的能量e*t越低,與周圍神經(jīng)元越不同,對視覺處理越重要。因此,每個神經(jīng)元的重要性可以通過1/e*t得出。相比通道(1D)和空間(2D)注意力,該注意力機(jī)制在改善本文網(wǎng)絡(luò)的表征能力上更具靈活性和有效性。圖6顯示本文網(wǎng)絡(luò)殘差注意力模塊結(jié)構(gòu)。
2.4 損失函數(shù)
使用插值損失函數(shù)作為訓(xùn)練網(wǎng)絡(luò)的損失函數(shù)。該損失函數(shù)由兩部分組成,一部分為正常樣本的插值損失函數(shù)Lnor。
Lnor=1n2∑ni, j=1Eλ~Dλl(fθ(i,j(λ)),i,j(λ))(9)
其中:i,j(λ)=λxi+(1-λ)xj,i,j(λ)=λyi+(1-λ)yj且λ∈[0,1];Dλ為Beta分布,Beta分布中超參數(shù)α,β>0;n為樣本數(shù);θ為網(wǎng)絡(luò)參數(shù);fθ(x)為神經(jīng)網(wǎng)絡(luò)輸出;l為函數(shù)交叉熵?fù)p失。另一部分為對抗插值損失函數(shù)Ladv。
Ladv=1n2∑ni, j=1Eλ~Dλl(fθ(i,j(λ)),i,j(λ))(10)
其中:i=xi+δ,i,j(λ)=λi+(1-λ)j,對擾動δ使用L2范數(shù)約束;‖δ‖2≤C,C為大于零的常數(shù),C越大,對抗樣本攻擊成功率越高,但對抗樣本的隱蔽性會變?nèi)?,反之亦然。整體損失公式如式(11)所示。
Loss=Lnor+Ladv2(11)
3 實(shí)驗(yàn)
本章在CIFAR-10和SVHN數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),驗(yàn)證本文方法訓(xùn)練的模型防御能力,主要使用FGSM、PGD、AA三種攻擊算法進(jìn)行無目標(biāo)攻擊測試,選用L∞范數(shù)作為攻擊的距離度量,對抗擾動大小設(shè)置為8/255。對PGD攻擊而言,迭代次數(shù)越多,攻擊越強(qiáng),步長均設(shè)置為2/255,使用PGD-7表示迭代七次生成對抗樣本,PGD-20表示迭代二十次生成對抗樣本。這三種攻擊算法在模型不采取防御策略時均能使模型分類性能大幅下降,以此作為測試防御模型防御性能好壞的基準(zhǔn)攻擊。
3.1 實(shí)驗(yàn)設(shè)置
選用CIFAR-10和SVHN數(shù)據(jù)集作為本文實(shí)驗(yàn)所用數(shù)據(jù)集進(jìn)行訓(xùn)練和測試。CIFAR-10數(shù)據(jù)集是用于識別普適物體的小型彩色數(shù)據(jù)集,每張圖像大小為32×32,包含10個類別,有50 000張訓(xùn)練圖像和10 000張測試圖像。SVHN(street view house number)數(shù)據(jù)集來源于谷歌街景門牌號碼,來自一個明顯更難、未解決的現(xiàn)實(shí)世界問題(識別自然場景圖像中的數(shù)字和數(shù)字)。數(shù)據(jù)集中每張圖像大小都為32×32,每張圖片中包含一組0~9的阿拉伯?dāng)?shù)字。訓(xùn)練集中包含73 257個數(shù)字,測試集中包含26 032個數(shù)字,另有531 131個附加數(shù)字。
a)硬件環(huán)境 本實(shí)驗(yàn)在Windows 10系統(tǒng)下進(jìn)行,GeForce RTX 3060 6 GB的GPU輔助運(yùn)行,機(jī)帶RAM為16 GB。
b)軟件環(huán)境 本實(shí)驗(yàn)采用Python 3.6編程語言,利用PyTorch深度學(xué)習(xí)框架,實(shí)驗(yàn)環(huán)境版本為CUDA 10.2,PyTorch 1.10,TorchVision 0.11.1。
主要使用FGSM、PGD(step=7和step=20)、AutoAttack三種對抗攻擊算法制作對抗樣本來測試模型的防御能力,測試所用對抗攻擊算法來自Pytorch中的torchattacks庫。在不防御的前提下,分類模型對各樣本的分類結(jié)果如表1所示。
3.2 評價指標(biāo)和對抗樣本
實(shí)驗(yàn)采用兩種評價指標(biāo)評估防御方法,即評估訓(xùn)練模型所用時間和評估模型防御白盒攻擊性能。在非目標(biāo)攻擊防御實(shí)驗(yàn)中,使用測試集的分類準(zhǔn)確率對模型防御性能進(jìn)行評估。分類準(zhǔn)確率acc計算如式(12)所示。
acc=TP+TNTP+FP+TN+FN(12)
其中:TP表示把正類預(yù)測為正類;TN表示把負(fù)類預(yù)測為負(fù)類;FP表示把負(fù)類預(yù)測為正類;FN表示把正類預(yù)測為負(fù)類。本文用該指標(biāo)來評估模型對輸入圖像的分類精度。
PyTorch自帶的torchattacks庫中對抗攻擊算法生成的對抗樣本圖像如圖7所示,其中原始樣本來自SVHN數(shù)據(jù)集,對抗攻擊算法對其添加的對抗擾動大小均設(shè)置為8/255。
3.3 實(shí)驗(yàn)結(jié)果
3.3.1 對比實(shí)驗(yàn)
為了更直觀地觀察本文防御模型性能,圖8、9顯示在FGSM、PGD及自動攻擊(AutoAttack,AA)[27]下模型整體防御性能的提升,深灰色柱狀區(qū)域表示模型不采取防御措施下對抗樣本的防御成功率,淺灰色柱狀區(qū)域則表示采取防御之后的防御成功率(參見電子版),可明顯觀察到本文模型防御對抗樣本的能力大幅提升。
為更好地評估防御性能,使用白盒攻擊和黑盒攻擊兩種方式進(jìn)行測試,白盒測試模型的防御性能,黑盒測試模型的泛化性能。在兩個數(shù)據(jù)集上訓(xùn)練本文模型,然后與其他防御方法進(jìn)行對比。SVHN數(shù)據(jù)集上進(jìn)行對比的方法包括基線方法、PGD AT、MixUp和插值對抗訓(xùn)練方法。對比結(jié)果如表2所示。
CIFAR-10數(shù)據(jù)集上對比方法有PGD AT、快速對抗訓(xùn)練(Fast AT)、自由對抗訓(xùn)練(Free AT)、插值對抗訓(xùn)練(Interpolation AT)[28]以及子空間對抗訓(xùn)練(Sub-AT)[29],對比實(shí)驗(yàn)結(jié)果如表3所示。
實(shí)驗(yàn)結(jié)果表明,基于SS-ResNet18進(jìn)行對抗訓(xùn)練的防御策略不僅能保持較高的原始樣本分類準(zhǔn)確率,模型對對抗樣本的分類能力也有了大幅提升。以PGD-7攻擊為例,其分類準(zhǔn)確率提升20%以上,防御其他攻擊的能力也有了明顯提高。
除了表2、3的白盒攻擊測試結(jié)果對比外,本文還進(jìn)行了對抗樣本黑盒攻擊測試,使用VGG16網(wǎng)絡(luò)生成對抗樣本圖像攻擊SS-ResNet18防御模型。在兩個數(shù)據(jù)集上的黑盒測試結(jié)果如表4所示。
根據(jù)混淆矩陣分析SS-ResNet18模型對數(shù)據(jù)集中每類圖像的分類能力,黑盒攻擊實(shí)驗(yàn)測試結(jié)果的混淆矩陣如圖10所示。
混淆矩陣中對角線數(shù)據(jù)指的是SS-ResNet18模型將每類樣本分類正確的數(shù)量,對角線外為分類錯誤的樣本數(shù)量。圖中橫軸表示分類正確樣本標(biāo)簽,縱軸表示分類錯誤樣本標(biāo)簽,模型分類對抗樣本的準(zhǔn)確率用魯棒準(zhǔn)確率表示。分析黑盒攻擊下的測試結(jié)果可得,在未知目標(biāo)模型結(jié)構(gòu)情況下,對抗樣本很難通過泛化性成功攻擊SS-ResNet18模型。該模型具有良好的泛化性能。
3.3.2 消融實(shí)驗(yàn)
在CIFAR-10和SVHN數(shù)據(jù)集上對實(shí)驗(yàn)結(jié)果進(jìn)行消融研究,驗(yàn)證模型結(jié)構(gòu)的合理性。消融設(shè)置如下:模型1為ResNet18不采用任何防御策略進(jìn)行標(biāo)準(zhǔn)訓(xùn)練的模型、模型2為ResNet18進(jìn)行PGD對抗訓(xùn)練防御方法訓(xùn)練得到的模型、模型3為ResNet18進(jìn)行插值對抗訓(xùn)練防御方法訓(xùn)練得到的模型、模型4采用加入注意力機(jī)制的ResNet18進(jìn)行插值對抗訓(xùn)練得到的模型、模型5為使用對抗訓(xùn)練和特征混合方法訓(xùn)練得到的SS-ResNet18模型。
實(shí)驗(yàn)測試所用模型均訓(xùn)練200輪次,基本參數(shù)相同。測試數(shù)據(jù)為原始測試數(shù)據(jù)集和使用殘差網(wǎng)絡(luò)生成的步長為2/255、迭代七次且進(jìn)行l(wèi)∞范數(shù)約束的PGD算法生成的對抗樣本,評價指標(biāo)為分類精度和魯棒精度,分別表示分類正常樣本和PGD-7對抗樣本的分類準(zhǔn)確率。實(shí)驗(yàn)結(jié)果如表5所示,均取最佳測試結(jié)果。
3.3.3 訓(xùn)練時間花銷和穩(wěn)定性對比
對抗訓(xùn)練需要生成對抗樣本投入模型訓(xùn)練,因此較標(biāo)準(zhǔn)訓(xùn)練耗時更長,不易應(yīng)用到大型網(wǎng)絡(luò)。使用早期停止策略,當(dāng)損失在20個周期不下降就停止網(wǎng)絡(luò)訓(xùn)練,并使用ResNet18作為基模型進(jìn)行訓(xùn)練。訓(xùn)練時間對比結(jié)果如表6所示。
由表6數(shù)據(jù)可知,雖然訓(xùn)練模型時間相比快速訓(xùn)練方法仍有差距,但對比PGD對抗訓(xùn)練方法有著較大提升,且SS-ResNet18對抗訓(xùn)練所需訓(xùn)練時長低于最新提出的子空間對抗訓(xùn)練方法。從表6可知,SS-ResNet18對抗訓(xùn)練方法有效縮短了對抗訓(xùn)練時間,在時間成本上的花銷低于大部分對抗訓(xùn)練防御方法。為了驗(yàn)證模型的穩(wěn)定性,采取CIFAR-10數(shù)據(jù)集訓(xùn)練好的防御模型,在步長為2/255,迭代七次的PGD攻擊擾動不斷增大的情況下進(jìn)行實(shí)驗(yàn)測試。與標(biāo)準(zhǔn)訓(xùn)練、TRADES方法進(jìn)行對比,穩(wěn)定性測試為白盒攻擊測試結(jié)果,實(shí)驗(yàn)結(jié)果如圖11所示。
眾所周知,大擾動下分類模型更不易分類原始樣本和對抗樣本,擾動越大分類準(zhǔn)確率越低,模型防御對抗樣本的能力就越弱。圖11可觀察到SS-ResNet18對抗訓(xùn)練方法訓(xùn)練的模型在擾動不斷增大的情況下下降趨勢更為緩慢。綜上可得,SS-ResNet18模型不僅具有高魯棒性,也具有高穩(wěn)定性。
4 結(jié)束語
本文通過添加注意力模塊對殘差網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn),計算能量函數(shù)來增加重要神經(jīng)元的權(quán)重。孿生網(wǎng)絡(luò)結(jié)構(gòu)很好地緩解了對抗訓(xùn)練過程中對抗樣本對干凈樣本分類結(jié)果的干擾,加速網(wǎng)絡(luò)訓(xùn)練過程,訓(xùn)練模型過程中融合樣本間的特征以提高網(wǎng)絡(luò)泛化性。在兩個開源數(shù)據(jù)集上,使用多種攻擊方式與不同防御方法訓(xùn)練的卷積神經(jīng)網(wǎng)絡(luò)分類模型進(jìn)行對比,根據(jù)白盒攻擊測試結(jié)果可得,本文模型魯棒性最好,對比最新的子空間訓(xùn)練方法,模型訓(xùn)練時間更少。黑盒測試結(jié)果和穩(wěn)定性對比實(shí)驗(yàn)進(jìn)一步驗(yàn)證了該模型有著良好的泛化能力和防御性能。通過消融實(shí)驗(yàn),保持參數(shù)一致的情況下證明SS-ResNet18模型所添加的策略是可行有效的。綜合可得,SS-ResNet18模型提高了分類模型防御多種對抗樣本攻擊的能力。同時,模型降低了采用對抗訓(xùn)練方法對正常樣本分類準(zhǔn)確率的負(fù)面影響,且模型訓(xùn)練時間較短。
參考文獻(xiàn):
[1]Spielberg N A,Brown M,Gerdes J C. Neural network model predictive motion control applied to automated driving with unknown friction [J]. IEEE Trans on Control Systems Technology,2021,30(5): 1934-1945.
[2]桂韜,奚志恒,鄭銳,等. 基于深度學(xué)習(xí)的自然語言處理魯棒性研究綜述 [J]. 計算機(jī)學(xué)報,2024,47(1): 90-112. (Gui Tao,Xi Zhiheng,Zhen Rui,et al. A review of deep learning-based natural language processing robustness research [J]. Chinese Journal of Computers,2024,47(1): 90-112.)
[3]Li Yinglong. Research and application of deep learning in image recog-nition [C]// Proc of the 2nd IEEE International Conference on Power,Electronics and Computer Applications. Piscataway,NJ: IEEE Press,2022: 994-999.
[4]Szegedy C,Zaremba W,Sutskever I,et al. Intriguing properties of neural networks [EB/OL]. (2014-02-19). https://arxiv.org/abs/1312.6199.
[5]Eykholt K,Evtimov I,F(xiàn)ernandes E,et al. Robust physical-world attacks on deep learning visual classification [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2018: 1625-1634.
[6]Goodfellow I J,Shlens J,Szegedy C. Explaining and harnessing adversarial examples [EB/OL]. (2015-03-20). https://arxiv.org/abs/1412.6572.
[7]Kurakin A,Goodfellow I J,Bengio S. Adversarial examples in the physical world [M]// Artificial Intelligence Safety and Security. Boca Raton,F(xiàn)L: Chapman and Hall/CRC,2018: 99-112.
[8]Madry A,Makelov A,Schmidt L,et al. Towards deep learning models resistant to adversarial attacks [EB/OL]. (2019-09-04). https://arxiv.org/abs/1706.06083.
[9]Athalye A,Carlini N,Wagner D. Obfuscated gradients give a false sense of security: circumventing defenses to adversarial examples [C]// Proc of International Conference on Machine Learning. [S.l.]:PMLR,2018: 274-283.
[10]Papernot N,McDaniel P,Wu Xi,et al. Distillation as a defense to adversarial perturbations against deep neural networks [C]// Proc of IEEE Symposium on Security and Privacy. Piscataway,NJ: IEEE Press,2016: 582-597.
[11]魏忠誠,馮浩,張新秋,等. 基于注意力機(jī)制的物理對抗樣本檢測方法研究 [J]. 計算機(jī)應(yīng)用研究,2022,39(1): 254-258. (Wei Zhongcheng,F(xiàn)eng Hao,Zhang Xinqiu,et al. Research on physical adversarial sample detection methods based on attention mechanisms [J]. Application Research of Computers,2022,39(1): 254-258.)
[12]Esmaeilpour M,Cardinal P,Koerich A L. Cyclic defense GAN against speech adversarial attacks [J]. IEEE Signal Processing Letters,2021,28: 1769-1773.
[13]Kim H,Lee W,Lee J. Understanding catastrophic overfitting in single-step adversarial training [C]// Proc of the AAAI Conference on Artificial Intelligence. Palo Alto,CA: AAAI Press,2021: 8119-8127.
[14]Jia Xiaojun,Wei Xingxing,Cao Xiaochun,et al. ComDefend: an efficient image compression model to defend adversarial examples [C]// Proc of IEEE/CVF Conference on Computer Vision and Pattern Recog-nition. Piscataway,NJ: IEEE Press,2019: 6077-6085.
[15]Wu Dongxian,Wang Yisen. Adversarial neuron pruning purifies backdoored deep models [J]. Advances in Neural Information Processing Systems,2021,34: 16913-16925.
[16]王佳,張揚(yáng)眉,蘇武強(qiáng),等. 基于壓縮感知的神經(jīng)網(wǎng)絡(luò)實(shí)時綜合防御策略 [J]. 計算機(jī)學(xué)報,2023,46(1): 1-16. (Wang Jia,Zhang Yangmei,Su Wuqiang,et al. Compression-aware neural network-based real-time integrated defense strategy [J]. Chinese Journal of Computers,2023,46(1): 1-16.)
[17]Yang Lingxiao,Zhang Ruyuan,Li Lida,et al. SimAM: a simple,parameter-free attention module for convolutional neural networks [C]// Proc of International Conference on Machine Learning. [S.l.]: PMLR,2021: 11863-11874.
[18]Zhang Linjun,Deng Zhun. How does mixup help with robustness and generalization? [C]// Proc of the 9th International Conference on Learning Representations. 2021.
[19]Faramarzi M,Amini M,Badrinaaraayanan A, et al. PatchUp: a feature-space block-level regularization technique for convolutional neural networks [C]// Proc of AAAI Conference on Artificial Intelligence. Palo Alto,CA: AAAI Press,2022: 589-597.
[20]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]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2016: 2574-2582.
[21]Koch G,Zemel R,Salakhutdinov R. Siamese neural networks for one-shot image recognition [C]// Proc of ICML Deep Learning Workshop. 2015.
[22]Zhang Hongyang,Yu Yaodong,Jiao Jiantao,et al. Theoretically principled trade-off between robustness and accuracy [C]// Proc of International Conference on Machine Learning. [S.l.]: PMLR,2019: 7472-7482.
[23]Shafahi A,Najibi M,Ghiasi M A,et al. Adversarial training for free! [EB/OL]. (2019-11-20). https://arxiv.org/abs/1904.12843.
[24]Wong E,Rice L,Kolter J Z. Fast is better than free: revisiting adversarial training [EB/OL]. (2020-01-12). https://arxiv.org/abs/2001.03994.
[25]Li Xingjian,Goodman D,Liu Ji,et al. Improving adversarial robustness via attention and adversarial logit pairing [J]. Frontiers in Artificial Intelligence,2022,4: 752831.
[26]Smith L N. Cyclical learning rates for training neural networks [C]// Proc of IEEE Winter Conference on Applications of Computer Vision. Piscataway,NJ: IEEE Press,2017: 464-472.
[27]Croce F,Hein M. Reliable evaluation of adversarial robustness with an ensemble of diverse parameter-free attacks [C]// Proc of International Conference on Machine Learning.[S.l.]:PMLR,2020:2206-2216.
[28]Lamb A,Verma V,Kannala J,et al. Interpolated adversarial training: achieving robust neural networks without sacrificing too much accuracy [C]// Proc of the 12th ACM Workshop on Artificial Intelligence and Security. New York:ACM Press,2019: 95-103.
[29]Li Tao,Wu Yingwen,Chen Sizhe,et al. Subspace adversarial training [C]// Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2022: 13399-13408.