一员辩、文章簡介
名稱:《Multi-Scale LSTM Model for BGP Anomaly Classification》
時間:2018年
期刊:2018 Transactions on Services Computing?
二往堡、論文總結(jié)
2.1 論文目的
????提出了一種新穎的多尺度長期短期記憶(MSLSTM)模型來捕獲BGP流量中的異常行為妥色。在模型中爆侣,使用離散小波變換來獲取多個尺度的時間信息,并設(shè)計了一個分層的兩層LSTM體系結(jié)構(gòu)搔涝,其中第一層學(xué)習(xí)不同時間尺度的注意力以生成集成的歷史表示呢灶,第二層在學(xué)習(xí)的表示中捕獲時間依賴性。
2.2 寫作動機(jī)
????LSTM模型已被提出來識別異常BGP流量见芹。然而剂娄,單層架構(gòu)無法利用不同時間分辨率上的依賴信息。序列中聚合觀測值的時間間隔長度(即序列中的時間尺度)是影響模型性能的關(guān)鍵因素玄呛,并且流量模式在不同的時間范圍會表現(xiàn)出不同的行為阅懦。本文提出了一種新穎的多尺度LSTM模型(MSLSTM),以充分表征不同時標(biāo)的時間依賴性徘铝。在MSLSTM中耳胎,利用離散小波變換來獲取多個尺度的時間信息惯吕,并開發(fā)了一個分層的兩層LSTM體系結(jié)構(gòu),其中第一層學(xué)習(xí)不同時間尺度的注意力以生成一個集成的歷史表示怕午,第二層層捕獲表示中的長期和短期時間依賴性混埠。
2.3 貢獻(xiàn)和創(chuàng)新點
貢獻(xiàn):
????首先,分析了網(wǎng)絡(luò)流量在多尺度方面的時間特征诗轻,證明了網(wǎng)絡(luò)流量在不同的時間尺度上表現(xiàn)出各種不同的模式钳宪。 此外,離散小波變換除了用于表征流量行為的原始特征外扳炬,還用于生成大量信息吏颖。
????其次,設(shè)計了分層注意力LSTM模型恨樟,以從豐富的信息中學(xué)習(xí)多種尺度的表示半醉。 在提出的模型中,同時考慮了多個尺度上的信息劝术,并且在內(nèi)部使用注意力機(jī)制學(xué)習(xí)了每個不同時間尺度缩多。 隨后生成一個集成表示以對長期和短期時間依賴性進(jìn)行建模。
????第三养晋,使用來自實際BGP流量的數(shù)據(jù)集評估所提出模型的性能衬吆。 為了驗證MSLSTM的可行性,收集了典型BGP異常事件的網(wǎng)絡(luò)流量绳泉。 對于每個事件逊抡,將提取聚合的特征,并使用滑動窗口將原始實例轉(zhuǎn)換為多元時間序列零酪。
創(chuàng)新:
? ? 使用小波變換來分解原始流量冒嫡,獲取流量多尺度的時間信息。然后將注意力機(jī)制和LSTM模型結(jié)合分析流量四苇。
2.4 現(xiàn)實思路
輸入:前n個序列{}孝凌,其中是輸入序列的維度,是時間序列;簡言之表示輸入月腋,其中;
輸出:使用訓(xùn)練好的分類模型對流量{}進(jìn)行分類蟀架。
2.4.1 預(yù)處理
????假設(shè)數(shù)據(jù)集是在給定的時隙中以個點收集的數(shù)據(jù)流,其中每個元素是維向量罗售,則首先使用重疊的滑動時間窗口從原始數(shù)據(jù)集中生成一系列多元序列辜窑,以表征時間序列實例之間的關(guān)系。每個序列都是一個具有窗口大小周期的多元時間序列寨躁。如果窗口的大小為穆碎,則的狀態(tài)與序列{}相關(guān)方面。這樣,從訓(xùn)練數(shù)據(jù)中獲得了一個新的序列數(shù)據(jù)集色徘,每個序列的標(biāo)簽相當(dāng)于最頻繁元素的類別恭金。
2.4.2?多尺度時間分析
????大比例尺可以顯示序列的整體趨勢,而小比例尺可以提供有關(guān)詳細(xì)信息的更多信息褂策。因此横腿,在處理流量序列以達(dá)到最佳性能時有必要考慮規(guī)模。
2.4.3?離散小波變換
????離散小波變換(DWT)將信號分解為一組基本函數(shù)斤寂,以獲得多尺度時間序列耿焊。 這些基本函數(shù)稱為小波,它們是通過擴(kuò)展和移位從單個原型小波生成的:
????其中遍搞,a是縮放參數(shù)罗侯,b是移位參數(shù)。 在這里溪猿,進(jìn)行多級離散小波變換以利用和揭示流量序列中時間動態(tài)的縮放特性钩杰。 對于給定的序列 = {},令 = 翎冲,離散小波變換的分解將原始序列分解為近似部分垂睬,該近似值表示比原始信號更高級別的粗略信息 ,以及細(xì)節(jié)部分抗悍,其中提供了有關(guān)高頻的信息。 該過程將繼續(xù)以較低的采樣率分解近似值钳枕。 在每個級別上缴渊,近似分解如下:
????其中和分別是近似系數(shù)和細(xì)節(jié)系數(shù)。 通過將原始信號與低通濾波器卷積獲得近似系數(shù)鱼炒,而細(xì)節(jié)系數(shù)由高通濾波器獲得衔沼。 最后,級的小波分解生成以下系數(shù)的列表昔瞧。 尺度為的信號重構(gòu)計算如下:
????數(shù)字k表示將進(jìn)行分解的級別的總數(shù)指蚁,而是重構(gòu)函數(shù)自晰。對于長度為的時間序列凝化,DWT最多由級組成,因此搓劫。上圖描述了DWT的兩級層次結(jié)構(gòu)瞧哟。不同級別的近似部分和細(xì)節(jié)部分從各個方面提供了有關(guān)流量動態(tài)的大量信息,其中較高級別的近似值表示全局趨勢行為枪向,并且每個級別細(xì)節(jié)部分都可以表征更多的本地信息勤揩。對于不同尺度級別的重建,逆DWT通過在級別對兩組系數(shù)進(jìn)行上采樣來合成秘蛔,然后將零插入到細(xì)節(jié)系數(shù)中陨亡,并使用重建濾波器對上采樣結(jié)果進(jìn)行卷積。 DWT以這種方式提取多尺度特征得到更多信息深员,進(jìn)一步將其用于測量每個尺度并建立分類模型负蠕。
2.4.4 注意力機(jī)制
????注意機(jī)制起源于計算神經(jīng)科學(xué)。例如辨液,視覺注意力集中在視覺輸入的特定部分以計算適當(dāng)?shù)捻憫?yīng)虐急。該原理對神經(jīng)計算有很大的影響,類似的思想已應(yīng)用于許多深度學(xué)習(xí)任務(wù)滔迈,包括語音識別止吁,翻譯,推理和對象的視覺識別燎悍。在深度學(xué)習(xí)中敬惦,首先在《Neural Machine Translation by Jointly Learning to Align and Translate》中提出了注意力機(jī)制,通過使用基于注意力的編解碼器在源句子中選擇參考詞谈山。注意機(jī)制幫助解碼器部分基于所有輸入狀態(tài)(不僅僅是最后一個狀態(tài))的加權(quán)組合來輸出字俄删。
? ??如下圖所示,注意力模型將個狀態(tài)和上下文作為輸入鸽粉,接下來計算具有層的聚合帚戳,并且值取決于上下文向量和的匹配程度如何。該公式的計算公式為:儡首。使用注意力機(jī)制片任,不必將全部輸入編碼為一個固定長度的矢量,并且使用softmax函數(shù)蔬胯,將投影到學(xué)習(xí)的方向上:笔宿。輸出是所有輸入狀態(tài)的加權(quán)匯總:犁钟,其中權(quán)重的值由和的關(guān)聯(lián)重要性確定棱诱。
2.4.5 具體方法
????如圖3所示涝动,流量數(shù)據(jù)的行為在不同的時間尺度上表現(xiàn)出不同的模式迈勋。與僅以最細(xì)粒度從流量序列中提取特征相比,更大范圍的信息可以提供附加特征來對序列的行為進(jìn)行建模醋粟。另外靡菇,時間尺度之間的關(guān)系也存在。例如米愿,就時間序列而言厦凤,較大的尺度是從較小的尺度演變而來的。為了開發(fā)一種充分利用多尺度信息的模型育苟,提出了一個分層的兩層LSTM模型较鼓。在第一層中,在每個步驟中學(xué)習(xí)來自不同時間尺度的隱藏特征违柏,而在第二層中博烂,模型學(xué)習(xí)序列中的時間依存關(guān)系。通過離散小波變換的分解和重構(gòu)漱竖,生成具有多種時間分辨率的序列禽篱。在獲得基于DWT的多尺度時間序列后,由于傳統(tǒng)遞歸神經(jīng)網(wǎng)絡(luò)存在梯度消失問題馍惹,采用LSTM網(wǎng)絡(luò)學(xué)習(xí)序列內(nèi)的長期和短期依賴性躺率。我們的工作與文獻(xiàn)工作之間的主要區(qū)別在于,我們同時使用多尺度信息万矾,并且提出了一種注意力模型悼吱,通過將這些信息集成到LSTM中來自動了解每個尺度的重要性,即良狈,提出的的MSLSTM使用多尺度時間序列進(jìn)行訓(xùn)練舆绎,并從每個不同尺度層學(xué)習(xí)組合特征。 MSLSTM的詳細(xì)結(jié)構(gòu)介紹如下:
????學(xué)習(xí)多尺度時間關(guān)聯(lián)的過程是:給定輸入數(shù)據(jù)尸执,多尺度時間序列{}是通過以最大級別分解和重構(gòu)DWT獲得的,其中是時間步長缓醋,而表示在時間的第級輸入如失。在MSLSTM的第一層中,令為存儲單元的輸入值送粱,為生成的隱藏狀態(tài)的列表褪贵,其中存儲單元的激活函數(shù)和隱藏特征也可以在圖4中得出。 如以下等式:
? ??是權(quán)重矩陣抗俄,而是偏差向量偎快。 是隱藏層的sigmoid函數(shù),是函數(shù)洽胶,是按元素生成晒夹。 MSLSTM的概述結(jié)構(gòu)如圖5所示。
? ??對于給定的時間姊氓,使用公式(4)-(9)基于序列{}獲得不同時間尺度的特征丐怯,而是時間處第級的隱藏特征。并非所有尺度都能等同地發(fā)揮作用翔横,因此读跷,每個序列的輸出使用等式(10)-(12)生成不同時間尺度的集成信息。 通過計算和的相似度來衡量每個尺度的注意力禾唁,其中效览,是通過完全連接MLP層的隱藏特征,而是獲得標(biāo)準(zhǔn)化權(quán)重的時間尺度上下文向量荡短。 被初始化為隨機(jī)向量丐枉,并將在訓(xùn)練過程中共同學(xué)習(xí)。
積分狀態(tài)的計算如下:
? ?可以看作是在時間整合了所有時間尺度的高級信息掘托,并且將是第二層LSTM單元的輸入辱士,以捕獲具有以下等式的時間層面的關(guān)聯(lián) :
????等式(13)的計算與等式(4)-(8)相同。是第二層的參數(shù)向量听绳。 對于序列的最終輸出類別,采用softmax函數(shù)來預(yù)測其標(biāo)簽贴妻。 我們使用的損失函數(shù)為sigmoid交叉熵切油,如下所示:
? ????是類的數(shù)量,是真實的標(biāo)簽名惩,而是預(yù)測標(biāo)簽澎胡。
? ? ????我們將先前工作中建議的MSLSTM模型與單層LSTM以及圖6中的堆疊LSTM架構(gòu)進(jìn)行了比較。圖6(a)和圖6(c)是單層LSTM弯予,其中圖6(a)是最簡單的架構(gòu)戚宦,圖6 (c)計算時間注意力; 圖6(b)是堆疊的LSTM锈嫩,它僅復(fù)制上層的LSTM單元以獲得多尺度信息受楼,而在圖6(d)中,我們的模型通過計算多尺度注意力來學(xué)習(xí)每個時間步長上多個尺度的綜合特征呼寸。
2.5 實驗
2.5.1? 數(shù)據(jù)集
????我們從歐洲RIPE收集了四個BGP安全事件的流量艳汽,以訓(xùn)練我們的分類模型。 BGP協(xié)議通常會生成四種消息:打開对雪,更新河狐,保持活動和通知。 在這項工作中瑟捣,實驗是基于BGP更新消息進(jìn)行的馋艺,該消息是交換公告或轉(zhuǎn)發(fā)撤消消息,例如網(wǎng)絡(luò)層可達(dá)性信息(NLRI)迈套。 對于每個事件丈钙,都有幾個小時的異常記錄。 表1列出了收集的BGP數(shù)據(jù)集的描述交汤。
我們從RIPE收集的BGP更新數(shù)據(jù)包源自AS 1853、12793、13237(rrc05芙扎,維也納)和AS 513(rrc04星岗,日內(nèi)瓦)。我們從網(wǎng)絡(luò)數(shù)據(jù)流中提取動態(tài)流量戒洼,并將原始的Multi-RoutingTable(MRT)格式轉(zhuǎn)換為ASCII俏橘。表2給出了ASCII格式的BGP更新消息的示例。隨后圈浇,提取了半分鐘間隔內(nèi)更新流量的統(tǒng)計信息以獲得原始特征寥掐,如表3所示。我們計算每個時隙中的公告磷蜀,退出召耘,內(nèi)部網(wǎng)關(guān)協(xié)議(IGP)和外部網(wǎng)關(guān)協(xié)議(EGP)數(shù)據(jù)包以及不完整的網(wǎng)關(guān)數(shù)據(jù)包的數(shù)量。還提取BGP報文中AS路徑屬性的統(tǒng)計信息褐隆,例如AS對等體的最大污它,唯一和平均數(shù)目。另外庶弃,將AS路徑之間的編輯距離值計算為將一個AS路徑列表轉(zhuǎn)到另一個AS路徑列表所需的最少操作數(shù)衫贬,其中操作包括插入,刪除和替換歇攻。最后固惯,我們從網(wǎng)絡(luò)流量中總共獲得了35個特征,用于訓(xùn)練和測試分類任務(wù)缴守。如圖7所示葬毫,對于每個異常事件,我們將通告數(shù)量作為一個功能進(jìn)行計算斧散,并將原始MRT格式轉(zhuǎn)換為實例值的集合供常,其中突發(fā)性說明了異常。
2.5.2? Baselines
????為了進(jìn)行比較箍镜,選擇了傳統(tǒng)的機(jī)器學(xué)習(xí)算法以及神經(jīng)網(wǎng)絡(luò)模型作為異常分類實驗的Baselins源祈。 分別如下:
(1)SVM和NB:《Machine learning models for classification of BGP anomalies》支持向量機(jī)(SVM)和《Feature selection for classification of BGP anomalies using Bayesian models》樸素貝葉斯(NB)分類器是分類任務(wù)中著名的監(jiān)督學(xué)習(xí)模型;
(2)SVMF和SVMW: SVMF和SVMW是SVM的變體色迂。 他們使用基于Fisher-score和Wrapper的特征選擇方法香缺;
(3)1NN.:1NN方法使用Euclid距離來計算差異,這是時間序列分類中的常用Baseline歇僧;
(4)DTW: 動態(tài)時間規(guī)整(Dynamic Time Warping图张,DTW)與1NN相結(jié)合《Extracting optimal performance from dynamic time warping》是時間序列分類中的一種眾所周知的Baseline锋拖;
(5)DT, RF, Ada.Boost:這是三種基于樹的方法,其中隨機(jī)森林(RF)和Ada.Boost都是用于分類的最先進(jìn)的集成模型祸轮。 在決策樹(DT)中兽埃,我們按照[3]中的指示刪除了已構(gòu)建樹中的選定要素;
(6)MLP:多層感知(MLP)是使用反向傳播的三層前饋模型适袜;
(7)RNN and LSTM:RNN和LSTM都是具有一層隱藏層的遞歸神經(jīng)網(wǎng)絡(luò)柄错;
(8)LSTM-2, LSTM-3, LSTM-4, LSTM-5:這些模型堆疊了多層LSTM結(jié)構(gòu),如《Long short term memory networks for anomaly detection in time series》中所述苦酱,用于異常分類售貌;
(9)LSTM-A: LSTM-A是使用注意力機(jī)制的一層LSTM網(wǎng)絡(luò)。
2.5.3? 訓(xùn)練和實施
? 每個數(shù)據(jù)集被分為訓(xùn)練疫萤、驗證和測試颂跨,比率分別為60%、10%和30%给僵。對于每個數(shù)據(jù)集毫捣,從{}范圍中選擇隱藏單位的數(shù)量蔓同。 采用模擬退火策略(simulated annealing strategy)來選擇最佳學(xué)習(xí)率,其中在驗證階段將提前停止設(shè)置為20蹲诀。 最大epoch數(shù)設(shè)置為100斑粱。Batch size設(shè)置為200,從離散小波變換獲得的最大級別數(shù)設(shè)置為10脯爪,其中我們使用haar小波作為默認(rèn)小波類型则北。
????所有方法都是使用python實現(xiàn)的,其中傳統(tǒng)的機(jī)器學(xué)習(xí)模型基于scikitlearn軟件包痕慢,而神經(jīng)網(wǎng)絡(luò)則使用tensorflow 實現(xiàn)尚揣。 為了分解和重建DWT,使用PyWavelet作為工具包掖举。 MSLSTM所有實現(xiàn)都可以在線找到快骗。
2.5.4?評估指標(biāo)
????針對二進(jìn)制分類評估指標(biāo):Accuracy, Precision和Fmeasure,其中正類是異常塔次,負(fù)類則代表正常數(shù)據(jù)記錄方篮。Accuracy 測量兩類的整體表現(xiàn),Fmeasure則同時評估正類別的準(zhǔn)確性(precision)和召回率(recall)励负。對于不平衡情況藕溅,將AUC(Area Under Curve,曲線下面積)用作評估指標(biāo)继榆,其中曲線是ROC(Receiver Operating Characteristic巾表,接收者操作特征曲線)曲線汁掠,該曲線x軸為假陽性率與y軸真實陽性率。?AUC表示了兩類預(yù)測分布之間的差異攒发。AUC越接近1调塌,分類效果就越好。指標(biāo)公式如下:
2.5.5 二分類
????為了證明MSLSTM的有效性惠猿,首先對四個均衡數(shù)據(jù)集進(jìn)行了二元分類,然后將定性結(jié)果與Baseline方法進(jìn)行比較负间。如表5所示偶妖,由于結(jié)果不僅僅基于當(dāng)前狀態(tài),因此順序模型(RNN和LSTM)顯然比傳統(tǒng)算法具有更好的性能政溃。順序模型可以通過考慮歷史信息來揭示流量的時間性質(zhì)趾访,并使決策更加準(zhǔn)確,這也與先前的研究結(jié)論一致董虱。在傳統(tǒng)方法中扼鞋,強(qiáng)分類器SVM以及諸如RF和Ada.Boost之類的集成模型將比弱學(xué)習(xí)者DT和1NN表現(xiàn)更好。另外愤诱,結(jié)合文獻(xiàn)《Feature selection for classification of BGP anomalies using Bayesian models》的結(jié)論證明云头,結(jié)合傳統(tǒng)分類器的特征選擇方法可以有效地提高性能。與vanilla?RNN相比淫半,LSTM網(wǎng)絡(luò)獲得了更好的結(jié)果溃槐,因為LSTM的單元結(jié)構(gòu)可以模擬具有更多門的長期關(guān)系。本文所提出的MSLSTM和堆疊式LSTM的性能優(yōu)于單層LSTM架構(gòu)科吭,這表明集成多尺度流量并考慮其他時間相關(guān)性信息會對分類產(chǎn)生積極影響昏滴。此外,事實證明对人,將一層LSTM與LSTM-A進(jìn)行比較后發(fā)現(xiàn)注意力機(jī)制對于非常有用谣殊。在所有方法中,堆疊式LSTM(LSTM-3)和MSLSTM達(dá)到了最佳性能牺弄,而MSLSTM在幾乎所有情況下均優(yōu)于Baseline姻几,并且大大提高了評估結(jié)果(最多16%)。這表明學(xué)習(xí)多時間尺度的注意力可以提供更可靠的時間信息猖闪,以進(jìn)行更準(zhǔn)確的分類鲜棠。此外,與堆疊模型相比培慌,MSLSTM可獲得更可靠的結(jié)果豁陆,并且層數(shù)會影響堆疊LSTM的性能。合理的解釋是吵护,堆疊LSTM中下一層的輸入只是隱藏表示的前一層盒音,無法對具有適當(dāng)層數(shù)的多尺度特征進(jìn)行建模表鳍。而MSLSTM則從所有標(biāo)尺級別到下一層級都添加注意力機(jī)制來獲取重組特征。在Slammer數(shù)據(jù)集中祥诽,幾乎所有方法都可以完全識別出異常譬圣,這表明這種異常比其他異常更具可分辨性。
????為了說明所提出模型的學(xué)習(xí)特征的質(zhì)量雄坪,我們使用主成分分析(PCA)將它們投影到二維空間中厘熟,以揭示學(xué)習(xí)表示的流形結(jié)構(gòu)。圖8(a)是不使用滑動窗口的Slammer數(shù)據(jù)集原始特征的投影维哈。圖8(b)和圖8(c)分別是標(biāo)準(zhǔn)LSTM和3層LSTM的已知隱藏特征绳姨;圖8(d)是我們的MSLSTM的隱藏特征。在圖8(a)和圖8(b)中阔挠,常規(guī)數(shù)據(jù)和異常之間的決策邊界不是那么可區(qū)分飘庄,在圖8(c)中,大多數(shù)異常點可以與常規(guī)點分開购撼,而在圖8(d)中在異常和常規(guī)實例之間存在清晰的邊界跪削。觀察結(jié)果表明考慮歷史信息的必要性以及從多個尺度學(xué)習(xí)表示的有性。
????為了評估參數(shù)對時間窗口和尺度的影響廓旬,利用離散小波變換的各種滑動窗口大小以及不同的時間尺度來比較考慮多尺度時間信息的影響。圖9說明了在數(shù)據(jù)集上使用不同的比例值和滑動窗口大小的模型的谐腰。小波濾波器為濾波器孕豹,波長為2∈滑動窗口大小的值越大励背,將導(dǎo)致信息越豐富,從而導(dǎo)致“”的上升趨勢明顯砸西。此外叶眉,由于將更多的多樣性和更高的時間粒度集成到了模型中,因此增加規(guī)模級別的數(shù)量將顯著改善性能芹枷。
????在圖10中衅疙,報告了訓(xùn)練集和驗證集的accuracy以及l(fā)oss。選擇標(biāo)準(zhǔn)的一層LSTM鸳慈,堆疊的LSTM和我們提出的模型進(jìn)行比較饱溢。顯然,在驗證集上走芋,MSLSTM和堆疊的LSTM的性能優(yōu)于一層LSTM绩郎。此外潘鲫,單層LSTM的結(jié)果在兩組上都有很大的波動,并且accuracy在90個epochs之后急劇下降肋杖,這表明單層LSTM容易遭受過度擬合溉仑。相比之下,由于訓(xùn)練和驗證曲線均更平滑状植,并且MSLSTM還實現(xiàn)了最高的accuracy和最低的驗證loss.浊竟,因此MSLSTM獲得了更強(qiáng)大的性能。
????選擇異常事件的不同組合作為訓(xùn)練和測試數(shù)據(jù)集的目的津畸,其目標(biāo)是根據(jù)現(xiàn)有類型來評估預(yù)測未知類型的異常的能力逐沙。在實際環(huán)境中,盡管各種異常事件表現(xiàn)出各種行為洼畅,但不同類型的異常仍可以在一定程度上共享公共模式。 四個異常事件的符號表示為1,2,3,4棚赔,其中四個事件的組合和結(jié)果在表6中進(jìn)行了描述帝簇。結(jié)果表明,我們提出的模型針對確定未知異常類型方面在大多數(shù)情況下也優(yōu)于標(biāo)準(zhǔn)LSTM和堆疊LSTM 靠益。?
????除了評估不同數(shù)量的尺度級別的影響外丧肴,還對采用各種類型的小波濾波器函數(shù)和濾波器長度的所提出模型的性能進(jìn)行了測量。 如表7所示胧后,為了比較芋浮,使用了三種長度不同的濾波器。代表過濾器壳快,它是信號流量處理中一種流行的過濾器纸巷,其長度為2。和都是過濾器眶痰,而過濾器長度為2和4瘤旨。是過濾器,其長度為6竖伯。選擇尺度等級的數(shù)量分別為2存哲、3和4,我們使用四個數(shù)據(jù)集的平均結(jié)果七婴。 結(jié)果表明祟偷,小波濾波器的長度會影響性能,較小的濾波器長度性能會更好打厘,而具有相同濾波器長度的不同類型的小波函數(shù)將獲得相同的結(jié)果修肠,并且隨著尺度的增加,和將得到提高婚惫。
????此外氛赐,我們進(jìn)行實驗以比較不同分類模型的誤報率和漏報率魂爪。錯誤警報意味著錯誤地預(yù)測正常流量,而丟失警報則將異常預(yù)測為正常艰管。兩種比率都是網(wǎng)絡(luò)安全性的問題滓侍。我們使用Code Red I數(shù)據(jù)的測試流量將預(yù)測結(jié)果與真實標(biāo)簽進(jìn)行比較。圖11包含八個子圖:(a)繪制真實標(biāo)簽牲芋; (b)以特征選擇的最佳結(jié)果繪制支持向量機(jī)模型的預(yù)測標(biāo)簽撩笆; (c)繪制NB分類器的預(yù)測標(biāo)簽; (d)繪制1NN分類器的預(yù)測結(jié)果缸浦; (e)繪制決策樹的預(yù)測標(biāo)簽夕冲; (f)繪制MLP; (g)分別繪制標(biāo)準(zhǔn)LSTM和(h)繪制MSLSTM裂逐。 MLP歹鱼,LSTM和MSLSTM的最大epoch設(shè)置為100,這意味著所有數(shù)據(jù)實例在模型上運行100次卜高。如圖11(a)所示弥姻,垂直綠線的左側(cè)部分是規(guī)則流量序列,其中標(biāo)簽值為1.0掺涛,右側(cè)部分是異常庭敦,其中真實標(biāo)簽為0。根據(jù)圖11的比較從圖中的(b)到(h)薪缆,我們的MSLSTM模型沒有虛假警報和遺漏警報秧廉,與其余方法相比,這是一個競爭性的改進(jìn)拣帽。 LSTM模型還實現(xiàn)了比其他模型更低的丟失警報率疼电,這意味著將長期的時間依賴性納入考慮將提高識別異常流量的能力。 SVM和兩個順序模型在對常規(guī)流量進(jìn)行分類時達(dá)到了理想的性能诞外。而MLP澜沟,1NN和DT在識別常規(guī)流量和異常方面均表現(xiàn)不佳。通過研究二進(jìn)制分類的實驗結(jié)果峡谊,與傳統(tǒng)方法以及堆疊式LSTM網(wǎng)絡(luò)相比茫虽,MSLSTM有了顯著改進(jìn)。
2.5.6 多分類
????我們還將模型擴(kuò)展到多類分類既们,并且設(shè)計實驗以評估MSLSTM的性能濒析。就多類情況而言,總共有五類啥纸,包括常規(guī)流量和四種不同類型的異常号杏。通過選擇每種異常的一部分來平衡類分布,這是由于不同的BGP異常事件中的異常數(shù)量不同所致。最后盾致,采用6000個樣本(每個類別為1200個)進(jìn)行多類別分類主经,并將訓(xùn)練,驗證和測試比率分別劃分為60%庭惜,10%和30%罩驻。測試了順序模型和MSLSTM的accuracy以進(jìn)行比較。如表8所示护赊,RNN的結(jié)果接近LSTM惠遏,兩者均為單層體系結(jié)構(gòu)。與單層模型相比骏啰,MSLSTM和堆疊的LSTM顯著提高了準(zhǔn)確性节吮,這表明考慮多尺度時間依賴的有效性。隨著層數(shù)的增加判耕,堆疊LSTM的性能也有所提高透绩,但是更多的隱藏層數(shù)意味著更大的參數(shù)空間,并且需要更多數(shù)據(jù)來訓(xùn)練模型壁熄,因此在獲得3層最優(yōu)結(jié)果后精度會下降渺贤。與LSTM-3相比,MSLSTM僅具有兩個隱藏層即可實現(xiàn)更好的性能请毛。在圖12中,說明了所提出模型產(chǎn)生的混淆矩陣瞭亮。它清楚地表明MSLSTM可以識別異常類方仿。
2.5.7?不平衡分類
????除了進(jìn)行平衡數(shù)據(jù)分類方面的實驗以外,還評估了不平衡情況下的分類性能统翩。 兩個不平衡數(shù)據(jù)集(Code Red I和Slammer)的AUC結(jié)果以及ROC曲線如圖13所示仙蚜。兩個數(shù)據(jù)集的不平衡比分別為5.8和3.2。 為了進(jìn)行比較厂汗,采用兩種傳統(tǒng)模型SVM和NB委粉,兩種集成方法RF和Ada.Boost以及堆疊LSTM來計算AUC值。 實驗結(jié)果表明娶桦,在不平衡情況下贾节,集成方法的性能優(yōu)于單個分類器,并且兩個順序模型的性能優(yōu)于其余方法衷畦。 此外栗涂,與所有最新方法相比,MSLSTM仍可達(dá)到最佳結(jié)果祈争。
2.5.8?復(fù)雜度分析
????本文還討論了與堆疊LSTM相比斤程,MSLSTM的復(fù)雜度測量。 如上所述菩混,在標(biāo)準(zhǔn)LSTM體系結(jié)構(gòu)中有一個輸入層忿墅,一個遞歸LSTM層和一個輸出層扁藕。 輸入層完連接到LSTM層,該層具有三個門疚脐,單元的輸出完連接到輸出層亿柑。假設(shè)LSTM層的隱藏單元數(shù)為,則與一層LSTM單元相關(guān)的參數(shù)數(shù)量可以計算為亮曹,其中是輸入的大小(size)(不包括偏差項)橄杨。令為參數(shù)總數(shù),則(是輸出單位的數(shù)量)照卦。在MSLSTM中式矫,第一層的隱藏單元數(shù)等于尺度數(shù),其中役耕。令表示MSLSTM第一層的參數(shù)數(shù)量采转。使用隨機(jī)梯度下降(SGD)優(yōu)化法計算LSTM模型每個權(quán)重和時間步復(fù)雜度,其為瞬痘,這意味著每時間步的學(xué)習(xí)計算復(fù)雜度為故慈,并且網(wǎng)絡(luò)的總學(xué)習(xí)時間由隱藏單元的數(shù)量以及LSTM層的數(shù)量決定。因此框全,如果隱藏層的數(shù)量為察绷,則堆疊LSTM的總成本為。對于我們提出的模型津辩,該體系結(jié)構(gòu)僅包括兩層拆撼,離散小波變換的時間成本可以在模型訓(xùn)練之前離線進(jìn)行預(yù)處理,因此MSLSTM的成本為喘沿。
????如上所述柒傻,因此。 在表9中较木,我們比較了在NVIDIA GeForce GTX 1080 GPU上對模型和堆疊LSTM進(jìn)行分類的測試準(zhǔn)確性以及經(jīng)過的時間红符。 對于堆疊模型,當(dāng)隱藏單元數(shù)為128,訓(xùn)練時間為3.82分鐘预侯,測試時間為0.32秒時致开,LSTM-2的最佳精度為87%,而MSLSTM達(dá)到91.4%萎馅,訓(xùn)練時間為2.42分鐘双戳,而測試時間為0.22秒。當(dāng)隱藏單元數(shù)為256時糜芳,LSTM-3達(dá)到91.3%飒货,經(jīng)過的訓(xùn)練和測試時間分別為15.78分鐘和1.24秒。 但是峭竣,MSLSTM以較少的參數(shù)以8.32分鐘和0.89秒的時間成本可獲得93.2%的最佳值塘辅。 因此,與堆疊式LSTM相比皆撩,MSLSTM在獲得更好的性能時可以減少時間消耗扣墩。
2.5.9 可視化
????為了更好地了解堆疊LSTM模型與我們提出的MSLSTM之間的差異,我們還設(shè)計了一個實驗以比較堆疊模型和我們的模型的重建結(jié)果扛吞。通過將輸出標(biāo)簽替換為原始序列呻惕,并使用平方損失作為目標(biāo)函數(shù),MSLSTM和堆疊的LSTM對輸入的重構(gòu)可以揭示學(xué)習(xí)表示的有效性滥比。如圖14所示亚脆,MSLSTM和堆疊模型可以學(xué)習(xí)流量數(shù)據(jù)的全局演變。但是兩者相比盲泛,MSLSTM捕獲所有必要的詳細(xì)突發(fā)性(x = 571和105)型酥,堆疊LSTM無法在那些情況下保留突發(fā)性位置硼婿,而僅重建原始信號的概圖挨决。觀察結(jié)果表明祥得,堆疊的LSTM比我們的模型更容易欠擬合數(shù)據(jù),因為它僅從原始信號中生成更高級別的時間概況玛迄,并且無法同時考慮多尺度信息。在MSLSTM中棚亩,提取的大量信息被充分利用以學(xué)習(xí)本地特征和全局趨勢蓖议。
2.6 相關(guān)工作
????異常識別的最新研究工作主要基于基于可視化的工具[22] [23]和機(jī)器學(xué)習(xí)算法[3] [4] [5]。具體來說讥蟆,許多機(jī)器學(xué)習(xí)方法已被用于構(gòu)建流量分類模型和檢測異常勒虾,包括無監(jiān)督和受監(jiān)督的方法。 Ahmed等人提出了一種基于遞歸內(nèi)核的在線異常檢測方法[24]瘸彤,以區(qū)分不規(guī)則的網(wǎng)絡(luò)動態(tài)修然。 Dainotti等 [25]確定網(wǎng)絡(luò)中非平穩(wěn)流量的異常。樸素貝葉斯(NB)估計器用于在[4] [26]中對交通流進(jìn)行分類。 Al-Rousan等[5]采用特征選擇方法來選擇最具描述性的特征來表征BGP活動并發(fā)展樸素貝葉斯分類器可識別異常流量愕宋。此外玻靡,他們還采用支持向量機(jī)(SVM)和隱馬爾可夫模型(HMM)對BGP異常進(jìn)行分類[4],并結(jié)合特征選擇模型通過SVM獲得最佳結(jié)果中贝。 Nguyen等[27]提出了一類鄰居機(jī)器學(xué)習(xí)算法來區(qū)分不規(guī)則的網(wǎng)絡(luò)流量囤捻。但是,這些模型僅獨立地處理輸入實例邻寿,而沒有考慮流量數(shù)據(jù)的時間屬性蝎土。在實踐中,流量數(shù)據(jù)可以看作是多元時間序列的流绣否,并且異常模式隨時間信息而逐漸變化[1]誊涯。
????最近,由于特征學(xué)習(xí)的影響力枝秤,深度學(xué)習(xí)模型對分類任務(wù)的影響越來越大醋拧。深度學(xué)習(xí)中的順序模型,包括遞歸神經(jīng)網(wǎng)絡(luò)(RNN)和長短期記憶(LSTM)模型淀弹,已在許多序列分類方案中實現(xiàn)了理想的性能[8] [28] [29] [30][31]丹壕。與傳統(tǒng)的RNN在反向傳播階段會遇到梯度消失的問題不同,LSTM [7]可以通過連接的存儲單元和三個門薇溃,即輸入門菌赖,忘記門和輸出門[ 32]。最近沐序,基于注意力的遞歸網(wǎng)絡(luò)已成功應(yīng)用于各種各樣的任務(wù)琉用,例如自然語言問答[33] [34],解析[35]和圖像標(biāo)題生成[36]策幼。在序列學(xué)習(xí)中邑时,注意力首先是由Bahdanau等人提出的。 [10]在神經(jīng)機(jī)器翻譯中選擇源句子中的參考詞特姐。注意機(jī)制輸出加權(quán)的摘要表示晶丘,而不是僅考慮最后一步的表示,從而產(chǎn)生更具代表性和表達(dá)性的特征[37]唐含。分配給每個學(xué)習(xí)值的權(quán)重是通過相應(yīng)輸入之間的相關(guān)重要性的兼容性函數(shù)來計算的浅浮。
已經(jīng)提出了LSTM的許多變體來利用序列中的依賴性信息。楊等提出了一種基于注意力的文檔分類模型[38]捷枯。 Lipton等提出LSTM來識別臨床測量的多元時間序列中的模式[39]滚秩。程等開發(fā)一個集成了時間尺度的單層LSTM模型,以識別異常流量[1]淮捆,其中時間尺度的值是一個超參數(shù)郁油。丁等采用具有一層隱藏層的LSTM模型對BGP異常進(jìn)行分類[6]本股。在這些模型中,利用了關(guān)于長期和短期依賴性的時間信息已艰,但是它們沒有考慮多尺度特征痊末。Malhottra等提出了一個堆疊的LSTM網(wǎng)絡(luò)來學(xué)習(xí)高級時間模式,而無需事先了解模式持續(xù)時間[8]哩掺。程等通過提出基于堆疊LSTM網(wǎng)絡(luò)的softmax分類器來實現(xiàn)時間序列異常檢測[9]凿叠。 Chauhan等利用帶有LSTM單元的深度遞歸神經(jīng)網(wǎng)絡(luò)架構(gòu)來開發(fā)健康ECG信號的預(yù)測模型[40]。但是嚼吞,在那些作品中盒件,不同尺度的信息是由額外的隱藏層生成的,這些隱藏層重新組合了從先前層學(xué)來的表示[41]舱禽。此外炒刁,堆疊式LSTM架構(gòu)僅考慮時域上的抽象以獲得更高級別的時間信息,而在學(xué)習(xí)依賴項時不考慮每個不同尺度的影響誊稚,并且決定放樣模型的深度以生成最佳表示形式是棘手的翔始。同時,確定流量模式時間尺度的困難需要通過平移(平移)和擴(kuò)張(縮放)過程將低頻模式與高頻分離的技術(shù)[42]里伯。小波變換可以從時域和頻域的多分辨率方面揭示信息[43]城瞎。在先前結(jié)合小波變換和序列模型的工作中,所進(jìn)行的評估產(chǎn)生了改進(jìn)的性能[42] [44]疾瓮,但是這種組合是初步的脖镀,并且小波變換算法僅用于減少序列的長度。此外狼电,在順序模型訓(xùn)練過程中蜒灰,每個級別的小波分解結(jié)果彼此獨立,因此不能將多個分解同時考慮到RNN或LSTM模型中肩碟。
2.7 結(jié)論
????邊界網(wǎng)關(guān)協(xié)議(BGP)提供了一個基本環(huán)境强窖,用于為Internet中的自治系統(tǒng)交換路由信息,并且識別異常BGP流量是在不同域中維持相關(guān)服務(wù)成功協(xié)作的一項重要任務(wù)削祈。利用時間信息設(shè)計分類模型時翅溺,時間尺度很重要。在本文中岩瘦,我們提出了一種新穎的多尺度LSTM模型(MSLSTM),該模型使用離散小波變換從時間序列中顯式生成大量不同尺度的信息窿撬。隨后启昧,將多個尺度的信息集成到兩層分層注意LSTM模型中,其中在第一層中劈伴,學(xué)習(xí)不同時間尺度的注意密末,以獲得多個尺度的重組表示握爷。在第二層中,LSTM單元被設(shè)計為利用來自先前層的輸入表示之間的時間依賴性严里。通過基于幾個典型的現(xiàn)實世界BGP異常事件評估模型新啼,并與其他基線方法進(jìn)行比較,我們提出MSLSTM僅使用兩層體系結(jié)構(gòu)就可以實現(xiàn)更好的分類準(zhǔn)確性以及更低的誤報率和更高的AUC結(jié)果并減少時間消耗刹碾。實驗結(jié)果驗證了MSLSTM對BGP流量中異常行為進(jìn)行分類的有效性和效率燥撞。