首页> 中国专利> 一种基于选择性隐朴素贝叶斯分类器的网络故障诊断方法

一种基于选择性隐朴素贝叶斯分类器的网络故障诊断方法

摘要

本发明公开了一种基于选择性隐朴素贝叶斯分类器的网络故障诊断方法,包括:(1)从网络历史数据库中获取历史数据,包括症状变量集以及故障类变量集;(2)构建选择性隐朴素贝叶斯分类器预测模型,根据症状变量集中的每个症状变量确定对应的最相关症状变量集合;(3)所述选择性隐朴素贝叶斯分类器通过训练历史数据自动学习到分类器参数;(4)进行故障诊断时,对测试数据利用上述选择性隐朴素贝叶斯分类器进行估计得到对应最终的故障诊断结果。通过执行本发明中的网络故障诊断方法,有效解决了现有网络故障诊断中运算复杂度高、网络诊断结果偏差大的问题,显著提高了网络诊断的准确性,在进一步降低运算复杂度的同时,能够保持较好的学习能力及容错特性。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-25

    授权

    授权

  • 2016-05-25

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20151203

    实质审查的生效

  • 2016-04-27

    公开

    公开

说明书

技术领域

本发明涉及通信网络技术领域,更具体地,涉及一种基于选择性隐朴素贝叶斯分类器的网络故障诊断方法。

背景技术

现代网络具有规模大,网络拓扑复杂度高的特点。网络中某一部分出现故障,会引起一系列症状。若故障未能及时诊断出来,那么整个网络的系统功能、可靠运行、安全生产都会受到影响,甚至会网络瘫痪,因此,故障诊断对网络尤为重要。

早期的故障诊断完全依靠专家知识,但很难维持网络运作的可靠性以及稳定性。因此,在大型复杂的网络中,智能诊断大量应用,其中的一些方法也被提出,比如贝叶斯网络,人工智能。

朴素贝叶斯分类器(NB)是最简单的贝叶斯网络,但它成立的前提是各属性之间相互独立,使得朴素贝叶斯分类器不能利用属性变量间的依赖信息,因此不适用于现实中大部分数据集。后续的,改进的朴素贝叶斯分类器(TAN)提出来了,它通过发现属性间的依赖关系来降低朴素贝叶斯分类器中属性独立的假设,但它的属性节点最多只能有一个属性父节点,使TAN分类器只能利用部分的依赖信息,这不能起到很好的效果。为充分利用属性节点间的依赖关系,隐朴素贝叶斯分类器(HNB)提出来了,这个模型在朴素贝叶斯分类器的基础上通过为每个属性节点引入一个隐藏父节点来表示该属性与其他各属性间的依赖关系,这样不仅避免了学习最优贝叶斯网络结构的复杂计算,又能减弱属性间的独立性假设。

隐朴素贝叶斯分类器HNB结构如图1所示,包含了3类节点:类节点、属性节点、隐藏父节点,分别用C,A,Ahp表示。在HNB中,属性间的依赖关系就是由属性的隐藏父节点所表示,隐藏父节点的表示方法就能确定属性间的依赖关系的强弱。

虽说朴素贝叶斯分类器HNB已经考虑到属性间的依赖关系,但它运算复杂度不甚理想,仍会花费很多测试时间,尤其是被运用在高维度的数据集上。另外,如果考虑样本的所有属性,可能会加入噪声干扰,并降低分类器效率。因此,本领域亟需寻找一种准确性更高、计算复杂度更低的网络故障诊断方法。

发明内容

针对现有技术的以上缺陷或改进需求,本发明提供了一种基于选择性隐朴素贝叶斯分类器的网络故障诊断方法,相应的可有效解决网络故障快速诊断和诊断准确率较低的问题,因而尤其适用于拓扑复杂度高的网络故障诊断。

为实现上述目的,本发明提出了一种基于选择性隐朴素贝叶斯分类器的网络故障诊断方法,其特征在于,所述方法包括:

(1)从网络历史数据库中获取历史数据,包括症状变量集以及故障类变量集;

(2)构建选择性隐朴素贝叶斯分类器预测模型,根据症状变量集中的每个症状变量确定对应的最相关症状变量集合;

(3)所述选择性隐朴素贝叶斯分类器通过训练历史数据自动学习到分类器参数;

(4)进行故障诊断时,对测试数据利用上述选择性隐朴素贝叶斯分类器进行估计得到对应最终的故障诊断结果。

作为进一步优选的,所述针对每个症状变量确定对应的最相关症状变量集合,具体为:针对症状变量Ai,估计Ai和Aj之间的互信息,其中{i,j∈=1,2,…,n,i≠j},并进行排序,选取互信息最大的前m个症状变量作为症状变量Ai的最相关症状变量集合。

作为进一步优选的,所述最相关症状变量的数量是根据实际测试确定的。

作为进一步优选的,所述选择性隐朴素贝叶斯分类器预测模型F具体为:

>F=argmaxcCP(c)Πi=1nP(ai|aphi,c)>

其中,C为故障类变量集,c为故障类变量,P(c)为对应的故障类变量概率,P(ai|aphi,c)为症状变量ai和其最相关症状变量集合aphi的条件概率,i=1,2,…,n,n为症状变量个数。

作为进一步优选的,所述症状变量ai和其最相关症状变量集合aphi的条件概率P(ai|aphi,c)具体为:

>P(ai|aphi,c)=Σk=1mWi-ik*P(ai|aik,c)>

其中,Wi-ik表示症状变量ai和其最相关症状变量aik间的条件互信息,P(ai|aik,c)为症状变量ai和其最相关症状变量aik的条件概率,aik∈aphi,k=1,2,…,m,m为最相关症状变量个数。

作为进一步优选的,所述症状变量ai和其最相关症状变量aik间的条件互信息Wi-ik具体为:

>Wi-ik=Σai,aik,cP(ai,aik,c)logP(ai,aik,c)P(ai|c)P(aik|c)Σk=1mΣai,aik,cP(ai,aik,c)logP(ai,aik,c)P(ai|c)P(aik|c)>

其中,P(ai,aik,c)为ai和aik的联合概率,P(ai|c)为ai的条件概率,P(aik|c)为aik的条件概率。

作为进一步优选的,在步骤(3)中,所述分类器参数包括症状变量条件概率P(ai|aj,c)以及故障类变量概率P(c),具体为:

>P(ai|aj,c)=F(ai,aj,c)+1/nF(aj,c)+1>

>P(c)=F(c)+1/st+1>

其中,F(ai,aj,c)历史数据中症状变量ai和aj同时出现的次数,F(aj,c)是历史数据中症状变量aj出现的次数,F(c)是历史数据中故障类变量出现的次数,t是历史数据的数量,s是故障类变量数量,n是症状变量数目。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,主要具备以下的技术优点:

1.本发明提出的基于选择性隐朴素贝叶斯分类器的网络故障诊断方法,能够相应解决现有网络故障诊断方法中诊断准确率低及故障诊断运算复杂度高的问题,通过对贝叶斯分类器的改进,进一步提高了故障诊断的准确率,从而使得该方法拥有更低的运算复杂度,缩短了诊断测试时间;

2.本发明尤其针对现有通信网络网络规模大及网络拓扑复杂度高的特点,设计了一种选择性隐朴素贝叶斯分类器,通过该分类器对网络进行故障诊断,大大提高了分类器自身的学习能力以及容错特性。

附图说明

图1是隐朴素贝叶斯分类器结构图;

图2是故障诊断方案流程图;

图3是选择性隐朴素贝叶斯分类器结构图;

图4是实例中获取的历史数据示意图;

图5是实例中故障类变量与症状变量统计图;

图6是实验条件下不同m值对应的准确率;

图7是实例中构建的选择性隐朴素贝叶斯分类器预测模型结构图;

图8是实例中采用不同预测模型下的故障诊断准确率统计图;

图9是实例中针对历史数据数量为300时采用不同预测模型下的故障诊断的诊断时间统计图;

图10是历史数据丢失时采用不同预测模型下的故障诊断准确率统计图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

本发明与现有故障诊断技术不同的地方就在于分类器预测模型的选取上,本发明提出了基于选择性隐朴素贝叶斯分类器(SHNB)的网络故障诊断方法,通过执行本发明中的技术方案,可以显著提高故障诊断准确率,降低网络故障诊断的计算复杂度。

如图2所示,所述方法包括以下步骤:

(1)从网络历史数据库中获取历史数据,包括症状变量集以及故障类变量集;

(2)构建选择性隐朴素贝叶斯分类器预测模型,根据症状变量集中的每个症状变量确定对应的最相关症状变量集合;

(3)所述选择性隐朴素贝叶斯分类器通过训练历史数据自动学习到分类器参数;

(4)进行故障诊断时,对测试数据利用上述选择性隐朴素贝叶斯分类器进行估计得到对应最终的故障诊断结果。

SHNB分类器预测模型结构如图3所示,其中C是类节点,即故障类变量集,指向所有的属性A1,A2,...,An,即症状变量集,对每个属性Ai(i=1,2,…,n)都有隐藏父节点Si(i=1,2,…,n),即与每个症状变量对应的最相关症状变量集合,其包含与Ai最相关的m个症状变量,m是个经验值,对于不同的历史数据m的值不尽相同,也就是说,所述最相关症状变量集合的大小m是根据实际测试确定的。

对SHNB来说,如何选择出最相关症状变量集作为隐藏父节点尤为关键,本发明采用症状变量间的互信息来完成。对症状变量Ai(i=1,2,…,n),通过计算Ai(i=1,2,…,n)和Aj(j=1,2,…,n,j≠i)之间的互信息,选择互信息最大的m个最相关症状变量作为隐藏父节点,将这m个最相关症状变量加入到Si(i=1,2,…,n)中,即Si={Ai1,Ai2,...,Aik,...,Aim}。

在步骤(2)中,构建的所述选择性隐朴素贝叶斯分类器预测模型F具体为:

>F=argmaxcCP(c)Πi=1nP(ai|aphi,c)>

其中,C为故障类变量集,c为故障类变量,P(c)为对应的故障类变量概率,P(ai|aphi,c)为症状变量ai和其最相关症状变量集合aphi的条件概率,i=1,2,…,n,n为症状变量个数。

所述症状变量ai和其最相关症状变量集合aphi的条件概率P(ai|aphi,c)具体为:

>P(ai|aphi,c)=Σk=1mWi-ik*P(ai|aik,c)>

其中,Wi-ik表示症状变量ai和其最相关症状变量aik间的条件互信息,P(ai|aik,c)为症状变量ai和其最相关症状变量aik的条件概率,aik∈aphi,k=1,2,…,m,m为最相关症状变量个数。

所述症状变量ai和其最相关症状变量aik间的条件互信息Wi-ik具体为:

>Wi-ik=Σai,aik,cP(ai,aik,c)logP(ai,aik,c)P(ai|c)P(aik|c)Σk=1mΣai,aik,cP(ai,aik,c)logP(ai,aik,c)P(ai|c)P(aik|c)>

其中,P(ai,aik,c)为ai和aik的联合概率,P(ai|c)为ai的条件概率,P(aik|c)为aik的条件概率。

另外,在步骤(3)中,所述分类器参数包括症状变量条件概率P(ai|aj,c)以及故障类变量概率P(c),具体为:

>P(ai|aj,c)=F(ai,aj,c)+1/nF(aj,c)+1>

>P(c)=F(c)+1/st+1>

其中,F(ai,aj,c)历史数据中症状变量ai和aj同时出现的次数,F(aj,c)是历史数据中症状变量aj出现的次数,F(c)是历史数据中故障类变量出现的次数,t是历史数据的数量,s是故障类变量数量,n是症状变量数目。

在实例中,本发明从网络历史数据中选取了350个案例,并总结一些症状变量集为属性,一些故障类变量集为类,详细情况如图4所示。这些症状和故障的对应关系如图5所示。图5中,A1=0和A1=1分别表示接口管理状态为正常和断开,A2=0和A2=1分别表示接口操作状态为正常和断开,A3,A4,A5,A6,A7,A8,A9,A10,这些值为0表示属性值正常,为1表示网络中存在故障。

SHNB最关键的、最区别于其他的地方在于最相关症状变量集大小的选择上,即m的取值,m和历史数据有关。因此,本发明选用不同的m值在故障类变量集上测试,图6为实验条件下不同m值对应的准确率。由图可知m为2的时候准确率最高,因此在本实例中取m=2,即为每个症状变量确定两个最相关症状变量。

本发明通过计算互相关信息选择出包含两个最相关症状变量的最相关症状变量集作为隐藏父节点。举例如下,对于症状变量A1,计算IP(A1|Aj,C),然后利用选择排序的算法对互信息进行排序,选择出互信息最大的两个A2和A3,因此,症状变量A1对应的隐藏父节点S1包含A2和A3。这样,实施本方法时得到如图7所示的实际SHNB模型。

根据图7所示的实际模型,本发明用测试数据进行故障诊断,并与NB,TAN,HNB三种分类器进行纵向比较,得到结果如图8所示。当训练数据增加到300之后,每种分类器的准确率都趋于稳定,但SHNB的准确率最高,达到95%,是纵向比较中最高的方法。

与此同时,进一步测试各种方法的诊断时间,训练数据选300个,得到的结果如图9所示,可以清楚看到,SHNB的诊断时间也较短。

但实际情况中,往往会有样本属性丢失不完整的情况,因此,本发明也讨论了这一情况,结果如图10所示。在丢失症状变量或故障类变量数量越来越多的情况下,各种算法的准确率都在降低,但TAN的准确率下降的最快,相反的,贝叶斯分类器的准确率下降情况好多了,因此,贝叶斯分类器包括本发明提到的选择性隐朴素贝叶斯分类器都有很好的容错特性以及学习能力。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号