基于神经网络集成的入侵检测研究
- 格式:pdf
- 大小:183.20 KB
- 文档页数:3
第27卷第6期 2007年6月 计算机应用
Computer Applications VoI.27 No.6 June 2007
文章编号:1001—9081(2007)o6—1363—02
基于神经网络集成的入侵检测研究
柴晨阳 ,孙星明 ,吴志斌 ,智云生
(1.湖南大学计算机与通信学院,湖南长沙410082;2.江西财经大学会计学院,江西南昌330013)
(ccy@263.net) 摘要:提出一种新的基于神经网络集成的入侵检测方法。首先通过有区别地对待不同的训练
数据训练神经网络,提高对小类别入侵的检测能力并防止网络训练中的退化现象;然后利用一种新的
改进遗传算法优化集成网络的权,提高系统整体性能。理论和实验表明该方法具有较好的检测能力。
关键词:入侵检测;遗传算法;神经网络集成
中图分类号:TP393.08 文献标识码:A
Intrusion detection based on neural network ensemble
CHAI Chen—yang 一,SUN Xing—ming ,WU Zhi—bin ,ZHI Yun—sheng
(1.Department ofComputer&Communication,Hunan University,Changsha Hunan 410082,China; 2.School ofAccountancy,Jiangxi University ofFinance and Economics,Nanchang Jiangxi 330013,China)
Abstract:This paper put forward a new intrusion detection method based on neural network ensemble.First,we trained neural network by using diferent methods tO deal witll diferent data.tO elevate the ability of detecting small intrusion and
prevent neural network degeneration during training;then,the improved Genetic Algorithm Was used tO optimize neural network ensemble weight.Theory and experiment show that this method has better ability in intrusion detection. Key words:intrusion detection;generation algorithm;neural network ensemble
0 引言
随着网络技术和网络规模的不断发展,网络安全己经成
为全球性的重要问题之一。迅速、有效地发现各类新的入侵
行为,对于保证网络系统安全十分重要。入侵检测(Intrusion
Detection,ID)技术是一种通过监视网络系统的运行状态,进
而发现各种攻击企图、攻击行为或者攻击结果的信息安全技
术。
日前入侵检测方法一般可分为两类:误用检测和异常检
测。误用检测技术可以有针对性地建立高效的入侵检测系
统,检测准确率高,缺点是对未知的入侵活动或己知入侵活动
的变异无能为力,攻击特征提取困难,并且需要不断更新特征
库。异常检测技术最大的优点是可以检测出新的入侵攻击,
日前己经开展研究的异常检测算法与模型主要包括:统计异
常检测、基于神经网络的异常检测以及基于数据挖掘的异常
检测 J o
对于神经网络,文献[2]己证明一个单隐层的前馈网络
就可以逼近任意复杂度的函数,但由于缺乏严密理论体系的
指导,如何找到合适的网络配置却是一个NP问题。1990年
文献[3]提出了神经网络集成方法,通过训练多个神经网络
并将其结果进行合成可以显著地提高神经网络系统的泛化能
力,为上述问题的解决提供了一个简易可行的方案。对神经
网络集成实现方法的研究主要集中在两个方面,即如何生成 集成中的个体神经网络以及怎样将多个神经网络的结果进行
合成。
入侵检测实验样本组成比较复杂。在入侵检测的实验样
本中(以KDDCUP 99为例),绝大部分为正常的数据(Normal
类型,称大类样本);入侵样本只占较少部分,且异常数据主
要为DoS、probe类型,U2R和R2L攻击的数据比例很小(称小
类样本),U2R和R2L这两种攻击的危害性较大。而现有的
许多相关实验虽然整体有很高的检测率,但对小类样本的检
测却不高。
木文首先提出一种训练神经网络的方法,在不降低大类
的检测率前提下提高对小比例样本的检测率;然后构造出集
成神经网络,提高网络的整体检测能力。
1 个体神经网络的生成方法
1.1理论分析 Boosting算法中存在因过度关注困难样本而发生退化的
现象,部分样本得不到相对公平的训练机会;同时小类样本如
能获得更多的训练机会,对该类检测率则越高。受Boosting
算法的启发,提出分类学习算法。算法如下:将训练数据分为
两个集合——No册al集(大类集)和Intrusion集(小类集),在
训练中分别采用不同的样本选择策略使得Normal集获得公
平的训练机会和Intrusion集获得足够的重视。
在网络训练中通常采用训练误差判定训练效果,但最后
收稿Et期:2006—12—31;修订Et期:2007一O2—14 基金项目:国家自然科学基金资助项目(60373062,60573045) 作者简介:柴晨阳(1975一),男,江西玉山人,讲师,硕士研究生,主要研究方向:网络信息安全、人工智能;孙星明(1963一),男,湖南益阳 人,教授,博士生导师,主要研究方向:网络信息安全、分布式数据库;吴志斌(1971一),男,江西南昌人,硕士,主要研究方向:会计信息化财务 决策支持系统;智云生(1981一),男,山西晋中人,硕士研究生,主要研究方向:网络信息安全、入侵检测.
维普资讯 http://www.cqvip.com 1364 计算机应用 2007年
的判定标准还是检测率。以两分类为例(可以推广到多分
类),样本集s包含6培集、little集,l bigI》I limeI, =I 6留
I/I S I,/3=I little I/S,a+口=1。
则训练误差:
E =a}E (big)=/3}E (1ittle) (1)
若a=/3,则为均匀分布,误差越小检测率越高。
若口》 ,El(big)的变化对E的影响远远大于E(1ittle)
的。当大类样本获得较多训练机会时,E (big)、E 均明显的减
少,而小类样本被轻视,E (1ittle)有很小的优化或明显增大,
则该网络对小类的检测率不好。当小类样本获得较多训练机
会时,E(1ittle)明显改善、E无明显的变化,而大类样本被轻
视,则该网络对大类的检测率降低、可能发生退化现象。
因此要区别对待大类样本和小类样本。KDDCUlX)9中正
常数据占大部分,因此a》口。将训练数据分为两个集
合——N0珊且l集(大类集)和Intrusion集(小类集),在训练中
分别采用不同的样本选择策略。通过对Normal集特征部分
的统计发现输人部分近似均匀分布,因此对Normal集采用轮
换策略——最久未训练的样本获得训练机会。而Intrusion集
(共有4类入侵样本)则采用训练误差函数作为选择下个网
络训练样本的依据。
随着训练的进行,在大类样本和小类样本间取得平衡。
大类集中各样本获得均等训练机会,避免了退化现象;/b类样
本则获得足够的训练次数从而提高了该类的检测率。
1.2算法
算法如下:
1)初始化,将训练样本分为正常集和Normal和入侵集合
Intrusion.INormalI》IIntrusionI 2)Do While(还需要训练网络)
&)分别从Normal集、Intrusion集中按照各自的策略选
取样本组成一个训练子集s
b)对训练BP网络得分类器
c)记录Normal集样本学习次数、计算Intrusion集样本
的权值 3)输出个体网络7I。,h ,…,h
2神经网络的集成方法
2.1理论分析
将多个神经网络结果进行合成可以显著地提高神经网络
系统的泛化能力。文献[6]提出用网络间的关联度来表征误
差,并证明了这比用文献[7]的方法好。但该方法只能针对网
络权重相等的情况有用,没有普适性。本文的集成采用加权平
均的形式。神经网络分类函数,:R 一 ,输入 的分布函数
p( )、对应的期望输出为d(x)、在第i个网络下的输出为
( ),共有Ⅳ个神经网络 ,… ,网络集成,( )= Ⅳ Ⅳ ∑∞ ( ), e R ,其中∑ :1。
各神经网络的泛化误差:
E =∑p( ) ( )一d( )) (2) E 神经网络集成的泛化误差:
E=∑p( ) )一d( )) (3) =∑p( )( ( )一 ( ))( ( )一d( )) (4)
E=∑ ∑ (5)
c=[cl,l ‰] ㈩
Ⅳ E=∑ (9)
由于实验中不可避免地存在误差,因此 。则由(9)
式可以比较容易地求得在定义域内的最小值E 。
2.2集成的实现
应用遗传算法优化网络权重。算法如下:
1)确定有关参数,包括染色体长度、种群大小、交叉概
率、变异概率,及染色体编码并生成初始群体;
2)计算个体适应度;
3)根据适应度对个体进行选择、交叉和变异遗传操作;
4)生成新一代群体;
5)反复执行2)、3)、4)三步,直到满足进化终止条件。
染色体由各个网络的权重组成,采用实数编码方式,长度
为集成网络个数。采用轮盘赌选择法选择参加交叉、变异的
染色体,其中适应度最大的个体不参加遗传计算直接进入下
一代。交叉算法采用算术交叉。变异算法采用均匀变异。采
用误差(式5)的倒数作适应度函数:
1 1 fitne ̄=寺= — 一 (10) ∑ ∑
一般进化终止条件是根据多次实验结果而设定的一个数
值(比如最大进化代数),并没有理论根据。本算法进化终止
条件为训练误差达到或接近由(9)式所得的最小值 。
3 实验
表1各类数据组成
实验样本来源于K_DDCup99 10%数据集。KDDCup99
10%数据集包含约50万条连接记录,每条连接信息包括41 个属性和一个分类标签。分类标签表明该连接记录的类型, 共DOS、Probe、R2L、U2R等4类。从中选取9746条记录,其
中5 860条作为训练样本,3 886条作为测试样本。训练数据
组成如表1所示。 (下转第1367页)
维普资讯 http://www.cqvip.com