一种基于决策树的ONU故障诊断方法与流程

文档序号:14155042阅读:457来源:国知局

本发明涉及电力通信网onu故障诊断技术领域,具体涉及一种基于决策树的onu故障诊断方法。



背景技术:

pon(无源光纤网络)技术可以提高光纤资源的利用率,但是在上行链路中容易受到干扰,影响pon系统的稳定运行。另外,pon系统传输距离延伸环境下,增加了相关光信号延伸设备,使这个问题更加复杂。一般来说,产生干扰的原因主要包括:长发光、发光超出或偏离授权窗口、消光比不达标、特定情况下短时发光或随机突发式乱发光等几种。从已有研究成果可知,长发光对业务的影响最为严重。所以,解决长发光问题,是当前的研究重点。

已有相关研究提出了一些长发光告警诊断方法,包括信号扫描法、虚拟onu法。但是,在这些算法中,需要人工积累判断规则,然后基于判断规则和告警信息,通过人工打开和关闭发光器、电源开关等措施,进行故障诊断,这种故障诊断的效率较低。

为了提高onu(光网络单元)故障诊断的效率,本发明提出了基于决策树的onu故障诊断算法。



技术实现要素:

本发明的目的在于克服现有技术中的不足,提供了一种基于决策树的onu故障诊断方法,代替人工故障诊断方法,提高故障诊断的效率。

为解决上述技术问题,本发明提供了一种基于决策树的onu故障诊断方法,其特征是,包括以下步骤:

步骤s1,采集一段时间内onu的状态特征与故障、告警特征与故障以及性能特征与故障,挖掘出特征与故障之间的对应关系;

步骤s2,根据特征与故障之间的对应关系,构建决策树;

步骤s3,采集onu实时特征,输入决策树中进行onu故障诊断;

步骤s4,对故障诊断的结果进行性能分析,如果不满足性能要求,则重新构造决策树。

进一步的,步骤s1中,采用hbase新型数据库存储采集到的特征与故障数据。

进一步的,步骤s2中,采用hunt算法来构建决策树。

进一步的,采用hunt算法创建决策树时,采用信息熵选择最好的数据特征,来划分数据集。

进一步的,采用信息熵选择最好的数据特征来划分数据集的过程为:如果给定一个节点t,它的条件熵计算公式如下:entropy(t)=-∑jp(j|t)logp(j|t),其中,p(j|t)表示给定节点t中属于类j的记录所占的比例,定义信息增益如下:

其中,ni表示与特征i相关联的记录个数,k表示特征值的个数,p表示当前节点的父节点,n表示父节点p中的数据个数。

进一步的,决策树采用文件存储方式。

进一步的,步骤s4中,采用准确率和误报率来分析onu故障诊断结果的性能,准确率和误报率的计算公式见下式:

与现有技术相比,本发明所达到的有益效果是:本发明能够用于代替人工故障诊断方法,提高了故障诊断的效率,而且取得了较高的准确率、较低的误报率。

附图说明

图1为本发明方法的流程图;

图2为实施例中采用本发明方法的准确率性能分析的示意图;

图3是实施例中采用本发明方法的误报率性能分析的示意图。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

为解决pon系统上行链路中容易受到干扰,影响pon系统的稳定运行等问题。本发明的一种基于决策树的onu故障诊断方法,如图1所示,包括以下步骤:

步骤s1,采集一段时间内onu的状态特征与故障、告警特征与故障以及性能特征与故障,挖掘出特征与故障之间的对应关系;

通过olt、onu的oam模块获取运行、维护等数据,从epon系统的mpcp模块获取协议消息数据,从这些数据中抽取出状态特征与故障、告警特征与故障、性能特征与故障等数据。然后基于维护经验,挖掘出关键特征,以及关键特征组合下的故障诊断结果。

例如:当诊断发现部分onu满足以下特征组合时,则可将其列为疑似故障onu。特征1:多个onu发生告警的时间与单个onu告警修复的时间间隔小于n分钟;特征2:同一时间内,多于1个onu在线;特殊3:多个onu发生告警的时间间隔小于m分钟;特征4:多个onu误码率超过k比特;特征5:出现长发光的onu数量发生变化;特征6:onu与olt之间的通信时间超出正常阈值。

对采集到的特征及故障进行存储时,为提高数据存储的实时性,以及便于数据字段的调整,本发明采用hbase新型数据库存储采集到的数据。

首先对不同来源的数据做时间和空间的对准,然后对数据进行清洗和整理。其中使用的处理算法主要包括数据整合算法、数据抽样算法、缺失值处理算法、行内去重算法、数据修改算法等。例如,特征3中的m取值1分钟;特征1中的n取值1分钟;特征4中的k取值10比特。基于已有研究成果,以及pon网络运行过程中的实际数据,整理训练数据集,并用于训练模型。基于决策树的onu故障诊断训练数据举例见下表1。

表1:基于决策树的onu故障诊断训练数据举例

步骤s2,根据特征与故障之间的对应关系,构建决策树,将决策树存储为文件,便于实时应用到onu故障诊断中。

本发明实施例中采用现有的hunt算法来构建决策树,采用hunt算法时,构建决策树的思路是:以递归算法实现数据集的划分,算法的输入为数据集d、标签列表y={y1,y2,...,yc}。

创建决策树的递归算法如下:(1)判断数据集d中的数据是否属于同一个类别,如果是,标记为yt;(2)如果数据集d中包含属于多个类的数据,采用信息熵理论,选择一个合适的特征,将数据集划分为较小的数据子集;将未划分的数据划分到新的数据子集中;(3)递归调用该算法,直到所有子集中的数据都属于同一类别。

在该算法中,本发明采用信息论中的信息熵(entropy)选择最好的数据特征,来划分数据集。

已知,信息熵是用于度量随机变量的不确定性,即信息熵的取值与随机变量的不确定性成正比。例如,当x表示离散随机变量时,它的概率分布为p(x=xi)=pi,i=1,2,...,n,则随机变量x的熵定义为由定义可知,熵只依赖于x的分布,而与x的取值无关,所以也可以将x的熵记作h(p),即基于此,本发明定义已知x条件下的y的条件熵h(y|x)为

对于决策树的节点划分问题,如果给定一个节点t,它的条件熵计算公式如下:entropy(t)=-∑jp(j|t)logp(j|t),其中,p(j|t)表示给定节点t中属于类j的记录所占的比例。所以,定义信息增益(informationgain)如下:

其中,ni表示与特征i相关联的记录个数,k表示特征值的个数,p表示当前节点的父节点,n表示父节点p中的数据个数。

步骤s3,采集onu实时特征,输入决策树中进行onu故障诊断;

步骤s4,对故障诊断的结果进行性能分析,如果不满足性能要求,则重新构造决策树。

本发明使用准确率和误报率来分析onu故障诊断结果的性能,计算公式见下式。

如满足预设的阈值,输出诊断结果,故障诊断结束。如不满足,需进行重新构造决策树。

实施例

采用python语言编写本发明所述的方法。基于实际运行环境结果,模拟1000条到10000条数据进行试验。取总数据量的90%作为训练数据;取总数据量的10%作为测试数据。

从图2算法的准确率可知,算法的准确率在85%左右。从图3算法的误报率可知,算法的误报率在15%左右。所以,相对于人工故障诊断,本发明提出的onu诊断模型能够准确地进行各种onu故障的诊断预警,系统运行性能稳定,具有较高的实用价值。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1