基于支持向量机简化算法的网络入侵检测系统的制作方法

文档序号:6575831阅读:923来源:国知局

专利名称::基于支持向量机简化算法的网络入侵检测系统的制作方法
技术领域
:本发明涉及一种网络入侵检测系统,尤其涉及一种基于支持向量机简化算法的网络入侵检测系统。背景纟支术入侵检测顾名思义,便是对入侵行为的发觉,它是为保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术。网络入侵检测所处理的数据是由多类攻击数据和正常数据构成的,因此网络入侵检测可以看作一个多分类问题。入侵检测系统的关键在于正常和异常行为模式库的建立。建立行为系统的方法主要有神经网络、数据挖掘等。这些方法有一个共同特点,就是所需要的训练数据量大,然而在入侵检测领域中能够获得的数据常常呈现出多变性、高维性和小样本,不能满足传统的统计方法的前提条件,以致误检率和漏检率都比较高。支持向量机(SupportVectorMachine,SVM)和核学习方法主要用于解决有限样本学习问题,而且对数据的维度和多变性不敏感,具有较好的分类精度和泛化能力,因此,它们被广泛应用于入侵检测系统,并取得了良好的检测效果。然而,SVM分类器的分类速度取决于支持向量的数目,如果支持向量数目很大,分类器的分类速度会很慢。对于入侵检测这种实时性要求极高的系统,緩慢的检测速度将极大地影响其性能,使其不能及时地;险测攻击并作出响应。因此,需要一种分类速度快同时误检率和漏检率都比较低的网络入侵检测系统,以保证网络的正常使用。
发明内容为克服现有技术的上述缺陷,本发明基于支持向量机简化算法的网络入侵检测系统提出一种基于SVM简化算法网络入侵冲企测系统,通过约简支持向量提高了SVM分类器的分类速度,同时基于此精简支持向量机的网络入侵检测系统的实时响应能力得到极大提高。为实现上述技术目的,本发明采用的技术方案如下一种基于支持向量机简化算法的网络入侵检测系统,该系统由顺次连接的网络数据捕获及提取模块、网络数据预处理模块、检测模块以及输出与响应模块组成,所述检测模块为精简SVM分类器,所述精简SVM分类器的判定函数为/("=柳(|>,.#0^;)+6)(1),其中(Xi,yi),i=l,...,Ns就是所谓的支持向量,它们对应的拉格朗日乘子"'大于零,x为待分类的向量,Ns为支持向量的数量,b为偏置。本发明基于支持向量才几筒化算法的网络入侵;险测系统与现有技术相比,具有如下有益效果该系统通过约简支持向量提高了SVM分类器的分类速度,基于此精简支持向量机的网络入侵检测系统的实时响应能力得到了极大提高。图1是本发明基于支持向量机简化算法的网络入侵检测系统的框图。具体实施例方式以下结合附图对本发明基于支持向量机简化算法的网络入侵检测系统作进一步描述。本发明基于支持向量机简化算法的网络入侵检测系统,该系统由顺次连接的网络数据捕获及提取模块、网络数据预处理模块、检测模块以及输出与响应模块组成,所述检测模块为精简SVM分类器,所述精简SVM分类器的判定函数为/=柳(|>,.#0^;)+^(1),其中(A,yi),i=l,...,Ns就是所谓的支持向量,它们对应的拉;格朗日乘子"'大于零,X为待分类的向量,Ns为支持向量的数量,b为偏置。为描述方便起见,本发明中将类别信息集成进Lagrange乘子"'中,下文的所有"'都采用了类似处理,相应地,(l)式这个判定函数变更为(2)此时的"'为不等于零的数。从(2)式可以看出,判定一个未知类别的样本所需要的时间和支持向量的数目成正比,因此,削减支持向量的数量能够有效地提高分类机的分类速度。SVM分类器训练所得的最优分类超平面所对应的向量w在形式上表示为所有支持向量在特征空间中的线性组合W=U°^(X')(3)本发明中SVM简化法试图采用一个约简的向量集来代替原有的支持向量集『、'(4)其中"'…,^^就是约简向量集,A"为约简向量Z'所对应的权值,Wz为约简向量集所包含的向量个数,并且~<&。这样,可以用浙代替w来判定未知类别的向量x,此时,SVM的判定函数形式如下/(x)=sgn(2AWz;,x)+6)w(5)SVM简化法的目标就是在尽量减小分类精度损失的前提下,寻找最小的礼=W和对应的约简向量集,形成一个精简的SVM分类器来提高分类速度。在削减支持向量数目时,首先构造一个新的约简向量及其对应权值",^来近似(3)式中的向量w,接着迭代地构建^+"U来近似向量,的形式如下2,伊")-£她)(6)由于不可能精确地找到向量zm和对应权值A使向量^为零。所以只能通过非线性优化来寻找最小的s,5的形式如下式所示3氛—广/,(z』12(7)对于某些特殊的核函数如高斯核函数,SVM分类器采用不动点迭代法来寻找约筒向量z,设(7)式导数为零,求约简向量z的迭代公式如下式所示laiexp(-"广zj卩/(2f7、(8)假设简化前后SVM分类器的支持向量分别为Ns,Nz,以核函数的计算次数来度量,则原始SVM分类器预测一样本的时间复杂度为O(Ns),精简SVM分类器对应的时间复杂度为0(NZ),由于^=w.s.,所以精筒SVM分类器比原始SVM分类器具有更低的分类复杂度。本发明采用的KDDCUP1999作为实验数据集。该数据集是WenkeLee等人在1998年美国国防部高级研究计划局(DARPA)作IDS评测时所获得数据^5出上恢复出来的连接信息。这批数据总共包含7个星期的网络流量,大约有500万条连接记录。由于原始数据集过于庞大,所以只有两个具有代表性的数据集被选取作为实验数据集,一个名为10Percent(训练集),包含494,020条记录,另一个名为Correct(测试集),包含311,029条记录。入侵;险测训练集包含正常网络流量数据和22个攻击类别,测试集除正常流量数据外还包含38个攻击类型。本实验将这两个数据集按照大的类型划分成5类,形成新的训练集和测试集。入侵检测训练和测试集的具体描述如表l所示。表1入侵检测数据集的训练及测试数据描述类型名称类标记训练记录数测试记录数Normal197,27760,593Probe24,1074,166DOS3391,458229,851U2R452230R2L51,12616,189入侵检测数据集包含了7个符号属性,而支持向量机只能处理数值属性,因此必须将符号属性转换为数值属性。转换方法如下首先创建一个全为0的数值序列,序列的长度等于该属性的取值种类并且序列中每个数和该字符属性的每一取值——对应,如果某条记录该属性取某个值,则数值序列中对应的数的值置为l,其余仍为0,此时该序列可看作一二进制值,对应十进制值即为所求数值。处理完符号属性后将所有的属性值都规j各化到[O,l]区间。对数据进行适当预处理后,选择LIBSVM作为标准的SVM训练算法。核函数采用高斯核函数,惩罚算子C及核函数参数都是采用LIBSVM在实验数据集一随机抽取的子集上10次交叉测试所得结果的最优值。实验结果如表2所示,其中第1行为不同的约简率,2—4行对应5类问题的精简SVM分类器的支持向量数、在测试集上的错误率和测试时间。其中第二列三行分别对应原始SVM分类器的支持向量数、测试错误率及在测试集上的运行时间。表2:不同约简率下分类器性能比较<table>tableseeoriginaldocumentpage7</column></row><table>从表2可以看出,随着约简率增大,相应的精简SVM分类器在测试集上的分类速度也随着提高。虽然精简SVM分类器的泛化性能随着约简率增大而有所降低,但与检测速度提升幅度相比,泛化性能的损失微乎其微。当对支持向量取得高达95%削减率的同时,却仅有7.2%的分类精度损失,与此同时,精简SVM分类器在测试集上的分类速度却是原SVM分类器的近10倍。这说明对入侵检测数据集,支持向量简化方法在极大削减支持向量的同时,基本保持了原SVM分类器的分类精度,极大地提高了SVM分类器的分类效率,解决了SVM应用于入侵检测系统所存在的速度瓶颈。本发明基于支持向量机筒化算法的网络入侵检测系统是一种基于SVM筒化算法网络入侵检测系统,通过约筒支持向量提高了SVM分类器的分类速度,从而使得基于此精简支持向量机的网络入侵检测系统的实时响应能力得到极大提高,同时保证系统比较低的误4全率和漏4企率。权利要求1、一种基于支持向量机简化算法的网络入侵检测系统,其特征在于该系统由顺次连接的网络数据捕获及提取模块、网络数据预处理模块、检测模块以及输出与响应模块组成,所述检测模块为精简SVM分类器,所述精简SVM分类器的判定函数为<mathsid="math0001"num="0001"><math><![CDATA[<mrow><mi>f</mi><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><mi>sgn</mi><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>N</mi><mi>S</mi></msub></munderover><msub><mi>&alpha;</mi><mi>i</mi></msub><msub><mi>y</mi><mi>i</mi></msub><mi>k</mi><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>,</mo><mi>x</mi><mo>)</mo></mrow><mo>+</mo><mi>b</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo></mrow>]]></math>id="icf0001"file="A2009100993460002C1.tif"wi="51"he="8"top="56"left="61"img-content="drawing"img-format="tif"orientation="portrait"inline="yes"/></maths>其中(xi,yi),i=1,...,Ns就是所谓的支持向量,它们对应的拉格朗日乘子αi大于零,x为待分类的向量,Ns为支持向量的数量,b为偏置。2、如权利要求1所述的基于支持向量机简化算法的网络入侵检测系统,其特征在于SVM分类器最优分类超平面所对应的向量w在形式上表示为所有支持向量在特征空间中的线性组合W=§a'^°(2)。3、如权利要求2所述的基于支持向量机简化算法的网络入侵检测系统,其特征在于SVM分类器采用一个约简的向量集w。(3)来代替原有的支持向量集w(2):1%=g^^,)(3),其中"'…'^^就是约简向量集,A"为约简向量5所对应的权值,Wz为约简向量集所包含的向量个数,并且~<&。4、如权利要求3所述的基于支持向量机简化算法的网络入侵检测系统,其特征在于SVM分类器削减支持向量数目时,首先构造一个新的约筒向量及其对应权值",W来近似(2)式中的向量w,接着迭代地构建""+"凡+0来近似向量^,、的形式如下5、如权利要求4所述的基于支持向量机筒化算法的网络入侵检测系统,其特征在于SVM分类器对高斯核函数采用不动点迭代法来寻找约简向量z,求约简向量Z的迭代公式为,a,exp(-IIU卩/(2cT,,。2>,eXp(-!|、-Z||2/(2<72))全文摘要本发明一种基于支持向量机简化算法的网络入侵检测系统,该系统由顺次连接的网络数据捕获及提取模块、网络数据预处理模块、检测模块以及输出与响应模块组成,所述检测模块为精简SVM分类器,所述精简SVM分类器的判定函数为f(x)=sgn(∑<sup>Ns</sup><sub>i=1</sub>α<sub>i</sub>y<sub>i</sub>k(x<sub>i</sub>,x)+b),其中(x<sub>i</sub>,y<sub>i</sub>),i=1,...,Ns就是所谓的支持向量,它们对应的拉格朗日乘子α<sub>i</sub>大于零,x为待分类的向量,Ns为支持向量的数量,b为偏置。该系统通过约简支持向量提高了SVM分类器的分类速度,从而使得基于此精简支持向量机的网络入侵检测系统的实时响应能力得到极大提高,同时保证系统比较低的误检率和漏检率。文档编号G06N99/00GK101594361SQ20091009934公开日2009年12月2日申请日期2009年6月2日优先权日2009年6月2日发明者群吴,吴剑锋,曾志强,柴春雷申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1