付科涵,王布宏,王 振
(空軍工程大學(xué) 信息與導(dǎo)航學(xué)院,西安 710077)
無人機(jī)作為遠(yuǎn)程可控的嵌入式系統(tǒng),已經(jīng)成為工業(yè)應(yīng)用領(lǐng)域技術(shù)發(fā)展熱點(diǎn)和現(xiàn)代軍事戰(zhàn)爭的重要組成部分。其中,目標(biāo)檢測技術(shù)被廣泛應(yīng)用于環(huán)境監(jiān)測、基礎(chǔ)設(shè)施檢查、軍事偵察等各類任務(wù)中。依靠強(qiáng)大的特征提取能力,深度目標(biāo)檢測網(wǎng)絡(luò)(Deep Object Detection Network,DODN)憑借其對預(yù)定義語義對象分類與定位中的優(yōu)異性能,實(shí)現(xiàn)了無人機(jī)平臺對視覺圖像關(guān)鍵目標(biāo)的自主檢測與分類,GPS等傳統(tǒng)導(dǎo)航手段失靈情形下,依靠降落點(diǎn)檢測技術(shù)完成安全降落,對無人機(jī)應(yīng)用與自身安全具有深遠(yuǎn)意義。
隨著深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)技術(shù)在多個領(lǐng)域的普遍應(yīng)用,其潛在的安全問題也受到國內(nèi)外學(xué)者的一致關(guān)注。最具代表性的就是Szegedy團(tuán)隊(duì)通過對正常樣本添加微小擾動,DNN就將以高置信度輸出錯誤類別[1]。攻擊者精心設(shè)計(jì)的對抗擾動將欺騙檢測器,造成分類與目標(biāo)定位錯誤,將造成物理實(shí)體發(fā)生碰撞甚至墜毀。然而無人機(jī)視覺DODN作為近年的熱點(diǎn)問題,多數(shù)研究聚焦于目標(biāo)檢測模型的性能改良與實(shí)際場景的應(yīng)用,卻忽略了無人機(jī)DODN自身的安全性與魯棒性問題。本文針對無人機(jī)DODN的脆弱性,對潛在的對抗攻擊進(jìn)行研究,提出。
面向無人機(jī)DODN的目標(biāo)梯度攻擊方法,在數(shù)據(jù)集VisDrone上對攻擊方法的有效性進(jìn)行驗(yàn)證,本文提出的攻擊方法實(shí)現(xiàn)了對兩種結(jié)構(gòu)無人機(jī)DODN的多種目標(biāo)性攻擊,造成目標(biāo)檢測器性能顯著下降,實(shí)驗(yàn)結(jié)果證明與現(xiàn)有方法相比,在攻擊效率、攻擊成功率具有明顯優(yōu)勢。
CNN通過池化使卷積獲得的特征具有空間不變性,這使得CNN在大規(guī)模圖像分類問題上取得重大的成功,同時也推動了DNN在目標(biāo)檢測領(lǐng)域的應(yīng)用。無人機(jī)DODN已經(jīng)被廣泛應(yīng)用于森林農(nóng)業(yè)監(jiān)測[7],智慧交通[8]、工業(yè)巡檢[9]等多個領(lǐng)域。
DODN根據(jù)有無候選框生成階段可以分為兩類:基于區(qū)域建議的兩階段算法和基于回歸的單階段算法。Lin等人[2]基于RPN網(wǎng)絡(luò)提出的兩階段模型ECascade RCNN,使用改良的FPN主干網(wǎng)絡(luò)提取特征,通過RPN得到候選邊框,面對無人機(jī)圖像目標(biāo)檢測的多尺度問題有效提升了檢測精度。文獻(xiàn)[3]在兩階段模型Faster R-CNN基礎(chǔ)上融合FPN,提出的FFRCNN模型引入Focal Loss與空洞卷積,有效提升了檢測算法的檢測精確度。除了基于RPN的兩階段目標(biāo)檢測模型,更多的無人機(jī)目標(biāo)檢測模型對實(shí)時性優(yōu)異的單階段模型進(jìn)行改良。針對無人機(jī)計(jì)算能力與內(nèi)存的限制,文獻(xiàn)[4,5]通過對YOLOv3,YOLOv4卷積層通道縮放因子施加L1正則化,修剪信息較少的特征通道來獲得更適用于無人機(jī)的目標(biāo)檢測模型。在單階段模型YOLOv5基礎(chǔ)上使用Transformer檢測頭,集成卷積塊注意力模塊,相比原有SOTA方法具有更良好的檢測性能與即時解釋能力[6]。
目前,無人機(jī)DODN的研究多數(shù)針對無人機(jī)圖像小目標(biāo)、樣本不均衡等問題,在傳統(tǒng)視覺目標(biāo)檢測模型FRCNN,YOLO系列網(wǎng)絡(luò)基礎(chǔ)上設(shè)計(jì)高效的注意力機(jī)制,并對原有骨干網(wǎng)絡(luò)、檢測頭進(jìn)行優(yōu)化。
DNN 的不可解釋性使得其面臨諸多安全威脅,Szegedy[10]等人在基于DNN的圖片識別模型的原始樣本中加入特定的輕微擾動,使經(jīng)過訓(xùn)練的分類模型檢測精度大幅下降,這一成果令眾多研究者開始關(guān)注對抗樣本攻擊領(lǐng)域。文獻(xiàn)[11]提出了著名的V優(yōu)化框架,文中提出基于迭代投影梯度的PGD(projected gradient descent)算法,迭代過程沿凸可行域邊界的投影梯度下降得到對抗樣本,被認(rèn)為是最有效的一階攻擊方法。
在目標(biāo)檢測領(lǐng)域,DAG[12]與RAP[13]攻擊為建議區(qū)域分配錯誤的對抗標(biāo)簽,覆蓋與重疊的建議區(qū)域使FRCNN執(zhí)行迭代梯度反向傳播錯誤建議,從而產(chǎn)生錯誤分類。UEA[14]攻擊設(shè)計(jì)多尺度的注意力特征損失,通過生成對抗網(wǎng)絡(luò)生成對抗樣本來破壞檢測器中網(wǎng)絡(luò)提取的特征。然而DAG等三種對抗樣本攻擊面向具有RPN網(wǎng)絡(luò)的兩階段目標(biāo)檢測模型,且只能實(shí)現(xiàn)隨機(jī)的無目標(biāo)攻擊。在目標(biāo)檢測模型的目標(biāo)性對抗攻擊研究中,文獻(xiàn)[15]提出一種用于混淆標(biāo)簽的POA(Pick-Object-Attack)攻擊,作者通過極小的擾動更改圖像中特定目標(biāo)的預(yù)測標(biāo)簽,實(shí)現(xiàn)了對檢測器的定向欺騙,然而該攻擊方法仍局限于FRCNN這一兩階段檢測模型。稀疏對抗攻擊SSA在l0范數(shù)約束限制下聯(lián)合YOLOv4和FRCNN集成檢測器訓(xùn)練稀疏對抗擾動,實(shí)現(xiàn)隱蔽目標(biāo)的攻擊效果[16]。
針對無人機(jī)實(shí)時DODN系統(tǒng),本文提出一種基于目標(biāo)梯度的白盒對抗攻擊框架,圖1展示了面向無人機(jī)DODN的目標(biāo)梯度攻擊架構(gòu),主要包括實(shí)時采集圖像、目標(biāo)檢測模型和對應(yīng)的目標(biāo)梯度攻擊模塊。目標(biāo)梯度攻擊方法利用檢測網(wǎng)絡(luò)于檢測結(jié)果進(jìn)行攻擊,通過控制模型損失函數(shù)與攻擊目標(biāo)生成目標(biāo)性對抗樣本。
圖1 面向無人機(jī)視覺目標(biāo)檢測的目標(biāo)梯度攻擊框架
DODN被視作典型的多任務(wù)學(xué)習(xí)模型,多個學(xué)習(xí)組件分別對應(yīng)目標(biāo)置信度、檢測框定位、目標(biāo)分類簽三種輸出。對輸入檢測模型的分辨率為(hxw)的圖像x,無人機(jī)目標(biāo)檢測器對真實(shí)物體尋找S個候選的邊界框檢測結(jié)果預(yù)測邊界框中心坐標(biāo)寬高;置信度參數(shù)是框選目標(biāo)為真實(shí)目標(biāo)的概率,表明候選邊界框定位的是真實(shí)物體還是背景;是圖像中目標(biāo)的類別概率向量,是將目標(biāo)物體分類為第k類的概率。
目標(biāo)梯度攻擊依賴于檢測結(jié)果與網(wǎng)絡(luò)結(jié)構(gòu),目標(biāo)檢測模型的損失函數(shù)通常包括回歸損失函數(shù)Lbox、置信度損失Lconf與分類損失Lclass三部分構(gòu)成
以TPH-YOLOv5目標(biāo)檢測模型為例,回歸損失函數(shù)Lbox由GIoU損失函數(shù)給出
為有效處理無人機(jī)視覺圖像數(shù)據(jù)集樣本分類不均衡問題,置信度損失Lconf與分類損失函數(shù)Lcls基于交叉熵?fù)p失的LFL(Focal Loss),對應(yīng)置信度損失與分類損失為:
其中Ii=0,1,表示真實(shí)目標(biāo)是否被第i個檢測框定位;真實(shí)類別為c(即時,檢測器輸出類別概率分量
目標(biāo)梯度攻擊模塊用于對原始圖像x添加擾動生成對抗樣本x′,目標(biāo)梯度攻擊基于凸可行域內(nèi)投影梯度下降算法[25,26],通過引入投影梯度的方法限制多步迭代的擾動范圍,避免高維模型迭代過程中的梯度爆炸問題。
目標(biāo)梯度攻擊面向無人機(jī)DODN多任務(wù)學(xué)習(xí)的特點(diǎn),與訓(xùn)練階段相反,目標(biāo)梯度攻擊通過控制目標(biāo)損失函數(shù)對中間樣本梯度,沿放大損失函數(shù)的方向,得到欺騙不同任務(wù)的目標(biāo)性對抗樣本。
2.2.1 無目標(biāo)攻擊
無目標(biāo)攻擊不針對任何特定目標(biāo)而是對YOLO V5檢測器進(jìn)行隨機(jī)性攻擊,無需設(shè)計(jì)控制損失函數(shù),攻擊效果因輸入圖像和攻擊算法而異,對目標(biāo)檢測框攻擊后造成消失、誤分類等多種攻擊結(jié)果。無目標(biāo)攻擊如式(8)所示:
其中,L是YOLO V5組合損失函數(shù),無目標(biāo)攻擊迭代過程將同時放大總損失函數(shù);Pxr是Lp范數(shù)中以x為中心r為半徑的超球面上的投影函數(shù),目的是限制擾動過程中數(shù)據(jù)處于限制范圍內(nèi);a是攻擊率,控制迭代步長;sign是符號函數(shù),決定迭代過程中梯度的方向;為組合損失函數(shù)。根據(jù)凸集投影定理[16]可知目標(biāo)梯度投影具有唯一性,且產(chǎn)生的中間樣本xt′也始終在DODN凸可行域內(nèi),保證了攻擊的有效性和目標(biāo)性。
2.2.2 目標(biāo)分類攻擊
分類攻擊旨在不改變深度目標(biāo)檢測網(wǎng)絡(luò)預(yù)測的真實(shí)物體的存在性與邊界框位置的同時造成DDON定向分類錯誤,即檢測結(jié)果中在YOLO V5中,錯誤標(biāo)簽攻擊為:
Lclass是類別損失;B*(x)為修改后的惡意檢測值,攻擊模塊可以使用預(yù)定設(shè)計(jì)的錯誤標(biāo)簽修改真實(shí)檢測結(jié)果中對應(yīng)的類別標(biāo)簽,即在每一輪迭代中都將修改為其中p*i可以定向構(gòu)造為檢測器中預(yù)測類別文件中的一類。
2.2.3 目標(biāo)消失攻擊
目標(biāo)消失攻擊樣式對目標(biāo)檢測器產(chǎn)生致盲效果,被攻擊的DODN輸出檢測結(jié)果產(chǎn)生的對抗樣本所有錨點(diǎn)對應(yīng)的候選邊界框與真實(shí)物體邊界框的IOU均小于閾值,真實(shí)物體被檢測器視作背景。YOLO V5模型物體消失攻擊可以用式(9)表示:
目標(biāo)消失攻擊利用YOLO V5主導(dǎo)物體存在決策的置信度損失Lconf;取將原始樣本向空檢測集迭代得到對抗樣本。算法1給目標(biāo)梯度攻擊具體實(shí)現(xiàn)細(xì)節(jié)。
算法1 目標(biāo)梯度攻擊對抗樣本生成算法
輸入:攻擊目標(biāo)T,目標(biāo)檢測模型M及其權(quán)重W,原始樣本x,迭代輪數(shù)it,最大擾動?,攻擊學(xué)習(xí)率a。
輸出:對抗樣本x_adv
本文無人機(jī)視覺目標(biāo)檢測模型使用VisDrone數(shù)據(jù)集,VisDrone[17]由中國天津大學(xué)機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘?qū)嶒?yàn)室的AISKYEYE團(tuán)隊(duì)收集的無人機(jī)視覺圖像數(shù)據(jù)集。數(shù)據(jù)集包括265228個視頻幀和10209個靜態(tài)圖像,通過對400余部采集視頻剪輯標(biāo)注得到。VisDrone通過多種無人機(jī)平臺在不同光照、地域的物理環(huán)境下采集,圖像具有多目標(biāo)、小目標(biāo)特點(diǎn)。
3.2.1 實(shí)驗(yàn)環(huán)境設(shè)置
為有效對本文對抗攻擊算性能進(jìn)行分析,本文選取TPH-YOLOv5與ECascade-RCNN作為目標(biāo)無人機(jī)DODN。對無目標(biāo)攻擊的分析將選取DAG,RAP,UEA三種對抗攻擊算法對ECascade-RCNN進(jìn)行攻擊。對目標(biāo)性攻擊,使用POA與SSA算法分別兩種目標(biāo)檢測器進(jìn)行攻擊分析。
3.2.2 評價指標(biāo)
為了評估面向DDON目標(biāo)梯度攻擊算法的有效性,本文采用mAP、攻擊成功率、時間成本與結(jié)構(gòu)相似度指標(biāo)對實(shí)驗(yàn)結(jié)果進(jìn)行分析。
1)mAP
在目標(biāo)檢測性能評估中,常見的評價指標(biāo)包括精確率(Precision)、召回率(Recall)、平均精度(Average Precision,AP)。AP本質(zhì)上是精確率-召回率曲線p與x軸正半軸和y軸正半軸共同圍成的面積:
通過分析所有類別AP平均值mAP的變化即可有效評估面向目標(biāo)檢測對抗樣本攻擊的整體性能。
2)攻擊成功率(Attack success rate)
mAP通過目標(biāo)檢測器檢測性能的變化反應(yīng)目標(biāo)梯度攻擊整體性能,但有目標(biāo)攻擊算法性能評估需要對攻擊目標(biāo)效果進(jìn)一步分析。
對目標(biāo)消失攻擊,攻擊有效性通過有無攻擊狀態(tài)下檢測目標(biāo)數(shù)來衡量,該比例越低表明目標(biāo)消失攻擊致盲效果越明顯。因此目標(biāo)消失攻擊成功率ASRobj可以用式(11)表示,其中Num和Numobj分別表示無攻擊狀態(tài)和攻擊狀態(tài)下檢測到的目標(biāo)總數(shù)如下所示:
目標(biāo)分類攻擊有效性通過檢測結(jié)果中標(biāo)簽變化反應(yīng),通過計(jì)算各類別被替換為指定標(biāo)簽的數(shù)量與正常標(biāo)簽之比體現(xiàn)攻擊有效性。錯誤標(biāo)簽成功率可以用式(12)表示,ASRcls為目標(biāo)分類攻擊成功率,Numcls表示目標(biāo)分類標(biāo)攻擊下被替換為指定標(biāo)簽的檢測目標(biāo)數(shù)如下所示:
3)攻擊耗時
對抗樣本的生成效率也是評價算法性能的一個重要指標(biāo),攻擊過程的總時間一般包括攻擊時間和檢測時間兩部分。本文對攻擊算法的總攻擊耗時進(jìn)行對比分析。
實(shí)驗(yàn)根據(jù)定性分析與定量分析兩個結(jié)果對對抗攻擊實(shí)驗(yàn)進(jìn)行分析。首先從定性分析角度來看,圖2展可視化的展示了TPH-YOLOv5在正常狀態(tài)、目標(biāo)梯度攻擊多種情形下檢測結(jié)果??梢钥闯觯疚墓羲惴梢造`活實(shí)現(xiàn)無目標(biāo)和多種目標(biāo)攻擊效果。
圖2 對TPH-YOLOv5目標(biāo)梯度攻擊效果
為了進(jìn)一步分析目標(biāo)梯度攻擊有效性,本文對攻擊效果、時間復(fù)雜度、結(jié)構(gòu)相似度進(jìn)行定量分析。首先對攻擊效果分析,本文將選取數(shù)據(jù)集測試圖像的全體作為原始樣本,進(jìn)行攻擊并由檢測記錄得到對應(yīng)的mAP。為保證對比實(shí)驗(yàn)的兼容性與公平性,實(shí)驗(yàn)選取兩種架構(gòu)的無人機(jī)目標(biāo)檢測模型TPH-YOLOv5與ECascade-RCNN作為攻擊對象,選取本文攻擊算法與經(jīng)典對抗攻擊算法DAG,RAP和UEA,以及目標(biāo)性攻擊方法的SSA進(jìn)行對比。
表1 不同對抗樣本攻擊算法攻擊后目標(biāo)檢測模型mAP變化
在單階段目標(biāo)檢測模型中,本文攻擊算法在實(shí)現(xiàn)多種目標(biāo)性攻擊的前提下,均造成目標(biāo)檢測器性能明顯下降,且性能優(yōu)于SSA算法。在兩階段目標(biāo)檢測器中,與DAG、SSA等對抗算法對比,無目標(biāo)于目標(biāo)消失攻擊在攻擊性能上具有一定優(yōu)勢。由于POA算法被設(shè)計(jì)于針對單一檢測框而非全體,因此mAP的下降不能完全反應(yīng)攻擊性能,需要ASR指標(biāo)進(jìn)一步分析評估。
進(jìn)一步,對兩類目標(biāo)性攻擊進(jìn)行分析。圖3展示了在置信度 值為0.5時,各類攻擊狀態(tài)下檢測到的目標(biāo)總數(shù),目標(biāo)消失攻擊下檢測目標(biāo)總數(shù)以數(shù)量級下降,而兩種目標(biāo)分類攻擊檢測總數(shù)與無攻擊狀態(tài)相近。圖4展示對不同置信度 值下的檢測目標(biāo)總數(shù),目標(biāo)消失攻擊下檢測目標(biāo)數(shù)相比無攻擊狀態(tài)大幅減少。圖5對目標(biāo)分類攻擊后測試集十種類別目標(biāo)標(biāo)簽替換成功率進(jìn)行統(tǒng)計(jì)
圖3 置信度閾值為0.5時,不同攻擊樣式下檢測目標(biāo)總數(shù)
圖4 不同置信度閾值無攻擊與目標(biāo)消失攻擊下檢測目標(biāo)數(shù)
圖5 目標(biāo)分類攻擊對不同類別攻擊成功率
表2對各目標(biāo)性攻擊ASR進(jìn)行對比,為保證對比結(jié)果的公平性,選擇兩階段目標(biāo)檢測ECascade-RCNN作為攻擊目標(biāo)。對兩類C?=0攻擊類型,檢測器將無法檢測到目標(biāo),本文攻擊方法相比SSA具有更高的攻擊成功率。對誤分類的P?≠P攻擊,目標(biāo)分類攻擊在選擇低置信度攻擊MinP時,成功率高于高置信度攻擊MaxP和POA攻擊??傮w而言,本文所提出的目標(biāo)性攻擊方法在攻擊成功率上具有一定優(yōu)勢,且具有更優(yōu)異的模型可用性與更多樣的攻擊樣式。
表2 不同目標(biāo)性對抗樣本攻擊算法的攻擊成功率
實(shí)驗(yàn)進(jìn)一步對對抗樣本算法效率進(jìn)行分析。在測試集中隨機(jī)選取200張圖像進(jìn)行攻擊并記錄不同算法所需時間。重復(fù)該過程100次,記錄100次攻擊平均耗時作為算法效率對比依據(jù)。表3展示了不同攻擊下的平均耗時。
由表3可知,本文攻擊算法平均耗時要低于DAG、SSA等對抗攻擊算法。但由于UEA基于生成對抗網(wǎng)絡(luò),在訓(xùn)練階段已經(jīng)建立輸入與對抗樣本映射關(guān)系,攻擊平均耗時較低,然而本文方法利用檢測結(jié)果與檢測網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行攻擊,在攻擊成功率上要遠(yuǎn)高于該方法。
表3 不同樣式目標(biāo)性對抗樣本攻擊的平均耗時
綜上所述,本文所提出的對抗攻擊算法能夠以較低的耗時對目標(biāo)檢測器取得顯著攻擊效果。相比于傳統(tǒng)對抗攻擊算法,本方法兼具攻擊效率、攻擊成功率,且能對多種檢測模型實(shí)現(xiàn)無目標(biāo)攻擊和兩類目標(biāo)性攻擊,可以認(rèn)為本文對抗樣本攻擊方法對無人機(jī)DODN的反制具有一定的應(yīng)用前景。
本文提出了一種面向無人機(jī)DODN的視覺圖像對抗樣本攻擊方法,重點(diǎn)關(guān)注于解決現(xiàn)有目標(biāo)檢測對抗攻擊算法的模型可用性差,攻擊隨機(jī)性強(qiáng)等問題。提出的目標(biāo)梯度攻擊方法基于TPH-YOLOv5與ECascade-RCNN的網(wǎng)絡(luò)結(jié)構(gòu)與檢測結(jié)果生成對抗樣本。根據(jù)攻擊者不同攻擊的意圖,僅需對攻擊模塊中目標(biāo)梯度進(jìn)行調(diào)整即可實(shí)現(xiàn)有目標(biāo)與無目標(biāo)攻擊。實(shí)驗(yàn)結(jié)果表明,本文目標(biāo)梯度對抗攻擊方法在攻擊成功率以及攻擊效率上具有性能優(yōu)勢;此外相比現(xiàn)有對抗攻擊算法,本文的攻擊方法可針對多種架構(gòu)的DODN,且可以實(shí)現(xiàn)多種目標(biāo)性攻擊。在未來的研究中,在本文研究結(jié)果的基礎(chǔ)上,將關(guān)注于面向無人機(jī)目標(biāo)檢測情景下對抗樣本的視覺不可見性與物理可實(shí)現(xiàn)性,進(jìn)一步提升對抗樣本的現(xiàn)實(shí)可用性。