基于代价敏感的自组织网络的故障探测方法转让专利

申请号 : CN201810530213.3

文献号 : CN108768772B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邓越宇朱琨王然雷磊

申请人 : 南京航空航天大学

摘要 :

本发明公开了一种基于代价敏感的自组织网络的故障探测方法。通过引入代价敏感框架来帮助原有系统获得代价敏感性,从而区分不同错误所带来的不同损失,使得分类器能够以最小化损失为目标而不是盲目地追求分类精度。本发明中的代价敏感性是通过估算每种错误带来的损失,从而构建代价矩阵来引入的。代价矩阵可以很好地帮助分类器衡量每次决策所带来的损失,从而能以最小化总体损失为目标。考虑到故障探测系统中的数据样本往往是不平衡,本发明提出了同时考虑样本分布信息和代价信息的缩放方式来帮助现有的大部分故障探测系统取得代价敏感性,实现更为经济,有效的故障诊断系统。

权利要求 :

1.基于代价敏感的自组织网络的故障探测方法,其特征在于,包括如下步骤:步骤1:收集样本,并将样本贴上分类标签,构成训练样本集,所述分类标签包括正常和故障;

步骤2:分别估算将正常类样本和故障类样本错误分类带来的损失,并以此构建代价矩阵;

步骤3:根据所述代价矩阵和所述训练样本集中正常类样本和故障类样本的数量确定所述训练样本集中故障类样本的缩放比例;所述缩放比例为: 其中,N+是训练样本集中故障类样本的数量,N-是训练样本集中正常类样本的数量,C10、C01分别表示将实际故障类样本和实际正常类样本错误分类带来的损失;

步骤4:根据所述缩放比例求得理想训练样本集中故障类样本的数量,然后使用过采样算法调整所述训练样本集中故障样本的数量至理想数量;

步骤5:使用步骤4所得调整后的训练样本集训练分类器。

2.根据权利要求1所述的基于代价敏感的自组织网络的故障探测方法,其特征在于,步骤2中,所述代价矩阵为:

3.根据权利要求1所述的基于代价敏感的自组织网络的故障探测方法,其特征在于,步骤4中,所述过采样算法为SMOTE算法,包括如下步骤:步骤1:确定采样率N:

其中,N′t是根据缩放比例求得的理想训练样本集中故障类样本的数量,而Nt则是初始训练样本集中故障类样本的数量;

步骤2:采用k-近邻算法找到训练样本集中每个故障类样本的最近邻;

步骤3:随机选择一个最近邻与当前故障类样本合成一个新样本;

新样本通过如下方式合成:xnew=xi+rand(0,1)*(xi-x′)其中,xnew是合成的新样本,xi是某个少数类样本;x′则是根据KNN算法找的最近邻;rand(0,1)是在(0,1)范围内产生的随机数;

步骤4:重复步骤3,直至调整后的故障类样本数量达到初始故障类样本数量的N倍。

说明书 :

基于代价敏感的自组织网络的故障探测方法

技术领域

[0001] 本发明公开了一种基于代价敏感的自组织网络的故障探测方法,涉及故障诊断算法领域。

背景技术

[0002] 近年来,随着越来越多的手持智能设备接入网络,以及具有高带宽需求的新型应用的涌现,现有的蜂窝网络正面临着巨大的挑战。同时,小区的密集部署和接入方式的多样化,也使得网络的管理和运营变得越来越复杂。这些都使得运营商们不得不寻找一种方法来降低运营和管理的成本,同时又能提高带宽和容量。为此,能够实现自配置,自优化,自治愈功能的自组织网络被认为是实现这一目标的有效方法。
[0003] 自治愈作为自组织网络中的重要一环,通常由故障探测,故障诊断,故障恢复这三个阶段组成。如果存在一些故障小区在故障探测阶段就没有被及时发现,后面两个阶段也不会对这些被误分类为“正常”的故障小区起作用。而传统的故障探测往往来源于统计数据分析和用户抱怨,这样的方法不仅会花费大量的时间,精力而且也不能及时,准确的检测出那些故障的小区,这也会导致整个自治愈环节的低效性。解决这一问题的关键技术之一就是引入机器学习来执行自动故障检测。
[0004] 现有的基于机器学习的故障探测系统,通常都以精度为目标,使分类器能够最小化错误率。但是,一味的追求精度,而忽视这些错误的类别,在实际应用当中并不一定能达到最优。因为某些错误带来的损失会比其它的严重得多。一个合理的方法就是让分类器牺牲低代价类别的识别精度,从而提高高代价类别的识别精度,尽管这样会使整体的识别精度下降,但会更具有实用价值。而在故障探测中也有着相似的情况,我们可以大致将故障探测的错误分类两类:
[0005] 1、错误接受:将一个正常的小区认为是存在故障的;
[0006] 2、错误警报:将一个存在故障的小区认为是正常的。
[0007] 在传统的故障探测系统中,分类器并不会对这两种错误进行区分,这也就意味着这两种错误对于分类器来说是等同的。但事实上,这两种错误造成的损失是截然不同的。尽管第一种错误可能会需要消耗更多的时间来进行一次更加全面的检测,但相比于第二种错误,就显得不是那么严重了,因为一个没有被正确识别的故障小区会导致其性能长期下降。因此本发明提出将代价敏感学习引入到故障探测中,以使分类器能够获得区分不同错误的能力。
[0008] 注意到在故障探测中,数据样本往往是不平衡的。正常小区的样本数量会比故障小区的多得多。直接对样本数据进行学习的话,分类器对故障小区的识别能力会大大下降。而缩放作为最简单有效的代价敏感学习方式,在不平衡的数据集上效果不是很好。因此,本发明提出了一种缩放的方式,来同时考虑错分代价不同,和数据样本不平衡同时发生的情况。

发明内容

[0009] 发明目的:为了克服现有系统只追求精度,而忽视不同类别的错误会带来不同程度的影响的问题。本发明提供了一种代价敏感框架,来帮助现有的一些基于机器学习算法的故障探测系统获得代价敏感性。通过引入代价矩阵来使分类器区分不同错误,并利用SMOTE(Synthetic Minority Oversampling Technique)算法改变训练集正负样本的比例,从而使分类器在学习过程中就获得代价敏感性,实现最小化损失。
[0010] 为实现上述目的,本发明采用如下技术方案:
[0011] 基于代价敏感的自组织网络的故障探测方法,包括如下步骤:
[0012] 步骤1:收集样本,并将样本贴上分类标签,构成训练样本集,所述分类标签包括正常和故障;
[0013] 步骤2:分别估算将正常类样本和故障类样本错误分类带来的损失,并以此构建代价矩阵;
[0014] 步骤3:根据所述代价矩阵和所述训练样本集中正常类样本和故障类样本的数量确定所述训练样本集中故障类样本的缩放比例;
[0015] 步骤4:根据所述缩放比例求得理想训练样本集中故障类样本的数量,然后使用过采样算法调整所述训练样本集中故障样本的数量至理想数量;
[0016] 步骤5:使用步骤4所得调整后的训练样本集训练分类器。
[0017] 优选的,步骤2中,所述代价矩阵为:
[0018]
[0019] 其中,C10、C01分别表示将实际故障类样本和实际正常类样本错误分类带来的损失。
[0020] 优选的,步骤3中,所述缩放比例为: 其中,N+是训练样本集中故障类样本的数量,N-是训练样本集中正常类样本的数量。
[0021] 优选的,步骤4中,所述过采样算法为SMOTE算法,包括如下步骤:
[0022] 步骤1:确定采样率N:
[0023]
[0024] 其中,N′t是根据缩放比例求得的理想训练样本集中故障类样本的数量,而Nt则是初始训练样本集中故障类样本的数量;
[0025] 步骤2:采用k-近邻(k-Nearest Neighbor)算法,以欧式距离为标准找到训练样本集中每个故障类样本的最近邻;
[0026] 步骤3:随机选择一个最近邻与当前故障类样本合成一个新样本;
[0027] 新样本通过如下方式合成:xnew=xi+rand(0,1)*(xi-x′)
[0028] 其中,xnew是合成的新样本,xi是某个少数类样本;x′则是根据k-近邻算法找的最近邻;rand(0,1)是在(0,1)范围内产生的随机数;
[0029] 步骤4:对每个故障类样本重复步骤3,直至调整后的故障类样本数量达到初始故障类样本数量的N倍。
[0030] 有益效果:本发明公开了一种将代价敏感学习引入到自组织网络的故障探测中的方法,通过对训练集的缩放,来使分类器获得代价敏感性,从而区分各种不同的错误,以此达到最小化损失的目的。本发明中,根据不同错误产生的不同程度的损失来构建代价矩阵,从而区分不同错误。不同于目前的故障探测系统仅仅只追求分类器的精度,而忽视错分不同类别带来的不同损失,本发明中的分类器对高代价的类别具有更高的敏感度,由此可以最小化分损失,更加符合实际应用中的一些需求。同时,由于故障探测在自组织网络的自治愈阶段起着先导作用,通过引入代价敏感性,能够识别出更多的潜在的故障小区,从而实现自治愈过程的高效性。
[0031] 本发明的基于代价敏感的自组织网络的故障探测机制,通过引入代价敏感性来区分不同错误所产生的不同影响,从而构建以最小化总体损失为目标的分类器。本发明与现有技术相比,具有以下优势:
[0032] 1)考虑不同错误带来的不同损失,能够最小化总体损失;
[0033] 2)同时处理数据不平衡和错分代价不通的情况;
[0034] 3)不需要对原有算法改动,就能使原有系统具有代价敏感性;
[0035] 4)可以最大程度的找出所有故障小区,提高整个自治愈过程的准确性。

附图说明

[0036] 图1为本发明提出的系统结构流程图;
[0037] 图2为SMOTE算法流程图。

具体实施方式

[0038] 本发明考虑不同错误会产生不同的损失,不同于现有的最小化错误率的故障探测系统,本发明认为,应该尽量避免某些会造成重大损失的误分类,而一些不会产生太大损失的误分类在一定程度上允许发生,尽管这样会使总体的错误率会上升,但因为避免了一些影响比较大的错误,总体损失反而会比原来低。本发明可用于蜂窝网络中对故障小区的自主检测,为后面的故障小区诊断和恢复提供基础。对于一个故障探测系统来说,误分类可以大致分为以下两类:
[0039] 1、错误接受:将一个正常的小区认为是存在故障的;
[0040] 2、错误警报:将一个存在故障的小区认为是正常的。
[0041] 本发明包括以下步骤:
[0042] 步骤1:收集小区的数据,并贴上分类标签,构成训练样本集;
[0043] 步骤2:根据实际情况,分别估算将正常小区和故障小区错误分类带来的损失,并以此构建代价矩阵;
[0044] 步骤3:根据训练样本集中样本的分布情况和代价信息,确定合理的缩放比例;
[0045] 步骤4:采用SMOTE算法对训练样本集进行缩放;
[0046] 步骤5:使用步骤4所得调整后的训练样本集训练分类器,将新的小区数据输入分类器中即可得到该小区数据的分类标签。
[0047] 步骤1中,所采集的小区数据样本通常为小区的KPI数据。KPI数据是一种衡量小区性能的指标,由小区的服务保持性(Retainability),参考型号接收功率(HOSR),参考信号接收质量(RSRP)等一系列数据组成。
[0048] 步骤2中,构建代价矩阵的具体方法为:假设小区信息由xi来表示,i为正整数,用yi={0,1}代表小区的实际状态。在代价敏感学习中,通常会将错分代价高的类别作为正例,因此这里用yi=1来表示故障小区,yi=0表示正常小区。可以将不同错误引起的损失分为如下两类:
[0049] 1)将故障小区预测成正常的代价,c10;
[0050] 2)将正常小区预测成故障的代价,C01。
[0051] 考虑到故障探测阶段总会存在一些被误判,因此自治愈环节中的故障诊断,不仅能有效诊断样本故障的类别,也能准确识别出那些被误分类的正常类样本。因此将一个正常类样本误分类的代价就是进行一次额外的故障诊断所消耗的经济上的损失。而那些没有被准确识别的故障类样本,因为无法进入到故障诊断阶段,所以将在一段时间内都处于性能下降的状态。因此,将一个故障类样本误分类的代价相当于每类故障在一段时间内产生的损失的平均值。据此可以构建如下代价矩阵:
[0052] 表1代价矩阵
[0053]  实际故障 实际正常
预测故障 C11 C01
预测正常 C10 C00
[0054] 因为预测正确不会带来损失,所以代价矩阵的对角线上元素均为0。由于代价矩阵乘上一个不为零的常数,并会不会改变决策。因此,可以将这些损失都乘上1/C01,这样误警报的损失就变成1,而错误接受的损失变为C10/C01,由于C10>C01,因此C10/C01的值总是大于1的。由此我们得到的简化后的代价矩阵如下:
[0055] 表2简化后的代价矩阵
[0056]   实际故障 实际正常预测故障 0 1
预测正常 C10/C01 0
[0057] 在得到代价矩阵后,就可以将代价敏感性引入到故障探测中。代价敏感学习的一种方法就是采用缩放,由于分类器对某一类的分类精度取决于这一类在训练集中所占的比例,因此可以通过改变训练集中正负样本的比例来调节分类器对不同类别的样本的重视程度。而缩放就是通过改变训练集来获得代价敏感性的方法。根据代价矩阵,可以确定,当分类器不偏向任何一方时,一个合理的缩放比例如下:
[0058]
[0059] 考虑到故障探测的数据样本往往存在不平衡问题,因为正常类样本总是要比故障类样本多,所以能够收集到的样本中,正常类样本的数据也会比故障类样本多。一般认为,样本不平衡会造成少数类样本的识别精度下降,因此需要先将数据集平衡,再进行代价敏感学习。而本发明中认为,数据的这种不平衡性也代表着在实际应用过程中事件发生概率的不平衡性。因此,对于减少在发生概率比较小的少数类样本上的识别精度,从而提高对多数类样本的识别精度是合理的。在代价敏感学习之前也应该将这种权重还给训练集,因此本发明认为,故障探测中,合理的缩放比例如下:
[0060]
[0061] 其中,N+是训练集中正例的个数,也就是故障类样本的个数。N_则是负例的个数,也就是正常类样本的个数。
[0062] 当确定完缩放比例后,就需要使用SMOTE算法来合成新的少数类样本,使其达到需要的规模。其步骤如下:
[0063] 步骤1:确定采样率N:
[0064]
[0065] 其中,N′t是根据缩放比例求得的理想训练样本集中故障类样本的数量,而Nt则是初始训练样本集中故障类样本的数量;
[0066] 步骤2:采用k-近邻算法,以欧式距离为标准,找到每个少数类样本的最近邻;
[0067] 步骤3:随机选择一个最近邻与当前少数类样本合成一个新样本;
[0068] 新样本通过如下方式合成:
[0069] xnew=xi+rand(0,1)*(xi-x′)
[0070] 其中,xnew是合成的新样本,xi是某个少数类样本;x′则是根据k-近邻算法找的最近邻;rand(0,1)是在(0,1)范围内产生的随机数;
[0071] 步骤4:对于每个少数类样本,直至调整后的故障类样本数量达到初始故障类样本数量的N倍。
[0072] 经过SMOTE处理过后的训练集符合代价所需要的缩放比例,可以应用在大多数机器学习算法上,例如决策树,支持向量机,k-近邻算法等,使得原本不具备代价敏感性的故障探测系统具有代价敏感性。
[0073] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。