一种基于特征选择的入侵检测方法

文档序号:10570284阅读:2169来源:国知局
一种基于特征选择的入侵检测方法
【专利摘要】本发明涉及一种基于特征选择的入侵检测方法,首先对原始数据进行离散化处理,将离散化处理之后的数据进行特征选择,对特征选择之后的数据进行归一化处理,将归一化处理之后的数据导入分类器进行训练。本发明能够在训练模型的时间和准确率上都有提升。
【专利说明】
一种基于特征选择的入侵检测方法
技术领域
[0001] 本发明涉及数据挖掘领域,特别是一种基于特征选择的入侵检测方法。
【背景技术】
[0002] 随着互联网时代的发展,数据的连接和流量也越来越大.对于计算机和设备来说, 随之而来的恶意入侵的威胁也日益增加.所以建立一个网络入侵检测系统也越发重要。入 侵检测是一种通过收集和分析被保护系统信息,从而发现入侵的技术.由于入侵检测需要 对数据进行实时的、准确地处理,预测此条数据是否为威胁信息,所以如何做到对数据的及 时、准确的预测就成为了一个难题。以往的入侵检测系统采用模式匹配的办法,即人工的对 各个入侵模式建立规则,通过if?一else语句进行判断,但是此方法工作量法,准确率也不 高,最重要的是当一个新类型的攻击模式出现时,系统无法防御。
[0003] 近年来将机器学习的方法加入到入侵检测系统中来已是一个趋势。目前,神经网 络,支持向量机,朴素贝叶斯,决策树等机器学习方法都被运用到了入侵检测中来。首先对 收集到的特征进行数据的预处理,然后用这些与处理过的数据进行机器学习,生成分类器. 当一个实时数据通过系统时,系统可以通过分类器预测出此条记录是否为入侵记录,若被 判定为威胁,系统自动阻止入侵,若为正常,则让其通过.对于一个入侵检测系统来说,检测 入侵的准确率,发现入侵的速度等这些都是至关重要的因素.但是现在主流的机器学习方 法存在着准确率只能达到95%左右,并且训练时间过长,无法对冗余的数据进行处理等问 题。

【发明内容】

[0004] 有鉴于此,本发明的目的是提出一种基于特征选择的入侵检测方法,在训练模型 的时间和准确率上都有提升。
[0005] 本发明采用以下方案实现:一种基于特征选择的入侵检测方法,首先对原始数据 进行离散化处理,将离散化处理之后的数据进行特征选择,对特征选择之后的数据进行归 一化处理,将归一化处理之后的数据导入分类器进行训练。
[0006] 进一步地,所述离散化处理采用熵最小化离散法(EMD),首先将待划分的属性连续 值按次序排列,然后取每一对相连数值的中点作为断点候选集,通过循环评估候选集中的 每个断点,数据被划分成了两部分,并且分类结果的信息熵也被计算出来了,然后选择那个 使熵最小的断点加入断点集中;通过一个最小描述长度来规定所述熵最小化离散化的停止 时间。
[0007] 进一步地,所述离散化处理也可采用比例K时间间隔离散法(PKID),通过调整离散 的间隔大小和数量找到一个间隔尺度与所期望的准确率之间的一个权衡,将该权衡作为离 散化偏差和发差之间的衡量标准。
[0008] 进一步地,所述将离散化处理之后的数据进行特征选择,采用的是基于关联的特 征选择方法(CFS);通过一评估函数忽略对于分类影响小的特征,所述评估函数如下:
[0010] 其中,Ms为包含k个特征的子集S的启发式价值,是特征与类别联系强度的平均 值,rff是特征与特征之间的联系强度的平均值;
[0011] 进一步地,所述将离散化处理之后的数据进行特征选择,采用的是基于一致性的 过滤器方法(CONS),通过比较训练样本被投射到特征子集的一致性水平来选取特征;在每 一轮中从特征数中随机产生一个子集S,如果子集S中特征数目少于当前最好的特征子集中 的特征数目,接着计算S中的不一致标准,若不一致率低于预设的值,那么S就成了最好的特 征子集。
[0012]进一步地,所述将离散化处理之后的数据进行特征选择,采用的是INTERACT方法, 所述INTERACT方法为基于对称不确定性SU的算法;首先通过特征自己的对称不确定性 序排列,然后从这些特征序列最后开始,逐个评估特征,若某个特征的一致性贡献低于阈 值,就移除该特征,否则采用该特征;所述对称不确定性SU是描述两个特征x,y之间信息收 益IG和熵H比值的度量,公式如下:
[0015] 进一步地,所述归一化处理采用离差归一化(N0R),公式如下:
[0017]其中,max为样本数据的最大值,min为样本数据的最小值。
[0018]进一步地,所述分类器采用朴素贝叶斯分类器(Navie Bayes):设D是具有有限数 量实例的训练集,A= {心,A2,…,An}是n个有限的属性,一个实例dGD用向量(ai,a 2,"_an)来 描述,其中ai是属性Ai的当前取值,类别属性用C表示,函数domUO取得属性六:的定义域集 合;当= arg | c)成立时,即预测实例d的类别是在属性给定条件 下后验概率最大的类别,预测的正确性最大;引入假设:在给定类别C的条件下,所有的属性 Ai相互独立:P(Ai | c,Aj)=p(Ai | c),'^4.4」4(〇>0,采用下式计算在给定属性值的情况下 类别的后验概率: n
[0019] P(C - e\Ai- ax - a2 5 * * ? An ~ an) = arg max Pi c) I-[ P( .4. | G = c) 0
[0020] 进一步地,所述分类器采用支持向量机分类器(SVM),采用分类函数:
[0021] fix) = sign(Y,yia.K{xrx)+h);:
[0022]其中,1表示训练样本的数目,x表示待分类实例的向量,Xl,yi表示第i个训练样本 的属性向量和类别标识,K( xi,x)表示核函数,ai和b表示模型参数,通过计算如下一个二次 规划问题求解参数ai:
[0024] s.t'y,aiyi = 0,0 < at < CJ = !.???,/ ; z::l
[0025] 设二分类模型为:
[0026] g(x) = 〇*x+b;
[0027]设置二分类模型的阈值为0,得到: (〇*x. -f b > 0, V.v. g c\
[0028] , ^ 5 〇j a; + h < 0, /x; e c\
[0029]选出两类对象中距离最大的平面。
[0030] 进一步地,所述分类器采用决策树算法(Decision Tree),所述决策树算法分为两 个阶段:树构造阶段、树剪枝阶段;
[0031] 所述树构造阶段采用自顶向下的递归方式,从根节点开始在每个节点上按照给定 标准选择测试属性,然后按照相应属性的所有可能取值向下建立分枝、划分训练样本,直到 一个节点上的所有样本都被划分到同一个类,或者某一节点中的样本数量低于给定值时为 止;其中选择测试属性的标准包括信息增益、信息增益比、基尼指数以及基于距离的划分;
[0032] 所述树剪枝阶段采用先剪枝、后剪枝或两者相结合的方法;树剪枝方法的剪枝标 准包括最小描述长度原则和期望错误率最小原则;前者对决策树进行二进位编码,最佳剪 枝树就是编码所需二进位最少的树;后者计算某节点上的子树被剪枝后出现的期望错误 率。
[0033] 与现有技术相比,本发明有以下有益效果:以往的入侵检测系统采用模式匹配的 办法,本申请针对之前的分类器训练时间长、准确率不高的情况,引入特征选择的思想,提 出基于特征选择的网络入侵检测算法.根据实验结果,基于特征选择的算法在训练模型的 时间和准确率上都有提升,特别是在检测率方面,更是达到了 98 %以上。
【附图说明】
[0034]图1为本发明实施例原理框图。
[0035]图2为本发明实施例朴素贝叶斯结构模型示意图。
【具体实施方式】
[0036]下面结合附图及实施例对本发明做进一步说明。
[0037] 如图1所示,本实施例提供了一种基于特征选择的入侵检测方法,首先对原始数据 进行离散化处理,将离散化处理之后的数据进行特征选择,对特征选择之后的数据进行归 一化处理,将归一化处理之后的数据导入分类器进行训练。
[0038] 在本实施例中,所述离散化处理采用熵最小化离散法,首先将待划分的属性连续 值按次序排列,然后取每一对相连数值的中点作为断点候选集,通过循环评估候选集中的 每个断点,数据被划分成了两部分,并且分类结果的信息熵也被计算出来了,然后选择那个 使熵最小的断点加入断点集中;通过一个最小描述长度来规定所述熵最小化离散化的停止 时间。
[0039] 在本实施例中,所述离散化处理采用比例K时间间隔离散法,通过调整离散的间隔 大小和数量找到一个间隔尺度与所期望的准确率之间的一个权衡,将该权衡作为离散化偏 差和发差之间的衡量标准。
[0040] 在本实施例中,所述将离散化处理之后的数据进行特征选择,采用的是基于关联 的特征选择方法;通过一评估函数忽略对于分类影响小的特征,所述评估函数如下:
[0042] 其中,Ms为包含k个特征的子集S的启发式价值,是特征与类别联系强度的平均 值,rff是特征与特征之间的联系强度的平均值;
[0043] 在本实施例中,所述将离散化处理之后的数据进行特征选择,采用的是基于一致 性的过滤器方法,通过比较训练样本被投射到特征子集的一致性水平来选取特征;在每一 轮中从特征数中随机产生一个子集S,如果子集S中特征数目少于当前最好的特征子集中的 特征数目,接着计算S中的不一致标准,若不一致率低于预设的值,那么S就成了最好的特征 子集。
[0044]在本实施例中,所述将离散化处理之后的数据进行特征选择,采用的是INTERACT 方法,所述INTERACT方法为基于对称不确定性SU的算法;首先通过特征自己的对称不确定 性SU降序排列,然后从这些特征序列最后开始,逐个评估特征,若某个特征的一致性贡献低 于阈值,就移除该特征,否则采用该特征;所述对称不确定性SU是描述两个特征x,y之间信 息收益IG和熵H比值的度量,公式如下:
[0047]在本实施例中,所述归一化处理采用离差归一化,公式如下:
[0049] 其中,max为样本数据的最大值,min为样本数据的最小值。
[0050] 在本实施例中,如图2所示,所述分类器采用朴素贝叶斯分类器:设D是具有有限数 量实例的训练集,A= {心,A2,…,An}是n个有限的属性,一个实例dGD用向量(ai,a 2,"_an)来 描述,其中ai是属性Ai的当前取值,类别属性用C表示,函数domUO取得属性六:的定义域集 合;当£〇〇 = arg my | c)成立时,即预测实例d的类别是在属性给定条件 下后验概率最大的类别,预测的正确性最大;引入假设:在给定类别C的条件下,所有的属性 Ai相互独立:P(Ai| c,Aj)=p(Ai | c),^^4」4(〇>0,采用下式计算在给定属性值的情况下 类别的后验概率: n
[0051 ] P(C -e\Ai-a[liA2 = a2 5 * * -An ~ a n) arg max 吻n K4K = e)'。 ceG Z:=l
[0052]在本实施例中,所述分类器采用支持向量机分类器SVM,采用分类函数: !
[0053] /'(.v) = ^'g/7(y] v^.AXx,.,^) + h);
[0054] 其中,1表示训练样本的数目,x表示待分类实例的向量,Xl,yi表示第i个训练样本 的属性向量和类别标识,K( xi,x)表示核函数,ai和b表示模型参数,通过计算如下一个二次 规划问题求解参数ai:
[0055] maWt/) = W ^ /-I
[0056] s.f^f a:yi = 0,0 < < C,i = 1, ? ? ? J ; i~i
[0057]设二分类模型为:
[0058] g(x) = ? *x+b ;
[0059]设置二分类模型的阈值为0,得到: (〇 * x. + h > 0, Vx. e c.'
[0060] , n w ' ; 〇) * x: -!-/)< 0, V.v; e c,
[0061]选出两类对象中距离最大的平面。
[0062] 在本实施例中,所述分类器采用决策树算法,所述决策树算法分为两个阶段:树构 造阶段、树剪枝阶段;
[0063] 所述树构造阶段采用自顶向下的递归方式,从根节点开始在每个节点上按照给定 标准选择测试属性,然后按照相应属性的所有可能取值向下建立分枝、划分训练样本,直到 一个节点上的所有样本都被划分到同一个类,或者某一节点中的样本数量低于给定值时为 止;其中选择测试属性的标准包括信息增益、信息增益比、基尼指数以及基于距离的划分;
[0064] 所述树剪枝阶段采用先剪枝、后剪枝或两者相结合的方法;树剪枝方法的剪枝标 准包括最小描述长度原则和期望错误率最小原则;前者对决策树进行二进位编码,最佳剪 枝树就是编码所需二进位最少的树;后者计算某节点上的子树被剪枝后出现的期望错误 率。
[0065]特别的,本实施例采用KDDcup99数据库,该数据库是唯一能够提供样本标签和测 试数据的数据集。此数据集主要包括41位属性和一位标签,其中1 一9的属性是网络连接的 基本特征,10-22的属性是网络连接的内容特征23-41的属性是网络连接的流量特征.该 数据集包含有训练数据,其中包括七周在TCP中的检测到的大约500万条连接记录,其中每 一个大约为100个字节的数据。我们实验中所使用的是10%KDDcup99,即494201个数据。 [0066]为了证明本发明的算法相较于传统算法的优点,我们将上述提到的3种特征选择 算法和两种离散化算法混合,这样就得到了下列的表格:
[0068] 表1特征选择属性
[0069] 上表每一种结合都会产生不同的特征子集,再结合不同的分类器更会得到不同的 结果。所以,下面就针对不同的组合与不同的分类器进行实验。
[0070] 本实施例选取的是10 %的KDD99数据集,先将前30万个数据作为训练集训练模型, 再用剩余的20万个数据作为测试集进行模型的检验。将标签中的nomal.标记为+1,其余的 标记为-1,将于处理完的数据带入模型中进行训练,得到支持向量机(SVM),决策树(tree) 和朴素贝叶斯(bayes)模型。再用剩余的20万数据进行测试模型的准确率。
[0071 ]下面就对二类的情况讨论三种分类器的性能:
[0073]表2特征选择后的分类准确率
[0074] 从表1和表2中可以看出在进行了特征选择之后,除了 C0NS+PKID+N0R的组合,基本 上大部分选择的特征组合都能使分类器的性能得到显著提高,在SVM分类器中,INTERACT+ EMD+N0R_SVM的组合得到最高的精确度98.35 % ;在决策树分类器中,INTERACT+EMD+NOR_ TREE的组合得到最高的精确度99.90%;在朴素贝叶斯分类器中,1抑^1^(^+131(10+觀1?_ BAYES的组合得到最高的准确率98.32%。在上述的三个分类器中,决策树的分类效果最好. 决策树的错误率保持在1 %以下,支持向量机则保持在2%以下,由于朴素贝叶斯模型是基 于条件独立性和概率统计提出的,当属性之间有着关联或者属性的分布不均匀时,都会产 生分类的错误,所以整体上准确率不如以上两种。
[0075] 在KDDcup99数据集中,有4大类错误类型,他们分别是?仰1^,0〇8,1]21?和1?2匕再加 上正常的normal类,总共有5类。如下表所示:
[0077] 表3 10%kddcup各类标签所占比例
[0078]本发明对这5个类别建立多分类模型,并进行测试,具体数据见表4,表5,表6:
[0081]表4特征选择后的多分类情况支持向量机(SVM)分类情况
[0083]表5特征选择后的多分类情况决策树分类情况
[0084]
[0085] 表6特征选择后的多分类情况贝叶斯(Bayes)分类情况
[0086] 从结果上看,进行多分类特征选择之后,支持向量机和决策树算法的分类准确率 平均也都在95%以上,而在个别类别上分类准确率相对较低是因为训练数量不足,不足以 生成准确的分类器。在3¥11中,0?5+£1?)+勵1?_5¥11的组合得到最好的准确度98.34%;在决策 树中,C0NS+EMD+N0R_TREE的组合得到最好的准确率99.29 % ;在朴素贝叶斯中,CONS+PKID+ N0R_BAYES的组合得到最好的准确率91.83 %。相比之下,贝叶斯的准确率则不是很高。由于 贝叶斯分类器是建立在数据的概率分布上的,可能训练集中的样本不能很好的反应样本整 体的分布情况,所以建立模型时也出现了偏差,导致准确率下降。
[0087] 以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与 修饰,皆应属本发明的涵盖范围。
【主权项】
1. 一种基于特征选择的入侵检测方法,其特征在于:首先对原始数据进行离散化处理, 将离散化处理之后的数据进行特征选择,对特征选择之后的数据进行归一化处理,将归一 化处理之后的数据导入分类器进行训练。2. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述离散化 处理采用熵最小化离散法,首先将待划分的属性连续值按次序排列,然后取每一对相连数 值的中点作为断点候选集,通过循环评估候选集中的每个断点,数据被划分成了两部分,并 且分类结果的信息熵也被计算出来了,然后选择那个使熵最小的断点加入断点集中;通过 一个最小描述长度来规定所述熵最小化离散化的停止时间。3. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述离散化 处理采用比例K时间间隔离散法,通过调整离散的间隔大小和数量找到一个间隔尺度与所 期望的准确率之间的一个权衡,将该权衡作为离散化偏差和发差之间的衡量标准。4. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述将离散 化处理之后的数据进行特征选择,采用的是基于关联的特征选择方法;通过一评估函数忽 略对于分类影响小的特征,所述评估函数如下:其中,Ms为包含k个特征的子集S的启发式价值,是特征与类别联系强度的平均值,rff 是特征与特征之间的联系强度的平均值。5. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述将离散 化处理之后的数据进行特征选择,采用的是基于一致性的过滤器方法,通过比较训练样本 被投射到特征子集的一致性水平来选取特征;在每一轮中从特征数中随机产生一个子集S, 如果子集S中特征数目少于当前最好的特征子集中的特征数目,接着计算S中的不一致标 准,若不一致率低于预设的值,那么S就成了最好的特征子集。6. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述将离散 化处理之后的数据进行特征选择,采用的是INTERACT方法,所述INTERACT方法为基于对称 不确定性SU的算法;首先通过特征自己的对称不确定性SU降序排列,然后从这些特征序列 最后开始,逐个评估特征,若某个特征的一致性贡献低于阈值,就移除该特征,否则采用该 特征;所述对称不确定性SU是描述两个特征x,y之间信息收益IG和熵Η比值的度量,公式如 下:7. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述归一化 处理采用离差归一化,公式如下:其中,max为样本数据的最大值,min为样本数据的最小值。8. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述分类器 采用朴素贝叶斯分类器:设D是具有有限数量实例的训练集,AHA^As,···,An}是η个有限的 属性,一个实例deD用向量(&1,&2^)来描述,其中&1是属性仏的当前取值,类别属性用〇 表示,函数dom(Ai)取得属性Ai的定义域集合;当冰Gug nif U')成立 时,即预测实例d的类别是在属性给定条件下后验概率最大的类别,预测的正确性最大;弓丨 入假设:在给定类别C的条件下,所有的属性~相互独立 >〇,采用下式计算在给定属性值的情况下类别的后验概率:9. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述分类器 采用支持向量机分类器SVM,采用分类函数:其中,1表示训练样本的数目,X表示待分类实例的向量,xi,yi表示第i个训练样本的属 性向量和类别标识,K(Xl,x)表示核函数,ajPb表示模型参数,通过计算如下一个二次规划 问题求解参数ai: 设二分类模型为:g(x) = ω 氺x+b; 设置二分类模型的阈值为〇,得到:选出两类对象中距离最大的平面。10. 根据权利要求1所述的一种基于特征选择的入侵检测方法,其特征在于:所述分类 器采用决策树算法,所述决策树算法分为两个阶段:树构造阶段、树剪枝阶段; 所述树构造阶段采用自顶向下的递归方式,从根节点开始在每个节点上按照给定标准 选择测试属性,然后按照相应属性的所有可能取值向下建立分枝、划分训练样本,直到一个 节点上的所有样本都被划分到同一个类,或者某一节点中的样本数量低于给定值时为止; 其中选择测试属性的标准包括信息增益、信息增益比、基尼指数以及基于距离的划分; 所述树剪枝阶段采用先剪枝、后剪枝或两者相结合的方法;树剪枝方法的剪枝标准包 括最小描述长度原则和期望错误率最小原则;前者对决策树进行二进位编码,最佳剪枝树 就是编码所需二进位最少的树;后者计算某节点上的子树被剪枝后出现的期望错误率。
【文档编号】G06K9/62GK105930723SQ201610246178
【公开日】2016年9月7日
【申请日】2016年4月20日
【发明人】陈星 , 戴远飞
【申请人】福州大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1