一种基于机器学习预测智能电能表故障的方法及系统与流程

文档序号:19940964发布日期:2020-02-14 23:09阅读:377来源:国知局
一种基于机器学习预测智能电能表故障的方法及系统与流程
本发明涉及机器学习
技术领域
,并且更具体地,涉及一种基于机器学习预测智能电能表故障的方法及系统。
背景技术
:随着智能电表智能化和普及程度提高,用电信息采集系统覆盖范围也不断扩展,智能电表的故障日益呈现出突发性、复杂性、多面性等特点。仅依靠检修人员发现电表的故障势必有人员投入不均匀,故障检修不及时的问题。本文通过分析智能电表正常运行数据和故障数据,基于统计、预处理、聚类和预测等方法,分析故障类型与出现问题现象及原因之间的关系,建立智能电表故障预测模型。在电表发生故障时,有效的预测其故障类型,并以此配备相应的维修人员,从而达到降低人力资源成本和节省维修时间的目的。目前预测智能的故障主要通过故障机理分析,目前故障机理分析存在几个问题:1.智能运行过程中不可避免产生损伤和出现早期故障,它具有潜在性和动态响应的微弱性;复合故障和系统故障由于多因素共同耦合,通过单一的机理方法难以溯源故障成因。2.智能电表的故障机理是指通过理论或大量的试验分析,得到智能电表故障状态信号与输出参数之间的规律,根据研究对象的物理特点,建立相应数学的模型,通过统计检验的方式验证其正确性。然而智能电表的机理模型中存在多参数可靠度模型难以有效拟合的问题。技术实现要素:针对上述问题,本发明提出了一种基于机器学习预测智能电能表故障的方法,包括:确定故障智能电能表的故障类型;获取故障智能电能表故障退运数据,对故障智能电能表故障退运数据进行预处理,删除重复数据和与故障智能电能表故障无关的数据,补全故障智能电能表故障退运数据缺失值,获取预测数据;根据预测数据,对故障智能电能表的故障类型进行故障特征选择,确定与故障有关的特征数据;根据所述故障智能电能表的故障类型及故障有关的特征关系及智能电能表预测评价标准,获取智能电能表故障预测模型;获取智能电能表与故障有关的特征数据,根据智能电能表故障预测模型,对智能电能表故障进行预测,确定智能电能表预测故障类型。可选的,故障退运数据,包括:故障智能电能表的厂家信息、批次信息、有功准确度等级、安装地点、库存时间、运行时间、安装时间、异常类别、异常现象、异常时间、故障部位、故障时间、安装地点气候环境信息和安装地点电应力的电气环境信息。可选的,预处理为对故障智能电能表故障退运数据进行线性函数归一化处理或零均值归一化处理。可选的,故障特征,包括:离散型特征和连续型特征。本发明还提供了一种基于机器学习预测智能电能表故障的系统,所述系统包括:确定故障类型模块,确定故障智能电能表的故障类型;数据获取模块,获取故障智能电能表故障退运数据,对故障智能电能表故障退运数据进行预处理,删除重复数据和与故障智能电能表故障无关的数据,补全故障智能电能表故障退运数据缺失值,获取预测数据;指标确定模块,根据预测数据,对故障智能电能表的故障类型进行故障特征选择,确定与故障有关的特征数据;模型生成模块,根据所述故障智能电能表的故障类型及故障有关的特征关系及智能电能表预测评价标准,获取智能电能表故障预测模型;预测模块,获取智能电能表数据,根据智能电能表故障预测模型,对智能电能表故障进行预测,确定智能电能表预测故障类型。可选的,故障退运数据,包括:智能电能表的厂家信息、批次信息、有功准确度等级、安装地点、库存时间、运行时间、安装时间、异常类别、异常现象、异常时间、故障部位、故障时间、安装地点气候环境信息和安装地点电应力的电气环境信息。可选的,预处理为对故障智能电能表故障退运数据进行线性函数归一化处理或零均值归一化处理。可选的,故障特征,包括:离散型特征和连续型特征。本发明结合机器学习和神经网络的方法对智能电表故障数据进行分析,可以有效的预测出智能电表的故障类型。附图说明图1为本发明一种基于机器学习预测智能电能表故障的方法流程图;图2为本发明一种基于机器学习预测智能电能表故障的方法数据缺失情况图;图3为本发明一种基于机器学习预测智能电能表故障的系统结构图。具体实施方式现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属
技术领域
的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。除非另有说明,此处使用的术语(包括科技术语)对所属
技术领域
的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。本发明提出了一种基于机器学习预测智能电能表故障的方法,如图1所示,包括:确定故障智能电能表的故障类型及故障类型的发生频率,不同故障类型及发生频率如表1所示。表1不同故障类型发生频率上述统计了故障智能电表可能出现的所有故障及数量,得到故障退回主要是由电池故障造成,除此之外,外观故障、通信单元、软件故障、显示单元也是主要故障退回的次要原因。同时这也为后续智能电表运行状态的评价中运行风险计算提供了依据;获取故障智能电能表故障退运数据,对故障智能电能表故障退运数据进行预处理,删除重复数据和与故障智能电能表故障无关的数据,补全故障智能电能表故障退运数据缺失值,获取预测数据;智能电表的故障退运数据是由运行系统数据库导出,故障退运数据,包括:智能电能表的厂家信息、批次信息、有功准确度等级、安装地点、库存时间、运行时间、安装时间、异常类别、异常现象、异常时间、故障部位、故障时间、安装地点气候环境信息和安装地点电应力的电气环境信息。故障电能表退运数据中部分数据与智能电表的故障无关,而且包含一些重复数据,会降低算法的效率,从表中看出一场类别和异常现象是都是一一对应的关系,所以取其中一格即可。由于退运数据在采集的过程中由于系统本身或者环境的原因,会存在一定的缺失值,如图2所示,因此补全这些缺省值可以为后续机器学习提供支持,同时可以提高数据质量,提高分类和预测算法的准确性。数据的标准化是将数据按照比例进行缩放,使数据落在一个特定的小范围内,其中最为典型的是数据的归一化,即将数据同一映射到[0,1]区间内,其目的在于去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权,进而加快模型的收敛速度和提升模型精度。常见的归一化方法有线性函数归一化和零均值归一化。(1)线性函数归一化;它对原始数据进行先行变换,使结果映射到[0,1]的范围内,实现对原始数据的等比例缩放,线性归一化公式如下:其中x为原始数据,、xmax和xmin分别为数据的最大值和最小值。(2)零均值归一化;它会将原始数据映射到均值为0、标准差为1的分布上。具体来说,假设原始特征的均值为μ,标准差为σ,那么归一化公式定义为:由于故障智能电表连续数据本身服从正态分布,零均值归一化在能够进行缩放的基础上比线性归一化有更好的效果。对于厂家信息、安装地点、异常类别、故障部位等以字符串形式输入,此外批次信息和条形码由于没有高低的排序关系,所以也当作字符串处理,对于以字符串形式输入的类别特征,除了决策树等少数模型能直接处理字符串形式的输入外,对于神经网络、支持向量机等分类模型来说,类别型特征必须经过转化为数值型才能有效工作。特征选择独立于任何机器学习算法,特征选择是根据各种统计检验中的分数确定的特征之间的相关性选择特征,不同的类型数据相关系数可以根据下表2来定义,表2如下:表1其中离散型的故障类型与其余离散型属性相关性通过线性判别分析进行特征选取,而离散型的故障类型与其余离散型属性相关性通过卡方分析进行特征选取。(1)线性判别分析(lda)线性判别分析是一种有监督的学习算法,同时经常用于特征选择,lda的基本原理是找到一个投影方向ω使得投影后的样本尽可能按照原始类别分开。也就是最大化类间距离和最小化类那距离。lda将整个数据集的类内方差定义为各个类分别的方差之和,将目标函数定义为类间距离和类内距离的比值。设x为包括k个类别数据的矩阵[x1,x2,...,xk],每个xi包括含有ni个样本,则每类样本的均值和所有样本的均值为:由此可计算样本的类内散度矩阵sw为:定义一个新的矩阵st来表示全局整体的散度,称为全局散度矩阵,如下所示:全局散度为类间散度与类内散度之和,即st=sb+sw,那么类间散度矩阵可表示为:其中mj是第j个类别中的样本个数,n是总的类别个数,从上式可以看出,类间散度表示的就是每个类别中心到全局中心的一种加权距离,我们最大化类间散度实际上优化的是每个类别的中心经过投影后离全局中心的投影足够远。根据lda的原理,可以将最大化的目标定义为:其中w是需要求解的投影超平面,wtw=i。由此最大化j(w)对应了以下广义特征值求解的问题,公式如下:sbω=λswω求解最佳投影平面w={ω1,ω2,...,ωd},即求解矩阵特征值前d大对应的特征向量组成的矩阵,这就将原始的特征空间投影到了新的d维空间中。特征值大的对应的特征向量分割性能最好。(2)卡方卡方检验可以用于测定两个分类变量之间的相关程度。若用f0表示观察值频数,用fe表示期望值频数,则χ2统计量可以写为:两个分类变量越接近,即f0-fe的绝对值越小,计算出的χ2值就越小;反之,f0-fe的绝对值越小,计算出的χ2值也就越小,χ2检验是通过对χ2的计算结果与χ2分布中的临界值进行比较,做出是否拒绝原假设的统计决策。在实际的操作中,一般通过计算列联表进行预备计算。故障类型作为目标标签属于离散型数据,其余的属性可以分为离散数据(库存时间、运行时间、平均误差、基本误差等)和连续数据(厂家信息、批次信息、安装时间、全检、抽检、运行抽检、地点、出现问题的现象和原因、异常类别),故特征属性的选择主要分为属于离散型的故障类型与其余离散型属性相关性和属于离散型的故障类型与其余离散型属性相关性。其中离散型的故障类型与其余离散型属性相关性通过线性判别分析进行特征选取。利用线性判别分析进行分析并将结果汇总于,表3所示:表2根据特征值大的对应的特征向量分割性能最好的原则,四个连续型属性均与故障部位相关性较大。而离散型的故障类型与其余离散型属性相关性通过卡方分析进行特征选取。本部分对智能电表数据进行了预处理工作,首先对智能电表的整体进行了统计分析,对不同故障类型发生频率进行了统计分析,然后做了数据筛洗、缺失值处理、连续数据归一化和离散数据归一化等工作,为后续数据输入到机器学习算法中提供了便利。最后针对故障数据中分类属性中属性类别较多的特点,本文提出了一种基于线性判别分析和卡方检验的特征选择方法,选择了厂家信息、批次信息、安装时间运行抽检、地点、出现问题的现象和原因、异常类别、异常现象、异常时间、有功准确度等级、现场检验时间、库存时间、运行时间、平均误差和基本误差等主要的属性。评价标准包括:准确率、召回率和f1分数,是针对同样的数据,输入不同的算法,或者输入相同的算法但参数不同而给出这个算法或者参数好坏的定量指标。(1)准确率准确率是指分类正确的样本样本占总样本个数的比例,即其中ncorrect为被正确分类的样本个数,ntotal为总样本的个数。准确率是分类问题中最简单也是最直观的评价指标,但存在缺陷。比如,当负样本占99%时,分类器把所有样本都预测为负样本也可以获得99%的准确率。所以当不同类别的样本比例非常不均衡时,占比大的类别往往成为影响准确率的最主要的因素。(2)精确率和召回率在介绍精准率和召回率,首先解释混淆矩阵,二分类问题的混淆矩阵由4个数构成。首先我们将二分类问题中,我们关心的,少数的那一部分数据,我们称之为正例(positive),就如同预测癌症,癌症患者就定义为正例。那么剩下的就定义为负例(negative)。于是,我们定义:tn:算法预测为负例(n),实际上也是负例(n)的个数,即算法预测对了(true);fp:算法预测为正例(p),实际上是负例(n)的个数,即算法预测错了(false);fn:算法预测为负例(n),实际上是正例(p)的个数,即算法预测错了(false);tp:算法预测为正例(p),实际上也是正例(p)的个数,即算法预测对了(true)。这4个定义由两个字母组成,第1个字母表示算法预测正确或者错误,第2个字母表示算法预测的结果。用混淆矩阵定义如下预测值0预测值1真实值0tnfp真实值1tftp精准率(precision)的定义:所以,精准率就是“预测为正例的那些数据里预测正确的数据个数”。召回率(recall)的定义:所以,召回率就是“真实为正例的那些数据里预测正确的数据个数”。(3)f1分数在一些场景下要兼顾精准率和召回率,就有f1score。f1score是精准率和召回率的兼顾指标,定义如下:整理一下:其实f1分数是精准率和召回率的调和平均数。调和平均数是当精准率和召回率二者都非常高的时候,它们的调和平均才会高。如果其中之一很低,调和平均就会被拉得接近于那个很低的数。获取智能电能表故障预测类型,主要根据:决策树、贝叶斯、人工神经网络、k-近邻、支持向量机svm和基于关联规则的分类等进行获取,本发明采用支持向量机、朴素贝叶斯、逻辑回归进行获取(1)svm;支持向量机(supportvectormachines)是一个二分类的分类模型(或者叫做分类器)。支持向量的机分类的思想是,给定给一个包含正例和反例的样本集合,svm的目的是寻找一个超平面来对样本根据正例和反例进行分割。svm在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。在样本空间中,划分超平面可通过如下线性方程来描述:g(x)=wtx+b=0假设它已经完成了对样本的分隔,且两种样本的标签分别是{+1,-1},那么对于一个分类器来说,g(x)>0和g(x)<0就可以分别代表两个不同的类别,+1和-1。svm的核心思想是尽最大努力使分开的两个类别有最大间隔,这样才使得分隔具有更高的可信度。而且对于未知的新样本才有很好的分类预测能力。要想让不同类别的数据具有最大的间隔,就是让让离分隔面最近的数据点具有最大的距离。为了描述离分隔超平面最近的数据点,需要找到两个和这个超平面平行和距离相等的超平面:h1:y=wtx+b=+1和h2:y=wtx+b=-1在这两个超平面上的样本点也就是理论上离分隔超平面最近的点,是它们的存在决定了h1和h2的位置,支撑起了分界线,有了这两个超平面就可以定义上面提到的间隔,二维情况下ax+by=c1和ax+by=c2两条平行线的距离公式为:可以推出h1和h2两个超平面的间隔为2/||w||,即现在的目的是要最大化这个间隔。为了之后的求导和计算方便,进一步等价于最小化假设超平面能将样本正确分类,则可令:wtxi+b≥+1,yi=+1wtxi+b≤-1,yi=-1综合两个式子可得:yi(wtxi+b)≥1这就是目标函数的约束条件。现在这个问题就变成了一个最优化问题:s.t.yi(wtxi+b)≥1,i=0,1,2....(2)朴素贝叶斯;朴素贝叶斯模型通过预测指定样本属于特定类别的概率p(yi|x)来预测该样本的所属的类别,即y=maxp(yi|x)p(yi|x)可以写成其中x=(x1,x2,...,xn)为样本对应的特征向量,p(x)为样本的先验概率。对于特定的样本x和任意类型yi,p(x)的取值均相同,并不会影响p(yi|x)取值的相对大小,因此在计算中可以被忽略。假设特征x1,x2,...,xn相互独立,可以得到:p(yi|x)∝p(x|yi)p(yi)=p(x1|y1)p(y1)p(x2|y2)...p(xn|yi)p(yi)其中p(x1|y1)和(y1)p(x2|y2)...p(xn|yi),以及p(yi)可以通过训练样本统计得到。(3)逻辑回归;多分类逻辑回归是基于逻辑回归(logisticregression)来做的,逻辑回归的基本表示如下:将上述逻辑回归的公式进行整理,我们可以得到其中p=p(y=1|x),也就是将给定输入x预测为正样本的概率。逻辑回归中可以通过下面极大似然函数的学习,得到最佳的参数θ。接下来处理多分类问题。首先,如果一个样本只对应一个标签,我们可以假设每个样本属于不同标签的概率服从几何分布,使用多项逻辑回归(softmaxregression)来进行分类其中θ1,θ2,...,θk∈>>n为模型的参数,而可以看作是对概率的归一化。为了方便起见,我们将{θ1,θ2,...,θk}这k个列向量按照顺序排列成n×k维矩阵,写成θ,表示整个参数集。一般来说,多项逻辑回归具有参数冗余的特点,即将θ1,θ2,...,θk同时加减一个向量后预测结果不变,特别地,当类别为2时,利用参数冗余的特点,我们将所有的参数减去θ1,上式变为其中,θ=θ2-θ1。而整理后的式子与逻辑回归一致。因此,多项逻辑回归实际上是二分类逻辑回归在多标签分类下的一种拓展。获取智能电能表数据,根据智能电能表故障预测模型,对智能电能表故障进行预测,确定智能电能表预测故障类型。下面结合实施例对本发明进行进一步说明。选择2016年某地区经过预处理之后的数据有24586条,有厂家信息、批次信息、条码号、库存时间、运行时间、故障次数、故障时间、地点、出现问题的现象和原因、异常类别、异常现象、异常时间、有功准确度等级、基本误差等14个属性,其中75%作为训练数据对模型进行训练,使用剩余的25%故障数据用作测试,评价模型效果,如下所示:以上是三种分类算法的结果,其中逻辑回归表现的比较差,而支持向量和朴素贝叶斯表现较好。从准确率来看,朴素贝叶斯效果最好,其次是是支持向量机,但其差距与朴素贝叶斯相差不大,逻辑回归的效果最差,同样召回率中支持向量机、朴素贝叶斯也是较高,逻辑回归的效果最差,结合f1分数的定义,准确率与召回率高的分类方法,其f1的分数也较高,从表10中的结果也可以印证这一点。因此,在测试的样本相同的情况下,朴素贝叶斯分类效果最好。本发明还提出了一种基于机器学习预测智能电能表故障的系统200,如图3所示,包括:确定故障类型模块201,确定故障智能电能表的故障类型;数据获取模块202,获取故障智能电能表故障退运数据,对故障智能电能表故障退运数据进行预处理,删除重复数据和与故障智能电能表故障无关的数据,补全故障智能电能表故障退运数据缺失值,获取预测数据;指标确定模块203,根据预测数据,对故障智能电能表的故障类型进行故障特征选择,确定与故障有关的特征数据;模型生成模块204,根据所述故障智能电能表的故障类型及故障有关的特征关系及智能电能表预测评价标准,获取智能电能表故障预测模型;预测模块205,获取智能电能表数据,根据智能电能表故障预测模型,对智能电能表故障进行预测,确定智能电能表预测故障类型。故障退运数据,包括:智能电能表的厂家信息、批次信息、有功准确度等级、安装地点、库存时间、运行时间、安装时间、异常类别、异常现象、异常时间、故障部位、故障时间、安装地点气候环境信息和安装地点电应力的电气环境信息。预处理为对故障智能电能表故障退运数据进行线性函数归一化处理或零均值归一化处理。故障特征,包括:离散型特征和连续型特征。本发明结合机器学习和神经网络的方法对智能电表故障数据进行分析,可以有效的预测出智能电表的故障类型。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1