曾逸夫 薛繼偉
(東北石油大學計算機與信息技術學院 黑龍江 大慶 163318)
隨著移動端技術的日益興起,加之5G時代的到來,作為AI領域領軍技術的深度學習也在向移動端發展。神經網絡作為深度學習的核心框架,通過層級疊加思想來不斷實現更高級的功能。但是由于移動設備在硬件上存在相當大的局限性,所以神經網絡在參數上會受到一定的限制,將神經網絡輕量化也勢在必行。輕量級神經網絡最大的特點就是用很少的參數實現同等功能,并且準確率保持平穩。近些年,輕量級神經網絡也逐漸進入了人們的視野。Iandola等[1]創造的SqueezeNet采用火焰模型來降低參數量和計算量。Xception在Inception v3[2-4]基礎上進行了改進,采用了深度可分離卷積從而降低計算量[5]。Zhang等[6]創造了ShuffleNet,采用點群卷積和通道混洗縮小了模型體積并提高了模型效率。Hu等[7]創造的SENet采用擠壓和激活技術,通過學習的方式來自動獲取到每個特征的重要程度,然后依照這個重要程度來提升有用的特征并抑制對當前任務用處不大的特征。Howard等[8]創造的MobileNet v1采用了深度可分離卷積,但與Xception不同的是模型架構順序以及有無激活層。隨后Sandler等[9]又創造了MobileNet v2,采用線性瓶頸層和倒置殘差塊有效解決了MobileNet v1的不足之處。Ma等[10]創造了ShuffleNet v2,棄用了ShuffleNet v1的1×1點群卷積,采用1×1的普通卷積替代,并在ShuffleNet v1的基礎上提出了一種新的操作——通道分離,模型輸入端分為兩部分,一部分直接向下傳遞,另一部分則進行真正的向后計算。模型輸出端將兩個分支級聯起來,從而克服了ShuffleNet v1中Element-wise sum的操作[10]。受強化學習中的神經架構搜索算法啟發,Tan等[13]在NasNet[11]和PnasNet[12]基礎上設計出了一種基于移動端的MnasNet神經網絡,采用分解式層次搜索空間,將一個CNN模型分解為不同的模型,然后針對每個搜索操作和模塊之間的連接關系,允許不同塊有不同的層結構,從而提高了模型的效率。輕量級神經網絡主要應用在目標分類、目標檢測、圖像分割和識別等領域,結合嵌入式技術,比如調用移動端攝像頭來檢測識別目標,進而做出相應動作。
隨著輕量級神經網絡功能逐漸強大和性能的提升,其安全性問題也隨之而來。移動設備較PC端的使用量逐年提升,同時在大數據時代也面臨著信息安全問題,比如人們衣食住行基本都在移動端進行交互,帶來方便快捷的同時也伴隨著個人信息安全的問題,所以移動端神經網絡模型的攻擊和防御的研究具有一定的潛在價值和發展動力。本文不僅要對模型的功能和性能進行創新,還要對模型安全性進行加固和防御,從而使模型健壯性加強,為人們提供一個安全健康的人工智能產品體驗。模型攻擊分為三種,分別是白盒攻擊、黑盒攻擊和物理攻擊,這三種攻擊策略都在某種程度上存在著一定的難度。白盒攻擊算法最初由GAN創始人Goodfellow等[14]提出的FGSM,即快速梯度算法,可以應用于定向和非定向攻擊。另一種基于梯度的白盒攻擊算法DeepFool是由Moosavi-Dezfooli等[15]提出,其作為一種非定向攻擊算法,相對FGSM有更小的擾動來達到攻擊目標。JAMA算法是Papernot等[16]提出的,是典型的L0范數的定向攻擊算法,其盡量減少修改的像素個數。CW算法是Carlini等[17]提出的,其被公認為白盒攻擊算法中攻擊能力最強的算法之一,是一種基于優化的對抗樣本生成算法。
本次研究主要創新在于兩個方面:1) 在MobileNet v2模型上采用7種優化器與CW算法的原始優化器進行對比攻擊測試,通過傳統的數據增強技術進行防御,從而體現出改進后的CW白盒攻擊算法的反防御能力;2) 在MobileNet v2、ShuffleNet v2以及MnasNet模型上通過改變旋轉縮放因子、采用高斯-X噪聲混疊模式以及調整雙邊濾波器像素中心點直徑對改進后的CW攻擊算法進行二次防御研究,進而得出輕量級神經網絡模型安全防御措施。
CW算法是一種基于優化的對抗樣本生成算法,在定向攻擊中,使用交叉熵定義目標函數,其優化過程就是不斷地將目標函數減小的過程。其損失函數公式如下:
1=α·φ(tanh(λ)+1)
(1)
2=min
(2)
CW=1+2
(3)
φ(χ)=max(max{Ζ(χ)i:i≠j}-Ζ(χ)j,-κ)
(4)
式中:α是1和2之間的置信度,通過二分查找計算出α的最小值,φ為目標函數,χ為樣本數,λ為變換變量,Ζ為被攻擊模型的Logits輸出,κ為常數。
原始的CW算法使用的優化器為Adam[18],但是經過大量實驗證明Adam對CW算法的攻擊能力和攻擊速度上均存在一定程度的缺陷。對此采用AdamMax[18]、AdamW[19]、RMSprop[20]、Adagrad[21]、Adadelta[22]、SGD[23]、ASGD[24]這7種優化器和Adam進行對比攻擊測試,探究這7種優化器在傳統數據增強防御技術的反防御能力。
模型反防御,即采用改進的攻擊算法對傳統防御策略進行攻擊。在模型攻擊方面通過采用傳統CW白盒攻擊算法和改進的CW白盒攻擊算法對模型進行對比攻擊測試。防御方面采用傳統的數據增強技術,包括對目標的旋轉、高斯噪聲增強和雙邊濾波器平滑處理技術來對模型進行一定的防御,目的是體現CW算法改進后的反防御能力。輕量級神經網絡應用廣泛,本次實驗以圖像分類為例,采用基于ImageNet 2012數據集[25]訓練的MobileNet v2神經網絡模型,測試圖像數據選自Kaggle貓狗大戰數據集[26]測試數據集,編號132,ImageNet標簽類別為Siberian husky,編號為250,如圖1所示。將圖像250通過CW算法定向攻擊,得到標簽為500的對抗樣本,然后采用傳統的數據增強方法探究7種改進后的CW算法與原始CW算法的攻擊性能,進而得出CW算法的最佳優化器。

圖1 測試圖像
1.2.1目標旋轉
在不改變目標圖像的原始大小的情況下,將目標圖像以5度旋轉一次,旋轉區間為0~180度,如圖2所示。

圖2 MobileNet v2的旋轉反防御
假設識別概率大于80%為正確識別圖像250,由圖2可知,從曲線的跨度可以看出模型攻擊能力,跨度越大,所需防御樣本數越多,防御的成本越高,防御效率越低。CW原始優化器Adam僅比RMSprop要好一些,反防御性能最好的是ASGD和Adamax,旋轉最大區間靠近125度。
1.2.2高斯噪聲增強
對目標圖像上添加一定的高斯噪聲可以降低對抗樣本的魯棒性,以噪聲點比例為0.01增加一次,噪聲方差區間為0.01~0.2,如圖3所示。

圖3 MobileNet v2的噪聲反防御
假設識別概率大于80%為正確識別圖像250。由圖3可知,Adam優化器在抗噪聲方面有很好的效果,優于大部分的優化器,但是ASGD優化器比Adam的跨度要大一些,所以ASGD在高斯噪聲下反防御能力最強的優化器,最大噪聲方差點靠近0.160。
1.2.3雙邊濾波器平滑處理
對圖像采用平滑降噪處理,可以在一定程度上降低對抗樣本的魯棒性,以濾波標準差為10增加一次,濾波空間距離區間為0~300,如圖4所示。

圖4 MobileNet v2濾波器反防御
假設識別概率大于80%為正確識別圖像250。由圖4可知,8種優化器基本相差不大,Adam優化器較其他優化器要好一些,ASGD優化器跨度僅次于Adam優化器,最大濾波距離200。
1.2.4優化器性能
通過在MobileNet v2模型上采用傳統的數據增強的方法,包括目標旋轉、添加高斯噪聲以及雙邊濾波器平滑處理8種優化器的反防御性能和效率如表1所示。

表1 8種優化器防御性能對比
由表1可知,ASGD優化器在模型攻擊效率上是最快的(硬件基礎:GPU為RTX2060,內存32 GB),其CW損失值相比其他優化器是最小的。
為了驗證實驗結論具有泛化性,本實驗在ImageNet 2012[25]、Pascal VOC 2012[27]、MS COCO 2014[28]、MS COCO 2015[28]、MS COCO 2017[28]五個測試數據集上分別隨機選取3幅不同類別的圖片,共計15幅測試圖片,如圖5所示。

圖5 泛化性測試圖片
由圖5可知,每行為同一數據集下的3幅不同類別的圖片,每列為不同數據集下的圖片。在同一數據集下三幅圖片為一組,選用15種不同類別進行泛化性實驗,具體數據信息如表2所示。

表2 泛化性測試圖片信息
將表2中15幅圖片分別用8種優化器的CW白盒攻擊算法進行反防御測試,實驗結果如表3所示。

表3 反防御泛化性測試
表3中參數1為旋轉最大區間靠近點,單位為度;參數2為最大噪聲方差靠近點;參數3為最大濾波距離;“其他”為其他優化器性能最大值。從表3中可以看出ASGD在以上三項指標中均高于Adam以及其他6個優化器。
綜合上述實驗結果,將ASGD作為改進后的CW攻擊算法的優化器。
在攻擊移動端神經網絡模型的物體分類相關操作時,通過改進的CW算法可以增加傳統防御所需的樣本量,增大對抗樣本強度,降低模型識別能力。在實際場景中有如下應用:
(1) 干擾無人機火點檢測。對于用無人機檢測森林火點時,可以通過改進的CW算法對火點數據進行干擾,導致無人機不能準確地反饋森林火點信息。
(2) 攻擊掃地機器人。通過改進的CW算法對掃地機器人的物體檢測模型進行干擾,導致其無法完成相應的清掃任務。
綜上所述,如果模型的識別能力降低,將會給人們的生活和生產安全帶來不便,所以要采取一定的二次防御機制,實現對模型的安全防護。
模型二次防御,即在MobileNet v2、ShuffleNet v2以及MnasNet模型上對傳統數據增強技術進行改進,如表4所示,并用改進后的數據增強技術對改進后的CW白盒攻擊算法進行二次防御。通過改進的數據增強技術使對抗樣本的魯棒性降低,從而使模型抵御攻擊能力表征增強。改進的防御措施主要包括:(1) 改變旋轉縮放因子;(2) 采用高斯-X噪聲混疊模式;(3) 調整雙邊濾波像素中心點直徑。

表4 三種模型性能對比[9-10,13]
目標旋轉方法中有三種參數,分別是旋轉中心橫縱坐標、旋轉角度以及旋轉縮放因子。實驗發現通過改變旋轉縮放因子可以在一定程度上抵御攻擊。目標圖像以5度旋轉一次,旋轉區間為0至180度,旋轉縮放因子選取0.9、0.5、0.3(傳統旋轉縮放因子默認為1),如圖6所示。
假設大于80%為正確識別圖像250。由圖6(a)可知,當旋轉縮放因子為0.9時,MobileNet v2曲線跨度減小,所需旋轉樣本減少,對抗樣本魯棒性降低,防御性能增強。當旋轉縮放因子小于0.5時,雖然曲線跨度減小,但是由于圖像過小,整體識別率低于80%。由圖6(b)和(c)可知,ShuffleNet v2和MnasNet模型曲線跨度隨著縮放因子減小而減小,相比MobileNet v2模型,在縮放因子為0.5時,模型識別率在80%處識別較好,但是旋轉因子為0.3時,整體識別率低于80%。

(a) MobileNet v2的二次防御

(a) MobileNet v2的二次防御
傳統噪聲增強包括高斯噪聲、泊松噪聲、鹽噪聲、椒噪聲、椒鹽噪聲等,僅針對一種噪聲進行研究會體現出一種蒼白感。實驗發現將鹽噪聲、椒噪聲、椒鹽噪聲分別與高斯噪聲進行混疊,提出高斯-鹽噪聲、高斯-椒噪聲和高斯-椒鹽噪聲三種混疊模式。以噪聲點比例為0.01增加一次,噪聲方差區間為0.01~0.2,如圖7所示。
假設大于80%為正確識別圖像250。由圖7(a)可知,三種高斯-X混疊模式的曲線跨度均小于高斯噪聲,在MobileNet v2模型下高斯-椒鹽噪聲的跨度最小,所需防御樣本減少,二次防御能力增強。由圖7(b)可知,在ShuffleNet v2模型中,高斯-鹽噪聲的曲線跨度最小,防御能力最強。由圖7(c)可知,在Mnasnet模型中,曲線跨度最大的是高斯-椒噪聲,模型防御能力最低。曲線跨度最小的是高斯-鹽噪聲,所需的防御樣本數最少,能夠有效降低對抗樣本的魯棒性。

(a) MobileNet v2的二次防御
雙邊濾波器是對空間信息和色彩信息綜合研究的濾波方式,在濾波過程中既能有效地去除噪聲,又能有效地保護圖像內的邊緣信息。雙邊濾波器主要包括三種參數:像素中心點直徑、顏色差值范圍、空間坐標。實驗發現改變當前像素點中心點的直徑,可以在一定程度上降低對抗樣本魯棒性,使模型的防御能力增強。濾波空間距離為0至300,實驗的像素中心點直徑選取30、50、80三個參數(像素中心點直徑默認為10),如圖8所示。
假設大于80%為正確識別圖像250。由圖8可知,在MobileNet v2、ShuffleNet v2以及MnasNet模型上,濾波像素中心點直徑為30時,防御能力最強。由圖8(a)可知,MobileNet v2模型在濾波像素中心點直徑為30處,比圖8(b)和(c)中的ShuffleNet v2和MnasNet模型曲線跨度縮小范圍幅度較大。

(a) 旋轉二次防御
實驗選用MobileNet v2、ShuffleNet v2,以及MnasNet三種輕量級神經網絡模型,通過改進的傳統數據增強技術對采用ASGD優化器的CW攻擊算法進行二次防御研究,實驗結果如表5所示。

表5 輕量級神經網絡模型二次防御性能
表5中,方法1為改變旋轉縮放因子,方法2為采用高斯-X噪聲混疊模式,方法3為調整雙邊濾波像素中心點直徑。在旋轉操作中,縮放因子不能過小,在0.5以上。在高斯-X噪聲混疊模式中,高斯-鹽噪聲對模型防御效果最佳,高斯-椒鹽噪聲次之。在雙邊濾波器平滑處理中,將像素中心點直徑設置成30為最佳,不能過小或者過大。
為了驗證二次防御具有泛化性,將反防御實驗中的15幅測試圖片進行二次防御實驗,如圖9所示。
圖9中將MobileNet v2、ShuffleNet v2、MnasNet用M、S、Mn三個縮寫符表示;橫軸含五種數據集,縱軸表示每種數據集中3幅圖像的平均概率(假設大于80%為正確識別類別指標,平均概率=1/3(正確識別樣本數/總樣本數))。由圖9(a)可知,在相同識別率的前提下,隨著旋轉縮放因子的減小,平均概率降低,所需測試樣本數減少;由圖9(b)可知,對高斯噪聲進行混疊,在一定程度上減少了所需的測試樣本量,其中高斯-鹽對降低測試樣本量效果顯著;由圖9(c)可知,對雙邊濾波器像素中心點直徑進行適當調整,可以有效地降低測試樣本量,其中將濾波像素直徑控制在30~50之間效果明顯。
綜合上述實驗結果,通過改變旋轉縮放因子、混疊高斯噪聲以及調整雙邊濾波像素中心點直徑可以在一定程度上減少所需測試樣本數,降低了二次防御難度,提升了二次防御性能。
通過數據增強方法對傳統防御策略進行改進,在一定程度上縮小了防御所需的樣本量,降低了對抗樣本的攻擊強度。在1.3節中,一方面可以提升對無人機火點檢測的抗干擾能力,很好地反饋火點信息,對國土資源防護起到一定的保護作用。另一方面可以增強掃地機器人對改進的CW算法的抗干擾性,有效地完成掃地任務,改善智能家居體驗感。
針對移動端輕量級神經網絡模型的安全性提出模型的反防御和二次防御的一些方法。在MobileNet v2模型上通過8種優化器對CW白盒攻擊算法進行改造,采用傳統的數據增強方法對模型進行防御,進而探究CW算法在模型反防御中的最佳優化器。在MobileNet v2、ShuffleNet v2,以及MnasNet模型上通過改進的數據增強技術對模型進行二次防御。實驗結果表明,采用ASGD優化器的CW白盒攻擊算法對模型的反防御能力有很好的強化作用。采用改變旋轉縮放因子、高斯-X噪聲混疊模式以及調整雙邊濾波像素中心點直徑的改進的數據增強方法可以在一定程度上降低對抗樣本的魯棒性,具有很好的二次防御效果。后續研究中將嘗試對圖像平移、翻轉,調整目標圖像的透明度、亮度以及對比度等操作,努力將改進的數據增強技術應用到移動端輕量級神經網絡模型安全上,打造一個安全、穩定的智能移動應用平臺。