宣 琦,周 濤
(浙江工業(yè)大學(xué) 網(wǎng)絡(luò)空間安全研究院,浙江 杭州 310023)
無線電信號(hào)的調(diào)制分類技術(shù)在軍民領(lǐng)域得到了廣泛應(yīng)用,例如在軍事作戰(zhàn)場(chǎng)景用于實(shí)時(shí)戰(zhàn)場(chǎng)通信、控制導(dǎo)彈和引導(dǎo)戰(zhàn)艦等;廣播電臺(tái)進(jìn)行廣播時(shí)用于信號(hào)的解調(diào)等。信號(hào)調(diào)制分類主要由特征提取和分類識(shí)別兩個(gè)步驟組成。傳統(tǒng)的特征提取方法包含大量數(shù)學(xué)計(jì)算和多次高階特征提取步驟[1],實(shí)現(xiàn)較為復(fù)雜。此外,隨著無線電通信技術(shù)快速發(fā)展,現(xiàn)代無線電通信環(huán)境變得十分復(fù)雜,傳統(tǒng)的調(diào)制分類方法易受到干擾,不僅需要進(jìn)行多次解調(diào)對(duì)比才能得到結(jié)果,而且準(zhǔn)確率不高。隨著計(jì)算機(jī)算力水平的不斷提升,深度神經(jīng)網(wǎng)絡(luò)(Deep neural networks,DNN)被廣泛應(yīng)用于各種任務(wù),例如圖像分類[2-3]、語音識(shí)別[4-5]和自動(dòng)駕駛[6-7]等,均取得了出色的效果。因此,越來越多的研究者嘗試將深度神經(jīng)網(wǎng)絡(luò)應(yīng)用到信號(hào)調(diào)制分類任務(wù)中。O’Shea等[8]率先將深度神經(jīng)網(wǎng)絡(luò)應(yīng)用到了無線電信號(hào)調(diào)制分類任務(wù)中,拋棄了傳統(tǒng)的利用特征提取器和分析似然比的方式,利用神經(jīng)網(wǎng)絡(luò)強(qiáng)大的學(xué)習(xí)能力捕捉信號(hào)數(shù)據(jù)的高階特征,在公開數(shù)據(jù)集上達(dá)到了80%的平均分類準(zhǔn)確率。Peng等[9]將原始信號(hào)數(shù)據(jù)進(jìn)行映射轉(zhuǎn)換成對(duì)應(yīng)的星座圖,并輸入至卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,在8~14 db信噪比樣本分類上明顯優(yōu)于傳統(tǒng)支持向量機(jī)分類器,分類精度平均提升了7.75%左右,初步探索了信號(hào)數(shù)據(jù)與圖像數(shù)據(jù)的關(guān)聯(lián)性。但在深度神經(jīng)網(wǎng)絡(luò)強(qiáng)大的背后,仍然存在不可忽視的安全性問題。Szegedy等[10]研究發(fā)現(xiàn):深度神經(jīng)網(wǎng)絡(luò)易受到對(duì)抗樣本的干擾,攻擊者只需在原始圖像上添加經(jīng)過設(shè)計(jì)的擾動(dòng),就可以欺騙深度神經(jīng)網(wǎng)絡(luò),致使其給出錯(cuò)誤的預(yù)測(cè)結(jié)果,而這些擾動(dòng)通常無法被肉眼觀測(cè)。針對(duì)這個(gè)問題,研究者們提出了大量的對(duì)抗樣本防御機(jī)制,防御機(jī)制主要分為傳統(tǒng)防御和對(duì)抗樣本檢測(cè)兩個(gè)方向。傳統(tǒng)防御雖然可以通過對(duì)抗訓(xùn)練[11]、梯度掩蓋[12]和防御蒸餾[13]等方式提高深度神經(jīng)網(wǎng)絡(luò)的魯棒性來防御對(duì)抗樣本,但是這些防御機(jī)制存在各種局限,例如重訓(xùn)練會(huì)帶來昂貴的計(jì)算成本、影響原始模型的分類精度等,并且Carlini等[14]的研究發(fā)現(xiàn)通過對(duì)攻擊參數(shù)的微調(diào)即可繞過這些防御手段。對(duì)抗樣本檢測(cè)則通過尋找正常樣本與對(duì)抗樣本之間的差異,通過閾值、預(yù)測(cè)不一致和檢測(cè)網(wǎng)絡(luò)等形式檢測(cè)對(duì)抗樣本,防止其誤導(dǎo)目標(biāo)模型。目前主流的對(duì)抗檢測(cè)算法有基于降噪器的特征壓縮[15]、MagNet[16]和自適應(yīng)降噪[17];基于神經(jīng)元激活狀態(tài)的I-defender[18]、SafetyNet[19]和特征距離空間算法[20];基于樣本在某個(gè)子空間中分布的貝葉斯不確定性估計(jì)[21]和局部內(nèi)在維度度量[21]等。這些檢測(cè)算法雖然都在圖像分類領(lǐng)域取得了較好的檢測(cè)效果,但是信號(hào)調(diào)制分類領(lǐng)域的檢測(cè)算法研究還處于起步階段,尚未形成完整的檢測(cè)體系。直接遷移圖像分類領(lǐng)域的檢測(cè)算法并不能在信號(hào)這一數(shù)據(jù)類型上取得很好的檢測(cè)效果,信號(hào)調(diào)制分類領(lǐng)域亟須一個(gè)可靠并且有效的對(duì)抗樣本檢測(cè)機(jī)制,保障各項(xiàng)分類任務(wù)的安全運(yùn)行。
針對(duì)上述問題,筆者提出了一種基于攻擊成本的信號(hào)調(diào)制分類對(duì)抗樣本檢測(cè)算法,使用攻擊成本來表征樣本與決策邊界面的相對(duì)位置,對(duì)抗樣本通常會(huì)更靠近決策邊界面,因此對(duì)其進(jìn)行攻擊所需的成本更少。首先,使用攻擊迭代次數(shù)衡量樣本的攻擊成本;然后,通過KNN算法(K-NearestNeighbor,K最鄰近)計(jì)算待測(cè)樣本與鄰居樣本攻擊迭代次數(shù)之間的Z-Score分?jǐn)?shù)區(qū)分對(duì)抗樣本與正常樣本;最后,對(duì)檢測(cè)算法進(jìn)行了實(shí)現(xiàn)驗(yàn)證,在6種主流對(duì)抗攻擊算法下均能達(dá)到80%以上的檢測(cè)準(zhǔn)確率。
根據(jù)原理,可以認(rèn)為對(duì)抗攻擊深度神經(jīng)網(wǎng)絡(luò)是一個(gè)需要擬合的函數(shù)f,其使用神經(jīng)元從被標(biāo)記的訓(xùn)練數(shù)據(jù)中提取特征。假設(shè)X為輸入空間;Y為預(yù)測(cè)結(jié)果空間;P(X,Y)為X×Y上的數(shù)據(jù)分布,則稱f:X→Y為預(yù)測(cè)函數(shù)。
對(duì)抗樣本這個(gè)概念最早由Szegedy等提出,在原始輸入樣本x上添加精心設(shè)計(jì)的擾動(dòng),得到新的輸入x′,DNN模型會(huì)給新的輸入x′一個(gè)錯(cuò)誤的預(yù)測(cè)標(biāo)簽,x′被稱為對(duì)抗樣本。x′滿足f(x)≠f(x′),并且x′-x<ε,其中ε為可添加的最大擾動(dòng),ε滿足ε∈R。
對(duì)抗樣本雖然威脅了DNN的安全,但是其本身具有重大的研究意義,可以幫助我們更深入地了解DNN的底層原理。因此,研究者們相繼提出了許多對(duì)抗攻擊算法,筆者主要介紹在檢測(cè)算法實(shí)現(xiàn)和評(píng)估中涉及的主流對(duì)抗攻擊算法。
1) 快速梯度下降算法(Fast gradient sign method,FGSM)[22],是深度神經(jīng)網(wǎng)絡(luò)梯度生成對(duì)抗樣本的攻擊算法。其基于L∞距離計(jì)算輸入樣本x的每個(gè)值的梯度,尋找擾動(dòng)方向,使目標(biāo)模型的損失函數(shù)增加,從而改變樣本的預(yù)測(cè)標(biāo)簽,表達(dá)式為
(1)
2) 基本迭代算法(Basic iterative menthod,BIM)[23],是FGSM的一種改進(jìn),也被稱為迭代版的FGSM。其迭代地執(zhí)行n次FGSM,并在每一次的迭代過程中裁剪結(jié)果值,保證結(jié)果維持在輸入范圍,表達(dá)式為
(2)
3) 投影梯度下降算法(Projected gradient descent,PGD)[24],是一種類似BIM的迭代攻擊算法,為了找到模型的最大損失,其首先利用L∞隨機(jī)初始化擾動(dòng),在每次迭代中將擾動(dòng)投影到有效范圍中,表達(dá)式為
(3)
式中Proj用于將添加擾動(dòng)后的對(duì)抗樣本投影至ε-L∞領(lǐng)域和輸入的有效范圍中。
4) 基于雅可比的顯著圖攻擊(Jacobian-based saliency map attack,JSMA)[25],是一種使用雅可比顯著圖生成對(duì)抗樣本的攻擊方法。其將深度神經(jīng)網(wǎng)絡(luò)的梯度構(gòu)建成顯著性矩陣,對(duì)矩陣中所有值的重要性進(jìn)行排序,選擇顯著性最大的值進(jìn)行修改,增加樣本被分類為目標(biāo)標(biāo)簽t的概率,并不斷重復(fù)這一過程,直到攻擊成功。
5) 深度愚弄攻擊(DeepFool)[26],是一種基于超平面分類的攻擊方法,其在每次迭代過程中,計(jì)算樣本當(dāng)前位置與周圍所有類別的超平面(即決策邊界面)的線性距離,選擇最小的距離決策邊界面設(shè)計(jì)擾動(dòng),添加擾動(dòng)使樣本移動(dòng)到該決策邊界面,直至樣本被分類錯(cuò)誤。
6) 基于優(yōu)化的對(duì)抗攻擊(Carlini & Wagner,CW)[27],是一種基于優(yōu)化的攻擊算法,其將對(duì)抗樣本作為一個(gè)變量,優(yōu)化以下兩個(gè)目標(biāo):最小化對(duì)抗樣本與原始樣本之間差異;最大化對(duì)抗樣本錯(cuò)誤分類的預(yù)測(cè)置信度。
給定一個(gè)DNN模型f,一個(gè)輸入樣本x,使用檢測(cè)器D判斷該輸入樣本x是否是對(duì)抗樣本。表達(dá)式為
(4)
該問題的本質(zhì)是如何找到一種模式或表征區(qū)分正常樣本和對(duì)抗樣本。考慮如下防御場(chǎng)景:攻擊者可以訪問DNN的所有信息,并且沒有任何關(guān)于攻擊的信息,只可以使用正常樣本構(gòu)建檢測(cè)器。
筆者提出的檢測(cè)算法基于在一定擾動(dòng)范圍內(nèi),對(duì)抗樣本會(huì)比正常樣本更接近模型的決策邊界面的理論,可以從神經(jīng)網(wǎng)絡(luò)訓(xùn)練和對(duì)抗樣本生成過程這兩個(gè)角度理解該理論。神經(jīng)網(wǎng)絡(luò)的訓(xùn)練通常要經(jīng)歷多次迭代,在每次迭代中訓(xùn)練數(shù)據(jù)首先會(huì)被分成多個(gè)批次進(jìn)行訓(xùn)練,然后通過梯度下降等方式更新參數(shù),這樣訓(xùn)練得到的模型通常具有很好的泛化性。樣本分布示意圖如圖1所示。由圖1可知:在該模型所定義的子空間中,正常樣本的分布會(huì)更加聚集,并且會(huì)遠(yuǎn)離決策邊界面,而對(duì)抗樣本雖然和正常樣本屬于一個(gè)類別,但其所處的位置會(huì)更加接近決策邊界面。
圖1 樣本分布示意圖Fig.1 Sample distribution diagram
此外,在生成對(duì)抗樣本的過程中,所添加的擾動(dòng)會(huì)受到一些條件的約束,例如最小擾動(dòng)、不可觀測(cè)性、目標(biāo)標(biāo)簽攻擊和攻擊速度等,而這些條件往往會(huì)造成所生成的對(duì)抗樣本不夠“魯棒”,處于決策邊界面附近??梢岳眠@一特質(zhì)設(shè)計(jì)表征方法區(qū)分正常樣本與對(duì)抗樣本,Feinman等[21]提出了核密度估計(jì)(KD)和貝葉斯不確定性估計(jì)(BU)算法;Wang等[28]設(shè)計(jì)了標(biāo)簽變化率算法。雖然他們的算法都在圖像分類領(lǐng)域取得了90%以上的平均檢測(cè)準(zhǔn)確率,實(shí)驗(yàn)結(jié)果也證明了該理論的正確性,但直接將這些方法遷移至信號(hào)調(diào)制分類并不能取得很好的檢測(cè)效果,或者是效率不高,不適用于實(shí)際應(yīng)用。筆者參照Feinman等[21]的工作,在信號(hào)調(diào)制分類任務(wù)中使用深度學(xué)習(xí)基礎(chǔ)模型(Network in network,NIN)[29]復(fù)現(xiàn)了KD和BU檢測(cè)算法,在單指標(biāo)檢測(cè)下,對(duì)FGSM,BIM,PGD,JSMA,DeepFool和CW這6種攻擊算法的平均檢測(cè)準(zhǔn)確率分別為60.9%和53%;結(jié)合KD和BU指標(biāo)也僅達(dá)到了65.3%的平均檢測(cè)準(zhǔn)確率。標(biāo)簽變化率方法需要大量的突變模型參與計(jì)算,平均每個(gè)突變模型需要6 s的加載時(shí)間,按照平均80個(gè)突變模型得到檢測(cè)結(jié)果的標(biāo)準(zhǔn),每個(gè)樣本需要經(jīng)歷480 s的檢測(cè)耗時(shí)。如果提前將所有突變模型加載至內(nèi)存中,需要耗費(fèi)大量的內(nèi)存與顯存空間,對(duì)硬件設(shè)備平要求較高。
為了更加高效且準(zhǔn)確地檢測(cè)信號(hào)調(diào)制分類任務(wù)中的對(duì)抗樣本,參照Zhao等[30]的方法,使用攻擊成本來衡量樣本到?jīng)Q策邊界面的距離,假設(shè)正常樣本因?yàn)殡x決策邊界面更遠(yuǎn)所以具有更高的攻擊成本,而對(duì)抗樣本的攻擊成本則偏低。因此,可以使用現(xiàn)有的攻擊方法攻擊待測(cè)樣本從而判斷其是否為對(duì)抗樣本。使用攻擊成本進(jìn)行對(duì)抗樣本檢測(cè),需要解決如何表征不同類型攻擊的攻擊成本和驗(yàn)證表征方式的有效性這兩個(gè)問題。
1) 如何表征不同類型的攻擊方法的攻擊成本。攻擊成本最直接的一個(gè)衡量方式是攻擊的耗時(shí),但攻擊耗時(shí)受到硬件設(shè)備性能的影響,在不同設(shè)備、功率下的表現(xiàn)無法保持統(tǒng)一。因此采用攻擊迭代次數(shù)的衡量方式。這種衡量方式僅適用于迭代攻擊,以BIM算法為例,BIM在每次迭代過程中不斷計(jì)算梯度,尋找擾動(dòng)方向,添加的對(duì)抗擾動(dòng)將樣本推向決策邊界面,在這個(gè)過程中,對(duì)抗樣本由于本身靠近決策邊界面,因此其所需要的攻擊迭代次數(shù)相較于遠(yuǎn)離決策邊界面的正常樣本更少。同時(shí),在相同設(shè)備情況下,因?yàn)橛?jì)算機(jī)執(zhí)行了同樣大小的矩陣運(yùn)算,每一次攻擊迭代中的計(jì)算耗時(shí)幾乎是相等的。使用JSMA,BIM-L1和BIM-L2攻擊算法對(duì)600個(gè)隨機(jī)選取正常樣本進(jìn)行攻擊并記錄其攻擊迭代次數(shù)與攻擊耗時(shí),結(jié)果如圖2所示。由圖2可知:攻擊耗時(shí)隨迭代次數(shù)增多而上升,總體呈正相關(guān)趨勢(shì)。因此攻擊迭代次數(shù)可以用來衡量樣本的攻擊成本。
圖2 樣本攻擊耗時(shí)與迭代次數(shù)關(guān)系圖Fig.2 The relationship between the sample attack time and the number of iterations
2) 攻擊迭代次數(shù)衡量樣本攻擊成本的有效性。在RML2016.10.a數(shù)據(jù)集[8]上使用1.2小節(jié)中提到的6種對(duì)抗攻擊算法生成對(duì)抗樣本以及正常樣本,每種類型隨機(jī)選取1 000個(gè)樣本,保證樣本一一對(duì)應(yīng),使用JSMA,BIM-L1和BIM-L2攻擊算法對(duì)這些樣本進(jìn)行攻擊并記錄攻擊迭代次數(shù),計(jì)算所有樣本攻擊迭代次數(shù)之間的歐式距離,并繪制成熱力圖,具體情況如圖3所示。圖3中Normal代表正常樣本。由圖3可知:正常樣本與對(duì)抗樣本之間的平均歐式距離明顯大于對(duì)抗樣本互相之間的平均歐式距離。這表明正常樣本與對(duì)抗樣本在子空間中所處位置具有明顯區(qū)分。此外,不同類型的對(duì)抗樣本之間的平均歐式距離也較為接近,這表明不同攻擊算法可能會(huì)生成攻擊成本相近的對(duì)抗樣本。因此,使用攻擊迭代次數(shù)衡量樣本的攻擊成本具備可行性。
1—FGSM; 2—BIM-L1; 3—JSMA; 4—PGD; 5—DeepFool; 6—CW; 7—Normal。圖3 攻擊迭代次數(shù)平均歐式距離熱力圖Fig.3 Heat map of average Euclidean distance of attack iterations
根據(jù)上述理論,筆者提出了一種基于攻擊成本的信號(hào)調(diào)制分類對(duì)抗樣本檢測(cè)算法。該算法沒有直接量化攻擊迭代次數(shù)作為檢測(cè)依據(jù),而是加入最近鄰算法和Z-Score(標(biāo)準(zhǔn)分),2 420個(gè)正常樣本的攻擊迭代次數(shù)如圖4所示。其中,每類樣本220個(gè),按照類別順序排列。通過觀察正常樣本的攻擊迭代次數(shù)與類別關(guān)系可以發(fā)現(xiàn):不同類別的正常樣本攻擊迭代次數(shù)之間也會(huì)有較大差異,如果單純使用量化的攻擊次數(shù)作為檢測(cè)依據(jù)會(huì)使某些類別的樣本誤判率偏高。加入最近鄰算法和Z-Score是為了最大程度地利用樣本與其周圍的鄰居信息作為不同類別樣本檢測(cè)的參考依據(jù)。該方法的核心思想是通過尋找待測(cè)樣本x在訓(xùn)練集中的k個(gè)最近鄰樣本,計(jì)算待測(cè)樣本攻擊迭代次數(shù)與最近鄰居樣本攻擊迭代次數(shù)的Z-Score實(shí)現(xiàn)樣本區(qū)分。
圖4 攻擊迭代次數(shù)與樣本類別關(guān)系圖Fig.4 Relationship between attack iteration times and sample category
Z-Score在統(tǒng)計(jì)學(xué)中常用來刻畫目標(biāo)值偏離均值的程度,即偏離均值多少個(gè)標(biāo)準(zhǔn)差。在該檢測(cè)任務(wù)中表達(dá)式為
(5)
式中:i為待測(cè)樣本的攻擊迭代次數(shù);μ為待測(cè)樣本的最近鄰樣本的攻擊迭代次數(shù)的均值;σ為最近鄰樣本的攻擊迭代次數(shù)的標(biāo)準(zhǔn)差。對(duì)抗樣本需要的攻擊成本少,對(duì)應(yīng)的攻擊迭代次數(shù)通常會(huì)小于均值,因此對(duì)抗樣本的Z-Score會(huì)低于正常樣本。
此外,為了保證查詢待測(cè)樣本x的最近鄰樣本時(shí)的效率,使用了K維樹(K-dimensional tree,KD-Tree)的數(shù)據(jù)結(jié)構(gòu),其是一種對(duì)K維空間中的實(shí)例點(diǎn)進(jìn)行存儲(chǔ)以便對(duì)其進(jìn)行快速檢索的樹形數(shù)據(jù)結(jié)構(gòu),可以將查詢的平均時(shí)間復(fù)雜度降低至O(logn)。檢測(cè)算法的具體流程如圖5所示。
圖5 基于攻擊成本的信號(hào)調(diào)制分類對(duì)抗樣本檢測(cè)框架Fig.5 Signal modulation classification adversarial sample detection algorithm framework based on attack cost
具體流程為
1) 使用訓(xùn)練集中的正常樣本構(gòu)建用于最近鄰查詢的KD-Tree數(shù)據(jù)結(jié)構(gòu),KD-Tree的所有節(jié)點(diǎn)存儲(chǔ)了樣本的索引值。
2) 對(duì)訓(xùn)練集的正常樣本進(jìn)行攻擊并記錄攻擊迭代次數(shù),以樣本的索引值作為key,攻擊迭代次數(shù)作為value,將所有數(shù)據(jù)存儲(chǔ)為哈希表結(jié)構(gòu)。
3) 首先輸入待測(cè)樣本對(duì)其進(jìn)行攻擊并記錄攻擊迭代次數(shù);然后在KD-Tree中查詢待測(cè)樣本的k個(gè)最近鄰居樣本,獲取其索引值。
4) 根據(jù)索引值在哈希表中查詢最近鄰樣本的攻擊迭代次數(shù)。
5) 計(jì)算待測(cè)樣本與最近鄰樣本攻擊迭代次數(shù)之間的Z-Score分?jǐn)?shù)。
6) 比較所得Z-Score分?jǐn)?shù)與閾值的大小,若大于閾值則判斷為正常樣本;若小于閾值,則判斷為對(duì)抗樣本。
以上步驟為使用一種迭代攻擊算法進(jìn)行對(duì)抗樣本檢測(cè)的情況,也可以結(jié)合多種迭代攻擊算法進(jìn)檢測(cè),采用投票機(jī)制決定最終檢測(cè)結(jié)果,實(shí)現(xiàn)更加全面的對(duì)抗樣本檢測(cè)。
評(píng)估檢測(cè)算法有效性的具體軟硬件配置如表1所示。CPU使用Intel(R) Xeon(R) E5-2650,GPU使用專業(yè)深度學(xué)習(xí)顯卡Tesla V100-PCIE-16 GB。軟件層面操作系統(tǒng)使用Ubuntu 16.04.6,深度學(xué)習(xí)模型及檢測(cè)算法實(shí)現(xiàn)框架為TensorFlow-GPU 1.14。
表1 實(shí)驗(yàn)環(huán)境配置
在實(shí)驗(yàn)數(shù)據(jù)集方面,選擇了信號(hào)調(diào)制分類領(lǐng)域的公開數(shù)據(jù)集RML2016.10a,該數(shù)據(jù)集使用GNU Radio合成IQ信號(hào)樣本。總共為11個(gè)類別,代表樣本的調(diào)制類型,其中數(shù)字調(diào)制包括64QAM,QPSK,8PSK,16QAM,BPSK,BFSK,CPFSK和PAM4,模擬調(diào)制包括WB-FM,AM-SSB和AM-DSB。該數(shù)據(jù)集共包含220 000個(gè)調(diào)制信號(hào)樣本,每類信號(hào)信噪比范圍為-20~18 db,每個(gè)信號(hào)樣本大小為1 282,分別對(duì)應(yīng)I和Q兩個(gè)通道,訓(xùn)練集與測(cè)試集比例為4∶1。
信號(hào)調(diào)制分類模型使用了Lin等[29]在2014年提出的NIN模型,其網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。NIN不僅拋棄了傳統(tǒng)的線性卷積結(jié)構(gòu),使用多層感知器代替,大大增加了網(wǎng)絡(luò)的非線性表達(dá)能力,而且還加入了全局均值池化層代替全連接層。使用NIN模型在RML2016.10a數(shù)據(jù)集的測(cè)試集中達(dá)到了87.5%的分類準(zhǔn)確率。
圖6 NIN網(wǎng)絡(luò)結(jié)構(gòu)[29]Fig.6 NIN network structure
為了驗(yàn)證檢測(cè)算法對(duì)正常樣本和對(duì)抗樣本的區(qū)分度,以及檢測(cè)算法對(duì)不同類型對(duì)抗樣本的檢測(cè)效果,使用1.1中提到的6種白盒對(duì)抗攻擊算法,對(duì)測(cè)試集樣本進(jìn)行攻擊,只保留攻擊成功的樣本,其中BIM攻擊算法使用了L1和L2兩組距離實(shí)現(xiàn),將這7類對(duì)抗樣本分別與原始測(cè)試集樣本組合成一個(gè)二分類測(cè)試集,每類有2 200個(gè)測(cè)試樣本,原始測(cè)試集正常樣本的標(biāo)簽為0,所有的對(duì)抗樣本標(biāo)簽為1。在比較了JSMA,BIM-L1,BIM-L2,PGD,DeepFool和CW這6種迭代攻擊算法后最終選擇了JSMA,BIM-L1,BIM-L2這3種攻擊算法衡量樣本的攻擊迭代次數(shù)。其中PGD和DeepFool攻擊算法的攻擊迭代次數(shù)普遍較少,大部分樣本都可以在10次迭代以內(nèi)就攻擊成功,區(qū)分度不夠明顯;CW攻擊算法由于是基于優(yōu)化的攻擊,因此它的迭代次數(shù)呈現(xiàn)一種隨機(jī)性狀態(tài),波動(dòng)較大,沒有明顯的趨勢(shì),并且速度較慢,不適合快速檢測(cè)任務(wù)。而JSMA,BIM-L1,BIM-L2這3種攻擊算法,攻擊迭代次數(shù)在數(shù)量與區(qū)分度之間都符合的檢測(cè)要求,并且攻擊速度較快,適合快速檢測(cè)任務(wù)。
使用了4種評(píng)估指標(biāo)用于評(píng)價(jià)檢測(cè)算法的檢測(cè)效果,分別為檢測(cè)準(zhǔn)確率、精確率、召回率和F1-Score。對(duì)抗樣本為二分類問題的正類,正常樣本為負(fù)類,預(yù)測(cè)結(jié)果可分為正樣本被預(yù)測(cè)為正類的數(shù)量TP、負(fù)樣本預(yù)測(cè)為正類的數(shù)量FP、正樣本預(yù)測(cè)為負(fù)類的數(shù)量FN和負(fù)樣本預(yù)測(cè)為負(fù)類的數(shù)量TN這4種情況。這4種評(píng)估指標(biāo)的計(jì)算式分別為
1) 準(zhǔn)確率(Acc):
(6)
2) 精確率(Precision):
(7)
3) 召回率(Recall):
(8)
4) 對(duì)精確率和召回率的加權(quán)平均(F1-Score):
(9)
使用JSMA,BIM-L1和BIM-L2這3種攻擊算法進(jìn)行信號(hào)調(diào)制分類對(duì)抗樣本檢測(cè)的實(shí)驗(yàn)結(jié)果分別如表2~4所示。檢測(cè)結(jié)果表明:檢測(cè)算法在7類對(duì)抗樣本下均有較好的檢測(cè)效果,平均檢測(cè)準(zhǔn)確率分別達(dá)到了81.78%,88.33%和88.95%,并且對(duì)所有類的對(duì)抗樣本檢測(cè)表現(xiàn)較為穩(wěn)定,沒有出現(xiàn)對(duì)某一類樣本檢測(cè)效果很差或者無效的極端場(chǎng)景,泛化能力較強(qiáng)。另外,檢測(cè)算法在保持較高水平的F1-Score情況下,對(duì)部分對(duì)抗樣本的檢測(cè)召回率達(dá)到了1,表明檢測(cè)算法具有較為強(qiáng)大的對(duì)抗樣本區(qū)分能力。
表2 JSMA攻擊成本檢測(cè)結(jié)果
表3 BIM-L1攻擊成本檢測(cè)結(jié)果
表4 BIM-L2攻擊成本檢測(cè)結(jié)果
為了更加直觀地了解在筆者檢測(cè)算法的機(jī)制下正常樣本與對(duì)抗樣本之間的差異,將所有測(cè)試集樣本以Z-Score分?jǐn)?shù)作為特征繪制了箱形圖,具體如圖7所示。箱形圖提供了中位數(shù)、均值和上下分位點(diǎn)的信息,可以提供有關(guān)數(shù)據(jù)位置和分散情況等關(guān)鍵信息。由圖7可知:正常樣本的主體分布明顯大于對(duì)抗樣本的主體部分,正常樣本普遍分布在0附近,而對(duì)抗樣本普遍分布在0以下。在圖7(a)中使用JSMA進(jìn)行檢測(cè),對(duì)抗樣本分布的上邊緣較超過了正常樣本分布的中位數(shù)位置,而在圖7(b,c)中使用BIM-L1和BIM-L2進(jìn)行檢測(cè),對(duì)抗樣本的上邊緣位置也明顯低于正常樣本下四分位置,這也與筆者實(shí)驗(yàn)結(jié)果相符合,相較于JSMA,BIM-L1和BIM-L2具有更好的檢測(cè)效果。但無論是哪種攻擊方法用于檢測(cè),正常樣本下邊緣位置仍與對(duì)抗樣本有交集部分,關(guān)于這種現(xiàn)象,筆者認(rèn)為這些樣本在該模型的子空間中本身就處于靠近決策邊界面的位置,與模型本身分類精度有關(guān),可以將其理解為異常樣本,雖然這些樣本會(huì)被誤判,但是它們的數(shù)量很少,不會(huì)影響檢測(cè)算法的整體效果。
1—Normal; 2—FGSM; 3—BIM-L1; 4—BIM-L2; 5—PGD; 6—DeepFool; 7—CW。圖7 攻擊本檢測(cè)箱形圖Fig.7 Attack cost detection box plot
針對(duì)基于深度神經(jīng)網(wǎng)絡(luò)的無線電信號(hào)調(diào)制分類任務(wù)面臨的安全性問題,提出了一種基于攻擊成本的信號(hào)調(diào)制分類對(duì)抗樣本檢測(cè)算法。相較于正常樣本,對(duì)抗樣本更靠近模型的決策邊界面,因此擁有更少的攻擊成本。該方法利用攻擊迭代次數(shù)衡量樣本的攻擊成本,通過尋找待測(cè)樣本x在訓(xùn)練集中的k個(gè)最近鄰樣本,計(jì)算待測(cè)樣本攻擊迭代次數(shù)與最近鄰居樣本攻擊迭代次數(shù)的Z-Score(標(biāo)準(zhǔn)分)實(shí)現(xiàn)檢測(cè)。使用6種主流白盒攻擊算法生成用于評(píng)估的對(duì)抗樣本,使用JSMA,BIM-L1,BIM-L2這3種攻擊算法衡量樣本的攻擊成本,分別取得了81.78%,88.33%和88.95%的平均檢測(cè)準(zhǔn)確率,表明該算法具有穩(wěn)定且優(yōu)越的檢測(cè)效果。下一步的研究將針對(duì)正常樣本中可能會(huì)出現(xiàn)的異常樣本進(jìn)行優(yōu)化研究,使檢測(cè)算法具備更加全面的檢測(cè)能力。