- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
BP神经网络的电路最优测试集的生成设计
1 引言
人工神经网络是基于模仿生物大脑的结构和功能而构成的一种信息处理系统。国际著名 的神经网络专家Hecht Nielsen 给神经网络的定义是:“神经网络是一个以有向图为拓扑结构的动态系统,它通过对连续或断续式的输入作状态响应而进行信息处理”。神经网络系统[1,2] 是由大量的、同时也是很简单的处理单元(或称神经元),通过广泛地互相连接而形成的复杂网络系统。神经网络具有的超高维性、强非线性等动力学特性,使其具有原则上容错、结构拓扑鲁棒、联想、推测、记忆、自适应、自学习、并行和处理复杂模式等功能,带来了提 供更佳诊断性能的潜在可能性。
目前神经网络应用在模拟电路上主要是神经网络故障字典法。把模拟电路的故障诊断看成是一个分类问题,利用神经网络的分类功能来诊断故障。在测前把神经网络训练成一部故障字典,字典的信息蕴含在网络的连接权值中,只要输入电路的测量特征,就可以从其输出 查出故障。目前用于模拟电路故障诊断的神经网络主要有BP 神经网络和SOM 神经网络两 种类型。BP 是一种多层网络误差反向传播网络,SOM 神经网络一种自组织特征映射神经网络(Self-organizing Feature Map)。本文采用标准BP 神经网络来实现对最优测试集的生成。
2 基于神经网络的最优测试集的生成实现设计
BP 神经网络对最优测试集的生成事先没有标准的样本,只有设定的约束条件,对目标 问题的求解是一个反复比较选择、自我建立并不断更新其样本库的过程。
(1)神经元激活函数
激活函数又称传递函数。对于模拟电路故障诊断,神经元激活函数可以采用对称的 sigmoid 函数y(x)=1/(1+e-x)-0.5,也可以采用非对称的sigmoid 函数y(x)=1/(1+e-x)。
(2)输入层
输入层从电路拓扑结构接受各种状态信息提取。神经网络的输入节点数应与输入特征的 维数相同,输入节点与电路的节点数一一对应。
(3)输出层
输出层输出诊断结果。输出结点数与预期节点选择数目相同,每个输出结点与目标一一对应。当神经网络用于选择时,若所有输出结点的输出值均非空,则认为本次生成最多数目 的节点;若有几个输出结点的输出值为0,则认为生成了较少的测试节点。
(4)隐层数
BP 网络的输入结点数和输出结点数是由实际问题本身决定的。隐层用于对信息进行处理和转化。网络结构设计的难点和重点在于隐层结构的设计,具体是指隐层数目和各隐层的神经元数目。确定隐层的结构很大程度上决定着网络质量。隐层用于对信息进行处理和转化。 隐层的层数取决于问题的特点。Funahashi 证明了对于任何在闭区间内的一个连续函数都可 以用单隐层BP 网络逼近,因而一个三层BP 网络可以完成任意的n 维到m 维的映射,说明了单隐层的可行性[4],但并不确定是最合理的。本文采用最常用的单隐层BP 网络构造神经 网络。
(5)隐结点数
隐层结点数的选择非常重要,隐节点数与问题的复杂程度有关,不存在一个理想的解析 式。隐结点的数目与问题的要求、输入、输出数目有关。隐结点数目太多会导致学习时间过 长,误差不一定最佳,数目太少则可能会使网络训练不出来,网络的学习和联想能力降低。
除了一些参考选择公式外,还可以先放入足够多的隐结点,通过学习将作用甚微的隐结点逐 步剔除直到不可收缩为止;或者反向添加至合理数目为止。 神经网络故障诊断系统的训练方法如下:
(1)权初值确定
系统是非线性的,不合适的权初始值会使学习过程陷入局部最优,甚至不收敛。权一般取随机数,而且权值要小,这样可使初始权要在输入累加时使每个神经元的状态值尽可能接近于零,保证每个神经元都在它们的传输函数导数最大的地方进行,这样就不至于一开始就落在误差平坦区上。本文的神经网络故障诊断系统中,网络初始值均取在闭区间[-0.1,0.1] 内均匀分布的随机数。
(2)样本输入方式
批处理方式存在局部最优,在线输入方式容易引起权值调节的振荡现象。避免振荡往往 根据样本集的特点进行多次尝试,局部最优可以通过修改网络输出误差来缓解。本文样本输 入采用批处理方式。
(3)误差函数的选择 神经网络训练容易出现局部最优,因此本文设计网络不要求输出误差很小,通过适当增 加训练时间来提高准确度。
3 BP 网络在最优测试集上的应用
(1)分析电路,构造网络结构 对电路中的各节点支路进行分析,建立改进的关联矩阵。取得用于选择的测试向量。根 据测试向量维数和目标要求数来选择网络各层的结点数。
(2)输入特征向量抽取 取电路节点对支路的关联信息作为神经网络的输入特征。由于各节点的关联信息相差可 能会比较大,神经网络输入特征的各分量量限也不同。
其中xi 是输入特征的第i 个分量,vi 是同类关联信息的平均值,这样使输入特征的各分 量量限基本相同,而且仍然可以表征原输入特征。
(3)输出特征值设定
输出特征维数取决于输出的表示方法和要识别或分类的数目,当电路有M 个待监测节 点时,电路状态有M 类,本文把无节点输出做为输出节点坐标为0,输出特征维数选择为M, 输出特征分量与输出节点一一对应。
(4)训练样本集的选择
同故障字典的样本集选择不同,最优测试集的训练样本一开始时不存在的,是在制定的 约束条件下,不断反复运算的动态过程,是一个自我学习更新的过程。因此本网络将样本集 训练融合到网络的学习过程中。
4 仿真结果
本文所选择的目标电路模型为实际某设备的使用组件。电路板属于较为典型的模拟电路 板,电路板的原理图如图1。
对电路板进行仿真试验,得到结果如表1,其指标衡量如表2。
运用神经网络方法得到的种群中的个体元素仍比较分散,说明神经网络在自主学习训练 下要将当前的最优解解出的能力相对较弱一些,表1 中给出的结果是应用神经网络多次运算 得到的出现频率较高的解。
在设定生成较少的测设点数量时,应用神经网络能够解出点集,但各项指标与使用进化 规划算法的解相比相对较差,整体效果类似于陷入“早熟”。在设定生成较多的测试点数量时,应用神经网络来对目标点集的查找解算较为困难,对目标求解的明晰性不强,目标集(样本集)内的元素不趋同,求解精度不高。
应用传统的 BP 神经网络解决TSP 或集覆盖等问题时,可行解获得的效率低,网络较难 收敛到可行解。随着问题的复杂化,传统的BP 神经网络方法搜索到严格最优解或近似最优 解的困难加大,容易陷入局部最优。求解速度较慢,网络特性相对不够稳定。
5 结论
本文应用神经网络对模拟电路最优测试集生成上进行了初步实现。仿真结果说明当电路结构变得复杂以后,神经网络的训练和识别所需要的时间都比较长,运算时间大大增加,甚至在限定的最大时间内出现求不出参考解的情况。目前,应用进化规划算法进行最优测试集的生成对复杂电路结构求解问题上显示出其优越性,在设定的时间内求解精度高,在设定的 精度下运算时间短。
本文作者创新点:在复杂电路结构的求解问题上,应用进化规划算法进行最优测试集的 生成,在设定的时间内求解精度高,在设定的精度下运算时间短。
上一篇:船载雷达回程误差分析及消隙设计
下一篇:浅谈传感器与检测仪表的发展动向