摘 要: 研究一種基于群智能算法優化神經網絡的網絡安全事件分析模型,使用遺傳算法和LMS算法對常規RBF神經網絡中的隱含層神經元個數、基函數中心以及各層連接閾值和權值進行優化,得到最優解,從而提高RBF神經網絡模型的訓練效率和精度,提高基于RBF神經網絡的網絡安全事件分析效率和準確度。使用KDD CUP99數據集中的網絡入侵事件數據對研究的網絡安全入侵事件分析模型進行實例研究,測試結果表明,該分析模型相比常規神經網絡算法建立的模型具有更高的識別準確率,能夠準確識別分析正常事件和四種網絡攻擊入侵事件。
關鍵詞: 遺傳算法; LMS算法; RBF神經網絡; 入侵識別; 網絡安全事件分析
中圖分類號: TN915.08?34; TP393 文獻標識碼: A 文章編號: 1004?373X(2016)21?0123?04
Network security event analysis based on swarm intelligence
algorithm optimizing neural network
GAO Feng
(Software Engineering Institute, Chongqing University of Arts and Sciences, Chongqing 402160, China)
Abstract: A network security event analysis model based on swarm intelligence algorithm optimizing neural network is stu?died. The genetic algorithm and LMS algorithm are used to optimize the hidden layer neurons quantity, basis function center, connection threshold and weight of each layer of the conventional RBF neural network, so as to obtain the optimal solution, improve the training efficiency and accuracy of the RBF neural network model, and the efficiency and accuracy of the network security event analysis based on RBF neural network. The network intrusion event data in KDD CUP99 dataset is used to perform the instance study for the network security intrusion events analysis model. The test results show that the analysis model has more recognition accuracy than the model established by the conventional neural network algorithm, and can accurately identify and analyze the normal events and four network attack events.
Keywords: genetic algorithm; LMS algorithm; RBF neural network; intrusion detection; network security event analysis
隨著計算機和網絡技術的不斷發展和普及,計算機網絡安全日益受到入侵、病毒的威脅,對網絡安全事件進行及時有效識別和分析對于提高計算機網絡安全具有重要作用[1?3]。目前專家學者針對使用神經網絡、支持向量機等機器學習算法建立了網絡安全事件分析模型。本文通過遺傳算法對RBF神經網絡進行優化,再利用LMS算法進一步學習連接權值,最后得到基于最小均方差算法以及遺傳算法的RBF神經網絡安全事件分析模型。
1 事件分析及數據特征提取
本文主要針對影響網絡安全的入侵事件進行識別分類,使用神經網絡建立分析模型,使用已知的正常事件和入侵事件數據作為訓練樣本對入侵事件分析模型進行訓練,提高其泛化能力,然后使用已知的正常事件和入侵事件類型的測試樣本對入侵事件分析模型進行測試,檢驗其分析效果。
本文研究的影響網絡安全的入侵事件類型主要有DOS攻擊、U2R攻擊、R2L攻擊以及Probing攻擊四種入侵類型[4?6]。需要從龐大繁雜的采集數據中分類識別網絡入侵事件,需要對入侵事件數據的特征進行提取、處理,以使得識別模型能夠準確對入侵事件進行分類和分析。本文使用如下15種入侵事件的特征數據[7]:
連續的服務持續時間:service_continua nce;離散的連續協議:continued_protocol;離散的服務類型:type_service;離散的正常事件或攻擊行為:regular or assault;離散的連接狀態:connection_state;連續的分片錯誤個數:error_num_fragmentation;連續的失敗登陸次數:num_failed_attempts;連續的由數據源到目標的數據比特數:src_dst_bytes;連續的目前和過去2 s時間內一樣目標地址的連接個數:same_dst_count;連續的目前和過去2 s時間內一樣服務類型的連接個數:same_service_count;連續的目前和過去2 s時間內一樣目標地址中錯誤SYN連接的占比:syn_error_proportion;連續的目前和過去2 s時間內一樣服務類型中錯誤SYN連接的占比:srv_error_proportion;連續的目前和過去2 s時間內一樣服務類型中不同目標地址連接的占比:dst_diff_host_proportion;連續的前100個連接中與目前地址和服務均相同的連接的占比:service_host_same_srv_proportion;連續的創建文件次數:num_file_operations。
按照文獻[7]中的方法對離散的數據進行連續化,以避免采用兩種衡量標準產生的干擾,主要針對不同協議類型、不同網絡服務類型和入侵事件進行處理,具體連續化方法如表1所示。
2 事件分析模型
本文在設計網絡安全入侵事件分析模型時應用了RBF神經網絡模型,這種模型能夠應用線性學習算法完成以往需要采用非線性學習算法才能夠完成的工作,而且在精度上和非線性算法一致,具有收斂速度快、全局最優以及最佳逼近的優勢。因此在對一些分類識別問題進行解決時,對于RBF神經網絡的應用比較廣泛。但是在應用RBF神經網絡時容易出現學習率偏低、中心難以確定以及出現過擬合的缺點,這對識別精度以及運行效率產生了消極的影響[8?9]。
遺傳算法開始于代表問題可能潛在解集的一個種群。一定數量的經過基因編碼得到的個體組成了種群,個體是染色體帶有特征的實體。在每次迭代過程中GA都會保留一組候選解,根據解的優劣進行排序,按照相應的指標進行解的選擇,同時使用遺傳算子進行運算,得到新的候選解,經過多次的運算就能夠達到相應的收斂指標[10]。
利用遺傳算法對RBF神經網絡進行優化,傳統的優化方法是對隱層神經元個數以及連接權值進行單獨的優化,盡管能夠發揮較好的作用,但是仍然存在一些需要完善的地方。本文研究使用新的優化方法以獲得最優的RBF神經網絡模型,同時優化隱層神經元格式以及連接權值。其中采用實數對連接權值進行編碼,使用二進制對隱層神經元進行編碼。在完成連接權值學習的過程中自適應地對網絡結構進行調整。局部高斯函數是RBF的激活函數,盡管能夠解決局部最小問題,但是不具有較強的全局搜索能力。采用遺傳算法進行優化能夠得到最優的網絡結構,但是無法充分的優化輸出神經元與隱層神經元之間的權值,在經過二次優化以后再利用LMS算法進一步的學習連接權值。最后就能夠基于最小均方差算法以及遺傳算法得到RBF神經網絡分類算法,簡稱GA?RBF?LMS[11]。
遺傳算子的構造、適應度函數定義以及染色體編碼是采用GA對RBF網絡進行優化的主要內容,通過對遺傳算法的應用,可以自動地對連接權值以及網絡結構進行調整,進而對神經網絡進行優化,將神經網絡和遺傳算法有效融合起來。
(1) 編碼染色體
遺傳算法構造出染色體編碼:
[c1c2…csw11w21…ws1w12w22…ws2…w1lw2l…wslθ1θ2…θl] (1)
式中:[l]為神經網絡輸出層的神經元個數;[s]為神經網絡隱含層神經元個數;[ci]為二進制編碼隱含層神經元個數,若值為1表示存在神經元,若值為0表示不存在該神經元;[θj]為第[j]個輸出層神經元的閾值,該閾值使用實數方式進行編碼;[wpj]為第[p]個輸出層神經元到第[j]個隱含層使用神經元的連接權值,該權值使用實數方式進行編碼。
(2) 構造遺傳算子
使用輪盤賭選擇法進行算子的選擇,通常所選擇的大部分個體具有較高的適應度,同時也可以選擇一些適應度低的個體,采用該選擇方法能夠保證種群的多樣性。
將單點交叉算子作為交叉算子,2 個新個體可以通過交叉操作獲取,并將其放置在新一代的種群中,在重復進行交叉操作的過程中種群的規模逐漸增大。利用經營保留策略能夠避免最優個體在進化過程中丟失。
(3) 計算適應度
染色體的適應度通過訓練誤差和神經網絡規模獲得:
[F=C-ensmax] (2)
式中:[e]為訓練誤差;[C]為常數;[n]為網絡隱含層節點個數,其最大節點數為[smax。]
(4) 構造RBF 神經網絡
根據經驗選取均勻分布的[q]個基函數中心,則高斯基函數寬度表示為[12]:
[σ=d2q] (3)
綜上,建立基于GA?RBF?LMS 神經網絡模型的過程如下:
步驟1:初始RBF神經網絡,并對基函數寬度進行計算。
步驟2:對遺傳算法的種群規模、交叉概率、變異概率以及算子進行初始化。
步驟3:對網絡中個體進行編碼。
步驟4:對初始RBF神經網絡進行訓練,得到網絡輸出誤差[e。]
步驟5:通過訓練誤差計算遺傳算法中的適應度值。
步驟6:對計算所得適應度進行排序,如果最優適應度[Fb]滿足[G≥Gmax,]或者[C-Fbsmaxn 步驟7:選取性能較優的個體遺傳到下一代。 步驟8:通過反復單點交叉染色體,使得種群規模達到上限。 步驟9:變異操作新生成的種群,跳回步驟4。 步驟10:遺傳優化RBF神經網絡結束,網絡結構為得到的優化解。 步驟11:用LMS方法對神經網絡中不夠充分的權值進一步學習優化,完成模型的建立。 3 網絡入侵事件分析實例 本文通過已有的網絡入侵事件數據對所研究的網絡入侵事件分析方法進行實例研究。所使用的網絡入侵事件數據來源于KDD CUP99數據集。從KDD CUP99數據集選取10 000條包含了正常事件和DOS 攻擊、R2L 攻擊、U2R攻擊、Probing 攻擊這四種入侵事件的數據。將10 000條數據分為五組,各組數據樣本中包含的各類事件數量如表2所示。 使用常規RBF神經網絡、常規GA?RBF神經網絡與本文研究的GA?RBF?LMS 神經網絡進行對比,使用相同的數據進行訓練與測試。LMS算法中最大迭代次數為1 500,學習率為0.1。遺傳算法的最大迭代次數為500,種群規模為100,交叉和變異概率為0.9和0.1。得到針對五個測試樣本中各類事件的識別準確率如圖1所示。 測試結果表明,本文研究的分析模型相比常規神經網絡算法建立的模型具有更高的識別準確率,能夠準確識別分析正常事件和四種網絡攻擊入侵事件。 4 結 論 本文研究了一種基于群智能算法優化神經網絡的網絡安全事件分析模型,使用遺傳算法和LMS算法對常規RBF神經網絡中的隱含層神經元個數、基函數中心以及各層連接閾值和權值進行優化,得到最優解,從而提高RBF神經網絡模型的訓練效率和精度,提高基于RBF神經網絡的網絡安全事件分析效率和準確度。 參考文獻 [1] 張淑英.網絡安全事件關聯分析與態勢評測技術研究[D].長春:吉林大學,2012. [2] 劉敬,谷利澤,鈕心忻,等.基于神經網絡和遺傳算法的網絡安全事件分析方法[J].北京郵電大學學報,2015,38(2):50?54. [3] 賈偉寬,趙德安,劉曉洋,等.機器人采摘蘋果果實的K?means和GA?RBF?LMS神經網絡識別[J].農業工程學報,2015, 31(18):175?183. [4] 王紅艷.一種基于Hadoop架構的網絡安全事件分析方法[J].信息網絡安全,2013(1):55?57. [5] 彭雪娜,趙宏.一個融合網絡安全信息的安全事件分析與預測模型[J].東北大學學報,2005(3):228?231. [6] 鄔開俊,王鐵君.基于RBF神經網絡優化的混沌時間序列預測[J].計算機工程,2013,39(10):208?211. [7] 宋玲,常磊.變異粒子群優化的BP神經網絡在入侵檢測中的應用[J].智能系統學報,2013,8(6):558?563. [8] 郭蘭平,俞建寧,張旭東,等.基于改進RBF神經網絡的混沌時間序列預測[J].云南民族大學學報(自然科學版),2011,20(1):63?70. [9] 李冬梅,王正歐.基于RBF神經網絡的混沌時間序列預測[J].模式識別與人工智能,2001,14(2):231?234. [10] 張濤,費樹岷,李曉東.基于GA?RBF神經網絡及邊界不變特征的車輛識別[J].智能系統學報,2009,4(3):278?282. [11] 王晗,楊衛國,王湃.基于GA?RBF神經網絡的電梯交通流模式識別的研究[C]//2007中國控制與決策學術年會論文集.無錫:東北大學,2007:307?310. [12] 王靜.基于遺傳算法的板形缺陷識別的研究[D].鞍山:遼寧科技大學,2012.