[发明专利]基于BP-AdaBoost神经网络的电子式电能表故障诊断方法有效

专利信息
申请号: 201210209182.4 申请日: 2012-06-20
公开(公告)号: CN102707256A 公开(公告)日: 2012-10-03
发明(设计)人: 胡薇薇;陈忱;孙宇锋;赵广燕;祁邦彦 申请(专利权)人: 北京航空航天大学
主分类号: G01R35/04 分类号: G01R35/04
代理公司: 北京慧泉知识产权代理有限公司 11232 代理人: 王顺荣;唐爱华
地址: 100191*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 一种基于BP-AdaBoost神经网络的电子式电能表故障诊断方法,该方法的步骤有:一:输入样本数据;二:网络初始化,即初始化样本数据的分布权值;三:训练BP神经网络弱分类器;四:计算分类误差;五:计算权值;六:权值调整,即根据步骤五的计算结果调整下一轮训练样本的权重值;七:循环判断;八:合成强分类函数;九:分类结果统计与误差率统计。本发明针对电子式电能表的故障自动诊断,能在保证单一BP分类器精度的情况下,通过增加分类器数量,显著提高对故障的分类精度;并且在软硬件的实现上,借助并行计算原理,大大提高训练效率,缩短网络运行时间。它在故障自动检测与诊断技术领域里具有较好的实用价值和广阔的应用前景。
搜索关键词: 基于 bp adaboost 神经网络 电子 电能表 故障诊断 方法
【主权项】:
1.一种基于BP-AdaBoost神经网络的电子式电能表故障诊断方法,其特征在于:该方法具体步骤如下:步骤一:输入样本数据;样本数据是由电子式电能表的典型电路,即单相桥式电路的断路故障数据组成,从故障数据组成的样本空间中选择m组样本数据,并确定神经网络结构为由n个三层BP神经网络组成的复合神经网络;步骤二:网络初始化;初始化样本数据的分布权值Dt(i),令其中,i=1,2,…,m,Dt(i)表示第i个BP神经网络的权值,t为迭代次数,t=1,2,…T,T为最大迭代次数;步骤三:训练BP神经网络弱分类器;将单一BP神经网络作为弱分类器进行训练,共训练n个弱分类器;弱分类器训练过程的具体步骤如下所述:(1)单一BP神经网络参数设置;对三层BP神经网络进行参数设置,参数包括隐层神经元数X、最大学习次数N,输入(输出)神经元数N1,以及学习速率α、β;(2)网络连接权值、阈值设定;用较小的随机数初始化阈值{θj}、{rk},权值{wij}、{vjk};具体参数含义如下所示:{θj}为隐层神经元阈值集合,其中j=1,2,…,X;{rk}为输出层神经元阈值集合,其中k=1,2,…,N1;{wij}为输入层第i个神经元到隐层第j个神经元的连接权值,其中i=1,2,…,N1,j=1,2,…,X;{vjk}为隐层第j个神经元到输出层第k个神经元的连接权值,其中j=1,2,…,X,k=1,2,…,N1;(3)取一组样本数据,作为BP神经网络输入层神经元的输入数据{Ii},其中i=1,2,…,N1;(4)求隐层神经元向量,具体公式如下所示:Uj=ΣiwijIi]]>Hj=f(Ui)Uj为隐层第j个神经元的输入,其中j=1,2,…,X;wij为输入层第i个神经元到隐层第j个神经元的连接权值,其中i=1,2,…,N1,j=1,2,…,X;Ii为输入层第i个神经元的输入值,其中i=1,2,…,N1;Hj为隐层第j个神经元的输出,其中j=1,2,…,X;f(·)为Sigmoid函数,具体表达式为(5)计算输出层的各个相关量,计算公式如下所示:Sk=ΣjvjkHj]]>Ok=f(Sk)Sk为输出层第k个神经元的输入,其中k=1,2,…,N1;vjk为隐层第j个神经元到输出层第k个神经元的连接权值,其中j=1,2,…,X,k=1,2,…,N1;Hj为隐层第j个神经元的输出,其中j=1,2,…,X;Ok为输出层第j个神经元的输出;f(·)为Sigmoid函数,具体表达式为(6)根据样本数据的期望输出tk和输出层的输出Ok的差值,求出有关输出层神经元的阈值及其连接权值的误差信号δk,求解公式如下所示:δk=(tk-Ok)Ok(1-Okk为输出层第k个神经元的阈值、连接权值的误差信号,其中k=1,2,…,N1;tk为输入样本数据后的期望输出信号,其中k=1,2,…,N1;Ok为输入样本数据后得到的实际输出信号,其中k=1,2,…,N1;(7)根据(6)中求出的δk,从隐层到输出层的连接权值vjk以及隐层的输出Hj,求出隐层神经元j的阈值、连接权值的误差信号σj,公式如下:σj=ΣkδkvjkHj(1-Hj)]]>σj为隐层第j个神经元的阈值、连接权值的误差信号,其中j=1,2,…,X;δk为输出层第k个神经元的阈值、连接权值的误差信号,其中k=1,2,…,N1;vjk为隐层第j个神经元到输出层第k个神经元的连接权值,其中j=1,2,…,X,k=1,2,…,N1;Hj为隐层第j个神经元的输出,其中j=1,2,…,X;(8)隐层第j个神经元至输出层第k个神经元的权值vjk与输出层神经元j的阈值rk的修正公式如下所示:vjk(t+1)=vjk(t)+αδkHj]]>rk(t+1)=rk(t)+βδk]]>vjk(t+1)为修正后的隐层第j个神经元至输出层第k个神经元的权值;vjk(t)为修正前的第j个神经元至输出层第k个神经元的权值;δk为输出层第k个神经元的阈值、连接权值的误差信号;α与β为(1)中设置的学习速率,且有0<α,β≤1;rk(t+1)为修正后的输出层第k个神经元的连接阈值;rk(t)为修正前的输出层第k个神经元的连接阈值;(9)输出层神经元i至隐层神经元j的连接权值wij和隐层神经元j的阈值θj的修正公式如下所示:wij(t+1)=wij(t)+ασjIj]]>θj(t+1)=θj(t)+βσj]]>wij(t+1)为修正后的输出层第i个神经元至隐层层第j个神经元的权值;wij(t)为修正前的输出层第i个神经元至隐层层第j个神经元的权值;δk为输出层第k个神经元的阈值、连接权值的误差信号;α与β为(1)中设置的学习速率,且有0<α,β≤1;θj(t+1)为修正后的隐层第j个神经元的连接阈值;θj(t)为修正前的隐层第j个神经元的连接阈值;(10)取下一组样本数据;(11)若有样本数据则返回(4)顺序执行;(12)更新学习次数;(13)进行循环判断,若学习次数尚小于(1)中设定的最大学习次数N,则返回到(3)继续执行;若学习次数达到最大学习次数N,则完成对该弱分类器的训练,开始对下一弱分类器进行训练,直至全部n个弱分类器都训练完成;步骤四:计算分类误差et;et由下列公式确定,其中gt为网络实际输出的分类结果,yt为期望的分类结果:et=ΣiDt(i),i=1,2,...m(gtyt)]]>et为分类误差,t为迭代次数,t=1,2,…T;Dt(i)表示第i个BP神经网络的权值,其中t为迭代次数,t=1,2,…T;步骤五:计算权值;根据步骤四中求得的误差et,计算权重at,该值由下式确定:at=12ln(1-eiet)]]>at为权值,t为迭代次数,t=1,2,…T;et为分类误差,t为迭代次数,t=1,2,…T;步骤六:权值调整;根据步骤五所求的权值at调整下一轮训练样本的权重值,调整公式如下,其中Bt是归一化因子,目的是在权值比例不变的情况下使分布权值归一化:Dt+1(i)=Dt(i)Bt*exp[-atyigt(xi)],i=1,2,...n]]>Dt+1(i)表示调整后第i个BP神经网络的权值,其中t为迭代次数,t=1,2,…T;Dt(i)表示调整前第i个BP神经网络的权值,其中t为迭代次数,t=1,2,…T;Bt为归一化因子,且Bt=||Dt(i)||,其中t为迭代次数,t=1,2,…T,||||表示求取范数,在后续运用MATLAB编程仿真过程中,可直接调用MATLAB自带的归一化函数premnmx()进行归一化处理;at为序列的权重,t为迭代次数,t=1,2,…T;yt(i)为期望的分类结果;gt(xi)为网络实际的分类结果;步骤七:循环判断;t=t+1,再进行判断;若误差et<0.5,且迭代次数t<T,则返回步骤三,继续执行;否则,向下执行步骤八;步骤八:合成强分类函数;训练T轮后共得到n组弱分类函数f(gt,at),将这N组弱分类函数组合可得到强分类函数h(x),组合公式如下所示:(x)=signΣt=1Tat*f(gt,at)]]>步骤九:分类结果统计与误差率统计;根据上述强分类器对故障数据进行检测,最后完成分类结果统计与误差率统计。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201210209182.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top