席榮康,蔡滿春,蘆天亮
(中國人民公安大學(xué) 信息網(wǎng)絡(luò)安全學(xué)院,北京 100032)
暗網(wǎng)是信息網(wǎng)絡(luò)空間的重要組成部分,其因具備高度匿名性的技術(shù)特點(diǎn)而被歪曲利用并逐步成為各類犯罪行為的高發(fā)地帶。Tor 匿名通信系統(tǒng)作為暗網(wǎng)的主要技術(shù)支撐手段,通過多層加密技術(shù)和多級路由網(wǎng)絡(luò)結(jié)構(gòu)保護(hù)用戶信息,對暗網(wǎng)犯罪偵查工作帶來數(shù)據(jù)難獲取、證據(jù)難固定、身份難確定等問題[1]。
Tor 匿名流量分析技術(shù)屬于單端被動(dòng)分析技術(shù),網(wǎng)絡(luò)監(jiān)管者通過捕獲并分析通信系統(tǒng)入口鏈路處的流量以解決流量檢測的二分類和內(nèi)容識別的多分類問題。流量分析技術(shù)無需對通信數(shù)據(jù)進(jìn)行解密、篡改而對流量的統(tǒng)計(jì)特征進(jìn)行數(shù)學(xué)分析,具有成本低、易部署的特點(diǎn)。
本文對原始Tor PACP 文件進(jìn)行解析,提取Tor流量一維數(shù)據(jù)特征并轉(zhuǎn)化為二維灰度圖進(jìn)行圖像紋理可視化分析,同時(shí)改進(jìn)深度卷積生成對抗網(wǎng)絡(luò)(Deep Convolution Generative Adversarial Network,DCGAN)結(jié)構(gòu),利用多尺寸融合DCGAN 進(jìn)行數(shù)據(jù)增強(qiáng)以提升數(shù)據(jù)質(zhì)量。在此基礎(chǔ)上,應(yīng)用堆疊去噪自動(dòng)編碼器(Stacked Denoising Auto Encode,SDAE)進(jìn)行特征約簡,結(jié)合在線序列極限學(xué)習(xí)機(jī)(Online Sequence Extreme Learning Machine,OS-ELM)進(jìn)行Tor 流量的在線分類。
文獻(xiàn)[2]針對安全套接字協(xié)議加密代理Safe Web,證明了流量分析的可行性。隨著隧道加密技術(shù)的發(fā)展,文獻(xiàn)[3]針對安全外殼協(xié)議,利用數(shù)據(jù)包長度、時(shí)間信息作為網(wǎng)站指紋預(yù)測未知網(wǎng)站類別,并提出了靜態(tài)模型的概念漂移問題。文獻(xiàn)[4]提出一種改進(jìn)的SSH 加密隧道匿名流量識別方法,采用機(jī)器學(xué)習(xí)樸素貝葉斯模型作為分類器,流量識別準(zhǔn)確率達(dá)到90%。為進(jìn)一步滿足人們的匿名訪問需求,以Tor[5]匿名網(wǎng)絡(luò)為代表的多跳隧道網(wǎng)絡(luò)開始興起。Tor 匿名通信系統(tǒng)將用戶傳輸?shù)臄?shù)據(jù)包分割為512 Byte 的傳輸單元,使監(jiān)管者識別Tor 流量后無法依據(jù)傳輸對象的特定大小進(jìn)一步判斷用戶所訪問的網(wǎng)站流量類別并分析用戶行為。早期Tor匿名流量分析方法利用機(jī)器學(xué)習(xí)模型(如支持向量機(jī)[6]、隨機(jī)森林[7])對人工提取的流量方向、時(shí)間特征進(jìn)行分類。隨著深度學(xué)習(xí)在計(jì)算機(jī)視覺和自然語言處理等領(lǐng)域得到成功應(yīng)用,研究者嘗試將深度學(xué)習(xí)模型應(yīng)用到通信流量分析領(lǐng)域。通過將數(shù)據(jù)流處理為神經(jīng)網(wǎng)絡(luò)可計(jì)算的數(shù)據(jù)序列,相繼應(yīng)用SDAE[8]、一維卷積神經(jīng)網(wǎng)絡(luò)[9](1D-Convolutional Neural Network,1DCNN)和長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)[9]模型進(jìn)行網(wǎng)站流量分類,識別準(zhǔn)確率最高可達(dá)96%。文獻(xiàn)[10]先將一維的數(shù)據(jù)流量特征處理為二維圖像,再利用圖像分類性能較好的2DCNN 模型進(jìn)行分類,分類準(zhǔn)確率達(dá)到98%。文獻(xiàn)[11]通過使用一維卷積神經(jīng)網(wǎng)絡(luò)對流量序列burst 級別的特征進(jìn)行提取和分析,分類準(zhǔn)確率達(dá)到99.87%。
上述研究方法基于實(shí)驗(yàn)室條件下的多種前提假設(shè)。文獻(xiàn)[12]指出目前流量識別存在的多種局限性,如單標(biāo)簽網(wǎng)頁瀏覽、概念漂移、數(shù)據(jù)集不平衡等問題,提出基于K 最近鄰算法的多標(biāo)簽網(wǎng)站分割識別方法。文獻(xiàn)[13]構(gòu)造二分類器Xu-Boost,先對網(wǎng)頁進(jìn)行分割,再利用隨機(jī)森林算法對分割片段進(jìn)行識別,準(zhǔn)確率可達(dá)86%。文獻(xiàn)[14]先使用馬爾可夫模型對流量進(jìn)行分段分類,再利用投票機(jī)制對分類結(jié)果進(jìn)行討論以判斷分割點(diǎn)位置,分割準(zhǔn)確率達(dá)到88%。文獻(xiàn)[15]通過實(shí)驗(yàn)證明網(wǎng)站流量分析的概念漂移問題,使用靜態(tài)模型對10 d 后的實(shí)時(shí)流量進(jìn)行分類,模型準(zhǔn)確率下降。針對概念漂移問題,文獻(xiàn)[16]提出基于自適應(yīng)霍夫丁樹的流處理模型,利用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)單元自動(dòng)提取流量序列特征并輸入霍夫丁樹分類器進(jìn)行模型增量更新,在MOA[17]工具上證明了流處理算法用于Tor 流量分析的可行性。當(dāng)前圍繞Tor 匿名流量分析的研究雖然取得了一定成果,但仍存在以下不足:
1)數(shù)據(jù)處理方式單一。一維數(shù)據(jù)序列導(dǎo)致模型只能采取計(jì)算效率偏低的遞歸處理方式,且數(shù)據(jù)特征因限制在一維空間而無法進(jìn)行可視化分析。
2)Tor 匿名流量數(shù)據(jù)集不平衡。Tor 匿名通信數(shù)據(jù)難于收集導(dǎo)致數(shù)據(jù)集缺失,且已存在的部分?jǐn)?shù)據(jù)集Tor 流量與非Tor 流量比例嚴(yán)重失衡,模型在分類問題上雖有良好表現(xiàn)但缺乏科學(xué)性[15]。
3)概念漂移問題突出。深度學(xué)習(xí)模型多采用基于大量數(shù)據(jù)的批訓(xùn)練模式,數(shù)據(jù)特征隨時(shí)間發(fā)生改變,模型性能會急劇下降。
針對以上問題,本文提出融合改進(jìn)DCGAN、SDAE和OS-ELM 的Tor 流量在線分析模型,充分發(fā)揮一維、二維神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)優(yōu)勢,提高分類識別性能。
Tor 匿名通信系統(tǒng)由大量運(yùn)行洋蔥路由協(xié)議的PC/服務(wù)器的節(jié)點(diǎn)組成,系統(tǒng)結(jié)構(gòu)如圖1 所示。
圖1 Tor 匿名通信系統(tǒng)結(jié)構(gòu)Fig.1 Tor anonymous communication system structure
目前針對Tor 流量數(shù)據(jù)的處理大多為提取PACP包特征并保存為一維數(shù)據(jù),會導(dǎo)致模型對數(shù)據(jù)的空間特征提取不足且無法對數(shù)據(jù)進(jìn)行可視化分析。本文將一維數(shù)據(jù)處理為二維灰度圖來解決此問題,二維灰度圖還可作為二維DCGAN 原始數(shù)據(jù)進(jìn)行數(shù)據(jù)增強(qiáng)。數(shù)據(jù)預(yù)處理流程如圖2 所示。
圖2 數(shù)據(jù)預(yù)處理流程Fig.2 Data preprocessing process
數(shù)據(jù)預(yù)處理的具體步驟如下:
1)數(shù)據(jù)包解析。數(shù)據(jù)包具有五元組{源IP 地址,源端口,目的IP 地址,目的端口,協(xié)議}基本屬性。本文研究對象為雙向會話流,會話流由一組具有相同IP 地址的數(shù)據(jù)包組成,且目的地址和源地址可互換。因此,首先將原始PACP 包數(shù)據(jù)集依照五元組規(guī)則劃分為多個(gè)會話流。
2)數(shù)據(jù)清洗。IP、MAC 地址與設(shè)備硬件等因素有關(guān),不能作為會話流特征,為避免這些字節(jié)對分類的影響,需要將數(shù)據(jù)包IP、MAC 地址字節(jié)標(biāo)準(zhǔn)化。此外,還需要?jiǎng)h除空數(shù)據(jù)包,避免其對模型分類的影響。
3)流長度統(tǒng)一。不同會話流具有不同的字節(jié)長度。為方便將一維數(shù)據(jù)轉(zhuǎn)化為二維灰度圖并輸入模型訓(xùn)練,取會話流前784 Byte。若會話流不足784 Byte則填0 補(bǔ)齊。會話在開始之前通信雙方會傳輸大量的連接建立控制信息,這部分字節(jié)可作為分類的重要依據(jù)。
4)灰度圖轉(zhuǎn)化。為方便數(shù)據(jù)可視化和二維DCGAN 處理,將784 Byte 的序列轉(zhuǎn)化為28×28 的灰度圖。首先將一維數(shù)組升維,然后將十六進(jìn)制的數(shù)值轉(zhuǎn)化為0~255 的像素點(diǎn),最后利用函數(shù)進(jìn)行灰度圖轉(zhuǎn)化。圖3 為隨機(jī)選取25 個(gè)Tor 數(shù)據(jù)流生成的灰度圖像??梢杂^察到,25 張圖片中有多組圖片具有相似的紋理特征。
圖3 流量特征灰度圖Fig.3 Traffic characteristic gray images
本小節(jié)首先介紹基于多尺寸融合DCGAN 的數(shù)據(jù)增強(qiáng)模型,然后闡述基于SDAE 和OS-ELM 的在線Tor 流量流處理模型。
數(shù)據(jù)集不平衡會影響模型的分類預(yù)測性能。Tor流量難以收集,流量樣本不足也是Tor流量分析亟待解決的問題之一。以ISCX Tor 2016數(shù)據(jù)集為例,將PACP包按照五元組的規(guī)則分割,則Non-Tor樣本有38 339條,Tor 樣本卻只有118 條。因此,本文采用多尺寸融合DCGAN 進(jìn)行數(shù)據(jù)平衡以達(dá)到Tor 數(shù)據(jù)樣本擴(kuò)充和數(shù)據(jù)集平衡的目的。本小節(jié)首先對基于傳統(tǒng)DCGAN 優(yōu)化的多尺寸融合DCGAN 模型結(jié)構(gòu)進(jìn)行描述,然后對模型的訓(xùn)練過程進(jìn)行闡述。
3.1.1 多尺寸融合DCGAN 模型結(jié)構(gòu)
本文處理的數(shù)據(jù)為一維數(shù)據(jù),基于一維序列的數(shù)據(jù)增強(qiáng)方法生成數(shù)據(jù)質(zhì)量差且訓(xùn)練周期長。相較于傳統(tǒng)GAN 網(wǎng)絡(luò):1)DCGAN 取消池化層,使用卷積層實(shí)現(xiàn)生成網(wǎng)絡(luò)的上采樣,在鑒別網(wǎng)絡(luò)中使用帶步長的卷積代替池化;2)使用深層卷積神經(jīng)網(wǎng)絡(luò)代替全連接層提取數(shù)據(jù)高維特征;3)將數(shù)據(jù)批歸一化以穩(wěn)定DCGAN 網(wǎng)絡(luò)的學(xué)習(xí)并且有助于深度模型梯度下降優(yōu)化。此外,本文對判別器結(jié)構(gòu)進(jìn)行改進(jìn),提出融合多視野特征的多尺寸融合判別模型,模型具有如下特點(diǎn):1)多視野特征,采用不同大小的卷積核提取不同粒度的空間特征,卷積核大小為5 的CNN 能夠增加卷積層感受野,卷積核大小為3 的CNN 能夠?qū)崿F(xiàn)細(xì)粒度的特征獲取[18];2)特征融合,通過融合層將特征矩陣進(jìn)行拼接獲得融合特征,使信息可以在不同組流轉(zhuǎn)。
多尺寸融合DCGAN 模型由生成器和判別器構(gòu)成,模型結(jié)構(gòu)如圖4 所示。
圖4 多尺寸融合DCGAN 模型結(jié)構(gòu)Fig.4 Multi-size fused DCGAN model structure
生成器共7 層結(jié)構(gòu),全連接層通過多個(gè)神經(jīng)元計(jì)算將100 維噪聲數(shù)據(jù)映射為14×14×128 的數(shù)據(jù)。Reshape 層將噪聲數(shù)據(jù)轉(zhuǎn)化為128 張14×14 的特征圖像。第1 層卷積層利用256 個(gè)大小為5 的卷積核提取數(shù)據(jù)信息。反卷積層利用上采樣學(xué)習(xí)圖像的細(xì)節(jié)信息并將圖像擴(kuò)展為28×28 的特征圖,對應(yīng)784 Byte 的真實(shí)數(shù)據(jù)。之后,通過1層卷積核系數(shù)為4×256和2層5×256 的卷積層進(jìn)一步提取數(shù)據(jù)高維空間特征,并采取0填充的方式保證經(jīng)卷積操作后圖像大小不變。最后采用單核卷積層生成單通道目標(biāo)灰度圖矩陣。
判別器共7 層結(jié)構(gòu)。首先利用卷積核系數(shù)分別為5×128、4×128、3×128、步長為2 的卷積層按順序提取輸入數(shù)據(jù)的局部空間特征,獲得128 張12×12、5×5、2×2 的特征圖像。然后為同時(shí)獲取多視野局部空間特征,在融合層中將3 個(gè)卷積層生成的特征圖像拼接起來,其中池化層的作用是將特征圖像統(tǒng)一尺寸以方便特征融合。之后利用核系數(shù)為2×128 的卷積層生成128 張1×1的特征圖。最后利用Flatten 層將特征一維化,并通過Dense 層輸出輸入數(shù)據(jù)的類別概率。
3.1.2 多尺寸融合DCGAN 模型訓(xùn)練
多尺寸融合DCGAN 利用生成網(wǎng)絡(luò)模擬真實(shí)數(shù)據(jù)圖像以達(dá)到混淆鑒別網(wǎng)絡(luò)的目的,鑒別網(wǎng)絡(luò)的目的是最大化區(qū)分生成數(shù)據(jù)與真實(shí)數(shù)據(jù)。模型訓(xùn)練流程如圖5 所示。
圖5 多尺寸融合DCGAN 模型訓(xùn)練流程Fig.5 Multi-size fused DCGAN model training process
在圖5 中,主要包含判別器訓(xùn)練和生成器訓(xùn)練2 個(gè)階段:
1)判別器訓(xùn)練階段。首先將隨機(jī)噪聲Z輸入生成網(wǎng)絡(luò)以生成數(shù)據(jù),其中Z服從標(biāo)準(zhǔn)正態(tài)分布PZ(Z),生成數(shù)據(jù)為G(Z),將真實(shí)數(shù)據(jù)X批歸一化,X服從真實(shí)數(shù)據(jù)分布Pr(X)。然后構(gòu)造數(shù)據(jù)標(biāo)簽Y并通過標(biāo)簽平滑使Yreal∈[0.8,1]、Yfake∈[0,0.2],這樣做可防止網(wǎng)絡(luò)過擬合,提高DCGAN 的泛化能力和數(shù)據(jù)生成的質(zhì)量。最后輸入訓(xùn)練數(shù)據(jù)H={(X,Yreal),(G(Z),Yfake)}進(jìn)行判別器訓(xùn)練,通過優(yōu)化交叉熵?fù)p失函數(shù)達(dá)到模型參數(shù)更新的目的。交叉熵?fù)p失函數(shù)公式為:
其中:LD為判別器損失;D(X)、D(G(Z))分別為真實(shí)數(shù)據(jù)和生成數(shù)據(jù)的鑒別概率。
2)生成器訓(xùn)練階段。為保證該階段只對生成器進(jìn)行參數(shù)更新,先凍結(jié)判別器,再將生成數(shù)據(jù)G(Z)輸入判別器進(jìn)行模型訓(xùn)練。值得注意的是,此時(shí)數(shù)據(jù)標(biāo)簽應(yīng)設(shè)置為Yreal以達(dá)到混淆判別器的目的。在生成器與判別器的博弈中,生成器的參數(shù)得到優(yōu)化使生成的數(shù)據(jù)愈加逼近真實(shí)數(shù)據(jù)[19]??赏ㄟ^觀察灰度圖紋理初步驗(yàn)證生成數(shù)據(jù)質(zhì)量。生成器損失函數(shù)公式為:
其中:LG為生成器損失。最后,DCGAN 的優(yōu)化目標(biāo)為F(D,G),生成器與判別器通過不斷博弈以提高對方鑒別數(shù)據(jù)與生成數(shù)據(jù)的能力,最終達(dá)到納什平衡。DCGAN 優(yōu)化公式為:
本小節(jié)先介紹基于SDAE 模型的深度特征提取與序列編碼流程,再闡述基于OS-ELM的在線流處理原理。
3.2.1 基于SDAE 的數(shù)據(jù)編碼
SDAE 是由多個(gè)降噪自動(dòng)編碼器(Denoising Auto Encoder,DAE)堆疊在一起形成的深度架構(gòu)。將原始數(shù)據(jù)X輸入SDAE 編碼后輸出低緯度、深層次分類特征Xc。SDAE 模型結(jié)構(gòu)如圖6 所示。
圖6 SDAE 模型結(jié)構(gòu)Fig.6 SDAE model structure
模型采用逐層貪婪訓(xùn)練的方式逐個(gè)對單個(gè)DAE進(jìn)行訓(xùn)練。首先,將訓(xùn)練數(shù)據(jù)X輸入編碼器輸出維度更低的數(shù)據(jù)編碼Xc。類似于Dropout 函數(shù),通過隨機(jī)地將編碼器輸入層節(jié)點(diǎn)置為0 以達(dá)到將訓(xùn)練數(shù)據(jù)加入噪聲的目的,防止過擬合并提高模型泛化能力[20]。然后,將Xc輸入解碼器生成重構(gòu)數(shù)據(jù)X’。最后,采用后饋神經(jīng)網(wǎng)絡(luò)算法調(diào)整模型參數(shù)以保證重構(gòu)誤差Lh(X,X′)最小。單層DAE 訓(xùn)練流程如圖7所示。當(dāng)單個(gè)DAE 訓(xùn)練完畢后,通過迭代的方式將第K個(gè)DAE 的輸出作為第K+1 個(gè)DAE 的輸入進(jìn)行訓(xùn)練,直到SDAE 訓(xùn)練完畢。
圖7 DAE 訓(xùn)練流程Fig.7 DAE training process
最后,將多層DAE 堆疊起來形成SDAE 并輸入樣本數(shù)據(jù)和數(shù)據(jù)標(biāo)簽,對整個(gè)網(wǎng)絡(luò)進(jìn)行全局優(yōu)化和參數(shù)微調(diào)。經(jīng)SDAE 處理后的數(shù)據(jù)能夠彌補(bǔ)單層前饋神經(jīng)網(wǎng)絡(luò)特征提取能力不足的弊端[21],同時(shí)通過數(shù)據(jù)約簡提高OS-ELM 的在線處理效率。
3.2.2 基于OS-ELM 的在線流處理
ELM 提出的目的是解決人工神經(jīng)網(wǎng)絡(luò)訓(xùn)練費(fèi)時(shí)和高成本問題,其采用單隱層前饋神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),相較于深度神經(jīng)網(wǎng)絡(luò)具有結(jié)構(gòu)簡單、收斂速度快等特點(diǎn)。ELM 與深度神經(jīng)網(wǎng)絡(luò)一樣使用批數(shù)據(jù)訓(xùn)練模式。若訓(xùn)練時(shí)間過長導(dǎo)致訓(xùn)練數(shù)據(jù)與測試數(shù)據(jù)數(shù)據(jù)分布差異大則會出現(xiàn)概念漂移問題。OE-ELM 繼承了ELM 的速度和泛化能力并使用流數(shù)據(jù)訓(xùn)練模式,模型可隨著新數(shù)據(jù)的到來不斷更新參數(shù)[22]。
模型訓(xùn)練過程分初始化和在線流處理2 個(gè)階段:
1)初始化階段,即通過少量樣本得到神經(jīng)網(wǎng)絡(luò)的權(quán)重矩陣β。假設(shè)有Ns個(gè)樣本(Xj,Yj),j=1,2,…,Ns。其中:Xj=[xj1,xj2,…,xjNd]T;Nd表示輸入數(shù)據(jù)的維度。對于有Nm個(gè)神經(jīng)單元的神經(jīng)網(wǎng)絡(luò),輸出為:
其中:f()為激活函數(shù);W為輸入權(quán)重;b為單元偏置。訓(xùn)練目標(biāo)為求得β、W、b使得輸出誤差最小,即:
結(jié)合式(4)用矩陣可以表示為:
不同于梯度下降算法采取迭代的方式對所有參數(shù)進(jìn)行更新,OS-ELM 算法在初始階段的輸入權(quán)重W和偏置b是隨機(jī)確定的。因此,單隱層神經(jīng)網(wǎng)絡(luò)的訓(xùn)練問題就轉(zhuǎn)化為線性系統(tǒng)Hβ=Y的求解問題,如式(8)所示:
其中:H+為矩陣H的廣義逆。可證明解的范數(shù)最小且唯一。
2)在線流處理階段。當(dāng)有新的N1個(gè)樣本進(jìn)入模型時(shí),則優(yōu)化問題轉(zhuǎn)化為:
其中:H1、Y1分別為新樣本的輸入權(quán)重矩陣和標(biāo)簽矩陣。則更新后的輸出權(quán)重β1可表示為:
由此可以得到在線學(xué)習(xí)的遞推公式:
當(dāng)新樣本進(jìn)入模型后,模型會對輸出權(quán)重矩陣進(jìn)行更新。由于采用單層神經(jīng)網(wǎng)絡(luò)實(shí)時(shí)訓(xùn)練與分類,因此輸出權(quán)重矩陣能夠適應(yīng)最新的流量特征[23]。
本文實(shí)驗(yàn)分為2 個(gè)部分,即基于多尺寸融合DCGAN 的數(shù)據(jù)增強(qiáng)實(shí)驗(yàn)和基于SD-OSELM 的在線流識別實(shí)驗(yàn)。
4.1.1 數(shù)據(jù)集
本模塊實(shí)驗(yàn)采取ISCX Tor 2016[24]流量有標(biāo)簽數(shù)據(jù)集。數(shù)據(jù)集有原始PACP 包和CSV 特征文件2 種形式,設(shè)置以下2 種實(shí)驗(yàn)場景。
場景A:數(shù)據(jù)分為Tor 與Non Tor 2 種流量,主要驗(yàn)證模型的流量檢測二分類能力。
場景B:數(shù)據(jù)分為BROWSING、CHAT、AUDIO、VIDEO、EMAIL 等多種應(yīng)用類型的流量,主要驗(yàn)證模型內(nèi)容識別的多分類能力。
4.1.2 數(shù)據(jù)增強(qiáng)生成數(shù)據(jù)質(zhì)量驗(yàn)證實(shí)驗(yàn)
首先,隨機(jī)選取場景B 下5 類流量作為原始數(shù)據(jù)。圖8 為生成數(shù)據(jù)的可視化灰度圖。實(shí)驗(yàn)結(jié)果表明,同類型流量因具有較為集中的特征表示,生成圖片組也具有較為明顯的紋理特征。
圖8 不同類型生成流量的灰度圖Fig.8 Gray images of different generated traffic
然后,引入KL 散度、歐氏距離、皮爾遜相關(guān)系數(shù)、均方誤差等4 個(gè)衡量分布相似度的指標(biāo)對生成數(shù)據(jù)的相似度進(jìn)行驗(yàn)證。KL 散度、歐氏距離、均方誤差可視為樣本距離,指標(biāo)值越小則越相似。皮爾遜相關(guān)系數(shù)取值范圍為[-1,1],相關(guān)系數(shù)絕對值越大,表明樣本相關(guān)性越高。圖9 為生成圖像相似度指標(biāo)變化圖。
圖9 生成圖像相似度指標(biāo)變化圖Fig.9 Similarity index change diagram of generated images
實(shí)驗(yàn)結(jié)果表明,經(jīng)過520 輪的訓(xùn)練,生成樣本與原始樣本皮爾遜相關(guān)系數(shù)值可達(dá)0.9,KL 散度和均方誤差低于0.13,歐氏距離達(dá)3.74。
最后,引入1DDCGAN、標(biāo)準(zhǔn)2DDCGAN 模型進(jìn)行對比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表1 所示。實(shí)驗(yàn)結(jié)果表明,多尺寸DCGAN 通過提取多視野特征提高了判別器的判別能力,并進(jìn)一步提升了模型的數(shù)據(jù)生成能力。
表1 不同網(wǎng)絡(luò)性能對比Table 1 Performance comparison of different networks
4.1.3 數(shù)據(jù)增強(qiáng)對模型的性能影響實(shí)驗(yàn)
本文以二維圖像分類性能良好的2DCNN[25]模型作為分類器,驗(yàn)證不同樣本比例下模型的分類性能。模型參數(shù)如表2 所示。
表2 CNN 模型參數(shù)Table 2 CNN model parameters
在實(shí)驗(yàn)場景A 下,保持?jǐn)?shù)據(jù)集總樣本數(shù)為20 000,訓(xùn)練集與測試集比例為9∶1。驗(yàn)證不同樣本比例下的模型性能。實(shí)驗(yàn)結(jié)果如表3 所示。
表3 不同樣本比例下的CNN 模型性能Table 3 Performance of CNN model with different sample ratios
實(shí)驗(yàn)結(jié)果表明,利用DCGAN 進(jìn)行數(shù)據(jù)增強(qiáng)生成的平衡數(shù)據(jù)集可提高模型識別準(zhǔn)確率約2.8 個(gè)百分點(diǎn),但生成樣本保留了一定的噪聲數(shù)據(jù),過多的生成樣本會影響模型判斷能力。
本小節(jié)首先對SDAE 數(shù)據(jù)編碼的可行性進(jìn)行分析,然后引入已有研究中Tor 一維流量分析模型進(jìn)行對比實(shí)驗(yàn)證明模型的性能改進(jìn),最后結(jié)合DCGAN數(shù)據(jù)增強(qiáng)方法并進(jìn)行數(shù)據(jù)降維驗(yàn)證平衡數(shù)據(jù)集對SD-OSELM 的性能影響。
4.2.1 數(shù)據(jù)集
本小節(jié)選擇文獻(xiàn)[9]中的Tor 網(wǎng)站指紋識別數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),該數(shù)據(jù)集包含2 類實(shí)驗(yàn)場景:
場景A:數(shù)據(jù)分為Tor 監(jiān)控網(wǎng)站與Non Tor 非監(jiān)控網(wǎng)站2 種流量,主要驗(yàn)證模型的流量檢測二分類能力。
場景B:數(shù)據(jù)包含Alexa Top 1 200 個(gè)網(wǎng)站流量,每個(gè)網(wǎng)站包含多條流量實(shí)例,主要驗(yàn)證模型網(wǎng)站內(nèi)容分類多分類能力。
4.2.2 SDAE 數(shù)據(jù)編碼可行性分析實(shí)驗(yàn)
首先,利用指標(biāo)均方誤差(Mean Squared Error,MSE)來衡量輸入數(shù)據(jù)與重構(gòu)數(shù)據(jù)的數(shù)據(jù)差異以確定序列在編碼重構(gòu)過程中的信息丟失。MSE 公式為:
其中:N為樣本數(shù)量;X、X’分別為輸入樣本和重構(gòu)樣本。
采用場景B 下網(wǎng)站內(nèi)容識別數(shù)據(jù)集。本小節(jié)設(shè)計(jì)5 層DAE 網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)編碼。各層DAE 輸入層和輸出層神經(jīng)元個(gè)數(shù)設(shè)置如下:DAE1 層為2 500 和1 800,DAE2 層為1 800 和1 200,DAE3 層為1 200 和800,DAE4 層為800 和400,DAE5 層為400 和100。圖10 為5 層DAE 訓(xùn)練過程中的MSE 變化圖。實(shí)驗(yàn)結(jié)果表明,經(jīng)過10 次訓(xùn)練SDAE 輸出的數(shù)據(jù)編碼基本保留了原始數(shù)據(jù)特征,重構(gòu)損失穩(wěn)定在0.003 以下。
圖10 DAE 訓(xùn)練重構(gòu)誤差變化圖Fig.10 Variation diagram of DAE training reconstruction error
然后,為驗(yàn)證數(shù)據(jù)編碼對OS-ELM 在線分類的影響,將2 500 維原始數(shù)據(jù)與100 維特征編碼輸入OS-ELM 模型。實(shí)驗(yàn)結(jié)果如表4 所示。
表4 數(shù)據(jù)編碼對模型的性能影響Table 4 Effect of data coding on model performance
實(shí)驗(yàn)結(jié)果表明,SDAE 數(shù)據(jù)編碼一方面能夠?qū)崿F(xiàn)數(shù)據(jù)約簡,另一方面可提取數(shù)據(jù)深度特征用于分類。
4.2.3 SD-OSELM 性能分析實(shí)驗(yàn)
首先,為驗(yàn)證SD-OSELM 模型在線分類性能,向模型不斷輸入訓(xùn)練數(shù)據(jù)并記錄模型隨著數(shù)據(jù)輸入的準(zhǔn)確率變化。圖11 為SDOS-ELM 的準(zhǔn)確率曲線。實(shí)驗(yàn)結(jié)果表明,模型參數(shù)會隨著新數(shù)據(jù)的輸入實(shí)時(shí)優(yōu)化更新,最終模型識別準(zhǔn)確率可達(dá)95.7%。
圖11 SDOS-ELM 分類準(zhǔn)確率Fig.11 SDOS-ELM classification accuracy
然后,基于1DCNN-LSTM[9]、LSTM[9]模型、SDAE[9]分類模型進(jìn)行對比實(shí)驗(yàn),驗(yàn)證模型分類準(zhǔn)確率、分類效率等方面的性能。實(shí)驗(yàn)結(jié)果如表5 所示。實(shí)驗(yàn)結(jié)果表明,SD-OSELM 分類準(zhǔn)確率較LSTM、SDAE 模型有少量提高。但模型采取流處理模式擺脫了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)批訓(xùn)練方式的弊端,且單次訓(xùn)練模式使得總訓(xùn)練時(shí)間有較大縮減。
表5 不同模型性能對比Table 5 Comparison of different model performances
針對Tor 數(shù)據(jù)集難以收集、類別不平衡、模型抗概念漂移性能力差等問題,本文提出基于多尺寸DCGAN、SDAE 和OS-ELM 的在線Tor 流量分析模型,并通過仿真實(shí)驗(yàn)證明通過維度轉(zhuǎn)化將一維流量序列轉(zhuǎn)化為灰度圖進(jìn)行可視化分析和數(shù)據(jù)增強(qiáng)的可行性和實(shí)用性。結(jié)合SDAE 深度特征提取優(yōu)勢與OS-ELM 在線流處理模式的SD-OSELM 模型,能夠擺脫深度神經(jīng)網(wǎng)絡(luò)批數(shù)據(jù)處理模式的固有缺陷,一定程度上緩解了概念漂移問題,模型在Tor 匿名流量檢測、網(wǎng)站內(nèi)容識別方面均有良好表現(xiàn)。
本文采用公開Tor 數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),然而在實(shí)際網(wǎng)絡(luò)流量監(jiān)管過程中,流量特征更加繁雜。如何處理原始Tor 流量并提取重要數(shù)據(jù)特征用于分類是提高模型分類準(zhǔn)確率的關(guān)鍵,下一步將對此進(jìn)行研究。此外,連續(xù)多標(biāo)簽Tor 網(wǎng)頁流量的分割與識別是提高Tor 流量分析技術(shù)實(shí)用性,這也是后續(xù)的研究方向。