蔣勝利,張文祥,張軍英
(1.洛陽師范學(xué)院 電子商務(wù)學(xué)院,河南 洛陽 471934;2.西安電子科技大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,陜西 西安 710071)
互聯(lián)網(wǎng)高速發(fā)展,據(jù)中國互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)公布的數(shù)據(jù),2020年1-6月,移動(dòng)互聯(lián)網(wǎng)接入流量消費(fèi)達(dá)745億GB(第46次中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告,http://www.gov.cn/xinwen/2020-09-29/5548176/files/1c6b4a2ae06c4ffc8bccb49da353495e.pdf),各種各樣的網(wǎng)絡(luò)應(yīng)用程序?qū)映霾桓F。互聯(lián)網(wǎng)的應(yīng)用從簡單的文字信息交流和門戶網(wǎng)站的信息展示,發(fā)展到現(xiàn)在的游戲、視頻、旅游等各種不同的網(wǎng)絡(luò)應(yīng)用程序。多樣的互聯(lián)網(wǎng)應(yīng)用極大的豐富了人們的生活,隨之而來網(wǎng)絡(luò)流量的增大,使對(duì)網(wǎng)絡(luò)環(huán)境的監(jiān)控與管理要求越來越高,不僅需要分析網(wǎng)絡(luò)流量,更需要對(duì)網(wǎng)絡(luò)上所運(yùn)用的應(yīng)用程序進(jìn)行實(shí)時(shí)分類,是較流量分析的更深層次分析的需要[1]。
本文的選題意義和價(jià)值表現(xiàn)在:所提出的方法能夠快速高效地從數(shù)據(jù)中找出多樣化網(wǎng)絡(luò)應(yīng)用的特征表示,并基于此對(duì)網(wǎng)絡(luò)應(yīng)用程序進(jìn)行高質(zhì)量分類,從而為對(duì)大量、多樣、高速的網(wǎng)絡(luò)應(yīng)用環(huán)境的進(jìn)一步分析、高效監(jiān)督與有效控制,奠定基礎(chǔ)和技術(shù)保障。
表1 部分特征名稱及其含義
在對(duì)網(wǎng)絡(luò)應(yīng)用程序分類與識(shí)別這一問題上,當(dāng)前使用報(bào)文解析的方式得到各種包含大量網(wǎng)絡(luò)流量特征數(shù)據(jù)集,具體的流量特征及其含義部分示于表1中。針對(duì)這些網(wǎng)絡(luò)流量特征,文獻(xiàn)[2]提出了基于特征選擇的業(yè)務(wù)流網(wǎng)絡(luò)應(yīng)用分類算法,但所選擇的特征嚴(yán)重依賴于后續(xù)所采用的分類器的類型,從而不能表征和解釋網(wǎng)絡(luò)應(yīng)用程序的特征;文獻(xiàn)[3]提出了一種基于方差系數(shù)的特征選擇方法,然后通過方差是在高斯分布假設(shè)下的統(tǒng)計(jì)量,而實(shí)際情況完全有可能違背這個(gè)假設(shè)。文獻(xiàn)[4]針對(duì)網(wǎng)絡(luò)流量的時(shí)間特征,提出了基于時(shí)間特征的網(wǎng)絡(luò)應(yīng)用程序分類算法,但這種只處理時(shí)間特征的方法忽略了非時(shí)間特征對(duì)分類結(jié)果的影響。隨著深度學(xué)習(xí)在圖像、自然語言處理、推薦算法等領(lǐng)域的成功應(yīng)用,文獻(xiàn)[5]提出了一種將網(wǎng)絡(luò)流量特征轉(zhuǎn)換為圖像的深度學(xué)習(xí)框架來識(shí)別網(wǎng)絡(luò)應(yīng)用程序。這是一種具有革命性的創(chuàng)新,充分利用了深度學(xué)習(xí)在圖像處理任務(wù)上的優(yōu)勢,但存在對(duì)硬件性能的要求較高、結(jié)果的可解釋性差和高時(shí)間成本等劣勢,不適于網(wǎng)絡(luò)分析的實(shí)時(shí)性要求。
對(duì)于數(shù)據(jù)科學(xué)家而言,大多希望通過模型的微調(diào)以獲得模型的最佳性能,所以模型的可解釋性被認(rèn)為是實(shí)驗(yàn)改進(jìn)的指導(dǎo)準(zhǔn)則和方向,從而盡可能地得到最優(yōu)的結(jié)果。而在工業(yè)界中,利用機(jī)器學(xué)習(xí)以及深度學(xué)習(xí)解決問題需要與用戶建立信任關(guān)系,無論最終解決方案的目標(biāo)是什么,終端用戶都需要可解釋、可關(guān)聯(lián)或可理解的解決方案。網(wǎng)絡(luò)應(yīng)用程序分類任務(wù),同樣需要模型的可解釋性作為網(wǎng)絡(luò)流量相關(guān)業(yè)務(wù)的數(shù)據(jù)原理支撐,只有知道具體的每一個(gè)特征所代表的含義才能有的放矢的給出相應(yīng)的解決方案。從表1可以看出,網(wǎng)絡(luò)流量特征名稱是清晰且有對(duì)應(yīng)的含義的,但數(shù)據(jù)量大,所以常使用降低特征維度的方式來縮減數(shù)據(jù)量,以提高模型的分類效果、可解釋性及泛化能力。
常用的降維方法有特征選擇法[6]和特征提取法[7]。特征選擇和特征提取方法存在同一個(gè)目標(biāo),即減少數(shù)據(jù)集中特征的數(shù)量,起到數(shù)據(jù)降維、提升模型學(xué)習(xí)效果的作用。但它們各自的原理和使用的技術(shù)不同:特征提取是通過原始特征的組合與計(jì)算獲得新的特征,這些新特征不再具有原始特征的含義,從而用這些新特征訓(xùn)練的模型可解釋性差,使這一方法在對(duì)解釋性要求較高的場合并不適用;特征選擇則從原始特征中選擇對(duì)模型訓(xùn)練效果好的特征子集,由于原始特征的含義清晰,用決策樹等解釋性強(qiáng)的集成模型后,可明確分析出哪些特征對(duì)分類起正作用,哪些起負(fù)作用,從而僅用起正作用的特征進(jìn)行分類,這對(duì)模型分類正確率和泛化能力的提升,以及對(duì)實(shí)際業(yè)務(wù)問題的分析有很大的幫助。
目前大多數(shù)網(wǎng)絡(luò)應(yīng)用程序分類采用特征選擇方法,但是方法單一,效果不足,尤其是很多特征選擇方法的性能嚴(yán)重依賴于其后續(xù)的分類器的選擇,使所選擇出的特征不能較好地表征網(wǎng)絡(luò)應(yīng)用程序的特性[8,9]。
實(shí)際上,特征選擇至少有兩個(gè)不同的目的[10],(1) 以分類目的,即選出最優(yōu)的特征子集,使用在這個(gè)特征子集上的分類器可對(duì)樣本進(jìn)行最好的分類;(2) 以表征為目的,即選出的最優(yōu)特征子集,能夠?qū)颖咎匦赃M(jìn)行最好的表征。這兩個(gè)目的既不同又聯(lián)系,前者更強(qiáng)調(diào)分類性能,而分類性能常常與所選用的分類器有關(guān),后者更強(qiáng)調(diào)表征性能,從而在此基礎(chǔ)上的分類性能應(yīng)基本與分類器的選用基本無關(guān)。一定程度上,以表征為目的的特征選擇應(yīng)是特征選擇的最終目標(biāo),因?yàn)槠鋵?duì)樣本特性的優(yōu)秀表征能力,使在此基礎(chǔ)上的分類性能,應(yīng)具有更為優(yōu)秀的分類性能。
本文試圖給出一種特征選擇方法,以期選出的特征較少依賴后續(xù)分類器選擇,從而能更好地表征網(wǎng)絡(luò)應(yīng)用程序的特征。為此,提出了一種多樣化組合特征選擇的網(wǎng)絡(luò)應(yīng)用程序分類算法FIRFEP(Feature Importance and Recursive Feature Elimination with Pearson Correlation Coefficient)。該算法組合了兩種不同的特征選擇方法(特征重要性篩選法和遞歸特征消除法),每種方法在具體方法上都體現(xiàn)了廣泛的多樣化的特點(diǎn),并將這些方法選出的特征進(jìn)行并運(yùn)算并去除其中的冗余特征,且每種方法都采用了具有較好魯棒性的算法,達(dá)到了最終選擇出能更好表征網(wǎng)絡(luò)應(yīng)用程序特征的目的。與目前的3種主流特征選擇算法和6種主流分類算法在網(wǎng)絡(luò)應(yīng)用程序分類的實(shí)驗(yàn)結(jié)果比較表明,算法在泛化性能和運(yùn)行效率上都得到了明顯提升,特別地,運(yùn)行效率還得到了極大的提升,使對(duì)網(wǎng)絡(luò)應(yīng)用程序的實(shí)時(shí)監(jiān)控成為可能。
我們認(rèn)為,現(xiàn)有各種特征選擇方法,要么與分類器無關(guān)卻用于分類時(shí)性能欠佳,要么與分類器有關(guān)卻存在分類器偏好(即換種分類器的性能會(huì)較大幅度下降),難于反映數(shù)據(jù)中的本質(zhì)特征。從這個(gè)意義上講,充分利用好各種特征選擇方法的優(yōu)勢,通過由它們選出的特征的組合,并去除相關(guān)特征,則更能反映數(shù)據(jù)本身的本質(zhì)。從這個(gè)意義上講,通過現(xiàn)有特征選擇方法所選擇出特征的多樣性組合,是選出盡可能不存在分類器偏好的數(shù)據(jù)本質(zhì)特征的重要途徑。圖1給出了FIRFEP算法的基本架構(gòu)。
圖1 多樣化組合特征選擇法基本框架
本文提出的多樣化組合特征選擇(FIRFEP)的原則是:第一,所采用的特征選擇方法應(yīng)盡可能不同,從而所選出的特征盡可能地形成優(yōu)勢互補(bǔ);第二,對(duì)于分類器依賴的特征選擇方法,其所依賴的分類器應(yīng)盡可能不同,從而其所選出的特征構(gòu)成不同的分類器依賴;第三,分類器的選取選用具有良好魯棒性、泛化能力、易于對(duì)分類過程進(jìn)行解釋的樹形結(jié)構(gòu)分類器。這三點(diǎn)導(dǎo)致了特征選擇的多樣性。將這些方法選擇出來的特征組合起來(通過并運(yùn)算),有可能存在冗余特征,因此還需要去除它們之間具有相關(guān)特性的冗余特征,獲得最終的特征選擇結(jié)果。
特征選擇方法通常分為過濾式(Filter)、包裹式(Wrapper)和嵌入式(Embedding)[10],其中每類方法的典型算法分別為方差選擇法(Variance Threshold,VT)[11],遞歸特征消除法(FFE)[12]、基于邏輯回歸帶L1懲罰項(xiàng)的特征選擇法(L1-based)[13]。鑒于以上原則,我們選用上述三種方法作為本文算法的特征選擇基礎(chǔ)算法,選用具有樹形結(jié)構(gòu)的魯棒分類器GBDT[14]、XGBoost[15]、LightGBM[16]等作為本文算法的基礎(chǔ)分類器。
FIRFEP算法分為兩個(gè)階段,第一階段是分別使用基于特征重要性篩選法的N種特征選擇方法和基于遞歸特征消除法中M種分類器方法對(duì)數(shù)據(jù)集中的特征分別進(jìn)行初步篩選,并對(duì)篩選出的特征子集求取并集;第二階段,采用皮爾遜相關(guān)系數(shù)法對(duì)第一階段篩選出的特征集合進(jìn)行特征相關(guān)性判斷,丟棄具有高線性相關(guān)的特征,達(dá)到進(jìn)一步刪除冗余特征的目的,得到最終的特征選擇集合,且所有的特征選擇和分類器的選用都運(yùn)用了具有良好魯棒性和泛化能力的樹結(jié)構(gòu)模型。多種特征篩選方法的互補(bǔ)、多種分類器的互補(bǔ),以及各類樹模型分類器的良好魯棒性和泛化能力,是本文提出的FIRFEP方法能夠提取出良好特征的關(guān)鍵。
算法用基于特征重要性篩選法對(duì)單個(gè)重要的特征進(jìn)行篩選,用基于遞歸特征消除法對(duì)聯(lián)合起來重要的特征進(jìn)行篩選。其中特征重要性篩選法執(zhí)行效率高、可解釋性強(qiáng)是首選的特征選擇方法,但是存在手動(dòng)指定特征篩選閾值而導(dǎo)致分類算法性能下降、容易丟失聯(lián)合起來重要的特征的問題;遞歸特征消除法則較好解決了聯(lián)合起來重要的特征篩選,但所選出的特征嚴(yán)重依賴于其中所選用的分類器類型。FIRFEP算法則將這兩種方法結(jié)合,通過對(duì)選出特征的并集運(yùn)算,使所選出的特征既可以滿足高可解釋性,又不丟失聯(lián)合起來重要的特征,同時(shí)其性能又不依賴于所采用的分類器,從而能夠更加客觀地反映被識(shí)別目標(biāo)的特性,并運(yùn)用皮爾遜相關(guān)系數(shù)篩選法,通過丟棄特征線性相關(guān)性大于設(shè)定門限的冗余特征,達(dá)到進(jìn)一步提升算法性能的目的。
RIRFEP算法的一個(gè)重要特點(diǎn)是特征選擇的多樣化,通過多樣化的特征選擇方法選出的特征的并集,并去除相關(guān)的特征,獲取最終的特征選擇結(jié)果。RIRFEP算法的基本原理具體如下。
特征重要性也稱為基尼重要性或基尼指數(shù)[17]?;嶂笖?shù)與信息熵有類似特質(zhì),均可用來衡量信息的不確定性。依據(jù)基尼指數(shù)對(duì)特征進(jìn)行篩選的方法在決策樹模型建模時(shí)常常用到。決策樹中的每個(gè)節(jié)點(diǎn)都是關(guān)于某個(gè)特征對(duì)樣本劃分的條件,通過計(jì)算不純度來選擇最優(yōu)的決策條件。對(duì)于多個(gè)決策樹來說,計(jì)算每個(gè)特征不純度下降程度的總和,把它們的歸一化值作為特征的重要性,基尼重要性公式如
(1)
其中N是樣本總數(shù),Nt是當(dāng)前節(jié)點(diǎn)的樣本數(shù),NtR、NtL是當(dāng)前節(jié)點(diǎn)右孩子、左孩子的樣本數(shù),impurity是當(dāng)前節(jié)點(diǎn)的不純度,即基尼指數(shù),right_impurity、left_impurity是當(dāng)前節(jié)點(diǎn)右孩子、左孩子的不純度。
假設(shè)有K個(gè)類,每個(gè)樣本都有其類標(biāo),對(duì)于某一樣本,其屬于第k類的概率pk可用屬于這類的樣本數(shù)占樣本總數(shù)的比例來計(jì)算,則這一特征的基尼指數(shù)的公式如
(2)
特征的基尼指數(shù)越大,說明該特征對(duì)表征目標(biāo)特性的重要性越大。
基于樹模型的特征選擇方法具有魯棒性好、可解釋性強(qiáng)、易于使用等特點(diǎn),本文采用了3種較新的基于樹模型的特征選擇方法進(jìn)行特征選擇(分別是GBDT[14]、XGBoost[15]、LightGBM[16]),依據(jù)這些方法的特征重要性對(duì)特征進(jìn)行排序獲得其各自的特征選擇結(jié)果,并將這些結(jié)果進(jìn)行并操作,得到基于特征重要性的特征篩選結(jié)果。采用多種特征選擇方法的主要考慮是,每種特征選擇方法都有各自的偏向,而對(duì)這些方法各自選出的特征進(jìn)行并操作則會(huì)使所獲得的特征篩選結(jié)果具有很好的互補(bǔ)性。
Guyon等人在對(duì)癌癥分類的基因選擇研究中首次提出了遞歸特征消除法(RFE)[12],該方法通過對(duì)產(chǎn)生的特征子集按照分類中特征的重要性進(jìn)行排序,可以刪除冗余和無效的特征,提升分類算法的分類性能。
遞歸特征消除法是一種尋找最優(yōu)特征子集的貪心算法,其主要思想是反復(fù)的構(gòu)建分類器,對(duì)所有特征的特征重要性進(jìn)行排序,去掉當(dāng)前特征集中最不重要的特征或保留當(dāng)前重要性最高的特征,然后在剩余的特征集上重復(fù)這個(gè)過程,直到減少特征會(huì)造成分類器分類性能損失或增加新的特征分類器但分類性能沒有提升為止。這個(gè)過程最后留下的特征集合就是最終所選擇的特征集合。RFE的具體過程為(1) 訓(xùn)練分類器,優(yōu)化目標(biāo)損失函數(shù);(2) 根據(jù)特征重要性準(zhǔn)則計(jì)算特征排名;(3) 移除特征重要性最低的特征或保留特征重要性最高的特征;(4) 重復(fù)上述步驟直到分類器性能不再提升或所有特征都已遍歷。
文獻(xiàn)[18]指出該方法嚴(yán)重依賴分類器本身來選擇特征,選取的分類器不同,最終遞歸特征消除法得到的特征子集也會(huì)不同,從而所得到的特征子集不能客觀反映各分類對(duì)象的特征。
本文采取多種不同的分類器來解決該方法對(duì)單一分類器的依賴,提高所選特征的泛化能力。鑒于樹模型的分類器具有良好的魯棒性,在運(yùn)用RFE進(jìn)行特征選擇過程中,我們分別選用2個(gè)具有樹結(jié)構(gòu)的分類器(RF分類器[19]和極度隨機(jī)樹Extra Trees[20])進(jìn)行分類,用基尼重要性對(duì)特征進(jìn)行排序,并對(duì)選出的特征進(jìn)行并操作,獲得特征篩選結(jié)果。
通過對(duì)2.1和2.2中的特征篩選結(jié)果的進(jìn)一步的并操作,得到一個(gè)特征子集。由于在2.1和2.2中均未考慮特征之間的相關(guān)性問題,然而特征子集中可能存在冗余特征,為此通過特征之間的相關(guān)性分析來進(jìn)一步獲得更加緊湊的特征子集。
皮爾遜相關(guān)系數(shù)法是一種最簡單的、能幫助理解特征與特征之間統(tǒng)計(jì)線性關(guān)系的統(tǒng)計(jì)學(xué)方法[21]。該方法衡量的是變量之間的線性相關(guān)性,結(jié)果處于區(qū)間[-1,1],-1表示完全的負(fù)相關(guān),+1表示完全的正相關(guān),0表示沒有線性相關(guān)性,其計(jì)算公式為
(3)
對(duì)進(jìn)一步并操作后的特征子集,計(jì)算其中兩兩之間的皮爾遜相關(guān)系數(shù),一旦其相關(guān)系數(shù)的絕對(duì)值超過一個(gè)門限,則僅取其中一個(gè)特征,從而最終獲得更為緊湊的特征子集,作為本文提出的組合特征選擇的最終特征選擇結(jié)果。
實(shí)驗(yàn)數(shù)據(jù)為網(wǎng)上公開數(shù)據(jù),實(shí)驗(yàn)內(nèi)容包括各種特征選擇方法選出特征后運(yùn)用各類分類器進(jìn)行分類的泛化能力(分類準(zhǔn)確率)和識(shí)別過程的實(shí)時(shí)性(運(yùn)行時(shí)間),目的是驗(yàn)證本文提出的FIRFEP方法所選出的特征,對(duì)各類分類器的適應(yīng)性是否其分類準(zhǔn)確率基本不受后續(xù)分類器類型選擇的影響,從而是更具客觀地反映識(shí)別對(duì)象的特征。
表2示出了實(shí)驗(yàn)環(huán)境,表3示出了實(shí)驗(yàn)中使用的部分超參數(shù)。這里重點(diǎn)報(bào)告兩個(gè)實(shí)驗(yàn)的結(jié)果,實(shí)驗(yàn)1對(duì)比了本文FIRFEP算法與常用的特征選擇算法在網(wǎng)絡(luò)應(yīng)用程序的識(shí)別與分類任務(wù)上,不同分類算法的準(zhǔn)確率;實(shí)驗(yàn)2驗(yàn)證了FIRFEP算法在運(yùn)行效率上的提升效果。
表2 實(shí)驗(yàn)環(huán)境
表3 分類模型的參數(shù)設(shè)置
數(shù)據(jù)來源于哥倫比亞波帕揚(yáng)考卡大學(xué)公開網(wǎng)絡(luò)數(shù)據(jù)集[22],該數(shù)據(jù)總共收集了六天不同時(shí)段的共3,577,296個(gè)實(shí)例,其網(wǎng)絡(luò)流的統(tǒng)計(jì)特征由CICFlowmeter[23]獲得(IP地址,端口,到達(dá)時(shí)間等),網(wǎng)絡(luò)應(yīng)用層協(xié)議由ntopng[24](DPI深度報(bào)文檢測)處理所獲得,共計(jì)特征87個(gè)。每條數(shù)據(jù)都保存了由網(wǎng)絡(luò)設(shè)備生成的IP流的信息,即源和目標(biāo)IP地址,端口,到達(dá)時(shí)間,在該流上用作類的第7層協(xié)議(應(yīng)用程序)等87個(gè)屬性特征。大多數(shù)屬性都是數(shù)字類型,由于有時(shí)間戳,也有字符串類型和日期類型。
本文旨在通過組合特征選擇法分類基于網(wǎng)絡(luò)流特征的具體應(yīng)用程序,而不是簡單地通過分析網(wǎng)絡(luò)流五元組來識(shí)別網(wǎng)絡(luò)應(yīng)用程序,且每一個(gè)類別的各個(gè)特征與數(shù)據(jù)采集的時(shí)間無關(guān),因此丟棄源IP地址(Source.IP)、目的IP地址(Destination.IP)、時(shí)間戳(TimeStamp)等特征。為了驗(yàn)證本算法得到模型的泛化能力和普適性,人工的選取了各個(gè)網(wǎng)絡(luò)應(yīng)用數(shù)據(jù)量差別較大、數(shù)據(jù)本身無缺漏且具有代表性的六類網(wǎng)絡(luò)應(yīng)用,分別是:'TWITTER','OFFICE_365','MS_ONE_DRIVE','EBAY','TEAMVIEWER','TWITCH'。它們涵蓋了社交軟件、辦公軟件、云端存儲(chǔ)、購物應(yīng)用、遠(yuǎn)程控制應(yīng)用和在線直播等多方面網(wǎng)絡(luò)應(yīng)用程序。
特征選擇方法通常分為過濾式(Filter)、包裹式(Wrapper)和嵌入式(Embedding),我們選取了這三大類方法中每類方法的典型算法——方差選擇法(Variance Threshold,VT),遞歸特征消除法(RFE)、基于邏輯回歸帶L1懲罰項(xiàng)的特征選擇法(L1-based),與我們的方法進(jìn)行比較,它們各選出的特征并分別用6種主流機(jī)器學(xué)習(xí)分類算法:KNN(k-Nearest Neighbor,K最近鄰)、SVM(Support Vector Machine,支持向量機(jī))、RF(Random Forest,隨機(jī)森林)、GBDT(Gradient Boosting Decision Tree,梯度提升決策樹)、XGBoost(eXtreme Gradient Boosting,極端梯度提升),LightGBM(Light Gradient Boosting Machine,輕量級(jí)的梯度提升器)進(jìn)行分類,以考察本文提出的FIRFEP方法與其它特征選擇方法以及對(duì)各類分類器的適應(yīng)性,即是否分類器的分類性能基本保持較少受到分類器類型的影響。圖2示出了比較實(shí)驗(yàn)的實(shí)驗(yàn)框架。其中,方差選擇法(VT)[11]計(jì)算各個(gè)特征的方差,然后根據(jù)人工預(yù)定的閾值,選擇方差大于閾值的特征。實(shí)驗(yàn)1中閾值為0.8;遞歸特征消除法(FRE)[12]中使用的是隨機(jī)森林分類器進(jìn)行特征消除,所有參數(shù)均為默認(rèn)值;L1-based特征選擇法[13]用基于邏輯回歸帶L1正則化項(xiàng)進(jìn)行特征選擇,其L1正則化法具有稀疏解的特性,天然具備特征選擇的特性,實(shí)驗(yàn)中正則化系數(shù)C取為1。
本文采用機(jī)器學(xué)習(xí)中的通用指標(biāo)——準(zhǔn)確率[25-28]對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行評(píng)價(jià)
(4)
圖2 各種特征選擇方法在各種分類器上的識(shí)別性能比較實(shí)驗(yàn)
其中TP(True Positive)被正確劃分為正例的樣本數(shù);TN(True Negative)被正確劃分為負(fù)例的樣本數(shù);FP(False Positive)被錯(cuò)誤劃分為正例的個(gè)數(shù);FN(False Negative)被錯(cuò)誤劃分為負(fù)例的個(gè)數(shù)。
本文用每種分類算法的運(yùn)行時(shí)間來衡量算法處理網(wǎng)絡(luò)應(yīng)用程序分類問題的實(shí)時(shí)性。
本文所提出的多樣化組合特征選擇方法FIRFEP,其在這組數(shù)據(jù)集上的具體做法如下。對(duì)數(shù)據(jù)集分別運(yùn)用GBDT、XGBoost、LightGBM三種特征選擇方法所獲得的特征篩選結(jié)果如圖3所示,其中圖(a)、(b)、(c)分別為GBDT分類器、XGBoost分類器以及LightGBM分類器最終得到的特征重要性排序結(jié)果。這些結(jié)果中只包含了特征重要性大于平均特征重要性的特征,丟棄了其余特征,最終三種不同的決策樹模型分別保留了15、26、20個(gè)特征。從圖中可以看出,這三種不同模型保留的特征集合中部分特征相同,如“Source.Port”、“Flow.Bytes.s”、“Flow.Duration”等,但同時(shí)也存在單個(gè)特征集合獨(dú)有的特征,如通過GBDT模型篩選出的“Subflow.Fwd.Bytes”特征、XGBoost模型篩選出的“ACK.Flag.Count”特征以及LightGBM模型篩選出的“Bwd.IAT.Total”特征。為提高算法篩選特征的容錯(cuò)率,本文采用將三組特征子集的并集作為特征重要性篩選法的結(jié)果,獲得特征子集A,這一過程獲得的A中共有28個(gè)特征。
圖3 三種特征選擇方法的特征重要性篩選結(jié)果及相應(yīng)特征的特征重要性
(a) RF遞歸特征消除過程 (b) Extra Trees遞歸特征消除過程圖4 遞歸特征消除過程示意圖
對(duì)數(shù)據(jù)集運(yùn)用RFE方法,其中的分類器分別選為RF分類器和Extra Trees所得到的特征集合,其識(shí)別準(zhǔn)確率示于圖4中,其中(a)為RF分類器的結(jié)果,(b)為Extra Trees分類器的結(jié)果。由圖可知,RF分類器在保留9個(gè)特征后,分類器的分類性能就不再上升,Extra Trees分類器在保留了10個(gè)特征后分類器的分類性能就不再上升了。我們對(duì)這9個(gè)特征和這10個(gè)特征進(jìn)行并操作,獲得特征子集B。
將特征子集A與B進(jìn)行并操作,并進(jìn)行相關(guān)性分析,對(duì)于任兩個(gè)特征變量,若其相關(guān)系數(shù)的絕對(duì)值超過設(shè)定門限(實(shí)驗(yàn)中門限設(shè)為1),意味著這兩個(gè)特征在數(shù)學(xué)上存在嚴(yán)重的正或者負(fù)線性相關(guān),那么這兩個(gè)特征對(duì)應(yīng)的實(shí)際含義從某種程度上來說是完全一樣的,只保留其中一個(gè)特征,最終獲得的特征子集記為C,其中共保留了33個(gè)特征。圖5是經(jīng)過相關(guān)性分析后的部分特征相關(guān)性熱力圖。
我們將所選出的33個(gè)特征與用其他典型的VT,RFE(其中的分類器選用RF)和L1-based等特征選擇方法所選出的分別為32、10、22個(gè)特征在KNN、SVM、RF、GBDT、XGBoost、LightGBM等6種主流分類算法上進(jìn)行了網(wǎng)絡(luò)應(yīng)用程序分類的實(shí)驗(yàn)和性能比較,分類準(zhǔn)確率的實(shí)驗(yàn)結(jié)果示于圖6中。由圖可知,使用不同特征選擇方法及不同的機(jī)器學(xué)習(xí)分類算法最終得到的分類準(zhǔn)確率都不相同,其中KNN模型、RF模型、XGBoost模型使用VT特征選擇法最終分類效果最好;SVM模型、GBDT模型、LightGBM模型使用L1-base特征選擇方法最終分類效果最好;而RFE特征選擇法在所有分類模型上最終分類結(jié)果表現(xiàn)都不是最佳的,這一實(shí)驗(yàn)結(jié)果驗(yàn)證運(yùn)用特征遞歸消除法進(jìn)行特征選擇的結(jié)果高度依賴其中所使用到的分類器這一缺點(diǎn),所以FIRFEP算法采取多種不同的分類器來解決遞歸特征消除法對(duì)單一分類器的依賴是很有必要的。使用本文提出的FIRFEP算法對(duì)數(shù)據(jù)集特征進(jìn)行特征選擇,在上述六種分類模型上均具是最好的表現(xiàn),分類準(zhǔn)確率上均有0.5%-3.0%的提升。
圖6 FIRFEP算法與常用特征選擇方法分類準(zhǔn)確率對(duì)比圖
圖7 幾種特征選擇方法選擇出的特征的分類性能比較
圖7給出了不同的特征選擇方法選擇出特征用各個(gè)分類器進(jìn)行分類的分類性能比較,其中Accuracy是分類的平均準(zhǔn)確率,Variance是分類準(zhǔn)確率的方差,從而圖7反映了所選擇出的特征對(duì)后續(xù)分類器的依賴情況。從圖中可以看出,本文提出的FIRFEP特征選擇方法,具有最高的分類平均準(zhǔn)確率和最小的分類準(zhǔn)確率方差,表明了使用所提出的FIRFEP方法,相對(duì)于其它特征選擇方法,選出了最獨(dú)立于后續(xù)分類器的特征。
表4示出各個(gè)分類器在運(yùn)用本文提出的特征選擇方法后的模型運(yùn)行時(shí)間對(duì)比情況,可以看出,采用FIRFEP算法進(jìn)行特征選擇后再進(jìn)行分類任務(wù)和不采用該方法直接進(jìn)行分類任務(wù)相比,各機(jī)器學(xué)習(xí)分類算法進(jìn)行分類的平均執(zhí)行時(shí)間提升量達(dá)到了50%以上,最大執(zhí)行時(shí)間提升量達(dá)到了近90%,極大的縮減了各分類模型在完成網(wǎng)絡(luò)應(yīng)用程序分類任務(wù)上的執(zhí)行時(shí)間,提高了算法的實(shí)時(shí)性,能夠更好適應(yīng)對(duì)快速變化的網(wǎng)絡(luò)環(huán)境進(jìn)行實(shí)時(shí)管理的要求。
上述實(shí)驗(yàn)結(jié)果表明,本文提出的FIFREP算法,保留了與網(wǎng)絡(luò)應(yīng)用程序識(shí)別相關(guān)的重要特征,提升了分類模型在網(wǎng)絡(luò)流量應(yīng)用程序識(shí)別的識(shí)別性能,極大縮減了網(wǎng)絡(luò)應(yīng)用程序識(shí)別的實(shí)時(shí)性,有望在更大規(guī)模網(wǎng)絡(luò)應(yīng)用程序分類數(shù)據(jù)集上取得更好的效果。
表4 模型運(yùn)行時(shí)間對(duì)比
本文提出了一種組合特征選擇法FIRFEP算法來實(shí)現(xiàn)網(wǎng)絡(luò)應(yīng)用程序的分類,其最大特點(diǎn)是:特征選擇方法的多樣性和分類器的多樣性和魯棒性。其中特征選擇方法的多樣性表現(xiàn)在:在基于特征重要性篩選時(shí)采用多種特征選擇方法,在基于遞歸特征消除法進(jìn)行特征選擇時(shí)采用多種分類器;分類器的多樣性表現(xiàn)在:所有分類器均選用 優(yōu)良魯棒性和泛化能力的樹模型分類器(諸如GBDT、XGBoost、LightGBM、RF、Extra Trees等),并對(duì)所選擇的特征進(jìn)行并操作和相關(guān)性分析,保證了所選出的特征具有很好的互補(bǔ)性,既沒有單一特征選擇方法所導(dǎo)致的特征偏好,也沒有單一分類器所導(dǎo)致的分類器偏好,從而能更加客觀地反映網(wǎng)絡(luò)應(yīng)用程序的特征。
通過真實(shí)數(shù)據(jù)實(shí)驗(yàn)和測試,這種多樣化組合特征選擇法在網(wǎng)絡(luò)應(yīng)用程序識(shí)別這一任務(wù)中,具有良好的泛化能力、識(shí)別準(zhǔn)確率及實(shí)時(shí)識(shí)別的性能,適用于用戶量快速增長、環(huán)境日益復(fù)雜以及應(yīng)用程序越發(fā)多元情況下對(duì)網(wǎng)絡(luò)監(jiān)控與管理的迫切需求,具有一定的實(shí)用性和有效性。進(jìn)一步的研究包括開發(fā)新的特征選擇方法以及特征中去除線性無關(guān)但是非線性相關(guān)的特征。
特征選擇是機(jī)器學(xué)習(xí)的重要研究領(lǐng)域,如何從眾多的特征中選出反映問題本質(zhì)的特征,而較少或不受所采用技術(shù)的影響,多樣化組合是重要解決方案,不僅對(duì)于網(wǎng)絡(luò)應(yīng)用程序分類問題,對(duì)于其它應(yīng)用問題的特征選擇,也有很好借鑒意義。
聊城大學(xué)學(xué)報(bào)(自然科學(xué)版)2021年3期