曾逸夫 薛繼偉
(東北石油大學(xué)計(jì)算機(jī)與信息技術(shù)學(xué)院 黑龍江 大慶 163318)
隨著移動(dòng)端技術(shù)的日益興起,加之5G時(shí)代的到來,作為AI領(lǐng)域領(lǐng)軍技術(shù)的深度學(xué)習(xí)也在向移動(dòng)端發(fā)展。神經(jīng)網(wǎng)絡(luò)作為深度學(xué)習(xí)的核心框架,通過層級疊加思想來不斷實(shí)現(xiàn)更高級的功能。但是由于移動(dòng)設(shè)備在硬件上存在相當(dāng)大的局限性,所以神經(jīng)網(wǎng)絡(luò)在參數(shù)上會(huì)受到一定的限制,將神經(jīng)網(wǎng)絡(luò)輕量化也勢在必行。輕量級神經(jīng)網(wǎng)絡(luò)最大的特點(diǎn)就是用很少的參數(shù)實(shí)現(xiàn)同等功能,并且準(zhǔn)確率保持平穩(wěn)。近些年,輕量級神經(jīng)網(wǎng)絡(luò)也逐漸進(jìn)入了人們的視野。Iandola等[1]創(chuàng)造的SqueezeNet采用火焰模型來降低參數(shù)量和計(jì)算量。Xception在Inception v3[2-4]基礎(chǔ)上進(jìn)行了改進(jìn),采用了深度可分離卷積從而降低計(jì)算量[5]。Zhang等[6]創(chuàng)造了ShuffleNet,采用點(diǎn)群卷積和通道混洗縮小了模型體積并提高了模型效率。Hu等[7]創(chuàng)造的SENet采用擠壓和激活技術(shù),通過學(xué)習(xí)的方式來自動(dòng)獲取到每個(gè)特征的重要程度,然后依照這個(gè)重要程度來提升有用的特征并抑制對當(dāng)前任務(wù)用處不大的特征。Howard等[8]創(chuàng)造的MobileNet v1采用了深度可分離卷積,但與Xception不同的是模型架構(gòu)順序以及有無激活層。隨后Sandler等[9]又創(chuàng)造了MobileNet v2,采用線性瓶頸層和倒置殘差塊有效解決了MobileNet v1的不足之處。Ma等[10]創(chuàng)造了ShuffleNet v2,棄用了ShuffleNet v1的1×1點(diǎn)群卷積,采用1×1的普通卷積替代,并在ShuffleNet v1的基礎(chǔ)上提出了一種新的操作——通道分離,模型輸入端分為兩部分,一部分直接向下傳遞,另一部分則進(jìn)行真正的向后計(jì)算。模型輸出端將兩個(gè)分支級聯(lián)起來,從而克服了ShuffleNet v1中Element-wise sum的操作[10]。受強(qiáng)化學(xué)習(xí)中的神經(jīng)架構(gòu)搜索算法啟發(fā),Tan等[13]在NasNet[11]和PnasNet[12]基礎(chǔ)上設(shè)計(jì)出了一種基于移動(dòng)端的MnasNet神經(jīng)網(wǎng)絡(luò),采用分解式層次搜索空間,將一個(gè)CNN模型分解為不同的模型,然后針對每個(gè)搜索操作和模塊之間的連接關(guān)系,允許不同塊有不同的層結(jié)構(gòu),從而提高了模型的效率。輕量級神經(jīng)網(wǎng)絡(luò)主要應(yīng)用在目標(biāo)分類、目標(biāo)檢測、圖像分割和識(shí)別等領(lǐng)域,結(jié)合嵌入式技術(shù),比如調(diào)用移動(dòng)端攝像頭來檢測識(shí)別目標(biāo),進(jìn)而做出相應(yīng)動(dòng)作。
隨著輕量級神經(jīng)網(wǎng)絡(luò)功能逐漸強(qiáng)大和性能的提升,其安全性問題也隨之而來。移動(dòng)設(shè)備較PC端的使用量逐年提升,同時(shí)在大數(shù)據(jù)時(shí)代也面臨著信息安全問題,比如人們衣食住行基本都在移動(dòng)端進(jìn)行交互,帶來方便快捷的同時(shí)也伴隨著個(gè)人信息安全的問題,所以移動(dòng)端神經(jīng)網(wǎng)絡(luò)模型的攻擊和防御的研究具有一定的潛在價(jià)值和發(fā)展動(dòng)力。本文不僅要對模型的功能和性能進(jìn)行創(chuàng)新,還要對模型安全性進(jìn)行加固和防御,從而使模型健壯性加強(qiáng),為人們提供一個(gè)安全健康的人工智能產(chǎn)品體驗(yàn)。模型攻擊分為三種,分別是白盒攻擊、黑盒攻擊和物理攻擊,這三種攻擊策略都在某種程度上存在著一定的難度。白盒攻擊算法最初由GAN創(chuàng)始人Goodfellow等[14]提出的FGSM,即快速梯度算法,可以應(yīng)用于定向和非定向攻擊。另一種基于梯度的白盒攻擊算法DeepFool是由Moosavi-Dezfooli等[15]提出,其作為一種非定向攻擊算法,相對FGSM有更小的擾動(dòng)來達(dá)到攻擊目標(biāo)。JAMA算法是Papernot等[16]提出的,是典型的L0范數(shù)的定向攻擊算法,其盡量減少修改的像素個(gè)數(shù)。CW算法是Carlini等[17]提出的,其被公認(rèn)為白盒攻擊算法中攻擊能力最強(qiáng)的算法之一,是一種基于優(yōu)化的對抗樣本生成算法。
本次研究主要?jiǎng)?chuàng)新在于兩個(gè)方面:1) 在MobileNet v2模型上采用7種優(yōu)化器與CW算法的原始優(yōu)化器進(jìn)行對比攻擊測試,通過傳統(tǒng)的數(shù)據(jù)增強(qiáng)技術(shù)進(jìn)行防御,從而體現(xiàn)出改進(jìn)后的CW白盒攻擊算法的反防御能力;2) 在MobileNet v2、ShuffleNet v2以及MnasNet模型上通過改變旋轉(zhuǎn)縮放因子、采用高斯-X噪聲混疊模式以及調(diào)整雙邊濾波器像素中心點(diǎn)直徑對改進(jìn)后的CW攻擊算法進(jìn)行二次防御研究,進(jìn)而得出輕量級神經(jīng)網(wǎng)絡(luò)模型安全防御措施。
CW算法是一種基于優(yōu)化的對抗樣本生成算法,在定向攻擊中,使用交叉熵定義目標(biāo)函數(shù),其優(yōu)化過程就是不斷地將目標(biāo)函數(shù)減小的過程。其損失函數(shù)公式如下:
1=α·φ(tanh(λ)+1)
(1)
2=min
(2)
CW=1+2
(3)
φ(χ)=max(max{Ζ(χ)i:i≠j}-Ζ(χ)j,-κ)
(4)
式中:α是1和2之間的置信度,通過二分查找計(jì)算出α的最小值,φ為目標(biāo)函數(shù),χ為樣本數(shù),λ為變換變量,Ζ為被攻擊模型的Logits輸出,κ為常數(shù)。
原始的CW算法使用的優(yōu)化器為Adam[18],但是經(jīng)過大量實(shí)驗(yàn)證明Adam對CW算法的攻擊能力和攻擊速度上均存在一定程度的缺陷。對此采用AdamMax[18]、AdamW[19]、RMSprop[20]、Adagrad[21]、Adadelta[22]、SGD[23]、ASGD[24]這7種優(yōu)化器和Adam進(jìn)行對比攻擊測試,探究這7種優(yōu)化器在傳統(tǒng)數(shù)據(jù)增強(qiáng)防御技術(shù)的反防御能力。
模型反防御,即采用改進(jìn)的攻擊算法對傳統(tǒng)防御策略進(jìn)行攻擊。在模型攻擊方面通過采用傳統(tǒng)CW白盒攻擊算法和改進(jìn)的CW白盒攻擊算法對模型進(jìn)行對比攻擊測試。防御方面采用傳統(tǒng)的數(shù)據(jù)增強(qiáng)技術(shù),包括對目標(biāo)的旋轉(zhuǎn)、高斯噪聲增強(qiáng)和雙邊濾波器平滑處理技術(shù)來對模型進(jìn)行一定的防御,目的是體現(xiàn)CW算法改進(jìn)后的反防御能力。輕量級神經(jīng)網(wǎng)絡(luò)應(yīng)用廣泛,本次實(shí)驗(yàn)以圖像分類為例,采用基于ImageNet 2012數(shù)據(jù)集[25]訓(xùn)練的MobileNet v2神經(jīng)網(wǎng)絡(luò)模型,測試圖像數(shù)據(jù)選自Kaggle貓狗大戰(zhàn)數(shù)據(jù)集[26]測試數(shù)據(jù)集,編號132,ImageNet標(biāo)簽類別為Siberian husky,編號為250,如圖1所示。將圖像250通過CW算法定向攻擊,得到標(biāo)簽為500的對抗樣本,然后采用傳統(tǒng)的數(shù)據(jù)增強(qiáng)方法探究7種改進(jìn)后的CW算法與原始CW算法的攻擊性能,進(jìn)而得出CW算法的最佳優(yōu)化器。
圖1 測試圖像
1.2.1目標(biāo)旋轉(zhuǎn)
在不改變目標(biāo)圖像的原始大小的情況下,將目標(biāo)圖像以5度旋轉(zhuǎn)一次,旋轉(zhuǎn)區(qū)間為0~180度,如圖2所示。
圖2 MobileNet v2的旋轉(zhuǎn)反防御
假設(shè)識(shí)別概率大于80%為正確識(shí)別圖像250,由圖2可知,從曲線的跨度可以看出模型攻擊能力,跨度越大,所需防御樣本數(shù)越多,防御的成本越高,防御效率越低。CW原始優(yōu)化器Adam僅比RMSprop要好一些,反防御性能最好的是ASGD和Adamax,旋轉(zhuǎn)最大區(qū)間靠近125度。
1.2.2高斯噪聲增強(qiáng)
對目標(biāo)圖像上添加一定的高斯噪聲可以降低對抗樣本的魯棒性,以噪聲點(diǎn)比例為0.01增加一次,噪聲方差區(qū)間為0.01~0.2,如圖3所示。
圖3 MobileNet v2的噪聲反防御
假設(shè)識(shí)別概率大于80%為正確識(shí)別圖像250。由圖3可知,Adam優(yōu)化器在抗噪聲方面有很好的效果,優(yōu)于大部分的優(yōu)化器,但是ASGD優(yōu)化器比Adam的跨度要大一些,所以ASGD在高斯噪聲下反防御能力最強(qiáng)的優(yōu)化器,最大噪聲方差點(diǎn)靠近0.160。
1.2.3雙邊濾波器平滑處理
對圖像采用平滑降噪處理,可以在一定程度上降低對抗樣本的魯棒性,以濾波標(biāo)準(zhǔn)差為10增加一次,濾波空間距離區(qū)間為0~300,如圖4所示。
圖4 MobileNet v2濾波器反防御
假設(shè)識(shí)別概率大于80%為正確識(shí)別圖像250。由圖4可知,8種優(yōu)化器基本相差不大,Adam優(yōu)化器較其他優(yōu)化器要好一些,ASGD優(yōu)化器跨度僅次于Adam優(yōu)化器,最大濾波距離200。
1.2.4優(yōu)化器性能
通過在MobileNet v2模型上采用傳統(tǒng)的數(shù)據(jù)增強(qiáng)的方法,包括目標(biāo)旋轉(zhuǎn)、添加高斯噪聲以及雙邊濾波器平滑處理8種優(yōu)化器的反防御性能和效率如表1所示。
表1 8種優(yōu)化器防御性能對比
由表1可知,ASGD優(yōu)化器在模型攻擊效率上是最快的(硬件基礎(chǔ):GPU為RTX2060,內(nèi)存32 GB),其CW損失值相比其他優(yōu)化器是最小的。
為了驗(yàn)證實(shí)驗(yàn)結(jié)論具有泛化性,本實(shí)驗(yàn)在ImageNet 2012[25]、Pascal VOC 2012[27]、MS COCO 2014[28]、MS COCO 2015[28]、MS COCO 2017[28]五個(gè)測試數(shù)據(jù)集上分別隨機(jī)選取3幅不同類別的圖片,共計(jì)15幅測試圖片,如圖5所示。
圖5 泛化性測試圖片
由圖5可知,每行為同一數(shù)據(jù)集下的3幅不同類別的圖片,每列為不同數(shù)據(jù)集下的圖片。在同一數(shù)據(jù)集下三幅圖片為一組,選用15種不同類別進(jìn)行泛化性實(shí)驗(yàn),具體數(shù)據(jù)信息如表2所示。
表2 泛化性測試圖片信息
將表2中15幅圖片分別用8種優(yōu)化器的CW白盒攻擊算法進(jìn)行反防御測試,實(shí)驗(yàn)結(jié)果如表3所示。
表3 反防御泛化性測試
表3中參數(shù)1為旋轉(zhuǎn)最大區(qū)間靠近點(diǎn),單位為度;參數(shù)2為最大噪聲方差靠近點(diǎn);參數(shù)3為最大濾波距離;“其他”為其他優(yōu)化器性能最大值。從表3中可以看出ASGD在以上三項(xiàng)指標(biāo)中均高于Adam以及其他6個(gè)優(yōu)化器。
綜合上述實(shí)驗(yàn)結(jié)果,將ASGD作為改進(jìn)后的CW攻擊算法的優(yōu)化器。
在攻擊移動(dòng)端神經(jīng)網(wǎng)絡(luò)模型的物體分類相關(guān)操作時(shí),通過改進(jìn)的CW算法可以增加傳統(tǒng)防御所需的樣本量,增大對抗樣本強(qiáng)度,降低模型識(shí)別能力。在實(shí)際場景中有如下應(yīng)用:
(1) 干擾無人機(jī)火點(diǎn)檢測。對于用無人機(jī)檢測森林火點(diǎn)時(shí),可以通過改進(jìn)的CW算法對火點(diǎn)數(shù)據(jù)進(jìn)行干擾,導(dǎo)致無人機(jī)不能準(zhǔn)確地反饋森林火點(diǎn)信息。
(2) 攻擊掃地機(jī)器人。通過改進(jìn)的CW算法對掃地機(jī)器人的物體檢測模型進(jìn)行干擾,導(dǎo)致其無法完成相應(yīng)的清掃任務(wù)。
綜上所述,如果模型的識(shí)別能力降低,將會(huì)給人們的生活和生產(chǎn)安全帶來不便,所以要采取一定的二次防御機(jī)制,實(shí)現(xiàn)對模型的安全防護(hù)。
模型二次防御,即在MobileNet v2、ShuffleNet v2以及MnasNet模型上對傳統(tǒng)數(shù)據(jù)增強(qiáng)技術(shù)進(jìn)行改進(jìn),如表4所示,并用改進(jìn)后的數(shù)據(jù)增強(qiáng)技術(shù)對改進(jìn)后的CW白盒攻擊算法進(jìn)行二次防御。通過改進(jìn)的數(shù)據(jù)增強(qiáng)技術(shù)使對抗樣本的魯棒性降低,從而使模型抵御攻擊能力表征增強(qiáng)。改進(jìn)的防御措施主要包括:(1) 改變旋轉(zhuǎn)縮放因子;(2) 采用高斯-X噪聲混疊模式;(3) 調(diào)整雙邊濾波像素中心點(diǎn)直徑。
表4 三種模型性能對比[9-10,13]
目標(biāo)旋轉(zhuǎn)方法中有三種參數(shù),分別是旋轉(zhuǎn)中心橫縱坐標(biāo)、旋轉(zhuǎn)角度以及旋轉(zhuǎn)縮放因子。實(shí)驗(yàn)發(fā)現(xiàn)通過改變旋轉(zhuǎn)縮放因子可以在一定程度上抵御攻擊。目標(biāo)圖像以5度旋轉(zhuǎn)一次,旋轉(zhuǎn)區(qū)間為0至180度,旋轉(zhuǎn)縮放因子選取0.9、0.5、0.3(傳統(tǒng)旋轉(zhuǎn)縮放因子默認(rèn)為1),如圖6所示。
假設(shè)大于80%為正確識(shí)別圖像250。由圖6(a)可知,當(dāng)旋轉(zhuǎn)縮放因子為0.9時(shí),MobileNet v2曲線跨度減小,所需旋轉(zhuǎn)樣本減少,對抗樣本魯棒性降低,防御性能增強(qiáng)。當(dāng)旋轉(zhuǎn)縮放因子小于0.5時(shí),雖然曲線跨度減小,但是由于圖像過小,整體識(shí)別率低于80%。由圖6(b)和(c)可知,ShuffleNet v2和MnasNet模型曲線跨度隨著縮放因子減小而減小,相比MobileNet v2模型,在縮放因子為0.5時(shí),模型識(shí)別率在80%處識(shí)別較好,但是旋轉(zhuǎn)因子為0.3時(shí),整體識(shí)別率低于80%。
(a) MobileNet v2的二次防御
(a) MobileNet v2的二次防御
傳統(tǒng)噪聲增強(qiáng)包括高斯噪聲、泊松噪聲、鹽噪聲、椒噪聲、椒鹽噪聲等,僅針對一種噪聲進(jìn)行研究會(huì)體現(xiàn)出一種蒼白感。實(shí)驗(yàn)發(fā)現(xiàn)將鹽噪聲、椒噪聲、椒鹽噪聲分別與高斯噪聲進(jìn)行混疊,提出高斯-鹽噪聲、高斯-椒噪聲和高斯-椒鹽噪聲三種混疊模式。以噪聲點(diǎn)比例為0.01增加一次,噪聲方差區(qū)間為0.01~0.2,如圖7所示。
假設(shè)大于80%為正確識(shí)別圖像250。由圖7(a)可知,三種高斯-X混疊模式的曲線跨度均小于高斯噪聲,在MobileNet v2模型下高斯-椒鹽噪聲的跨度最小,所需防御樣本減少,二次防御能力增強(qiáng)。由圖7(b)可知,在ShuffleNet v2模型中,高斯-鹽噪聲的曲線跨度最小,防御能力最強(qiáng)。由圖7(c)可知,在Mnasnet模型中,曲線跨度最大的是高斯-椒噪聲,模型防御能力最低。曲線跨度最小的是高斯-鹽噪聲,所需的防御樣本數(shù)最少,能夠有效降低對抗樣本的魯棒性。
(a) MobileNet v2的二次防御
雙邊濾波器是對空間信息和色彩信息綜合研究的濾波方式,在濾波過程中既能有效地去除噪聲,又能有效地保護(hù)圖像內(nèi)的邊緣信息。雙邊濾波器主要包括三種參數(shù):像素中心點(diǎn)直徑、顏色差值范圍、空間坐標(biāo)。實(shí)驗(yàn)發(fā)現(xiàn)改變當(dāng)前像素點(diǎn)中心點(diǎn)的直徑,可以在一定程度上降低對抗樣本魯棒性,使模型的防御能力增強(qiáng)。濾波空間距離為0至300,實(shí)驗(yàn)的像素中心點(diǎn)直徑選取30、50、80三個(gè)參數(shù)(像素中心點(diǎn)直徑默認(rèn)為10),如圖8所示。
假設(shè)大于80%為正確識(shí)別圖像250。由圖8可知,在MobileNet v2、ShuffleNet v2以及MnasNet模型上,濾波像素中心點(diǎn)直徑為30時(shí),防御能力最強(qiáng)。由圖8(a)可知,MobileNet v2模型在濾波像素中心點(diǎn)直徑為30處,比圖8(b)和(c)中的ShuffleNet v2和MnasNet模型曲線跨度縮小范圍幅度較大。
(a) 旋轉(zhuǎn)二次防御
實(shí)驗(yàn)選用MobileNet v2、ShuffleNet v2,以及MnasNet三種輕量級神經(jīng)網(wǎng)絡(luò)模型,通過改進(jìn)的傳統(tǒng)數(shù)據(jù)增強(qiáng)技術(shù)對采用ASGD優(yōu)化器的CW攻擊算法進(jìn)行二次防御研究,實(shí)驗(yàn)結(jié)果如表5所示。
表5 輕量級神經(jīng)網(wǎng)絡(luò)模型二次防御性能
表5中,方法1為改變旋轉(zhuǎn)縮放因子,方法2為采用高斯-X噪聲混疊模式,方法3為調(diào)整雙邊濾波像素中心點(diǎn)直徑。在旋轉(zhuǎn)操作中,縮放因子不能過小,在0.5以上。在高斯-X噪聲混疊模式中,高斯-鹽噪聲對模型防御效果最佳,高斯-椒鹽噪聲次之。在雙邊濾波器平滑處理中,將像素中心點(diǎn)直徑設(shè)置成30為最佳,不能過小或者過大。
為了驗(yàn)證二次防御具有泛化性,將反防御實(shí)驗(yàn)中的15幅測試圖片進(jìn)行二次防御實(shí)驗(yàn),如圖9所示。
圖9中將MobileNet v2、ShuffleNet v2、MnasNet用M、S、Mn三個(gè)縮寫符表示;橫軸含五種數(shù)據(jù)集,縱軸表示每種數(shù)據(jù)集中3幅圖像的平均概率(假設(shè)大于80%為正確識(shí)別類別指標(biāo),平均概率=1/3(正確識(shí)別樣本數(shù)/總樣本數(shù)))。由圖9(a)可知,在相同識(shí)別率的前提下,隨著旋轉(zhuǎn)縮放因子的減小,平均概率降低,所需測試樣本數(shù)減少;由圖9(b)可知,對高斯噪聲進(jìn)行混疊,在一定程度上減少了所需的測試樣本量,其中高斯-鹽對降低測試樣本量效果顯著;由圖9(c)可知,對雙邊濾波器像素中心點(diǎn)直徑進(jìn)行適當(dāng)調(diào)整,可以有效地降低測試樣本量,其中將濾波像素直徑控制在30~50之間效果明顯。
綜合上述實(shí)驗(yàn)結(jié)果,通過改變旋轉(zhuǎn)縮放因子、混疊高斯噪聲以及調(diào)整雙邊濾波像素中心點(diǎn)直徑可以在一定程度上減少所需測試樣本數(shù),降低了二次防御難度,提升了二次防御性能。
通過數(shù)據(jù)增強(qiáng)方法對傳統(tǒng)防御策略進(jìn)行改進(jìn),在一定程度上縮小了防御所需的樣本量,降低了對抗樣本的攻擊強(qiáng)度。在1.3節(jié)中,一方面可以提升對無人機(jī)火點(diǎn)檢測的抗干擾能力,很好地反饋火點(diǎn)信息,對國土資源防護(hù)起到一定的保護(hù)作用。另一方面可以增強(qiáng)掃地機(jī)器人對改進(jìn)的CW算法的抗干擾性,有效地完成掃地任務(wù),改善智能家居體驗(yàn)感。
針對移動(dòng)端輕量級神經(jīng)網(wǎng)絡(luò)模型的安全性提出模型的反防御和二次防御的一些方法。在MobileNet v2模型上通過8種優(yōu)化器對CW白盒攻擊算法進(jìn)行改造,采用傳統(tǒng)的數(shù)據(jù)增強(qiáng)方法對模型進(jìn)行防御,進(jìn)而探究CW算法在模型反防御中的最佳優(yōu)化器。在MobileNet v2、ShuffleNet v2,以及MnasNet模型上通過改進(jìn)的數(shù)據(jù)增強(qiáng)技術(shù)對模型進(jìn)行二次防御。實(shí)驗(yàn)結(jié)果表明,采用ASGD優(yōu)化器的CW白盒攻擊算法對模型的反防御能力有很好的強(qiáng)化作用。采用改變旋轉(zhuǎn)縮放因子、高斯-X噪聲混疊模式以及調(diào)整雙邊濾波像素中心點(diǎn)直徑的改進(jìn)的數(shù)據(jù)增強(qiáng)方法可以在一定程度上降低對抗樣本的魯棒性,具有很好的二次防御效果。后續(xù)研究中將嘗試對圖像平移、翻轉(zhuǎn),調(diào)整目標(biāo)圖像的透明度、亮度以及對比度等操作,努力將改進(jìn)的數(shù)據(jù)增強(qiáng)技術(shù)應(yīng)用到移動(dòng)端輕量級神經(jīng)網(wǎng)絡(luò)模型安全上,打造一個(gè)安全、穩(wěn)定的智能移動(dòng)應(yīng)用平臺(tái)。