• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Web用戶異常行為檢測的優(yōu)化研究

      2021-03-17 09:34:00王青松
      關(guān)鍵詞:特征選擇決策樹樣本

      王青松,李 菲

      (遼寧大學(xué) 信息學(xué)院,遼寧 沈陽 110036)

      0 引言

      數(shù)據(jù)分析伴隨著大數(shù)據(jù)時代的發(fā)展,Web用戶的異常行為檢測技術(shù)[1-3]是當前研究熱點.近幾年,面對大規(guī)模用戶每天都會訪問Web網(wǎng)頁所產(chǎn)生的數(shù)據(jù)處理的需求,數(shù)據(jù)分析技術(shù)得以蓬勃發(fā)展.從大量數(shù)據(jù)中找到其背后隱藏的規(guī)律和模式,對異常數(shù)據(jù)的實時檢測具有重要的實際應(yīng)用意義[4].統(tǒng)計數(shù)據(jù)預(yù)測采用分布式處理、并行處理和網(wǎng)格計算等方法,結(jié)合相關(guān)的數(shù)據(jù)特征挖掘和聚類,實現(xiàn)數(shù)據(jù)預(yù)測[5].

      早期人們通常采用端口掃描、報文特征字段匹配等方法對異常行為進行深入分析以獲取特征,從而實現(xiàn)Web用戶異常行為的檢測[6].而人工智能技術(shù)的發(fā)展,機器學(xué)習(xí)技術(shù)更多地被用于從網(wǎng)絡(luò)數(shù)據(jù)中自動計算異常行為模式、提取其特征,從而自動產(chǎn)生檢測規(guī)則,大大降低了開發(fā)代價,而機器學(xué)習(xí)主要分為無監(jiān)督學(xué)習(xí)和有監(jiān)督學(xué)習(xí).

      傳統(tǒng)的無監(jiān)督機器學(xué)習(xí)算法處理的是無標記或者數(shù)據(jù)趨勢模糊的情況下,這類算法不僅開銷大而且訓(xùn)練出來的模型可讀性差,準確度較低,復(fù)雜度高且不適合時間序列數(shù)據(jù),對Web用戶異常行為的檢測準確率較低,例如期望最大化算法(Exceptation Maximization)等.

      基于有監(jiān)督的機器學(xué)習(xí)算法通過利用帶標簽的訓(xùn)練數(shù)據(jù)構(gòu)建模型,來對未知數(shù)據(jù)進行預(yù)測,該類方法在模型可讀性、魯棒性等方面優(yōu)于無監(jiān)督學(xué)習(xí)的檢測方法,但易出現(xiàn)過擬合或欠擬合,泛化能力較差的問題.而且對訓(xùn)練樣本中標記數(shù)據(jù)都要檢索一遍,關(guān)鍵特征提取率不高,增加了很多不必要的開銷.例如Teodoro[7]等人研究出基于異常的網(wǎng)絡(luò)入侵技術(shù),提出基于知識、統(tǒng)計和機器學(xué)習(xí)的方法,但是他們的研究并沒有提出一套最先進的機器學(xué)習(xí)方法.Wu和Banzhaf[8]等人研究計算智能方法及其在入侵檢測中的應(yīng)用,詳細地介紹了人工神經(jīng)網(wǎng)絡(luò)、模糊系統(tǒng)、進化計算、人工免疫系統(tǒng)和群體智能等方法,只描述智能計算方法,不包括主流的機器學(xué)習(xí)和數(shù)據(jù)挖掘技術(shù)[9],例如決策樹算法(Decision Tree algorithm)、樸素貝葉斯算法(Naive Bayesian algorithm,NB)等.Bing[10]等人研究基于圖分析和支持向量機的企業(yè)網(wǎng)異常用戶檢測模型中所提取的特征雜亂,沒有對特征的重要性進行區(qū)分.

      綜合現(xiàn)有的數(shù)據(jù)處理與數(shù)據(jù)挖掘的算法,將C4.5決策樹模型與過濾特征選擇Relief-F算法相結(jié)合,利用混淆矩陣的理念計算閾值并進行驗證,提出一種新的Web用戶異常行為檢測算法F_C4.5算法.通過消除冗余特征、減少特征集的大小降低模型建立的復(fù)雜度,對于用戶行為的分類效果更優(yōu),提高Web用戶異常行為檢測的效率和準確度.

      1 相關(guān)知識介紹

      1.1 特征選擇

      在對訓(xùn)練樣例數(shù)t維度為d的樣本點進行回歸時,可能存在d大于或者遠遠大于t的情況,在d中可能存在f個無用特征,若去除這些無用特征可能需要枚舉所有可能產(chǎn)生的情況,使用交叉驗證的方法對每一種情況計算其對應(yīng)的錯誤率,根據(jù)得到的結(jié)果衡量應(yīng)該消除的無用特征,這種方法對樣本數(shù)據(jù)的訓(xùn)練和測試次數(shù)過多,浪費時間和空間資源.可以采用過濾特征選擇(Filter feature selection)的方法處理樣本數(shù)據(jù),降低復(fù)雜度并且提高了算法的效率.

      過濾特征選擇方法通過對數(shù)據(jù)的常用屬性(例如一致性、相關(guān)性、距離等)進行不同的度量來選擇特征[11].其中最著名的方法是Kira和Rendell在1992年提出的Relief(Relevant Features),以及由Kononenko于1994年提出的上述算法的改進版Relief-F[12],這兩種方法通過設(shè)計出一個“相關(guān)統(tǒng)計量”來度量某個特征對于學(xué)習(xí)任務(wù)的重要性.Relief-F算法[13-14]能處理多分類問題,解決了Relief算法在不完全、有噪聲、多類別標記的數(shù)據(jù)集上遇到的問題.

      Relief-F算法的“相關(guān)統(tǒng)計量”是一個向量,其每個分量分別對應(yīng)一個初始特征.而子集中的每個特征對應(yīng)的的相關(guān)統(tǒng)計分量的和決定其重要性.算法過程中需要選取一個合適的閾值ε,選擇相關(guān)統(tǒng)計量分量比ε大的對應(yīng)特征作為訓(xùn)練數(shù)據(jù)進行后期的模型構(gòu)建.

      算法步驟如下:

      1)假定數(shù)據(jù)集D中的樣本來自|y|個類別.對于示例xi若它屬于第k類(k∈{1,2,…,|y|}),則算法先在第k類的樣本中尋找xi的最近示例xi,nm并將其作為猜中近鄰,然后在其他類中找到一個xi的最近示例將其作為猜錯近鄰,記為xi,l,nm(l=1,2,…,|y|;l≠k).

      (1)

      1.2 C4.5決策樹算法

      決策樹算法相當于一個投影,是一種預(yù)測模型,通過分類給多個樣本賦予不同標簽,分類的過程用一棵樹來表示,分叉后的過程就是劃分特征的過程,將屬性值映射到樹的分叉路徑上.

      C4.5算法是最著名和最廣泛使用的決策樹算法之一,精度水平高,獨立于要處理的數(shù)據(jù)量[15].在近幾年的一項比較決策樹和其他學(xué)習(xí)算法的研究表明,C4.5算法是一種追求更低誤報率和更高速率的結(jié)合型算法.該算法的生成規(guī)則易于理解,使用信息增益來進行決策樹的劃分屬性選擇,充分考慮了關(guān)鍵特征對分類的影響,對于離散型和連續(xù)型屬性變量都有較好的處理能力,產(chǎn)生的決策樹泛化能力強,預(yù)測未見數(shù)據(jù)示例的結(jié)果較準確.

      算法步驟:

      計算整個數(shù)據(jù)集的信息熵Info(D)和各個屬性的信息熵Infoa(D),其中Pi:當前樣本集合D中第i類樣本所占比例(i=1,2,…,m),Dv:第v個分支結(jié)點包含D中所有在屬性a上取值為av的樣本(假設(shè)離散屬性a有v個可能的取值{a1,a2,…,av}).

      (2)

      (3)

      計算分裂信息H(V),通過信息增益Gain(D,a)來計算,一般信息增益越大,代表使用屬性a來進行劃分所獲得的“純度提升”越大.其中a:樣本集中的某一個特征,V:當前被計算熵特征取值為v的樣本集.

      Gain(D,a)=Info(D)-Infoa(D)

      (4)

      (5)

      計算信息增益率Gain_ratio(D,a),選擇信息增益率最高的特征來選擇最優(yōu)劃分屬性,構(gòu)建分支.其中:Ⅳ(a)為考慮分裂信息的度量,屬性a的取值數(shù)目越多(即V越大),則Ⅳ(a)的值越大.

      (6)

      (7)

      (4)計算去除已經(jīng)被使用的特征,按照步驟(1)和(2)、(3)重復(fù)計算未被選擇的特征,直到數(shù)據(jù)集不能或不用被再次劃分.

      2 用戶異常檢測算法

      2.1 用戶行為分類

      Web用戶異常行為檢測過程包括對數(shù)據(jù)模型進行訓(xùn)練和對用戶行為進行檢測.在訓(xùn)練階段,系統(tǒng)首先定義并收集大量的正常行為數(shù)據(jù),例如,應(yīng)用程序一段時間對外的訪問量、主機CPU利用率、程序占用系統(tǒng)內(nèi)存大小等[16].再利用過濾特征選擇Relief-F算法對這些數(shù)據(jù)進行預(yù)處理,然后根據(jù)Web用戶正常行為數(shù)據(jù)和Web用戶異常行為數(shù)據(jù)建立C4.5決策樹模型.在檢測階段,若未知行為數(shù)據(jù)實例在檢測模型中的測試距離與Web用戶正常行為數(shù)據(jù)具有更近的距離,則該數(shù)據(jù)為Web用戶正常行為數(shù)據(jù),否則該數(shù)據(jù)為Web用戶異常行為數(shù)據(jù).

      2.2 訓(xùn)練樣本處理

      描述一個樣本可以通過很多特征,對于Web日志記錄的數(shù)據(jù)中,有些特征是對于檢測Web用戶異常行為的有價值的“相關(guān)特征”,有些則是幾乎無價值“無關(guān)特征”.對訓(xùn)練樣本進行必要的預(yù)處理可以減輕計算過程的復(fù)雜度,有助于提高計算額準確性.C4.5決策樹算法雖然能做到處理連續(xù)屬性變量的訓(xùn)練樣本數(shù)據(jù)集,但是需對訓(xùn)練集反復(fù)進行排序及按一定規(guī)則順序掃描,導(dǎo)致算法效率低下[17],而對數(shù)據(jù)集進行過濾特征選擇處理后改善了由于特征變量過多決策數(shù)構(gòu)造過程所造成復(fù)雜度過高的情況.在Web用戶異常行為檢測過程中,F(xiàn)_C4.5算法的實現(xiàn)過程分為如下兩個階段:

      1)第一個階段評估原始特征集與類的相關(guān)性,從給定的特征集合中選擇出相關(guān)特征子集,處理劃分訓(xùn)練樣本子集,刪除相關(guān)度較低的特征.在給定數(shù)據(jù)集的所有屬性中,通過過濾特征選擇Relief-F算法對數(shù)據(jù)集進行第一步預(yù)處理:定義兩個類別標簽,Web用戶正常行為類別標簽和Web用戶異常類別標簽.更新每個特征的權(quán)重W(A),公式如下:

      (8)

      基于從最近的數(shù)據(jù)構(gòu)建好每個被檢測數(shù)據(jù)的估計值,使用混淆矩陣的思想選取閾值ε,混淆矩陣的各個參數(shù)設(shè)置如表1所示,使用Precision/Recall計算F1Score,找到閾值ε使得F1Score的值最高.

      (9)

      (10)

      (11)

      其中TP為正確預(yù)測正常樣本(true positives),TN為正確預(yù)測異常樣本(true negatives),TP和TN得到的都是正確結(jié)果.FP為錯誤預(yù)測正常樣本(false positives),模型預(yù)測為正常值實際樣本為異常值;FN為錯誤預(yù)測異常樣本(false negatives),實際樣本為正常值但模型預(yù)測為異常值.

      2)第二個階段將兩個類別標簽中保留的相關(guān)特征傳遞給C4.5算法,通過Web用戶行為的訓(xùn)練數(shù)據(jù)集進行遞歸分析構(gòu)建決策樹模型,使用Web用戶行為測試數(shù)據(jù)集對構(gòu)建好的決策樹模型進行檢測.

      當有新的Web用戶異常行為發(fā)生時,使用F_C4.5算法進行檢測.Web用戶異常行為檢測算法總體實現(xiàn)過程描述如下:

      算法:F_C4.5算法

      輸入:訓(xùn)練數(shù)據(jù)集D

      樣本抽樣次數(shù)m

      特征權(quán)重閾值δ

      最近鄰樣本個數(shù)k

      輸出:以root為結(jié)點的決策樹

      1.置0所有特征權(quán)重,T為空集

      2.fori=1 tomdo

      (1)從D中隨機選擇一個樣本R;

      (2)從R的同屬性樣本集中找到樣本R的最近鄰Hj(j=1,2,…,k),找到與R不同屬性集的最近鄰Mj(C),同為k個;

      3.forA=1 toNAll feature updateW(A)

      4.篩選出比閾值ε大的特征集

      5.產(chǎn)生訓(xùn)練集D*={(x1,y1),(x2,y2),…,(xm,ym)},

      屬性集A={a1,a2,…,ad} then

      6.計算函數(shù)TreeGenerate(D*,A)

      7.得到root結(jié)點;

      8.ifD*中所有樣本都屬于C類屬性then

      9.C類葉節(jié)點更新為root;return

      10.end if

      11.ifD*中樣本在A上取值相同orA為空集then

      12.root更新為葉節(jié)點,將對應(yīng)類屬性更新為D*中有著最多樣本數(shù)的類;return

      13.end if

      14.從A中選擇Gain_ratio(D*,a)最大的ai作為最優(yōu)劃分屬性

      18.分支結(jié)點更新為葉結(jié)點,將對應(yīng)類屬性更新為D*中樣本最多的類;return

      19.else

      21. end if

      22.end for

      3 實驗與分析

      3.1 實驗環(huán)境和任務(wù)

      實驗在Windows10系統(tǒng)下,使用Python語言3.5版本,PyCharm工具運行代碼實現(xiàn)本文的Web用戶異常行為檢測.在UNSW-NB 15數(shù)據(jù)集[18]和KDD CUP1999數(shù)據(jù)集[19]上實現(xiàn)算法的性能評估任務(wù).UNSW-NB 15數(shù)據(jù)集的原始網(wǎng)絡(luò)數(shù)據(jù)包是由澳大利亞網(wǎng)絡(luò)安全中心(ACCS)網(wǎng)絡(luò)范圍實驗室的IXIA Perfect Storm工具創(chuàng)建的,用于生成真實的現(xiàn)代正?;顒雍秃铣傻默F(xiàn)代攻擊行為的混合.TCPDump工具用于捕獲100 GB的原始流量(例如,Pcap文件).該數(shù)據(jù)集有九種類型的攻擊,即模糊攻擊、分析攻擊、后門攻擊、DoS攻擊、利用攻擊、通用攻擊、偵察攻擊、外殼代碼攻擊和蠕蟲攻擊.使用Argus、bros-ids工具,開發(fā)了12種算法來生成總共49個帶有類標簽的特性.KDD CUP1999數(shù)據(jù)集用于1999年舉行的KDD CUP競賽采用的數(shù)據(jù)集,雖然年代久遠,但KDD99數(shù)據(jù)集是網(wǎng)絡(luò)異常檢測領(lǐng)域的基準.

      3.2 實驗內(nèi)容

      將UNSW-NB 15數(shù)據(jù)集中的一個分區(qū)配置為訓(xùn)練集和測試集,兩個子集都包含Web用戶正常行為數(shù)據(jù)集和Web用戶異常行為數(shù)據(jù)集.訓(xùn)練集為UNSW_NB15_training-set.csv,記錄數(shù)為175 341條;測試集為UNSW_NB15_test-set.csv,記錄數(shù)為82 332條.通過將網(wǎng)絡(luò)流的標識符與相應(yīng)的條件標簽相結(jié)合可以跟蹤Web用戶異常行為示例,條件標簽描述前面提到的將記錄分為“異?!被颉罢!钡姆诸惣夹g(shù)的結(jié)果.

      為了評估Web用戶異常行為檢測算法的優(yōu)劣,本文采用混淆矩陣思想進行評價.混淆矩陣是模式識別領(lǐng)域中一種常用的表達形式,它描繪樣本數(shù)據(jù)的真實屬性與識別結(jié)果類型之間的關(guān)系,是評價分類器性能的一種常用方法[20].采用2.2中表1混淆矩陣的定義,創(chuàng)建兩個指標:準確率OSR和誤報率FAR,使用這兩個指標來評估分類器.

      (12)

      (13)

      3.3 算法分類性能對比實驗

      將F_C4.5算法、C4.5算法、樸素貝葉斯算法(NB)和關(guān)聯(lián)規(guī)則挖掘分類算法(Association rule mining method,ARM)分別用于Web用戶異常行為檢測中,基于四種不同的模型在UNSW-NB 15數(shù)據(jù)集訓(xùn)練得到的數(shù)據(jù)結(jié)果如表2所示,用戶行為特征分類結(jié)果如表3和圖1所示.

      表2 混淆矩陣數(shù)據(jù)

      表3 算法分類器性能對比

      圖1 UNSW-NB 15數(shù)據(jù)集中評價指標的對比

      表4 測試數(shù)據(jù)集

      表5 算法預(yù)測性能對比

      實驗結(jié)果對比可以看出,將決策樹算法用于Web用戶異常行為檢測中準確率提高并且誤報率得到了有效降低.與樸素貝葉斯算法(NB)和關(guān)聯(lián)規(guī)則挖掘分類算法(ARM)相比,決策樹C4.5算法的準確率達到93.227%,誤報率則是6.773%,較適用于Web用戶異常行為檢測.而本文的F_C4.5算法在C4.5決策樹算法基礎(chǔ)上先將數(shù)據(jù)集進行特征過濾,消除一部分無用數(shù)據(jù)后再進行決策樹模型構(gòu)建,一方面充分利用了決策樹的優(yōu)勢,用戶行為分類效果更優(yōu);另一方面數(shù)據(jù)集的精確度提高,構(gòu)建決策樹的復(fù)雜度更低.如表3數(shù)據(jù)所示,準確率達到94.038%,誤報率降低到5.962%,從兩個評價指標來看,將F_C4.5算法用于Web用戶異常行為檢測達到了更好的效果.

      3.4 預(yù)測新的Web用戶異常行為

      為了進一步驗證本文算法的可靠性,使用KDD CUP1999入侵數(shù)據(jù)集中的測試數(shù)據(jù)集corrected.gz進行第二輪測試,實驗將測試集中的Web用戶異常特征分為U2R、DoS、PROBING、R2L,這四類在檢測中都歸為Web用戶異常行為檢測數(shù)據(jù)集.測試數(shù)據(jù)集如表4所示.

      用測試集1和測試集2分別對構(gòu)建好的C4.5模型和F_C4.5模型進行檢測.實驗結(jié)果顯示,F(xiàn)_C4.5算法的Web用戶異常行為檢測和Web用戶異常行為檢測的準確率都高于C4.5算法,誤報率低于C4.5算法,由表5的實驗數(shù)據(jù)進一步證明,F(xiàn)_C4.5算法的在Web用戶異常行為的檢測性能優(yōu)于C4.5算法.

      4 結(jié)束語

      本文在Web用戶異常行為檢測過程中,綜合考慮了復(fù)雜度過高對特征提取的影響,將過濾特征選擇的思想和混淆矩陣的理念與C4.5決策樹算法結(jié)合提出一個新的算法F_C4.5算法.過濾特征選擇利用Relief-F算法,在選擇閾值上通過混淆矩陣的理念進行計算,得出優(yōu)化特征子集的搜索范圍,從而降低決策樹構(gòu)架過程中的復(fù)雜度.實驗表明在運行性能方面,F(xiàn)_C4.5算法有效降低原始特征集的維數(shù),有效摒除了一部分無用數(shù)據(jù),從而減少了訓(xùn)練和測試時間的消耗,復(fù)雜度降低,對于Web用戶異常行為檢測來說該算法取得了很好的效果,具有更高的分類性能.

      猜你喜歡
      特征選擇決策樹樣本
      用樣本估計總體復(fù)習(xí)點撥
      一種針對不均衡數(shù)據(jù)集的SVM決策樹算法
      決策樹和隨機森林方法在管理決策中的應(yīng)用
      電子制作(2018年16期)2018-09-26 03:27:06
      推動醫(yī)改的“直銷樣本”
      隨機微分方程的樣本Lyapunov二次型估計
      Kmeans 應(yīng)用與特征選擇
      電子制作(2017年23期)2017-02-02 07:17:06
      基于決策樹的出租車乘客出行目的識別
      村企共贏的樣本
      聯(lián)合互信息水下目標特征選擇算法
      基于肺癌CT的決策樹模型在肺癌診斷中的應(yīng)用
      蒙城县| 鹤庆县| 河西区| 花莲市| 广宗县| 华容县| 宜城市| 朝阳县| 麻栗坡县| 库尔勒市| 平湖市| 道孚县| 萝北县| 武宁县| 项城市| 峡江县| 治县。| 连城县| 大港区| 玉门市| 尤溪县| 贡山| 稻城县| 青河县| 吉安市| 扎赉特旗| 灵石县| 常宁市| 河北省| 焦作市| 张家口市| 萨嘎县| 大埔县| 合肥市| 若尔盖县| 瑞金市| 叶城县| 十堰市| 青田县| 靖江市| 长泰县|