• 
    

    
    

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

      基于非線性預(yù)處理及邏輯回歸的異常檢測(cè)算法

      2018-04-19 11:34:14邵俊杰
      關(guān)鍵詞:元組決策樹邏輯

      董 偉,楊 晨,邵俊杰

      (中國(guó)電子信息產(chǎn)業(yè)集團(tuán)有限公司第六研究所工業(yè)控制系統(tǒng)信息安全技術(shù)國(guó)家工程實(shí)驗(yàn)室,北京 102209)

      0 引言

      隨著互聯(lián)網(wǎng)的爆炸式發(fā)展,網(wǎng)絡(luò)安全已上升到國(guó)家戰(zhàn)略層面,面對(duì)日益復(fù)雜的網(wǎng)絡(luò)環(huán)境,傳統(tǒng)的協(xié)議識(shí)別技術(shù)已不再適用。2015年微軟在Kaggle上發(fā)起了一個(gè)惡意代碼分類的比賽,而取得第一名的隊(duì)伍的三名隊(duì)員都不是安全出身,所采用的方法與常見的方法存在很大的不同,展現(xiàn)了機(jī)器學(xué)習(xí)在安全領(lǐng)域的巨大潛力[1]。特征工程作為機(jī)器學(xué)習(xí)領(lǐng)域極具分量的步驟,在工程中占用的時(shí)間遠(yuǎn)超我們的想象,特征工程的好壞直接關(guān)系到學(xué)習(xí)結(jié)果,可以說(shuō)特征工程決定了模型的上限。

      本文以數(shù)據(jù)挖掘及機(jī)器學(xué)習(xí)的視角去看待安全問(wèn)題,在網(wǎng)絡(luò)安全領(lǐng)域進(jìn)行了初步實(shí)踐。

      1 數(shù)據(jù)預(yù)處理

      1.1 實(shí)驗(yàn)數(shù)據(jù)集

      KDD99數(shù)據(jù)集來(lái)源于美國(guó)國(guó)防部高級(jí)研究計(jì)劃局(DARPA)的入侵檢測(cè)評(píng)估項(xiàng)目,由 MIT Lincoln實(shí)驗(yàn)室進(jìn)行數(shù)據(jù)集搜集,該項(xiàng)目始于1998 年,后經(jīng)哥倫比亞大學(xué)的STOLFOS教授等人進(jìn)行粗粒度數(shù)據(jù)處理后形成了一個(gè)新的數(shù)據(jù)集,該數(shù)據(jù)集用于1999年的KDD競(jìng)賽上,成為了著名的KDD99數(shù)據(jù)集。雖然年代有些久遠(yuǎn),但KDD99數(shù)據(jù)集仍然是網(wǎng)絡(luò)入侵檢測(cè)領(lǐng)域的權(quán)威測(cè)試集[1],為基于計(jì)算智能的網(wǎng)絡(luò)入侵檢測(cè)研究奠定基礎(chǔ)。

      KDD99數(shù)據(jù)集由41個(gè)特征以及1個(gè)類別標(biāo)記組成,其中41個(gè)特征共分為4大類:TCP連接基本特征、TCP連接的內(nèi)容的特征、基于時(shí)間的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征、基于主機(jī)的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征。類別標(biāo)記分為兩類:正常(normal)和異常(abnormal),異常類型被分為4大類共39種攻擊類型,其中22種攻擊類型出現(xiàn)在訓(xùn)練集中,另有17種未知攻擊類型出現(xiàn)在測(cè)試集中。

      1.2 數(shù)據(jù)處理

      KDD99數(shù)據(jù)集雖已經(jīng)過(guò)粗粒度的處理,但仍然不能直接用于算法中。KDD99數(shù)據(jù)集數(shù)據(jù)屬性按數(shù)據(jù)類型可分為兩大類:離散屬性(第2、3、4個(gè)特征)和連續(xù)屬性。

      由于KDD99中的離散屬性都是標(biāo)稱屬性,若直接將其映射為序數(shù)屬性,則會(huì)大大增加調(diào)參工作量。為此,本文采用了獨(dú)熱編碼(One-Hot Encoding)對(duì)數(shù)據(jù)進(jìn)行處理,其方法是使用N位布爾變量來(lái)對(duì)N個(gè)狀態(tài)進(jìn)行編碼,每個(gè)狀態(tài)都由它獨(dú)立的位表示,并有且僅有一位有效,其余N-1位全為0。獨(dú)熱編碼的方式相比映射為序數(shù)屬性的方式,不用增加調(diào)參的工作。對(duì)于線性模型來(lái)說(shuō),使用獨(dú)熱編碼后可達(dá)到非線性的效果。而對(duì)于第三個(gè)屬性,考慮其離散值較多,為避免引起“維數(shù)災(zāi)難”,將其舍棄。

      圖1 決策樹模型

      對(duì)于連續(xù)屬性,一般而言,用較小的單位表示將導(dǎo)致該屬性具有較大值域,因此趨向于使該屬性擁有較大的“權(quán)重”,在基于距離的算法中,影響更甚。為了消去不同量綱對(duì)算法的影響,應(yīng)對(duì)連續(xù)屬性進(jìn)行規(guī)范化處理。

      常用的規(guī)范化方法有三種:最小—最大規(guī)范化、z分?jǐn)?shù)規(guī)范化和按小數(shù)定標(biāo)規(guī)范化。本文采用最小—最大規(guī)范化,其計(jì)算方法如公式所示:

      (1)

      1.3 屬性子集選擇

      KDD99樣本經(jīng)數(shù)據(jù)預(yù)處理后由52維表示,這52個(gè)屬性不僅會(huì)影響算法運(yùn)行時(shí)間,而且可能會(huì)存在冗余屬性,對(duì)實(shí)驗(yàn)結(jié)果造成干擾。為此一種方法是進(jìn)行屬性子集選擇。常用的方法包括:逐步向前選擇、逐步向后選擇、逐步向前選擇和逐步向后刪除的組合以及決策樹歸納[2]。本文采用決策樹歸納的方法進(jìn)行屬性子集選擇。

      決策樹算法最初是用來(lái)分類的,當(dāng)決策樹歸納用于屬性子集選擇時(shí)由給定的數(shù)據(jù)構(gòu)造決策樹,出現(xiàn)在樹中的屬性形成規(guī)約后的屬性子集。

      1.3.1評(píng)判指標(biāo)

      將數(shù)據(jù)標(biāo)記為兩類:正常(normal)和異常(abnormal),用準(zhǔn)確率(Precision)、召回率(Recall)、和F度量評(píng)估算法。準(zhǔn)確率可以看作準(zhǔn)確性的度量(即預(yù)測(cè)為正類的元組實(shí)際為正類所占的百分比),召回率是完全性的度量(即正元組預(yù)測(cè)為正的百分比),而F度量是準(zhǔn)確率和回率的調(diào)和均值。這些度量計(jì)算公式如下:

      (2)

      (3)

      (4)

      其中,TP(True Positive)是指被分類器正確分類的正元組,F(xiàn)P(False Positive)是指被錯(cuò)誤地標(biāo)記為正元組的負(fù)元組,F(xiàn)N(False Negative)是指被錯(cuò)誤地標(biāo)記為負(fù)元組的正元組。

      1.3.2實(shí)驗(yàn)結(jié)果分析

      實(shí)驗(yàn)構(gòu)建了基于信息熵的決策樹模型,顯示其前四層的樹型表示如圖1所示。

      用圖1中的特征子集表征數(shù)據(jù),將“正?!痹M標(biāo)記為正類,采用10折交叉驗(yàn)證的方式,在決策樹模型上進(jìn)行分析,參照公式(2)、(3)、(4)的模型評(píng)判標(biāo)準(zhǔn),其結(jié)果與用所有特征表征的數(shù)據(jù)運(yùn)行結(jié)果對(duì)比如表1所示。

      表1 數(shù)據(jù)對(duì)比表

      如表1所示,采用所選特征子集對(duì)數(shù)據(jù)進(jìn)行特征選擇后,各度量值雖都略有所下降,但相差無(wú)幾,故在后續(xù)研究中,選用上述特征子集進(jìn)行運(yùn)算分析,節(jié)約了時(shí)間成本。

      2 算法設(shè)計(jì)及實(shí)現(xiàn)

      2.1 回歸分析

      回歸是研究自變量和因變量之間關(guān)系的一種預(yù)測(cè)模型技術(shù)。回歸分析的目的是預(yù)測(cè)數(shù)值型的目標(biāo)值,最直觀的表現(xiàn)形式是依據(jù)輸入構(gòu)造目標(biāo)值的計(jì)算公式,該公式就是回歸方程(Regression Equation),求解回歸方程的回歸系數(shù)的過(guò)程就是回歸?;貧w分析包含多種預(yù)測(cè)模型,常見的有線性回歸(Linear Regression)、邏輯回歸(Logistic Regression)、多項(xiàng)式回歸(Polynomial Regression)、逐步回歸(Stepwise Regression)、嶺回歸(Ridge Regression)、套索回歸(Lasso Regression)、回歸(ElasticNet)等。

      邏輯回歸是比較常用的機(jī)器學(xué)習(xí)算法,原因在于它不但能指出自變量和因變量之間的顯著關(guān)系,允許比較不同尺度的度量,還能快速地用較低的代價(jià)吸收新數(shù)據(jù)更新模型。因此,針對(duì)KDD99數(shù)據(jù)集數(shù)據(jù)類型復(fù)雜、特征維數(shù)較多的特點(diǎn),選用邏輯回歸算法來(lái)進(jìn)行異常檢測(cè)。

      2.2 原理及設(shè)計(jì)

      邏輯回歸是一種廣義線性回歸,處理的是分類問(wèn)題。線性回歸的公式如下:

      z=ω1x1+ω2x2+ω3x3+…+ωnxn+b=WTX+b

      (5)

      其中,XT=[x1x2x3…xn]是輸入的樣本特征,WT=[ω1ω2ω3…ωn]是方程的回歸系數(shù),b是常量。對(duì)于邏輯回歸來(lái)說(shuō),其思想也是基于線性回歸,但是回歸公式并不是直接輸出結(jié)果Z,而是增加激活函數(shù),將方程的值域映射到某特定的取值空間(應(yīng)根據(jù)目標(biāo)值的要求選取適合的激活函數(shù)),構(gòu)造損失函數(shù),求使損失函數(shù)最小的回歸參數(shù)。

      邏輯回歸中單個(gè)樣本的n維特征正向傳播過(guò)程如圖2所示。

      圖2 邏輯回歸正向傳播

      單個(gè)樣本的n維特征表現(xiàn)為正向傳播的輸入向量XT=[x1x2x3…xn],回歸系數(shù)是輸入向量WT=[ω1ω2ω3…ωn]。由回歸方程可知,此時(shí)無(wú)論迭代多少次,輸出的z都是輸入的線性映射,這是回歸分析的一般結(jié)果,此時(shí)的回歸模型只具有線性映射能力,而訓(xùn)練目標(biāo)是識(shí)別數(shù)據(jù)集中的異常數(shù)據(jù),屬于二分類問(wèn)題,因此必須加入激活函數(shù)將輸出z映射到特定的值域,表示該數(shù)據(jù)標(biāo)記為異?;蛘?shù)據(jù)的可能性。簡(jiǎn)而言之,激活函數(shù)(Activation Function)就是為算法提供非線性建模學(xué)習(xí)能力的,幾種常見的激活函數(shù)如下,如圖3所示。

      圖3 幾種常見的激活函數(shù)

      Sigmoid函數(shù):

      (6)

      Tanh函數(shù):

      (7)

      RuLU函數(shù):

      g(x)=max(0,x)

      (8)

      Sigmoid函數(shù)是使用范圍最廣的一類激活函數(shù),具有指數(shù)函數(shù)的形狀,由于它將輸入映射到(0,1)之間,可以用來(lái)表示概率,因此將其用于異常檢測(cè)輸出結(jié)果用來(lái)表示數(shù)據(jù)異?;蛘5母怕?。

      損失函數(shù)是用來(lái)估量模型的預(yù)測(cè)值和真實(shí)值的不一致程度,這里用Loss(a,y)來(lái)表示,a表示預(yù)測(cè)類別,y表示真實(shí)類別。常用的損失函數(shù)有平方損失函數(shù)、log損失函數(shù)、指數(shù)損失函數(shù)等。

      在Sigmoid激活函數(shù)的作用下:

      標(biāo)簽取值的概率可表為:

      P(y/x;ω)=(Gω(x))y(1-Gω(x))1-y

      (9)

      取似然函數(shù)為:

      (10)

      對(duì)數(shù)似然函數(shù)為:

      (11)

      取損失函數(shù)為:

      (12)

      (13)

      其中,γ是學(xué)習(xí)率。

      訓(xùn)練數(shù)據(jù)集的平均損失稱為經(jīng)驗(yàn)風(fēng)險(xiǎn),為了防止過(guò)擬合,需要在經(jīng)驗(yàn)風(fēng)險(xiǎn)的基礎(chǔ)上加上表示模型復(fù)雜度的正則化項(xiàng)(regularization)或者罰項(xiàng)(penalty term),在本算法中取正則項(xiàng)為平方損失,即參數(shù)的L2范數(shù),此時(shí)模型的損失函數(shù)為:

      (14)

      其中,β為常量。

      正則化后的梯度下降算法ω的更新過(guò)程變?yōu)椋?/p>

      (15)

      綜上所述,該方法的常規(guī)流程為,根據(jù)數(shù)據(jù)集及目標(biāo)結(jié)果選擇合適的訓(xùn)練模型,尋找預(yù)測(cè)函數(shù)(G(z)),構(gòu)造損失函數(shù),求使損失函數(shù)最小的模型參數(shù),構(gòu)造訓(xùn)練模型。

      2.3 實(shí)現(xiàn)

      本文的異常檢測(cè)算法是基于KDD99數(shù)據(jù)集實(shí)現(xiàn)的,原始的訓(xùn)練數(shù)據(jù)集包含494 021條連接記錄,測(cè)試數(shù)據(jù)集包含311 029條連接記錄,每條連接記錄的最后有一個(gè)標(biāo)簽來(lái)標(biāo)明其類別信息,試驗(yàn)中將正常連接標(biāo)記為1,異常連接標(biāo)記為0。在對(duì)數(shù)據(jù)集進(jìn)行非線性處理后,用訓(xùn)練數(shù)據(jù)集訓(xùn)練邏輯回歸模型,效果如圖4所示。

      圖4 邏輯回歸模型評(píng)估

      將算法迭代100次,并用每次迭代求出的回歸系數(shù)測(cè)試待測(cè)數(shù)據(jù)集的回歸程度,結(jié)果顯示,在取學(xué)習(xí)率α=0.8時(shí),模型在迭代45次左右后收斂。

      將測(cè)試集帶入模型,結(jié)果如圖5所示。

      圖5 測(cè)試集預(yù)測(cè)結(jié)果

      從圖5中可以看出,隨著迭代次數(shù)的增加,模型的準(zhǔn)確率快速收斂,漏報(bào)率隨有所增加,但未超過(guò)0.1%。

      3 結(jié)果分析

      試驗(yàn)中選用KDD99數(shù)據(jù)集,由于該數(shù)據(jù)集的每條記錄都是以一次網(wǎng)絡(luò)連接為單位,每條記錄包含字符型、離散型和連續(xù)型數(shù)據(jù),且各特征度量尺度不同,難以處理,因此選用非線性預(yù)處理的方式處理數(shù)據(jù),將原始數(shù)據(jù)轉(zhuǎn)化為可以直接輸入邏輯回歸模型學(xué)習(xí)的矩陣形式。實(shí)驗(yàn)結(jié)果表明,邏輯回歸對(duì)測(cè)試集中的異常連接有較好的識(shí)別能力,但是隨著迭代次數(shù)的增加,回歸系數(shù)逐漸收斂,測(cè)試集的漏報(bào)率也有所增加,關(guān)于這一問(wèn)題,未來(lái)還會(huì)進(jìn)行針對(duì)性的研究來(lái)改進(jìn)工作。

      [1] 劉焱.Web全之機(jī)器學(xué)習(xí)入門[M].北京:機(jī)械工業(yè)出版社,2017.

      [2] Han Jiawei, KAMBER M. Pei Jian.數(shù)據(jù)挖掘:概念與技術(shù)(第3版)[M]. 北京:機(jī)械工業(yè)出版社,2012.

      猜你喜歡
      元組決策樹邏輯
      刑事印證證明準(zhǔn)確達(dá)成的邏輯反思
      法律方法(2022年2期)2022-10-20 06:44:24
      邏輯
      創(chuàng)新的邏輯
      Python核心語(yǔ)法
      一種針對(duì)不均衡數(shù)據(jù)集的SVM決策樹算法
      海量數(shù)據(jù)上有效的top-kSkyline查詢算法*
      決策樹和隨機(jī)森林方法在管理決策中的應(yīng)用
      電子制作(2018年16期)2018-09-26 03:27:06
      基于減少檢索的負(fù)表約束優(yōu)化算法
      女人買買買的神邏輯
      37°女人(2017年11期)2017-11-14 20:27:40
      基于決策樹的出租車乘客出行目的識(shí)別
      张北县| 田林县| 双牌县| 罗城| 庄浪县| 汾西县| 肇源县| 彩票| 凤翔县| 天柱县| 墨玉县| 藁城市| 伊吾县| 涞源县| 彭阳县| 海晏县| 斗六市| 密云县| 嵩明县| 德兴市| 古交市| 广灵县| 钟祥市| 沁水县| 泊头市| 定西市| 郑州市| 安塞县| 海兴县| 丰宁| 阿巴嘎旗| 青海省| 永登县| 册亨县| 兴安县| 噶尔县| 长垣县| 石泉县| 柯坪县| 耒阳市| 垦利县|