中国教育和科研计算机网
EDU首页 |  中国教育 |   高校科技 |   教育信息化 |   CERNET
教育信息化

资讯 | 专题 会议 观点 专栏 访谈 企业 产品 CIO 技术 校园信息化 下一代互联网 IPv6视频课堂

中国教育网 > 教育信息化
您现在的位置: EDU首页 > 教育信息化 > 网络安全 > 攻击防范 > 网络入侵
主成分分析法改进贝叶斯网络入侵检测
http://www.edu.cn   2012-04-27 中国教育网络 作者:李静 冯祖洪

字体选择:【大】 【中】 【小】

  贝叶斯网络

  贝叶斯网络是一个功能强大的知识表示和不确定条件下的推理工具,由一个有向无环图及图中各个节点所附加的一张概率表组成[6]。其中,有向无环图的各个节点表示领域中不同的变量,节点之间的弧表示变量之间的依赖关系。根节点X所附的是它的边缘分布P(X),而非根节点X所附的是条件概率分布P(X|π(X)),其中π(X)代表X的父节点。简单地讲,有向无环图从定性的层面描述变量之间的依赖独立关系,而概率分布从定量的层面刻画变量对其父节点的依赖关系。为方便描述,文章中将有向无环图称作贝叶斯网络结构,将各个节点的概率表称作节点参数。

  改进贝叶斯网络入侵检测

  利用主成分分析改进贝叶斯分类算法

  从理论上分析,由于贝叶斯网络具有坚实的数学理论基础以及综合先验信息和样本信息的能力,因此比其他分类算法,如朴素贝叶斯、支持向量机等,具有更好的分类精度。但是,已有的贝叶斯网络算法在对训练数据进行训练时,并没有考虑到大量冗余的数据属性会提高数据的维数,增加分类计算量,造成分类效率的下降。基于这样的情况,本文提出在利用训练数据集进行训练之前,首先对训练数据集进行特征选择或者特征提取。常用的特征选择方法主要有信息增益、信息增益比、距离度量等。虽然采用这些特征选择算法会大幅度减少计算量,但是由于忽略一部分属性对分类所起的作用,导致分类精确度不够理想。文本采用主成分分析的方法对特征属性进行特征提取,这样不仅可以大大地减少数据维数,减少计算量,同时也可以最大限度地利用原数据的分类信息,使得分类精度相对较高。

  例如,某数据集有特征属性A1、A2、A3、A4、A5、A6、A7,对分类所起的作用分别为:0.2324、0.208、0.1753、0.1052、0.1038、0.08931、0.0859在通过特征选择后得到对分类所起作用较大的前四个属性A1、A2、A3、A4对分类所起的作用之和为0.7209。而在用主成分分析之后得到的结果可能是X1、X2、X3、X4,而根据主成分分析算法,得到的这四个主成分对分类所起的作用之和一定大于0.85。相比之下,本文选择主成分分析的方法对训练数据集进行特征提取来减少特征属性,从而减少计算量,提高检测效率。

  改进贝叶斯分类算法的步骤

  设训练数据集为M0,改进贝叶斯分类算法的步骤分别是:

  1.对训练数据集M0进行预处理(如:数值化处理和离散化处理)得到训练数据集M1。

  2.采用之前提到的主成分分析方法对M1进行主成分分析,得到包含较少属性的新数据集M2。

  3.对数据集M2进行离散化处理得到新的数据集M3。

  4.参照基于互信息的贝叶斯网络结构生成算法[7],对M3进行训练得到贝叶斯网络的结构。

  5.利用滑动窗口机制,对测试集中的数据进行测试。具体步骤如下:

  (1)对训练数据集设置两个指针,分别为头指针P1(指向训练数据集的首部)和尾指针P2(指向训练数据集的尾部);同时,对测试数据集设置两个指针,分别为头指针Q1(指向测试数据集的首部)和尾指针Q2(指向训练数据集的尾部),即P=P1,Q=Q1;

  (2)把指针P所指向的数据存入数据集M中,P=P+1;

  (3)重复(1),直到P>P2;

  (4)通过数据集M计算贝叶斯网络结构各个节点的参数C(即概率表);

  (5)用贝叶斯网络结构和参数C对训练数据集中指针Q所指向的数据进行测试,并将该条数据追加到训练数据集M的尾部,P2=P2+1,Q=Q+1;

  (6)重复(4)的操作,直到Q=Q1+N或者Q>Q2;

  (7)如果Q>Q2,继续执行下一步;否则,P1=P1+N,P=P1,转到(1);

  (8)测试完毕,计算正确率。

页面功能 【打印】 【关闭】 【我有话说

MOOC风暴来袭

版权所有:中国教育和科研计算机网网络中心 CERNIC,CERNET,京ICP备15006448号-16,京网文[2017]10376-1180号

关于假冒中国教育网的声明 | 有任何问题与建议请联络:Webmaster@staff.cernet.com