随着电子工业的发展,电子设备的复杂性越来越高,其中的模拟器件和电路不可缺少。 理论分析和实际应用表明,这些设备中的模拟电路较数字电路更容易发生故障。另外,随着超大规模模拟电路的发展和电子器件复杂性的提高,对模拟电路运行可靠性的要求更为严格。因此,模拟电路故障诊断技术越来越重要。
随着人工智能技术的发展,特别是神经网络具有自学习能力、高超的分类能力和良好的鲁棒性等优点,吸引了大量的学者研究基于神经网路的模拟电路故障诊断方法,并取得了较好的研究成果。迭代算法已经在前馈神经网络的训练中应用了多年Huang等研究发现前馈神经网络的输入层连接权值无需迭代调整根据这一思路,提出了一种新的神经网络训练框架[1],并称之为极限学习机(extreme learning machine,ELM)。该方法随机设置隐含层输入权值,一次性求解出输出权值的最小二乘解来完成网络的训练。极限学习机具有速度极快、泛化性好的特点,已经在分类问题中广泛应用。由于ELM 算法随机初始化的特点,难以建立基于小样本的非线性模型。核ELM (KELM)解决了ELM算法随机初始化的问题,并且对模型学习参数具有较好的鲁棒性[2]。
本文将核极限学习机应用于模拟电路故障诊断,以双二次滤波器电路为诊断实例,实验结果表明:该方法分类准确率高、推广能力好,具有很高的鲁棒性。
1 核函数极限学习机 1.1 核函数核函数使用的基本原理是通过非线性函数Φ把输入空间样本数据映射到高维特征空间,然后在高维特征空间进行数据的处理。核函数技术关键点在于通过引入核函数,就可以把非线性变换后的高维空间的内积运算转变为原始输入空间中的核函数的计算。
设xi和xj为数据空间中的样本点,原始数据空间到高维特征空间的映射函数为Φ,因此,核函数方法就可以表示为实现向量内积的变换:
式中:〈Φ(xi),Φ(xj)〉为内积,K(xi,xj)为核函数。采用核函数映射是为了提高数据的线性可分程度,但是只有选择了合适的核函数才能做到这一点。并非所有的函数都可以作为核函数,对于核函数的构造,有如下严格的限制条件:
Mercer定理:对于任意的对称函数,它是某一特征空间中的内积运算的充分必要条件是,对于任何不恒为零的Φ(x),并且
在核函数方法的应用中,核函数的选择及相关参数的设定是核函数问题的关键和难点所在,到目前为止没有太多的理论作为指导。对于核函数的选择只要满足 Mercer 核理论即可作为核函数。但现实工程应用中,其实没必要去设计出其他的核函数,使用比较常见的核函数就可以满足一般应用的需求,核参数的选择则根据具体的核函数具体分析。下面为几种比较常用的核函数:
1) 高斯核函数:
2) 线性核函数:
3) p阶多项式核函数:
4) 感知机核函数:
1.2 核函数极限学习机传统的基于神经网络的学习算法多采用基于最小化训练误差的经验风险最小化原则的方法采用输人输出数据近似一个非线性函数,但这种方法通常需要较多的训练样本、较长的学习时间,而且会导致学习模型的过拟合。Vapnik提出基于统计学习理论和结构风险最小化原则的SVM建模方法[3]通过引人核特征空间映射和训练误差惩罚参数有效的避免了这一问题,但求解过车复杂、模型参数敏感度高。ELM算法是2006年由Huang等提出了一种新型单隐层前馈神经网络模型,由于其无需反复调整隐层参数,并且将传统单隐层前馈神经网络参数训练问题转化为求解线性方程组,利用求得的最小范数最小二乘解作为网络输出权值,整个训练过程一次完成。因此,训练速度得到极大的提高,且泛化性能更好。
与传统的学习算法不同,针对输入输出数据,ELM 的目标是同时最小化训练误差和输出权重的范数,可表示为:
式中,β是连接隐含节点的权重向量,h(xi)称为隐层核映射。从标准优化理论的观点看,上述的优化问题可采用简化的约束优化问题求解,则上述目标可重新改写为:
式中,ξi为训练误差,C为惩罚参数。基于KKT 理论,ELM的训练等价于解决如下的对偶优化问题:
式中,每个拉格朗日算子αi均对应于第i样本。可得到如下的KKT优化条件: 式中,α=[αi,…,αN]T。针对小训练样本,上述公式可等价地写为:
ELM的输出表达式可直接表示为:
因此,ELM算法可归纳如下:
对于训练样本(xi,ti),其中xi=[xi1,xi2,…,xin]T∈Rn,ti=[ti1,ti2,…,tim]T∈Rm,激励函数g(x)和L个隐含层节点,L≤N:
1) 随机产生输入到隐含层权值向量ai和隐节点偏置值bi;
2) 计算网络的隐含层输出矩阵H;
3) 计算输出权值 或β=采用Mercer条件,ELM 算法中的公式用核矩阵形式表示出来[4, 5]:
因此,ELM输出函数可以表示为:
核函数ELM算法中,隐含层节点的特征映射函数g(x)的具体形式可以不用给出,而只需要知道核函数K(x,xi)的具体形式就可以求出输出函数的值。同时,因为核函数直接采用内积的形式,在求解输出函数值时不必去求解隐含层节点的个数。
因此,核函数ELM(KELM)算法可概括为[6]:
给定一个含有N个样本的训练样本集{(xi,ti)|xi∈Rn,ti∈Rm,i=1,2,…,N},及核函数K(x,xi),计算输出方程:
可以看出,基于核函数的极限学习机可以通过单步实现。如果隐含层特征映射函数h(x)已知,ELM核函数的计算方法:
2 模拟电路故障诊断的KELM方法模拟电路的故障可分为软故障和硬故障,元件的实际值超出了容差范围,则电路发生了软故障,如发生了开路或短路,则电路发生了硬故障。集成度增加使得模拟电路的测试节点有限,因此不可能测到电路内部的信息以帮助故障诊断,而电路的响应包含了电路内部所有元件的信息,从不同角度反映了电路的工作特性。在适当的激励信号下,模拟电路故障特征均能单值地反映在响应曲线上,模拟电路故障诊断的KELM方法是提取电路的响应作为故障特征,并用KELM对这些故障特征进行故障辨识和分类。
模拟电路故障诊断工作可分为故障特征提取和故障分类两部分,包括3个主要步骤:
第1步 对待测电路进行灵敏度分析,选择对输出影响较大的元件作为故障元件,设置故障并提取各状态下的输出响应;
第2步 对输出响应信号进行小波包分解,得到各状态下故障特征样本,并对样本归一化处理;
第3步 训练KELM。将归一化后的电路特征数据组成训练样本(xi,ti),i=1,2,…,N,选择核函数求解(11)式得最优分类函数;
第4步 用训练好的KELM进行故障诊断。
3 故障诊断实例以双二次滤波器电路[7]作为诊断实例,电路如图1所示,电路中无源器件具有±5%容差范围。无源器件的标称值为:R1=10 kΩ,R2=10 kΩ,R3=10 kΩ,R4=10 kΩ,R5=10 kΩ,R6=10 kΩ,C1=20 nF,C2=20 nF。假设该电路中无源器件发生单故障,且发生故障时,该器件的值位于[50%,95%]∪[105%,150%]。
对电路进行灵敏度分析,元件R1和C2变化时,对电路的频率响应影响最为显著。作为诊断实例,故障元件选择了R1和C2,根据发生故障时元件值变化的假设,故障模式分为4种类型如表1所示,符号分别表示偏大和偏小类型故障。
从图2中可看出,在1~30 kHz频率范围内,输出电压Vout对应幅值变化最大。因此,可以在1~100 kHz频率范围内选取一组采样点。本文选取12个采样点的信号幅值即频率分别为100、1 000、2 000、3 000、4 000、5 000、6 000、7 000、8 000、9 000、10 000、30 000下所对应的输出电压V的幅值。分别对每一种模式类别下的电路进行90次蒙特卡罗(Monte-Carlo)分析,其中60种用于训练,另30种用于测试。
将特征训练集输入分类器中进行训练,最后将测试集输入训练好的分类器检验分类器的性能。分别采用ELM、SVM和K-ELM分类器对电路进行了验证,滤波器的故障诊断仿真结果如表2所示。
方法 | 训练时间/s | 训练精度 | 测试精度 | 参数选择 |
ELM | 0.26 | 0.988 | 0.981 | C=1 000,L=140 |
SVM | 32.98 | 0.991 | 0.982 | C=100,a=1.2 |
K-ELM | 1.631 | 1 | 0.994 | C=100,a=1.0 |
SVM算法[8, 9]选用高斯核,使用LIBSVM工具包,ELM的参数是惩罚因子C和隐含层节点L,SVM和高斯核ELM的参数分别为惩罚因子C和核参数a。
上述结果表明,KELM的训练精度和测试精度要比ELM及SVM好很多,而且在训练时间方面存在优势,因此文中的方法具有较低的错误率和很好的推广能力。
4 结 论本文把KELM应用到模拟电路的故障诊断,提取了被测电路的频域特征作为故障特征,以双二次滤波器为实例,选择高斯核函数建立KELM模型,实验结果表明KELM是一种适应性好的模拟电路故障诊断方法,获得了满意的诊断效果。但是在 KELM 参数的选取上,因为目前还没有形成具体的算法,本文只是把交叉验证算法应用于 KELM 参数优化当中,而对于更好的优化方法值得进行深入研究。
[1] | Huang G B, Zhu Q Y, Siew C K. Extreme Learning Machine:Theory and Applications[J]. Neurocomputing, 2006, 70(1/2/3):489-501 |
Click to display the text | |
[2] | Huang G B, Zhou H, Ding X, Zhang R. Extreme Learning Machine for Regression and Multi-Class Classification[J]. IEEE Trans on Systems Man and Cybernetics-Part B:Cybernetics, 2011, 42(11):513-529 |
Click to display the text | |
[3] | 鲁昌华,汪涌,王玲飞.基于PCA和SVM的模拟电路故障诊断[J].电子测量与仪器学报, 2008, 22(3):66-68 Lu Changhua, Wang Yong, Wang Lingfei. Fault Diagnosis of Analog Circuit Based on PCA and SVM[J]. Journal of Electronic Measurement and Instrument, 2008, 22(3):66-68(in Chinese) |
Cited By in Cnki (17) | Click to display the text | |
[4] | Deng W, Zheng Q, Zhang K. Reduced Kernel Extreme Learning Machine. Advances in Intelligent Systems and Computing, 2013, 226:63-69 |
Click to display the text | |
[5] | Huang G B, Wang D H, Lan Y. Extreme Learning Machines:A Survey[J]. International Journal of Machine Leaning and Cybernetics, 2011, 10(8):107-122 |
Click to display the text | |
[6] | Zong W, Zhou H, Huang G, Lin Z. Face Recognition Based on Kernelized Extreme Learning Machine[C] //Second International Conference, AIS 2011, Burnaby, BC, Canada, 2011:263-272 |
Click to display the text | |
[7] | 袁海英,陈光.模拟电路的可测性及故障诊断方法研究[J].电子测量与仪器学报,2006,20(5):17-20 Yuan H Y, Chen G. Research on Testability Problem and Fault Diagnosis Method in Analog Circuit[J]. Journal of Electronic Measurement and Instrument, 2006, 20(5):17-20(in Chinese) |
Cited By in Cnki (23) | Click to display the text | |
[8] | 孙永奎,陈光,李辉.支持向量机在模拟电路故障诊断中应用[J].电子测量与仪器学报, 2008, 22(2):72-75 Sun Y K, Chen G, Li H. Support Vector Machine for Analog Circuit Fault Diagnosis[J]. Journal of Electronic Measurement and Instrument, 2008, 22(2):72-75(in Chinese) |
Cited By in Cnki (26) | |
[9] | Long Bing, Li Min, Wang Houjun, Tian Shulin. Diagnostics of Analog Circuits Based on LS-SVM Using Time-Domain Features[J]. Circuits, Systems, and Signal Processing, 2013, 32(6):2683-2706 |
Click to display the text |