1.2模糊神经网络结构
模糊神经网络的结构应该包括4层,如图2所示。
模糊层的作用是将输入量进行模糊化。每一个模糊层节点对应一个该论域中的模糊子集和隶属函数。该层接收精确数值输入,经过模糊化计算得出对应的隶属度并输出。
图2 模糊神经网络结构图
输入层、隐含层和输出层共同构成一个完整的神经网络。输入层不具有运算功能,它只是将所感知的输入值精确传递到神经网络中;隐含层的作用相当于特征检测器,提取输入模式中包含的有效特征信息,使输出层所处理的模式是线性可分的,该层节点是模糊神经元,与输入层间的连接权值是随机设定的固定值;输出层节点也是模糊神经元,与隐含层之间采用全连接方式,其连接权值是可调的,作用是输出用模糊量表示的结果[2]。
1.3输入层、输出层和隐含层节点数确定
输入层的个数代表了电路故障诊断的关键测试点的个数N1,输出点为电路所具有的潜在故障模式种类数N3。
根据输入层和输出层的个数,隐含层节点数N2的确定有以下4种经验公式[3]:
(1)
(为0~10之间的常数)(2)
(为0~10之间的常数)(3)
(4)
2模糊数学和神经网络的算法介绍
2.1模糊数学和隶属度函数
模糊数学的作用是对测试点测得的电压信号进行特征提取——模糊化处理。因为在模拟电路测试中,参数值会随着故障原因的不同和故障阶段不同而发生变化,所以在进行数据处理时常用方法是使用精确事实规则。即用正态分布函数作为隶属度函数表示“大约为a”的模糊概念,此外还有如三角分布和梯形分布等[4]。在使用中,正态分布使用较多,其中的a是该测试点的理想状态工作点,b为该测试点在各种可能状态下的工作电压均方差。
2.2BP神经网络与算法
图3BP神经网络模型结构图
反向传播网络(Back-Propagation Network,简称BP网络),是一种有隐含层的多层前馈网络。每一层均有一个或多个神经元节点,信息从输入层依次经各隐含层向输出层传递,层间的连接关系强弱由连接权值W来表征。BP算法是一种监督的学习,基本原理是梯度最速下降法,中心思想是调整权值使网络总误差最小。通过连续不断地在相对于误差函数斜率下降的方向上计算网络权值和偏差值的变化而逐渐逼近目标的。每一次权值和偏差的变化都与网络的误差的影响成正比,并以反向传播的方式传递到每一层。BP网络模型结构如图3所示。
以BP神经网络模型结构图为例进行BP算法推导,其输入为P,输入神经元有r个,隐含层内有s1个神经元,激活函数为F1,输入层内有s2个神经元,对应的激活函数为F2,输出为A,目标矢量为T。
1)隐含层输出:(i=1,2,…,s1)(5)
2)输出层输出: (k=1,2,…,s2) (6)
3)定义误差函数:(7)
4)输入层的权值变化量:(8)
其中:
同理可得:(9)
5)隐含层权值变化有: (10)
其中:
同理: (11)
BP网络经常使用的是S型的对数、正切激活函数或线性函数[5]。
3电路故障诊断算法验证
图4 共集-共射电路的直流通路图
例:如图4所示的直流通路图,电阻的标称值如图中所注。利用Multism软件在直流状态下进行多次Monte Carlo分析仿真该电路[6],并考虑电阻的容差影响,取40个样本作为模糊神经网络的训练样本,另取5个样本为测试样本。设电阻R1~R5的容差值为-5%~5%。测试点选为A、B、C、D和E五点,所测电压值为VA、VB、VC、VD和VE。
表1 部分电路实验样本原始数据
表2 测试样本原始数据
表1列举了40组电路实验样本原始数据的11组,包含了该电路在11种工作状态下的五个关键点电压值,所以N1=5,N2=11,隐含层的节点数可以依据公式2.3确定为12个,其中a为5。