文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.172203
中文引用格式: 劉紀(jì)偉,趙月顯,趙楊. 一種基于統(tǒng)計(jì)排序的網(wǎng)絡(luò)流量特征選擇方法[J].電子技術(shù)應(yīng)用,2018,44(1):84-87.
英文引用格式: Liu Jiwei,Zhao Yuexian,Zhao Yang. A feature selection method of network traffic based on statistic and ranking strategy[J]. Application of Electronic Technique,2018,44(1):84-87.
0 引言
網(wǎng)絡(luò)流量分類是指將混合有各種應(yīng)用的流量,按產(chǎn)生這些流量的應(yīng)用協(xié)議進(jìn)行分類。網(wǎng)絡(luò)流量分類既是高性能網(wǎng)絡(luò)協(xié)議設(shè)計(jì)的基礎(chǔ),又是網(wǎng)絡(luò)運(yùn)營(yíng)管理、網(wǎng)絡(luò)發(fā)展規(guī)劃的依據(jù),也是網(wǎng)絡(luò)攻擊與惡意代碼檢測(cè)的重要手段[1]。
基于網(wǎng)絡(luò)流量的統(tǒng)計(jì)特征并利用機(jī)器學(xué)習(xí)的方法進(jìn)行流量的分類識(shí)別是當(dāng)前學(xué)術(shù)界的研究熱點(diǎn),一方面該方法克服了傳統(tǒng)基于標(biāo)準(zhǔn)端口匹配和深度包檢測(cè)方法在技術(shù)上的不足,另一方面基于網(wǎng)絡(luò)流量統(tǒng)計(jì)特征的方法不涉及報(bào)文的有效載荷信息,避免了對(duì)用戶隱私侵犯帶來(lái)的法律問(wèn)題。但是網(wǎng)絡(luò)流量特征屬性繁多,目前得到學(xué)術(shù)界廣泛認(rèn)可的各類特征數(shù)量就已多達(dá)240余個(gè),大量冗余和不相關(guān)的特征屬性不僅會(huì)增加流量分類系統(tǒng)模型的復(fù)雜度,還會(huì)降低分類算法的效率和性能,造成流量分類準(zhǔn)確率和效率同時(shí)下降。因此,需要對(duì)網(wǎng)絡(luò)流量特征進(jìn)行選擇,剔除冗余和不相關(guān)的特征。
近幾年學(xué)術(shù)界對(duì)此開(kāi)展了廣泛和深入的研究。文獻(xiàn)[2]提出了一種分治和投票的策略,首先對(duì)原始訓(xùn)練集進(jìn)行分割,利用分割后的子集分別獲得特征子集,再通過(guò)投票獲得最終的特征子集,有效地縮短了算法運(yùn)行時(shí)間;文獻(xiàn)[3]提出一種結(jié)合過(guò)濾型和封裝型特征選擇算法優(yōu)點(diǎn)的組合式特征選擇算法,并將該算法用于網(wǎng)絡(luò)流量中P2P流量的識(shí)別,實(shí)驗(yàn)結(jié)果表明在保證分類平均準(zhǔn)確率不低于90%的情況下,可以將特征個(gè)數(shù)縮減至7個(gè);潘吳斌等人在文獻(xiàn)[4]中提出一種基于選擇性集成策略的嵌入式特征選擇方法,采用選擇性集成方法選取5種特征選擇器產(chǎn)生特征子集,再通過(guò)改進(jìn)的序列前向搜索和封裝器組合方法產(chǎn)生最優(yōu)特征子集,在一定程度上解決了類別不均衡和概念漂移的問(wèn)題;孫興斌等人在文獻(xiàn)[5]、[6]中也對(duì)多類不均衡問(wèn)題和少數(shù)類召回率低的問(wèn)題進(jìn)行了研究,提出了有針對(duì)性的特征選擇方法,盡管在實(shí)驗(yàn)環(huán)境下取得了很好的效果,但由于選取的特征個(gè)數(shù)與網(wǎng)絡(luò)應(yīng)用種類數(shù)相同,在實(shí)際應(yīng)用中依然面臨不小的挑戰(zhàn);文獻(xiàn)[7]給出了一種以分類準(zhǔn)確率作為判決準(zhǔn)則的流量特征二次排序選擇的思路,但特征的初次選擇依然采用傳統(tǒng)方式,算法的效率受到一定限制。
本文在前述學(xué)者的研究工作基礎(chǔ)之上,針對(duì)現(xiàn)有網(wǎng)絡(luò)流量特征選擇方法存在的問(wèn)題,提出一種基于統(tǒng)計(jì)排序的特征選擇方法(Feature Selection based on Statistic and Ranking,F(xiàn)SSR)。FSSR首先根據(jù)特征選擇系數(shù)大小選取類相關(guān)性強(qiáng)、類別區(qū)分度高的特征組成初始特征子集,初始特征子集中的特征個(gè)數(shù)與網(wǎng)絡(luò)應(yīng)用種類個(gè)數(shù)相同,然后根據(jù)特征影響系數(shù)大小按序?qū)Τ跏继卣髯蛹M(jìn)行二次選擇,再次進(jìn)行降維尋優(yōu)操作,從而獲得最優(yōu)特征子集,有效提升分類的效率和效果。
1 FSSR方法
1.1 相關(guān)定義
為了方便描述,對(duì)文中使用的標(biāo)記符號(hào)說(shuō)明如下:C={c1,c2,c3,…,ck}表示具有k個(gè)類的網(wǎng)絡(luò)應(yīng)用集合;T={t1,t2,t3,…,tm}表示具有m個(gè)網(wǎng)絡(luò)流量特征的集合;X={x1,x2,x3,…,xN}表示樣本數(shù)量為N的網(wǎng)絡(luò)流樣本數(shù)據(jù)集合,其中xi形式為以T中元素表征的特征向量。
定義1 特征選擇系數(shù)fij
特征選擇系數(shù)fij用來(lái)衡量特征ti和類cj之間的相關(guān)性以及ti將cj與其他類區(qū)分開(kāi)來(lái)的能力。
根據(jù)香農(nóng)的信息論理論,對(duì)于某個(gè)特征t,如果類c的樣本在這個(gè)特征上的取值越集中,說(shuō)明c在t上的不確定性越小,即特征t與類c相關(guān)性越強(qiáng),利用特征t能更好地識(shí)別類c;如果類c1和類c2的樣本在特征t上的取值區(qū)間沒(méi)有交集或者交集很小,則利用特征t就能很好地區(qū)分類c1和類c2。基于此,定義特征選擇系數(shù)如下:
其中,|ti|表示統(tǒng)計(jì)所有樣本在特征ti上全部取值的個(gè)數(shù),γinj表示統(tǒng)計(jì)類cj在特征ti上取第n個(gè)值的樣本個(gè)數(shù)占類cj樣本總數(shù)的比例??梢?jiàn),特征選擇系數(shù)大小由類在特征上取值的集中程度和該類與其他所有類在該特征上取值區(qū)間的差異程度決定。在特征上的取值越集中,類間的取值區(qū)間相差越大,特征系數(shù)越大,相應(yīng)的特征和類相關(guān)性越強(qiáng)。
定義2 特征影響系數(shù)Ii
特征影響系數(shù)Ii用來(lái)衡量特征ti對(duì)分類準(zhǔn)確率的影響程度。定義如下:
1.2 算法原理
FSSR方法的核心思想是基于相關(guān)性并利用統(tǒng)計(jì)的方法找出既能準(zhǔn)確標(biāo)識(shí)網(wǎng)絡(luò)應(yīng)用同時(shí)又在不同應(yīng)用類別之間具有明顯分布差異的網(wǎng)絡(luò)流量特征。如果所有目標(biāo)應(yīng)用的樣本在某些流量特征上的分布都很集中,同時(shí)各個(gè)應(yīng)用的分布之間差異明顯,那么顯然利用這些特征能夠很好地區(qū)分出各個(gè)目標(biāo)應(yīng)用。比如,目標(biāo)應(yīng)用a的樣本在特征1上的取值分布集合是{1,2},在特征2上的取值分布集合是{1,2,3,4,5},目標(biāo)應(yīng)用b的樣本在特征1上的取值分布集合是{9,10},在特征2上的取值分布集合是{4,5,6,7,8},比較特征1和特征2,顯然利用特征1能更好地標(biāo)識(shí)和區(qū)分目標(biāo)應(yīng)用。1.1節(jié)中的特征選擇系數(shù)即基于此思想定義。
1.3 算法描述
FSSR方法主要由特征選擇系數(shù)計(jì)算、初始特征子集生成、特征影響系數(shù)計(jì)算和最優(yōu)特征子集生成四個(gè)部分組成。算法運(yùn)行過(guò)程分為兩個(gè)階段,第一階段生成初始特征子集,由于初始特征子集中的特征數(shù)量與網(wǎng)絡(luò)應(yīng)用類別數(shù)量相等,當(dāng)網(wǎng)絡(luò)應(yīng)用數(shù)量較多時(shí),很可能造成選取到冗余和不相關(guān)特征,因此第二階段對(duì)初始特征子集進(jìn)行二次選擇,進(jìn)一步尋優(yōu),得到最優(yōu)特征子集。在第二階段計(jì)算各特征的特征影響系數(shù)時(shí),采用C4.5決策樹分類算法評(píng)估分類準(zhǔn)確率。算法詳細(xì)步驟描述如下:
輸入:網(wǎng)絡(luò)流樣本訓(xùn)練數(shù)據(jù)集X
輸出:最優(yōu)特征子集S
(1)初始化初始特征子集S1,最優(yōu)特征子集S為空集;
(2)遍歷訓(xùn)練集X中的樣本,根據(jù)式(1)計(jì)算每個(gè)網(wǎng)絡(luò)應(yīng)用類型對(duì)應(yīng)每個(gè)流量特征的特征選擇系數(shù)fij,其中1≤i≤m,1≤j≤k;
(3)對(duì)應(yīng)用類型cj,掃描集合{fij}(1≤i≤m),計(jì)算I=,得到對(duì)應(yīng)的流量特征tI,放入S1中;如果S1中已有特征tI,則刪除fij,重新計(jì)算;
(4)循環(huán)執(zhí)行步驟(3),直到遍歷完所有的應(yīng)用類型cj(1≤j≤k),得到初始特征子集S1;
(5)利用初始特征子集S1,對(duì)訓(xùn)練集X使用10次折疊交叉驗(yàn)證,采用C4.5決策樹分類算法,根據(jù)式(2),計(jì)算S1中每個(gè)特征的特征影響系數(shù);
(6)查找S1中特征影響系數(shù)最大的特征順序放入S中,并將該特征從S1中刪除;
(7)利用特征子集S,對(duì)訓(xùn)練集X使用10次折疊交叉驗(yàn)證,采用C4.5決策樹分類算法,計(jì)算分類準(zhǔn)確率pS;
(8)重復(fù)執(zhí)行步驟(5)~(7),直到pS取得最大值,此時(shí)的特征子集S即為最優(yōu)特征子集;
(9)結(jié)束。
2 實(shí)驗(yàn)與分析
2.1 實(shí)驗(yàn)工具與實(shí)驗(yàn)數(shù)據(jù)集
本文使用的主要實(shí)驗(yàn)工具為Weka 3.8。Weka是新西蘭懷卡托大學(xué)開(kāi)發(fā)的一個(gè)基于JAVA環(huán)境的開(kāi)源機(jī)器學(xué)習(xí)以及數(shù)據(jù)挖掘軟件,包含多種機(jī)器學(xué)習(xí)算法。同時(shí),Weka提供JAVA接口,為開(kāi)發(fā)者提供了一個(gè)基于JAVA的二次開(kāi)發(fā)平臺(tái),支持開(kāi)發(fā)者自己編寫代碼進(jìn)行新學(xué)習(xí)算法開(kāi)發(fā)。實(shí)驗(yàn)平臺(tái)運(yùn)行Windows 7操作系統(tǒng),CPU為Intel Core i5-3470 3.20 GHz,內(nèi)存大小為4 GB。
實(shí)驗(yàn)利用MOORE A W等人在文獻(xiàn)[8]中給出的網(wǎng)絡(luò)流數(shù)據(jù)集Moore_set作為實(shí)驗(yàn)測(cè)試數(shù)據(jù)集,這是目前網(wǎng)絡(luò)流量分類研究中最為權(quán)威的測(cè)試數(shù)據(jù)集。Moore_set中包含10個(gè)數(shù)據(jù)子集、377 526個(gè)網(wǎng)絡(luò)流樣本、248個(gè)流量特征屬性(最后一個(gè)屬性是目標(biāo)應(yīng)用,即指出網(wǎng)絡(luò)流所屬的應(yīng)用類型)、12種應(yīng)用類型(數(shù)據(jù)子集中應(yīng)用類型FTP又進(jìn)一步分為:FTP-CONTROL、FTP-PASV和FTP-DATA)。10個(gè)數(shù)據(jù)子集的采集時(shí)間在同一天,按先后順序編號(hào),每個(gè)數(shù)據(jù)子集的采集持續(xù)時(shí)間約30 min,具體統(tǒng)計(jì)信息如表1~表3所示。
從表1可以看出,Moore_set中INT和GAMES兩種應(yīng)用類型的樣本數(shù)量相對(duì)過(guò)少,不具有代表性,因此刪除這兩種類型的樣本,保留其余樣本。
從表3可以看出,DB和MMEDIA兩種應(yīng)用類型分別在數(shù)據(jù)子集5、6和數(shù)據(jù)子集9、10中沒(méi)有分布。為了保證實(shí)驗(yàn)數(shù)據(jù)集中應(yīng)用分布的統(tǒng)一,不選取這4個(gè)數(shù)據(jù)子集作為實(shí)驗(yàn)數(shù)據(jù)集。經(jīng)過(guò)以上選擇處理后,實(shí)驗(yàn)數(shù)據(jù)集共包含6個(gè)數(shù)據(jù)子集、205 210個(gè)網(wǎng)絡(luò)流樣本、10種應(yīng)用類型,6個(gè)數(shù)據(jù)子集分別是entry01、entry02、entry03、entry04、entry07、entry08[8]。
2.2 實(shí)驗(yàn)結(jié)果分析
為了有效評(píng)價(jià)分類效果,Weka給出了分類算法的總體準(zhǔn)確率和按類計(jì)算的詳細(xì)準(zhǔn)確率,詳細(xì)準(zhǔn)確率包括真正率、假正率、精確率、召回率、F-Measure值等性能指標(biāo)。文獻(xiàn)[1]中給出了對(duì)以上各項(xiàng)性能評(píng)價(jià)指標(biāo)的詳細(xì)介紹,請(qǐng)參閱。
實(shí)驗(yàn)首先分別在各個(gè)數(shù)據(jù)子集上運(yùn)行FSSR特征選擇方法,獲得并記錄從各數(shù)據(jù)子集選取的初始特征子集和最優(yōu)特征子集以及分別僅包含初始特征和最優(yōu)特征的數(shù)據(jù)子集;然后為了評(píng)價(jià)FSSR方法的效果和效率,選擇C4.5算法構(gòu)造分類器,使用10次折疊交叉驗(yàn)證方法分別在初始特征數(shù)據(jù)子集、最優(yōu)特征數(shù)據(jù)子集和未進(jìn)行特征選擇的全特征數(shù)據(jù)子集上執(zhí)行分類操作,對(duì)網(wǎng)絡(luò)流量進(jìn)行分類識(shí)別。實(shí)驗(yàn)結(jié)果對(duì)比如表4~表6所示。
由表4可知,經(jīng)過(guò)FSSR方法選擇后的特征數(shù)量明顯減少,將原來(lái)的248個(gè)特征平均減少到現(xiàn)在的7.67個(gè),表明FSSR的降維效果明顯。
由表5可知,F(xiàn)SSR方法在6個(gè)實(shí)驗(yàn)數(shù)據(jù)子集上獲得的平均分類總體準(zhǔn)確率略高于原始全特征數(shù)據(jù)子集的總體準(zhǔn)確率,準(zhǔn)確率未有較大程度地提升,主要原因是:分類算法C4.5本身性能很好,對(duì)未進(jìn)行特征選擇的原始實(shí)驗(yàn)數(shù)據(jù)集進(jìn)行分類時(shí)總體準(zhǔn)確率已經(jīng)達(dá)到了99.6%以上,提升空間有限,并且實(shí)驗(yàn)數(shù)據(jù)集樣本數(shù)量龐大,增加的少量正確分類樣本數(shù)對(duì)準(zhǔn)確率貢獻(xiàn)較小。
由表6可知,雖然FSSR方法在提升分類準(zhǔn)確率方面貢獻(xiàn)不大,但由于在特征集合降維方面效果明顯,降低了分類模型的復(fù)雜度,所以在系統(tǒng)建模時(shí)間上,利用FSSR方法獲得的最優(yōu)特征子集進(jìn)行分類建模的時(shí)間遠(yuǎn)遠(yuǎn)低于全特征集合。
表7給出了FSSR在實(shí)驗(yàn)數(shù)據(jù)集上選取頻率最高的6個(gè)特征,其中序號(hào)、標(biāo)識(shí)符參照文獻(xiàn)[8]中的定義。
總的來(lái)說(shuō),F(xiàn)SSR特征選擇方法在網(wǎng)絡(luò)流量分類識(shí)別方面取得了較好的效果,在保證分類總體準(zhǔn)確率的同時(shí),大幅度地減少了網(wǎng)絡(luò)流量的統(tǒng)計(jì)特征數(shù)目,從而有效降低了后續(xù)分類系統(tǒng)模型的復(fù)雜度和對(duì)系統(tǒng)資源的占用,提高了分類效率。
3 結(jié)論
本文針對(duì)機(jī)器學(xué)習(xí)在網(wǎng)絡(luò)流量分類中面臨的流量統(tǒng)計(jì)特征選擇問(wèn)題,提出一種基于統(tǒng)計(jì)排序的特征選擇方法,首先利用特征選擇系數(shù)為各網(wǎng)絡(luò)應(yīng)用類型選擇相關(guān)性強(qiáng)、與其他應(yīng)用區(qū)分度高的特征,組成初始特征子集。考慮到網(wǎng)絡(luò)應(yīng)用類型過(guò)多時(shí)仍然可能導(dǎo)致選取到冗余和不相關(guān)的特征,再將特征影響系數(shù)作為特征評(píng)估排序的依據(jù),對(duì)初始特征子集進(jìn)行二次特征選擇,生成最優(yōu)特征子集。實(shí)驗(yàn)結(jié)果表明,該方法在保證分類整體準(zhǔn)確率的同時(shí),有效減少了流量統(tǒng)計(jì)特征的個(gè)數(shù),達(dá)到了預(yù)期的效果。但網(wǎng)絡(luò)流量存在應(yīng)用類別分布不均衡以及概念漂移等問(wèn)題,在對(duì)多類不均衡流量進(jìn)行分類時(shí),機(jī)器學(xué)習(xí)分類模型往往傾向于多數(shù)類,造成少數(shù)類召回率較低。目前的特征選擇方法可以很好地解決維數(shù)災(zāi)難的問(wèn)題,但在解決上述問(wèn)題方面還有很多不足,下一步的主要研究方向即為結(jié)合機(jī)器學(xué)習(xí)和特征選擇解決網(wǎng)絡(luò)流量分類中的多類不均衡和概念漂移問(wèn)題。
參考文獻(xiàn)
[1] 汪立東,錢麗萍,王大偉,等.網(wǎng)絡(luò)流量分類方法與實(shí)踐[M].北京:人民郵電出版社,2013.
[2] 高文,錢亞冠,吳春明,等.網(wǎng)絡(luò)流量特征選擇方法中的分治投票策略研究[J].電子學(xué)報(bào),2015,43(4):795-799.
[3] 儲(chǔ)慧琳,張興明.一種組合式特征選擇算法及其在網(wǎng)絡(luò)流量識(shí)別中的應(yīng)用[J].小型微型計(jì)算機(jī)系統(tǒng),2012,33(2):325-329.
[4] 潘吳斌,程光,郭曉軍,等.基于選擇性集成策略的嵌入式網(wǎng)絡(luò)流特征選擇[J].計(jì)算機(jī)學(xué)報(bào),2014,37(10):2128-2137.
[5] 孫興斌,孫彥贊,鄭小盈,等.面向多類不均衡網(wǎng)絡(luò)流量的特征選擇方法[J].計(jì)算機(jī)應(yīng)用研究,2017,34(2):568-571.
[6] 孫興斌,芮赟.一種基于統(tǒng)計(jì)頻率的網(wǎng)絡(luò)流量特征選擇方法[J].小型微型計(jì)算機(jī)系統(tǒng),2016,37(11):2483-2487.
[7] 申健,夏靖波,張曉燕,等.基于分治排序策略的流量二次特征選擇[J].電子學(xué)報(bào),2017,45(1):128-133.
[8] MOORE A W,ZUEV D,CROGAN M.Discriminators for use in flow-based classification,RR-05-13[R].London:Queen Mary University of London,2005.