?

基于時空圖卷積網絡的無人機網絡入侵檢測方法

2021-06-09 01:16陳卓呂娜陳坤張彥暉高維廷
北京航空航天大學學報 2021年5期
關鍵詞:準確率卷積節點

陳卓,呂娜,陳坤,張彥暉,高維廷

(空軍工程大學 信息與導航學院,西安710077)

近年來,無人機在軍事和民用領域的網絡化應用日益廣泛。無人機網絡多部署和應用于惡劣、無人值守的環境中,更易遭受各種網絡攻擊,如蟲洞攻擊、拒絕服務攻擊和泛洪攻擊等[1]。網絡入侵檢測技術作為一種主動網絡防御技術,通過監視網絡運行狀態,能夠識別并有效應對各種網絡攻擊行為,確保網絡可靠運行[2]。

傳統的網絡入侵檢測方法包括基于簽名的檢測和基于異常的檢測?;诤灻臋z測方法對已知入侵行為建立知識庫,通過與知識庫的記錄對比來確認攻擊,是檢測常見網絡攻擊的有效方法,但不適用于檢測未知的新型攻擊?;诋惓5臋z測方法通過網絡流量的正常行為特征建立入侵檢測模型[3],將與正常行為有較大偏差的異?;顒优卸榫W絡攻擊,因而無需具體定義每種入侵行為,能夠有效檢測未知攻擊且適應網絡的變化。入侵檢測 模 型 的 構 建 有 統 計[4-5]、聚 類[6-7]、分 類等不同方法[8-9]。統計方法需要根據流量特征的歷史數據建立統計模型,因此檢測的時效性差。聚類方法通常使用K均值等聚類算法建模,但流量特征復雜時存在難以確認聚類中心的問題[10]。分類方法通常使用支持向量機(SVM)等算法構建入侵檢測分類模型[9],不僅能快速檢測出異常流量,還能識別具體攻擊類別,但分類準確率通常取決于從網絡流量中挖掘的特征(能否準確描述網絡)。

由于深度學習具有從復雜多維數據中挖掘隱含數據特征的特點,近年來深度神經網絡被大量應用于入侵檢測分類模型的構建,效果遠優于依靠人工主觀設計特征參數[11-12]。文獻[13]論述了深度學習在入侵檢測特征提取方面的優勢,文獻[14]指出采用深度學習方法的無人機網絡入侵檢測準確率較傳統方法明顯提高。

傳統的入侵檢測方法多數針對拓撲固定的地面網絡,研究人員更多關注網絡流量的時序特征。例如,Kim等[15]將網絡流量數據建模為時間序列來提高入侵檢測模型性能,Wang等[16]使用卷積神經網絡(CNN)和遞歸神經網絡(RNN)來學習網絡流量的時間特征用于入侵檢測?;诰W絡拓撲結構的入侵檢測研究相對較少,少有針對網絡拓撲的時空特征進行整體建模。Kwon等[9]指出從網絡拓撲中挖掘空間特征能進一步獲得更高的檢測精度。

節點的移動性及鏈路質量的不穩定性使無人機網絡的拓撲結構動態變化,采用傳統的入侵檢測方法存在無法捕獲網絡空間動態特征的問題。針對該問題,本文使用深度學習方法提出了一種入侵檢測方法——基于注意力機制的時空圖卷積網絡(Attention-based Spatio-Temporal Graph Convolutional Network,ATGCN),引入圖數據結構來描述網絡的空間特征,通過構造時空圖卷積網絡捕獲無人機網絡的時空演變特征,引入注意力機制提升模型分類效果。在多個數據集上的實驗表明,ATGCN相比于其他方法具有更高的檢測準確率和更低的誤報率,并且在通信質量較差或噪聲干擾的網絡環境下,仍然具有較好的適應性。

1 相關工作

圖是對實際應用中復雜多變的通信網絡的抽象描述,由網絡拓撲結構特征和網絡節點特征的數據信息組成,實現網絡特征的直觀數學表達。

圖卷積網絡(Graph Convolutional Network,GCN)是一種能夠對圖數據進行深度學習的方法,其將卷積運算從傳統數據推廣到了圖數據,并被證明可以用于網絡節點分類和入侵檢測[17]。圖卷積網絡將拓撲結構和節點特征信息作為輸入,通過堆疊多層線性單元和非線性激活函數來學習節點深層特征,其核心思想是:將節點之間的關系轉換為圖的鄰接矩陣,通過聚合鄰居結點的信息來提取空間特征。Zheng和Li[18]使用圖神經網絡來提取網絡的拓撲結構和節點屬性特征,在得到的圖表示向量上運行異常檢測算法,判斷網絡是否異常,證明了提取圖的演變特征在圖網絡的節點分類任務上具有明顯的提升效果。Hsu[19]通過圖卷積網絡獲取空間特征,結合變分遞歸神經網絡研究圖時間序列上的異常檢測問題,在傳感器數據和交通流量數據的實驗上證明了模型的檢測能力。

受文獻[20]的影響,本文使用圖卷積網絡建模獲取無人機網絡的空間特征,結合門控遞歸單元(Gated Recurrent Unit,GRU)組成時空圖卷積網絡來挖掘深層的時空演變特征,從而更準確地描述無人機網絡。

2 問題定義

在實際場景中,無人機網絡拓撲結構會隨著時間的推移而變化。例如,由于通信質量或者網絡攻擊而導致的鏈路故障,因事故或人為因素而導致的無人機故障。因此,將無人機網絡建模為一個隨時間變化的動態圖,該圖由一段時間內的一系列圖快照(Snapshot)組成,如圖1所示。

圖1 無人機網絡時空結構Fig.1 Spatio-temporal structure of UAV network

圖的節點對應無人機網絡的通信節點(無人機、傳感器),一個邊緣代表一條通信鏈路。

定義1用G描述網絡的拓撲結構,動態網絡可以定義為一系列圖快照G={G1,G2,…,Gs},Gt={V,Et,At},V={V1,V2,…,VN}表示網絡中的節點,N為節點的數量,Et為邊集,鄰接矩陣At用于表示節點之間的連接,At中的元素0和1分別表示節點之間是否連接。

定義2用X∈Rn×d描述特征矩陣,n表示節點數,d為每個節點的特征維度。將網絡上的時間序列觀測值視為網絡中節點的屬性特征,節點屬性特征可以是任何流量的相關信息,如傳輸速率、接收速率、發送消息數目、接收消息數目等。

復雜的時間依賴性和動態拓撲構成了巨大的挑戰。一方面,對節點的觀測顯示出非線性的時間動態性,如不同的時間段內網絡流量的峰值變化或者黑客攻擊發起的時間范圍。另一方面,節點之間復雜的空間依賴性,每個節點都受到相鄰節點的強烈影響。拓撲結構的演變可能導致節點上觀測值的突然且劇烈的變化,如節點鏈路突然中斷的情況下,節點接收的數據包突然下降。

本文的入侵檢測目標是:充分利用一段時間內的拓撲結構信息和節點屬性特征信息,挖掘節點之間隱含的時空特征信息和時空依賴性,最終用來對節點進行分類。

3 無人機網絡入侵檢測模型

本文的網絡入侵檢測模型框架如圖2所示。為了建模拓撲關系和時空依賴性,將圖快照中的節點相關性和節點屬性特征的變化視為時間內關系。首先,通過圖卷積網絡對網絡中節點的空間依賴性進行建模,獲得空間特征;然后,將含有空間特征的歷史時間序列信息輸入GRU中,通過單元間的信息傳遞捕獲時間特征,從而獲得無人機網絡的時空演變特征,基于注意力機制對獲得的特征賦予不同的權重,提取與入侵檢測最相關的特征信息;最后,輸入SVM分類器得到檢測結果。

圖2 無人機網絡入侵檢測框架Fig.2 UAV network intrusion detection framework

3.1 基于圖卷積網絡的空間特征提取

考慮某個時間上的空間圖,圖的拓撲結構和節點特征分別用鄰接矩陣A∈Rn×n和特征矩陣X∈Rn×d表示。在數學上,圖卷積網絡將卷積的運算擴展到譜域中的網絡數據[17],并通過譜卷積函數學習分層地潛在表示。圖卷積網絡的圖卷積運算可以簡單地定義為

式中:H(l)為卷積層l層的輸入;H(l+1)為卷積層之后的輸出;W(l)為在神經網絡中第l層需要訓練的權重矩陣。

圖卷積網絡的每一層都可以用函數f表示:

本文使用Relu函數作為激活函數來提取圖結構數據的非線性特征,可以避免梯度消失問題。圖卷積網絡的每一個卷積層僅處理一階鄰域信息,因此通過疊加若干卷積層可以有效地捕獲多階鄰域(多跳)的信息傳遞[17],從而捕獲節點間的空間關聯特征??紤]到通信節點的計算能力有限,卷積層設置不宜過多,本文設置2個卷積層來構建圖卷積網絡,其時間復雜度為O(EdHF),E為邊數,d為特征維度,H為中間層維度,F為輸出層維度。兩層圖卷積網絡堆疊起來獲得兩跳范圍內鄰居特征的匯合,從而捕獲空間依賴性,節點屬性特征X作為第一層的輸入,相當于H(0),輸出Z不僅編碼每個節點的特征信息,還涉及順序節點鄰近信息。

對于動態圖任務考慮時間t,圖卷積網絡單元輸入隨時間變化的鄰接矩陣At和特征矩陣Xt,輸出Gt:

3.2 基于GRU的時間特征提取

通常用于處理時間序列數據的神經網絡模型是遞歸神經網絡,但是由于梯度消失和梯度爆炸等缺陷,傳統的遞歸神經網絡對長期預測具有局限性[15],LSTM模 型 和GRU模 型[21]是 遞 歸 神 經網絡的變體,并且已被證明可以解決上述問題。LSTM和GRU的基本原理大致相同,都使用門控機制來記憶盡可能多的長期信息,然而LSTM結構復雜,所需訓練時間較長,而GRU模型具有相對簡單的結構、較少的參數和較快的訓練速度。因此,本文選擇GRU模型從圖卷積網絡輸出中獲得時間依賴性。

GRU的結構去除了單元狀態,而使用隱藏狀態來傳輸信息,如圖3所示。

圖3 GRU模型Fig.3 GRU model

GRU模型只有2個門結構,分別為更新門zt和重置門rt。更新門的作用類似于LSTM中的遺忘門和輸入門,有助于捕捉時間序列里的長期依賴關系,使模型可以快速學習數據的新特征,實時更新調整網絡,避免因流數據概念漂移問題導致的模型預測不準確。重置門用來丟棄與預測無關的歷史信息,重置門越小,前一狀態的信息被寫入的越少,有助于捕捉短期依賴關系。

式中:Gt表示圖卷積網絡的輸出,也是GRU網絡的輸入;σ表示sigmoid函數;ht-1表示GRU模型中時刻t-1的輸出;ht表示時刻t的輸出;W為訓練過程中的權重參數;GRU通過將隱藏狀態ht-1和當前時刻t的節點及空間特征信息Gt作為輸入,得到時刻t的節點狀態ht。

因此,在捕獲當前時刻節點及空間特征信息的同時,模型仍保留著歷史信息,通過模型的學習從而捕獲拓撲結構與節點屬性特征在時間維度的特征信息及演變規律。至此,由圖卷積網絡和GRU組成的時空圖卷積網絡獲得了網絡拓撲結構和節點屬性的時空演變特征,當無人機網絡遭受網絡攻擊時,其通信流量行為也會發生較大變化,從而根據空間演變特性和節點屬性特征來判斷無人機網絡是否遭受入侵。

3.3 注意力機制

注意力機制類似于人類的視覺機制,從眾多信息中選擇與目標最相關的信息,最初應用于圖像識別和機器翻譯。利用注意力機制可以更加精確地捕獲與網絡入侵檢測最相關的時空特征,以減輕錯誤或者冗余特征信息帶來的負面影響,并提高入侵檢測模型分類性能[22]。本文使用注意力機制對時空圖卷積網絡的輸出向量賦予不同的權重,將GRU層輸出的向量集合表示為H=[h1,h2,…,ht],注意力機制將產生加權的輸出表示x:

式中:M為經過激活函數tanh后的輸出;Wm為要學習的參數矩陣。權重矩陣U=[U1,U2,…,Ut]代表了不同時間的時空特征的重要程度,所有權重之和為1,而權重越大,注意力越強,對于入侵檢測越重要。

3.4 SVM分類器

大多數深度學習分類模型使用softmax激活函數作為神經網絡的最后一層進行預測,并最小化交叉熵損失函數,輸出所屬類別的概率。

式中:si為分類器輸出;xk為分類器輸入;Wki為連接倒數第二層與softmax層的權重。而本文的輸出層使用分類性能更優、收斂速度更快的L2-SVM分類函數來代替常用的softmax函數,SVM的核函數選擇通常有線性核、多項式核、高斯核、sigmoid核幾種情況,在數據集上進行實驗對比,發現線性核、多項式核和高斯核的選擇對最終的分類準確率幾乎沒有影響,而其中線性核由于參數少速度更快,核函數最終選擇線性核。使用Hinge Loss作為目標函數:

式中:wTxi+bi表示整個分類模型最終的輸出,xi為輸入向量,bi為神經元的偏置參數;ci為i的真實類別;w為訓練權重系數;C為懲罰系數,表示對誤差的寬容度,懲罰系數過大會導致過擬合,模型泛化能力差,懲罰系數過小會導致欠擬合,模型錯誤分類數目增多,本文通過交叉驗證的方法確定合適的懲罰系數值。

決策函數為每個類生成一個得分向量,取得分最大值作為最終的預測類別class:

式中:決策函數sign為符號函數,其形式為

3.5 模型參數

本文使用交叉驗證法調整超參數,對圖卷積網絡卷積層數目K嘗試了{1,2,3}3種值,發現K=2時模型的速度與準確率取得了最優平衡。圖卷積層中的卷積核個數為32,GRU中的隱藏單元數為32,使用小批量梯度下降(Mini-Batch Gradient Descent)誤差反向傳播算法更新網絡中的權值,為了在時空圖卷積網絡的反向傳播過程中加快算法的收斂速度,使用對內存需求較小的自適應矩估計(Adam)為優化算法。每次迭代的batch size為256,學習率設置為0.001,訓練輪次為300輪,設置dropout為0.3來防止模型過擬合。

4 實驗驗證

4.1 數 據 集

使用多種基準數據集進行實驗,由于每個數據集都會有不同的模式和特征,如網絡拓撲結構、流量變化、攻擊方式等,使用多種數據集可以綜合驗證模型的適應性。本文結合經典的NSL-KDD數據集[23]、加拿大網絡安全研究所提供的CICIDS2017數據集[24]及無線網絡的WSN-DS數據集[25]進行模型的訓練和測試。表1為數據集的相關信息。

表1 數據集相關信息Table 1 Relevant information of datasets

為了更好地模擬無人機網絡,參照文獻[26]的方法進行無人機網絡的仿真實驗,本文使用EXata軟件模擬一個1 000 m×1 000 m的動態無人機網絡環境,50個移動節點分布其中。詳細仿真參數設置如表2所示。

表2 仿真參數Table 2 Simulation parameters

考慮到一般無人機的續航時間,本文設置仿真時間為900 s,其中網絡攻擊時間設置為30 s。實驗共進行40次模擬,獲得總時長36 000 s的原始流量數據。對多個無人機網絡節點連續采樣,采樣間隔5 s,每次采樣后標記統計數據類型為:正常、竊聽攻擊、分布式拒絕服務(DDoS)攻擊、黑洞攻擊。最終經過數據預處理后得到無人機網絡的統計數據集UAV_set,數據集具體情況如表3所示。

表3 UAV_set數據集相關信息Table 3 Relevant information of UAV_set dataset

4.2 數據預處理

為了提高算法的精度、加快模型的收斂速度,對數據集進行預處理。

1)檢測數據集中的缺失值(Nan),由于對比的傳統機器學習算法對缺失值比較敏感,將空值替換為所屬特征列的均值。

2)將處理后的數據集劃分為70%的訓練集、20%的測試集和10%的驗證集。

3)對數據集的類別標簽進行編碼。

4)對數據集特征進行標準化處理,避免特征的尺度不同對模型訓練速度和準確率造成的不利影響。

4.3 實驗環境及評價指標

本文的實驗平臺操作系統為Windows10,處理器為Nvidia 1060 GPU,使用機器學習框架TensorFlow實現所有算法。本文采用準確率Accuracy和誤報率FAR作為評估指標。

式中:TP表示被正確分類的正樣本數目;FN表示被錯誤分類的正樣本數目;FP表示被錯誤分類為正樣本的負樣本數目;TN表示正確分類的負樣本數目。

4.4 方法比較

將ATGCN方法與已有的7種基準方法進行比較:

1)孤立森林(IF)[27]:任意選擇一個特征,并通過隨機選擇該特征的最大值和最小值之間的區間值來檢測異常。

2)局部離群因子(LOF)[3]:通過測量給定樣本附近的局部密度偏差來計算異常分數,局部密度偏差遠小于其鄰居的樣本被歸類為異常。

3)隨機森林(RF)[28]:通過組合決策樹有助于解決數據不平衡時的檢測問題。

4)MCD[29]:通過計算經驗協方差來檢測異常點,一種魯棒性很強的位置和分布估計方法。

5)OCSVM[30]:通過創建一個復雜的邊界來描述特征空間中的正常數據。如果新樣本超出決策邊界,則將其分類為異常。

6)VAE[31]:基于變分自動編碼器構建正常數據的生成模型,將重構誤差大于閾值的數據視為異常。

7)DAGMM[10]:利用深層自動編碼器為每個輸入數據點生成低維表示和重構誤差,并將其進一步輸入高斯混合模型(GMM),通過聯合優化的方法減少模型的重建誤差。

對于基準方法,分別按照文獻中描述的參數設置。所有方法分別使用4個數據集重復獨立運行20次,并計算檢測結果的準確率和誤報率的平均值,結果如表4所示??梢悦黠@看出,ATGCN方法和DAGMM方法的準確率均優于其他方法,平均穩定在0.96以上,ATGCN方法和VAE方法的誤報率明顯小于其他方法,平均穩定在0.027以下。證明了本文方法具有較高的檢測準確率和較低的誤報率,以及ATGCN、VAE和DAGMM這些深度學習方法在網絡入侵檢測中的有效性。

表4 不同方法的實驗結果比較Table 4 Comparison of experimental results among different methods

4.5 性能驗證

為了模擬無人機網絡環境傳輸穩定性較差、丟包率較高的特點,對UAV_set數據集的測試集進行處理,按照0.01~0.03的丟包率,對測試集中全體樣本的數據包進行隨機剔除。圖4為ATGCN方法與檢測效果較好的VAE方法和DAGMM方法在不同丟包率環境下的檢測準確率??梢钥闯?,本文ATGCN方法準確率穩定在0.75以上,優于VAE方法和DAGMM方法,證明了ATGCN方法在傳輸鏈路不可靠的網絡環境中具有良好的適應性。

圖4 不同方法在不同丟包率環境下的性能對比Fig.4 Performance changes of different methods with different packet loss rates

無人機的傳感器數據通常包含3種噪聲[32],在無線網絡WSN-DS數據集的測試集中添加這3種類型噪聲,并改變噪聲比例來驗證方法的魯棒性。通過圖5可以看出,在噪聲影響下ATGCN方法檢測準確率相較于其他方法最為穩定,保持在0.7以上,而VAE方法受噪聲影響最為明顯,準確率最差低于0.3,DAGMM方法在噪聲比例達到0.4時,準確率也只有0.4。證明了本文方法相比其他方法具有良好的抗噪聲能力和魯棒性。

圖5 不同方法在不同噪聲比例下的性能對比Fig.5 Performance changes of different methods with different noise ratios

4.6 方法設計對檢測效果的影響

為進一步研究時空特征的提取和注意力機制對檢測模型分類效果的影響,將ATGCN與以下變體進行比較:

1)AGRU:去除圖卷積網絡,輸入時間序列下的節點屬性特征。模型的預測只能從節點的歷史數據中推斷出來,不能獲取拓撲結構的空間演變特征。

2)TGCN:僅去除注意力機制,輸入時間序列下的網絡拓撲結構和節點屬性特征,模型不能精確捕獲與網絡入侵檢測最相關的時空特征。

在NSL-KDD、CICIDS2017和WSN-DS這3個數據集的測試集中隨機選取10 000個樣本進行模型的對比實驗,將模型最后一層輸出的異常值得分作為縱坐標,樣本數目為橫坐標,使用閾值來劃分正常類和異常類,類別的標簽為實際標簽,模型檢測效果對比如圖6所示??梢悦黠@看出,AGRU和TGCN中的一些異常值得分更接近于正常值,錯誤分類樣本數較多;而ATGCN更能將異常值與正常值區分開來,相比AGRU和TGCN的錯誤分類樣本數較少,只有14例,表明了時空圖卷積網絡所提取到的時空演變特征及注意力機制的設計對模型檢測效果均有明顯的提升。

圖6 方法設計對檢測效果的影響Fig.6 Effect of method design on detection result

5 結 論

1)針對無人機網絡具有拓撲高度動態、網絡連接不穩定的特點,設計時空圖卷積網絡來捕獲網絡的時空演變特征,解決了現有方法在入侵檢測問題上時空特征提取不足的問題。

2)將無人機網絡的入侵檢測問題建模為圖網絡的節點分類問題,將時間序列觀測值和動態拓撲圖都納入入侵檢測模型中,證明了提取時空演變特征和引入注意力機制對模型分類效果的提升。

3)在多個數據集上的實驗表明,本文方法的檢測準確率平均為0.99,而誤報率平均為0.01,檢測效果優于傳統的入侵檢測方法,并且驗證了時空演變特征的提取和注意力機制的設計對模型檢測效果有明顯的提升。模擬丟包率高和噪聲干擾的無人機網絡環境,ATGCN依然具有良好的適應性。

猜你喜歡
準確率卷積節點
基于全卷積神經網絡的豬背膘厚快速準確測定
基于FPGA的卷積神經網絡加速優化方法
基于RSSI測距的最大似然估計的節點定位算法
基于圖像處理與卷積神經網絡的零件識別
分區域的樹型多鏈的無線傳感器網絡路由算法
一種基于能量和區域密度的LEACH算法的改進
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
多層螺旋CT技術診斷急性闌尾炎的效果及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
頸椎病患者使用X線平片和CT影像診斷的臨床準確率比照觀察
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合