• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Transformer-VAE的ADS-B異常檢測方法

      2023-10-29 14:18:44丁建立張琪琪霍緯綱
      關(guān)鍵詞:解碼器報文重構(gòu)

      丁建立, 張琪琪, 王 靜, 霍緯綱

      (1. 中國民航大學(xué)計算機科學(xué)與技術(shù)學(xué)院, 天津 300300; 2. 中國民航大學(xué)信息安全測評中心, 天津 300300; 3. 中國民航大學(xué)安全科學(xué)與工程學(xué)院, 天津 300300)

      0 引 言

      廣播式自動相關(guān)監(jiān)視(automatic dependent surveillance-broadcast, ADS-B)技術(shù)基于全球衛(wèi)星導(dǎo)航系統(tǒng)和地空、空空數(shù)據(jù)鏈通信等技術(shù)向空中交通管制(air traffic control, ATC)中心以及其他相鄰空域內(nèi)飛機周期性廣播飛機的經(jīng)緯度、高度、速度等信息。ADS-B報文[1]被視為航空信息系統(tǒng)的重要數(shù)據(jù)源,其安全性對航班間隔管理、空中交通流量管理、空中交通防撞等功能子系統(tǒng)有著至關(guān)重要的影響。一旦ADS-B報文遭到攻擊,整個航空信息系統(tǒng)的安全性將受到威脅,ADS-B報文的安全已成為航空安全的重要組成部分。然而,ADS-B報文以明文的形式廣播并且協(xié)議缺乏基本的安全機制,攻擊者可以利用無線射頻傳輸技術(shù)輕易實現(xiàn)對ADS-B的欺騙干擾[2]。因此,研究有效的ADS-B安全解決方案具有重要意義。

      傳統(tǒng)的ADS-B安全解決方案主要包括3類,第1類為基于密碼學(xué)[3-4]的方法,但此類方法需要修改協(xié)議的內(nèi)部機制與硬件系統(tǒng),因此在實際中應(yīng)用難度較大。第2類為基于多點時差定位[5]的方法,該類方法利用ADS-B報文到達不同站點的時間差校驗發(fā)送位置的正確性,但此類方法高度依賴大量地面站的參與,實施難度大、附加成本高,不易在大范圍內(nèi)推廣。第3類為基于多陣列天線[6]的方法,該類方法利用多面陣列天線對ADS-B報文進行空間位置測量來驗證目標的位置特征,此類方法實施成本較低,但仍需要在ADS-B系統(tǒng)上附加額外的設(shè)備。

      為了避免硬件和協(xié)議更改帶來的高昂成本,基于深度學(xué)習(xí)的異常檢測方法逐漸受到關(guān)注。在此類方法中,無監(jiān)督學(xué)習(xí)方法因為不需要標記數(shù)據(jù)進行模型訓(xùn)練且可以識別未知類型異常而得到了廣泛的研究。ADS-B報文是具有多維特征的時間序列數(shù)據(jù),Habler等[7]采用基于自動編碼器(autoencoder, AE)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)模型對ADS-B報文進行重構(gòu),使用長短時記憶(long short term memory, LSTM)網(wǎng)絡(luò)作為編解碼器來學(xué)習(xí)正常ADS-B報文的特征,通過滑動窗口來計算ADS-B報文序列的依賴關(guān)系并利用重構(gòu)誤差檢測異常,有效地解決了傳統(tǒng)機器學(xué)習(xí)方法無法捕捉時間依賴性的問題。丁建立等[8]在上述模型的基礎(chǔ)上通過計算每個滑動窗口的統(tǒng)計特征來增加ADS-B序列特征維度,使模型能夠更好地捕捉數(shù)據(jù)的時間依賴性,檢測性能也有了較大提升。羅鵬等[9]采用雙向門控循環(huán)單元神經(jīng)網(wǎng)絡(luò)預(yù)測ADS-B報文,并將預(yù)測值與真實值的差值放入支持向量數(shù)據(jù)描述(support vector data description, SVDD)中對樣本進行二次訓(xùn)練,通過創(chuàng)建出的超球體分類器檢測ADS-B異常報文,同時解決了ADS-B報文異常檢測閾值的自適應(yīng)問題。

      飛機在飛行過程中,ADS-B報文在各個維度上的特征值會在正常范圍內(nèi)波動,表現(xiàn)出隨機性。然而上述基于確定性模型的方法忽略了數(shù)據(jù)中隨機性的影響,可能會發(fā)生誤判問題[10]。對此,Fraccaro等[11]指出了在模型中引入隨機變量來建模數(shù)據(jù)中的隨機性能夠改善并增強模型性能。Luo等[12]提出了基于變分AE(variational AE, VAE)的ADS-B異常檢測算法,假設(shè)每個ADS-B報文除可見的特征外還有額外的潛在隨機變量,并使用LSTM來計算該變量的分布,隨后從計算出的分布中采樣得到潛在隨機變量的樣本用于重構(gòu)輸入數(shù)據(jù),隨機性則可以通過采樣過程融入建模過程。

      ADS-B報文序列是基于時間的一系列數(shù)據(jù),ADS-B報文在過去的狀態(tài)會對未來較長時期之后的狀態(tài)產(chǎn)生影響,表現(xiàn)出長程依賴性。然而,現(xiàn)有異常檢測算法卻無法很好地捕捉ADS-B報文序列中的長程依賴關(guān)系。而Transformer[13]模型通過自注意力機制使得輸入序列中每個時間點的數(shù)據(jù)都融合了之前以及之后時間點的所有特征,有效地提升了模型捕捉時間序列中長程依賴關(guān)系的能力?;诖?Meng和Duan等[14-15]利用Transformer模型來構(gòu)建時間序列異常檢測模型,顯著地提升了模型的檢測性能和魯棒性。

      此外,在一定的時間段內(nèi),ADS-B報文序列通常表現(xiàn)出整體性特征,例如飛機的飛行過程可以分為起飛、爬升、巡航、下降和著陸幾個階段,相應(yīng)地,飛機的高度呈現(xiàn)出不同的變化趨勢。ADS-B報文序列在不同階段有不同的整體性特征,因而異常報文的判定標準也會發(fā)生變化,識別此類特征并加以利用對于提升模型的檢測性能具有重要作用。然而,現(xiàn)有的ADS-B異常檢測算法無法獲得輸入序列的整體性特征。在自然語言處理領(lǐng)域,Bowman等[16]通過基于LSTM的VAE模型引入隨機變量,用于表示單個語句的整體性特征,證實了整體性特征在控制模型生成文本的語義連續(xù)性方面具有重要作用,因此本文參考該研究工作引入隨機變量來表示序列的整體性特征。

      綜上所述,本文提出了基于Transformer-VAE的無監(jiān)督異常檢測算法,通過Transformer編碼器的自注意力機制建模ADS-B報文序列中的長程依賴關(guān)系,基于VAE框架,在Transformer模型中引入隨機變量來反映ADS-B報文序列的隨機性和整體性特征。然后通過特殊的融合模塊將該變量與Transformer解碼器的輸出進行融合,實現(xiàn)ADS-B報文的重構(gòu),最后利用重構(gòu)誤差來判定異常。在真實的數(shù)據(jù)集上的實驗表明,本文提出的算法與其他基線算法相比在所設(shè)定的不同攻擊場景下具有更高的準確率。

      1 準備知識

      1.1 Transformer

      Transformer是深度學(xué)習(xí)中用于處理時間序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)模型,該模型完全基于自注意力機制來建模序列中的時序特性,通過將序列中的任意兩個元素直接連接,有效地捕捉序列長程依賴關(guān)系。Transformer基于編碼器-解碼器結(jié)構(gòu),其中的編碼器與解碼器部分各自都是通過堆疊多層相同的模型構(gòu)建而成,每一層模型主要包括多頭注意力(MultiHead)和前饋神經(jīng)網(wǎng)絡(luò)(feedforword neural network, FFN)兩個主要子模型。

      多頭注意力子模型主要基于縮放點積注意力機制,注意力權(quán)重矩陣運算過程如下:

      (1)

      式中:Q表示查詢向量矩陣;K表示鍵向量矩陣;V表示值向量矩陣;dmodel表示模型隱狀態(tài)的維度。

      多頭注意力機制則是使用不同的線性映射參數(shù)矩陣將輸入數(shù)據(jù)矩陣映射為多個不同的查詢向量矩陣、鍵向量矩陣和值向量矩陣,作為縮放點積注意力機制的輸入,此過程可定義為

      (2)

      FFN由兩次線性映射以及一個ReLU[17]激活函數(shù)構(gòu)成,該網(wǎng)絡(luò)的運算過程如下:

      FFN(x)=W2max(0,W1x+b1)+b2

      (3)

      式中:W1,W2∈Rdmodel×dmodel是線性映射的參數(shù)矩陣;b1,b2∈Rdmodel是偏置項參數(shù);x表示特征維度為dmodel的輸入數(shù)據(jù)。

      1.2 VAE

      logp(x)=DKL(qφ(z|x)‖p(z|x))+LVAE(φ,θ;x)

      (4)

      式中:DKL(·)表示變分后驗分布qφ(z|x)與真實后驗分布p(z|x)之間的KL(Kullback-Leibler)散度;φ和θ分別表示編碼器和解碼器中的參數(shù);LVAE(·)表示邊緣對數(shù)似然函數(shù)的下界,也是變分自編碼器所使用的目標函數(shù),VAE通過優(yōu)化這一下界來優(yōu)化模型中的參數(shù),其定義如下:

      LVAE=-DKL(qφ(z|x)‖pθ(z))+Eqφ(z|x)[logpθ(x|z)]

      (5)

      式中:第一項通過最小化變分后驗分布與先驗分布之間的KL散度來正則化潛在變量的分布;而第二項則是通過最大化對數(shù)似然函數(shù)logpθ(x|z)來實現(xiàn)對原始數(shù)據(jù)的重構(gòu)。

      2 ADS-B異常檢測方法

      2.1 問題定義

      定義X={x1,x2,…,xL}表示原始ADS-B報文序列,其中L為原始ADS-B報文序列的長度。定義xt=[t,lon,lat,alt,id,s1,s2,…,sn]表示ADS-B報文特征向量,代表在t時刻具有唯一識別碼(id)的飛機所在位置的經(jīng)度(lon)、緯度(lat)以及氣壓高度(alt)等,s1,s2,…,sn代表飛機附加特征,本文分配一個字段代表飛機的航行方向,即航向(s1)。

      由于原始ADS-B報文序列長度過長,故采用步長為1的滑動窗口機制處理原始報文序列,將其分割為若干段長度為k的子序列作為模型的輸入,其中任意一段ADS-B子序列表示為{xt-k+1,xt-k+2,…,xt-1,xt}。

      2.2 模型設(shè)計

      本文提出了基于Transformer-VAE的ADS-B異常檢測模型,該模型是一個端到端的無監(jiān)督深度學(xué)習(xí)模型,其結(jié)構(gòu)如圖1所示。

      圖1 模型結(jié)構(gòu)圖

      Transformer-VAE模型主要由編碼器、解碼器和估計網(wǎng)絡(luò)3個模塊組成。整體上采用VAE框架通過引入潛在隨機變量z捕捉ADS-B報文序列的隨機性。編碼器模塊用于建模ADS-B報文序列中的長程依賴關(guān)系,將ADS-B報文的特征向量編碼到低維潛在空間中,得到包含上下文特征的潛在表示。估計網(wǎng)絡(luò)用于計算潛在隨機變量z的概率密度的參數(shù),建模子序列的整體性特征。在解碼器模塊中,將Transformer解碼器的輸出與代表整體性特征的潛在隨機變量的樣本融合以進行樣本特征的重構(gòu)。

      2.2.1 Transformer-VAE編碼器

      Transformer-VAE的編碼器模塊具有與原始的Transformer模型類似的結(jié)構(gòu),由Ne個相同的編碼器層構(gòu)成。編碼器使用滑動窗口生成的ADS-B報文子序列{xt-k+1,xt-k+2,…,xt-1,xt}作為輸入,完全基于自注意力機制將報文的特征向量映射到低維潛在空間中,從而得到報文子序列的上下文表示。

      以第t個時間點處的ADS-B報文的特征向量xt為例,首先通過輸入數(shù)據(jù)向量與位置編碼向量相加,將位置特征引入計算過程:

      (6)

      (7)

      式中:MultiHead(·)表示多頭注意力機制;LayerNorm(·)表示層歸一化機制[17]。隨后計算結(jié)果Bi被進一步輸入前饋神經(jīng)網(wǎng)絡(luò)模塊:

      (8)

      式中:FFN(·)表示前饋神經(jīng)網(wǎng)絡(luò)。經(jīng)過Ne層的迭代后,最后一編碼器層的輸出HNe將被輸入到估計網(wǎng)絡(luò)和解碼器,以分別用于估計潛在隨機變量后驗分布的參數(shù)以及進行多頭注意力機制的計算。

      2.2.2 基于神經(jīng)網(wǎng)絡(luò)的后驗分布估計網(wǎng)絡(luò)

      Transformer-VAE通過引入潛在隨機變量來顯式地建模輸入ADS-B序列的整體性表示。包含潛在隨機變量的模型所面臨的一大挑戰(zhàn)是建模相關(guān)的后驗分布,在Transformer-VAE模型中,假設(shè)其服從協(xié)方差矩陣為對角矩陣的多元高斯分布,并采用神經(jīng)網(wǎng)絡(luò)來估計分布的相關(guān)參數(shù)。

      首先使用平均池化操作來得到滑動窗口中ADS-B報文序列的確定性整體特征表示h:

      (9)

      (10)

      式中:fμ(·)和fσ(·)分別為全連接神經(jīng)網(wǎng)絡(luò);diag(·)表示以輸入向量為對角元素的對角矩陣。在得到隨機隱變量的后驗分布的參數(shù)后,輸入ADS-B報文子序列的隨機性整體性特征可通過在該分布中采樣得到。

      由于該采樣過程無法微分,為了使得整個模型可以通過梯度下降算法端到端地訓(xùn)練出來,采用重參數(shù)化方法[13],通過在標準高斯分布中進行采樣來得到服從特定分布的隨機性整體性特征z,計算過程表示為

      (11)

      式中:ε表示從標準高斯分布中的采樣結(jié)果;z可以表示ADS-B報文子序列的整體性特征。

      2.2.3 融入注意力機制的解碼器

      解碼器的主要任務(wù)是根據(jù)已生成的當(dāng)前時刻t以及之前的ADS-B報文序列和隨機隱變量z重構(gòu)出下一時間點處的ADS-B報文的特征向量。與編碼器類似,解碼器使用融合了位置特征的ADS-B報文特征向量作為輸入,并且由Nd個相同的解碼器層堆疊而成。每一個解碼器層主要包括掩碼多頭注意力機制、交叉多頭注意力機制以及前饋神經(jīng)網(wǎng)絡(luò)3個模塊。

      其中,掩碼多頭注意力機制是指在多頭注意力機制中引入掩碼以確保在當(dāng)前時刻t的注意力權(quán)重計算以及預(yù)測僅依賴于當(dāng)前時刻之前的ADS-B報文數(shù)據(jù),掩碼多頭注意力模塊用于建模已解碼出的部分ADS-B報文序列中的時序關(guān)系。第i個解碼器層中掩碼多頭注意力模塊的計算過程定義如下:

      (12)

      (13)

      最后,前饋神經(jīng)網(wǎng)絡(luò)模塊被用來進一步提升解碼器的表示能力:

      (14)

      (15)

      (16)

      2.3 Transformer-VAE模型訓(xùn)練

      作為基于VAE的模型,使用變分下界作為模型最終的優(yōu)化目標,目標函數(shù)初步表示為

      L=Eqφ(z|X)[logpθ(X|z)]-KL(qφ(z|X)‖p(z)

      (17)

      式中:第1項通過最大化對數(shù)似然函數(shù)來實現(xiàn)對原始數(shù)據(jù)的重構(gòu);第2項通過最小化變分后驗分布與先驗分布之間的KL散度來正則化來正則化潛在變量的分布。式(17)中的對數(shù)似然分布logpθ(X|z)[20]可以進一步分解為

      (18)

      假設(shè)每個ADS-B報文所服從的似然分布logpθ(xt|x

      (19)

      式中:為了平衡目標函數(shù)中目的不同的兩項,引入超參數(shù)λ來控制兩者的作用;M為蒙特卡羅方法中的采樣次數(shù),通常設(shè)定M=1。

      2.4 基于Transformer-VAE的異常檢測流程

      異常檢測的總體流程圖如圖2所示。

      圖2 異常檢測流程圖

      圖2(a)表示在訓(xùn)練階段,輸入原始的ADS-B報文序列并對其進行特征篩選及歸一化處理,將預(yù)處理后的時間序列輸入到基于Transformer-VAE的深度異常檢測模型當(dāng)中進行重構(gòu)訓(xùn)練,通過調(diào)整Transformer-VAE模型參數(shù)以縮小重構(gòu)序列與真實序列的重構(gòu)誤差,當(dāng)在驗證集上的重構(gòu)誤差達到最小值時停止訓(xùn)練。

      圖2(b)表示在測試階段,輸入含有異常的ADS-B報文序列并進行數(shù)據(jù)預(yù)處理,利用模型重構(gòu)出來的序列同原序列之間的重構(gòu)誤差來檢測輸入序列中的異常,若輸入序列為正常的ADS-B報文序列,重構(gòu)誤差將被控制在一定范圍內(nèi),若輸入序列包含異常,重構(gòu)誤差將大于異常分數(shù)閾值,從而判定異常。

      2.5 閾值確定與異常判定

      假設(shè)模型對正常數(shù)據(jù)的重構(gòu)誤差服從高斯分布N(μe,σe),定義異常分數(shù)函數(shù)fs(xt)為模型重構(gòu)誤差的負對數(shù)似然函數(shù),具體表示如下:

      (20)

      式中:et表示t時刻的重構(gòu)誤差,參數(shù)μe和σe由驗證集中正常數(shù)據(jù)的重構(gòu)誤差通過極大似然估計法計算得到。

      若當(dāng)前時刻數(shù)據(jù)的異常分數(shù)高于分數(shù)閾值η時,則判定此時間點的數(shù)據(jù)為異常數(shù)據(jù),即

      (21)

      其中,異常分數(shù)的閾值選定方式如下:首先計算全部測試集數(shù)據(jù)的異常分數(shù),隨后在異常分數(shù)分布的區(qū)間內(nèi)等距離采樣100個點,選定其中使得判定結(jié)果的F1分數(shù)最大的異常分數(shù)點作為閾值。

      3 實 驗

      3.1 實驗設(shè)定

      Flightradar24網(wǎng)站可以訪問從數(shù)千個地面站收集的數(shù)據(jù),為了驗證模型性能,以在Flightadar24網(wǎng)站采集到的40趟航班完整飛行過程中的ADS-B報文序列作為分析基礎(chǔ),其中每趟航班的飛行過程中約包含6 000個采樣點,收集到共計約24萬條ADS-B報文序列,將ADS-B報文序列按8∶1∶1比例劃分為訓(xùn)練集、驗證集和測試集。訓(xùn)練集中全部都為正常序列,用于學(xué)習(xí)基于Transformer-VAE的重構(gòu)模型;驗證集中也全部都為正常序列,參考提前停止策略,在訓(xùn)練過程中模型在驗證集上重構(gòu)誤差達到最低點時停止訓(xùn)練;在正常序列中注入異常序列構(gòu)成測試集,用于測試模型性能。

      在訓(xùn)練過程中,設(shè)定滑動窗口的大小為50,設(shè)定滑動步長為1。采用Adam[21]作為模型的優(yōu)化算法,設(shè)定其中的參數(shù)Batch size為64,并設(shè)定初始學(xué)習(xí)率為0.001,采用Noam[13]學(xué)習(xí)率衰減算法更新訓(xùn)練過程中的學(xué)習(xí)率,設(shè)定其中的參數(shù)Warm step為16 000。經(jīng)過超參數(shù)搜索后,設(shè)定Transformer-VAE模型中多頭注意力機制中的頭數(shù)為4,Transformer編解碼器中的前饋神經(jīng)網(wǎng)絡(luò)尺寸為100,編碼器與解碼器的層數(shù)分別為4和1,模型隱狀態(tài)及隨機隱變量z的維度為84。

      3.2 數(shù)據(jù)缺失插值與映射轉(zhuǎn)換

      為了提取ADS-B報文序列中有意義的特征,選擇經(jīng)度、緯度、高度、速度和航向作為特征,而諸如循環(huán)冗余校驗碼、國際民航組織標識符等字段由于不隨時間發(fā)生變化,在任務(wù)中毫無意義,故而在特征篩選環(huán)節(jié)被剔除掉。對于一些時間點上的飛行狀態(tài)缺失,通過用相鄰狀態(tài)來填充缺失狀態(tài)。若是某條航班數(shù)據(jù)有多于一半的屬性值缺失,將此條數(shù)據(jù)直接從數(shù)據(jù)集中剔除。針對少于一半屬性值缺失的某條航班數(shù)據(jù),采用線性插值法補齊。

      為了避免某些ADS-B數(shù)據(jù)特征差異過大影響到數(shù)據(jù)分析的結(jié)果,同時為了提高模型的收斂速度和精度,采用離差標準化的方法對ADS-B數(shù)據(jù)進行處理,將每個特征的取值映射到[0,1]之間,轉(zhuǎn)換公式如下:

      (22)

      3.3 評估指標

      通過計算精確率P(Precision)、召回率R(Recall)、F1分數(shù)(F1-score)來評估異常檢測算法,以上指標計算公式如下:

      (23)

      式中:TP表示正常樣本被模型正確識別為正常樣本的樣本數(shù)量;TN表示異常樣本被模型正確識別為異常樣本的樣本數(shù)量;FP表示異常樣本被模型錯誤識別為正常樣本的樣本數(shù)量;FN表示正常樣本被模型錯誤識別為異常樣本的樣本數(shù)量;P是指被模型正確識別為異常樣本的數(shù)量占被檢測出來的所有異常樣本的比例;R是指被模型正確識別為異常樣本的數(shù)量占數(shù)據(jù)集中所有異常樣本的比例;F1分數(shù)為精確率和召回率的加權(quán)平均調(diào)和值。

      3.4 攻擊構(gòu)建

      考慮到真實飛行狀態(tài),模擬了以下5種詳細的攻擊模式并將構(gòu)建的ADS-B異常報文混合到正常飛行的數(shù)據(jù)集中建立測試集評估模型性能,選取包含2 000條ADS-B數(shù)據(jù)的示例航班,異常報文生成如下:

      (1) 隨機噪聲異常通過將第1 000~1 500條ADS-B報文序列任意一個特征的原始值乘以0到2之間隨機生成的浮點數(shù)而產(chǎn)生,其余報文不做修改。

      (2) 幽靈飛機異常通過將來自不同但合法航線的ADS-B報文序列注入測試航班的報文序列而產(chǎn)生,替換報文范圍為0~800,長度為800,其余報文不做修改。

      (3) 航向偏移異常通過修改第900~1 400條ADS-B報文序列中的航向字段而產(chǎn)生。以100條為一組,每組通過連續(xù)增加5度的航向字段(即,對于異常段中的第一條消息,航向?qū)⒈辉黾?度,第二條消息被增加10度,依此類推)不斷增加,產(chǎn)生異常,每組均從初始位置開始構(gòu)建異常,其余報文不做修改。

      (4) 速度偏移異常通過修改第450~950條ADS-B報文序列中的速度字段而產(chǎn)生。以100條為一組,每組通過連續(xù)增加10節(jié)的速度字段(即,對于異常段中的第一條消息,速度將被加速10節(jié),第二條消息被加速20節(jié),依此類推)不斷增加速度,產(chǎn)生異常,每組均從初始位置開始構(gòu)建異常,其余報文不做修改。

      (5) 拒絕服務(wù)(denial of service, DOS)攻擊異常通過在第977~1 377條和第1 692~2 000條兩組連續(xù)ADS-B報文序列中,每組只保留第一條報文并刪除其余報文(將報文的特征值全部置零)而產(chǎn)生。即只有間隔足夠大的消息才能到達目的地,從而模擬拒絕服務(wù)攻擊或網(wǎng)絡(luò)延遲模式,其余報文不做修改。

      3.5 實驗結(jié)果與分析

      3.5.1 實驗結(jié)果

      圖3~圖7為Transformer-VAE模型異常檢測實驗結(jié)果圖,橫坐標為ADS-B報文序列號,縱坐標為異常分數(shù)值,紅色虛線為異常分數(shù)閾值,紅色長方形陰影區(qū)域為異常注入的范圍。從圖中異常點的異常分數(shù)明顯高于非異常點這一現(xiàn)象可以看出,該模型異常檢測效果十分顯著。

      圖3 隨機噪聲檢測

      圖3為隨機噪聲異常檢測結(jié)果圖,如圖所示,在注入攻擊范圍內(nèi)報文的異常分數(shù)明顯高于閾值;圖4為幽靈飛機異常檢測結(jié)果圖,使用正常的ADS-B報文序列替換掉測試航班的0~799條報文序列,第800條報文為兩段報文序列的銜接處,故異常分數(shù)在此處達到峰值,這表明Transformer-VAE模型對報文序列中的數(shù)據(jù)變化十分敏感。

      圖4 幽靈飛機檢測

      圖5為航向偏移異常檢測結(jié)果圖,注入攻擊范圍為第900~1 400條報文,第900~1 000條報文由于航向與正常報文偏移程度的不斷增加導(dǎo)致異常分數(shù)逐漸增大并在第1 000條報文處達到此段異常分數(shù)峰值,由于每組異常報文的偏移程度均從0開始增加,故在第1 000條報文之后,異常分數(shù)呈急速下降的趨勢,其余各組異常報文的異常分數(shù)變化趨勢同理;圖6表示速度偏移檢測結(jié)果圖,其原理與圖5相似,故不詳細展開論述。

      圖5 航向偏移檢測

      圖6 速度偏移檢測

      圖7表示DOS攻擊異常檢測結(jié)果圖,注入攻擊范圍為第977~1 377條和第1 692~2 000條報文序列,由于每組除第一條報文剩余序列被全部置零,因此異常分數(shù)均相同,同時異常分數(shù)在被置零的報文序列與原始報文的拼接處的報文數(shù)據(jù)點達到峰值。

      圖7 DOS攻擊檢測

      另外,為了客觀驗證模型性能,選取了具有代表性的5種異常檢測方法進行對比實驗,這5種方法分別為一類支持向量機(one class-support vector machine, OC-SVM)[22]、局部異常因子(local outlier factor, LOF)算法[23]、孤立森林(isolation forest, IF)[24]、基于深度學(xué)習(xí)的LSTM-AE[8]和LSTM-VAE[12]異常檢測算法。

      (1) OC-SVM:基于核函數(shù)的異常檢測算法,通過學(xué)習(xí)正常樣本與異常樣本的決策邊界來識別異常,適用與小樣本,低維度的數(shù)據(jù)集。

      (2) LOF:基于密度的異常檢測算法,通過比較每個數(shù)據(jù)點和其鄰域點的密度偏差識別異常,適用于小樣本的數(shù)據(jù)集。

      (3) IF:基于集群的異常檢測算法,通過判斷數(shù)據(jù)空間內(nèi)某些區(qū)域數(shù)據(jù)點分布的稀疏程度識別異常,適用于異常樣本占比很少的數(shù)據(jù)集。

      (4) LSTM-AE: 基于AE的異常檢測算法,由LSTM神經(jīng)網(wǎng)絡(luò)作為模型的編解碼器,通過重構(gòu)誤差和預(yù)先設(shè)定的閾值進行異常檢測,適用于大規(guī)模數(shù)據(jù)集,但模型需要質(zhì)量較高的訓(xùn)練集進行訓(xùn)練。

      (5) LSTM-VAE:基于VAE的異常檢測算法,在LSTM-AE的基礎(chǔ)上引入了隨機變量來捕捉數(shù)據(jù)中的隨機性,適用于大規(guī)模數(shù)據(jù)集,對訓(xùn)練集質(zhì)量要求不高。

      實驗結(jié)果如表1所示,表1顯示了各個異常方法的精確率、召回率和F1分數(shù)。由于基于機器學(xué)習(xí)的方法沒有考慮到數(shù)據(jù)的時序關(guān)系導(dǎo)致其檢測性能較差,無法檢測出DOS攻擊。其中,LOF模型的召回率較高但其精確率較低,說明此方法僅僅是將大量的點標記為異常來盡可能多地檢測出異常樣本。對比OC-SVW、IF、LOF這3種機器學(xué)習(xí)方法,Transformer-VAE的各項指標比OC-SVW均高于21.95%以上,Transformer-VAE的各項指標比LOF均高于21.35%以上,Transformer-VAE的各項指標比IF均高于22.57%以上。對比LSTM-AE、LSTM-VAE這兩種深度學(xué)習(xí)方法,LSTM-VAE的各項指標LSTM-AE均高于1.75%以上,Transformer-VAE的各項指標比LSTM-AE均高于6.92%以上,Transformer-VAE的各項指標比LSTM-VAE均高于3.02%以上。

      表1 各個異常方法的精確率、召回率和F1分數(shù)

      綜上所述,基于深度學(xué)習(xí)的模型由于考慮到了ADS-B報文序列的時序性,相較基于傳統(tǒng)的機器學(xué)習(xí)方法表現(xiàn)出了更高的F1分數(shù),Transformer通過自注意力機制有效地提升了模型捕捉ADS-B報文序列中長程依賴關(guān)系的能力,相較LSTM具有優(yōu)越性。 而VAE通過引入隨機變量來捕捉ADS-B報文序列中的隨機性,顯著地提升了模型性能,相較AE具有優(yōu)越性。實驗結(jié)果表明,針對不同類型的異常,Transformer-VAE算法精確率、召回率及F1分數(shù)均優(yōu)于相關(guān)基線算法,表現(xiàn)出良好的性能。

      3.5.2 消融實驗

      為了驗證模型各部分的有效性,本組實驗測試了不同模型框架對于算法性能的影響,實驗參數(shù)的設(shè)定同第3.2節(jié)。具體的模型框架如下:

      (1) Transformer-AE:未引入VAE結(jié)構(gòu),即消除圖1中的估計網(wǎng)絡(luò)模塊以及解碼器模塊中的融合機制,消除了潛在隨機變量 在模型中的作用,僅使用AE的重構(gòu)誤差作為損失函數(shù),其他同本文。

      (2) Transformer-VAE(無融合):未引入融合機制,僅將從估計網(wǎng)絡(luò)和編碼器中計算并采樣到的潛在變量z作為解碼過程的開始標志向量,即圖1中的S0,通過解碼器中的自注意力機制將z融入解碼過程,其余同本文。

      (3) Transformer-VAE:本文所提出的模型。

      實驗結(jié)果如表2所示。Transformer-VAE的各項指標要優(yōu)于Transformer-AE,其中F1分數(shù)比Transformer-AE高3.85%, Transformer-VAE的各項指標要優(yōu)于Transformer-VAE(無融合),F1分數(shù)比Transformer-VAE(無融合)高1.79%,這表明Transformer-VAE模型中的估計網(wǎng)絡(luò)模塊和融合機制對模型檢測性能的提升均有正面作用。

      表2 Transformer-VAE消融實驗

      3.5.3 滑動窗口長度的影響

      為了驗證Transformer的長程依賴性,本組實驗測試了改變滑動窗口的長度k對于算法性能的影響,選取循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural networks, RNN)系列中效果最好的LSTM-VAE算法作為對照實驗。由表3可知,在不同的滑動窗口長度下,Transformer-VAE的各項指標要明顯優(yōu)于LSTM-VAE,F1分數(shù)最高相差達到6.95%。其中,在滑動窗口長度為500的情況下,Trans-former-VAE的F1分數(shù)比LSTM-VAE高5.14%。另外,Transformer-VAE在滑動窗口長度為300的情況下達到下述長度區(qū)間內(nèi)檢測性能的峰值,而LSTM-VAE則是在滑動窗口長度為200的情況下達到下述長度區(qū)間內(nèi)檢測性能的峰值。實驗結(jié)果表明,Transformer-VAE能夠更好的捕捉ADS-B報文序列的長程依賴關(guān)系。

      表3 滑動窗口長度對算法性能的影響

      3.5.4 潛在空間可視化

      為了驗證Transformer-VAE模型能夠捕捉ADS-B報文的整體性特征,首先從驗證集中隨機采樣2 000條正常的ADS-B報文數(shù)據(jù),隨后使用已訓(xùn)練完成的模型計算出這些報文數(shù)據(jù)隱含隨機變量的分布并從中采樣得到這些報文對應(yīng)的向量表示z。使用K-Means算法對z進行聚類,并使用不同顏色標出聚類結(jié)果,隨后使用T-SNE算法對z進行可視化,聚類及可視化結(jié)果如圖8所示(其中,橫坐標與縱坐標代表降維后用于可視化的兩個維度)。從圖中可以看出,在潛在空間中,采樣到的報文數(shù)據(jù)可以明顯地被K-Means算法分成5類,表明本文提出的模型能夠捕捉到一定的整體性特征。

      圖8 可視化結(jié)果

      4 結(jié) 論

      ADS-B異常檢測算法應(yīng)考慮到報文序列中的隨機性、長程依賴關(guān)系以及整體性特征對此,本文從以上3個角度出發(fā),構(gòu)建了基于VAE和Transformer的ADS-B異常檢測算法。利用Transformer編碼器的自注意力機制建模ADS-B報文序列中的長程依賴關(guān)系并通過改變滑動窗口的長度驗證了Transformer的長程依賴性。同時,基于VAE框架,在Transformer模型中引入隨機變量來反映ADS-B報文序列的隨機性和整體性特征,并通過消融實驗與潛在空間可視化實驗驗證了估計網(wǎng)絡(luò)模塊和融合機制對模型檢測性能提升的正面作用以及報文序列的整體性特征。為評估模型性能,針對ADS-B潛在的攻擊行為模擬生成5類異常報文,異常檢測實驗結(jié)果表明,所提出的方法在設(shè)定的不同攻擊場景下,檢測性能優(yōu)于OC-SVM、LOF、IF、LSTM-AE、LSTM-VAE算法。

      猜你喜歡
      解碼器報文重構(gòu)
      基于J1939 協(xié)議多包報文的時序研究及應(yīng)用
      汽車電器(2022年9期)2022-11-07 02:16:24
      長城敘事的重構(gòu)
      攝影世界(2022年1期)2022-01-21 10:50:14
      科學(xué)解碼器(一)
      科學(xué)解碼器(二)
      科學(xué)解碼器(三)
      CTCS-2級報文數(shù)據(jù)管理需求分析和實現(xiàn)
      線圣AudioQuest 發(fā)布第三代Dragonfly Cobalt藍蜻蜓解碼器
      淺析反駁類報文要點
      中國外匯(2019年11期)2019-08-27 02:06:30
      北方大陸 重構(gòu)未來
      北京的重構(gòu)與再造
      商周刊(2017年6期)2017-08-22 03:42:36
      临沧市| 普兰县| 山丹县| 忻城县| 商水县| 白水县| 儋州市| 清徐县| 西乡县| 兖州市| 虎林市| 尼玛县| 巴楚县| 乐安县| 个旧市| 内乡县| 琼中| 星子县| 化隆| 舟曲县| 榆林市| 沧源| 翁牛特旗| 嘉义县| 明光市| 江达县| 象山县| 清苑县| 仁怀市| 大荔县| 龙南县| 天峨县| 惠州市| 海门市| 兴安县| 新邵县| 洞头县| 二连浩特市| 收藏| 龙口市| 个旧市|