改进PSO_BP_Adaboost算 法在尺寸超差故障诊断中的应用

姜春英 康玉祥 叶长龙 于苏洋

沈阳航空航天大学机电工程学院,沈阳,110136

摘要:利用改进的粒子群优化算法优化BP神经网络,组合多个优化BP网络构成Adaboost强分类器,采用“一对一”分类思想建立了改进PSO_BP_Adaboost多分类器算法,并在部分UCI数据集上进行了有效性验证。实例中,将某零件上相同尺寸、不同位置的4个孔的直径作为BP网络的输入值,利用真实数据进行验证,该算法的分类正确率达到98%,表明提出的改进多分类器算法可有效用于尺寸超差故障诊断。

关键词:故障诊断;粒子群优化;神经网络;Adaboost算法

0 引言

在线智能监测技术可以对机械设备故障进行准确的分类和预测,对机械产品质量和生产成本的控制,以及安全高效的生产保证都有重要的意义。

国内外学者在智能故障诊断方法上进行了大量的研究工作。LEE等[1]研究了连续HMM(hid⁃den Markov model)故障诊断方法,并用于机械设备故障诊断。WIDODO 等[2]、SAMANTA[3]、YU等[4]对支持向量机、神经网络进行了深入研究,并用于齿轮、轴承等零件的故障诊断。PAYA等[5]进一步运用BP网络,实现了旋转机械的故障诊断。零件故障诊断问题可归为特征分类问题,鲍久圣等[6]构建BP网络模型用于焊接疵点的分类,得到了很好的效果。BP网络具有很好的适应能力和训练能力,但很难设置理想的连接权值和阈值。粒子群优化(particle swarm optimization,PSO)算法提升了BP网络的分类、回归等方面的性能,并在车牌号码识别[7]、发动机参数优化[8]等方面得到了较好的应用。

本文针对零件尺寸超差问题,提出了一种改进PSO_BP_Adaboost算法来解决分类收敛问题,将所提算法用于尺寸超差故障诊断。

1 BP_Adaboost算法改进模型

1.1 改进的PSO算法优化BP网络

PSO作为一种群体智能搜索算法,具有实现原理简单、全局搜索能力强等优点[7]。采用PSO算法优化网络的初始权值和阈值可以提高BP网络的性能[9⁃10]。传统的PSO算法通过下式实现粒子位置和速度的更新[12]

式中,vid(t)、Xid(t)分别为 t时刻第 i个粒子的速度和位置;Pid、Pgd分别为第i个粒子的个体极值位置和粒子群全体极值;w为惯性权重因子;c1、c2为学习因子;Rnd1、Rnd2是0~1之间的随机数。

PSO算法通过“追踪”Pid和Pgd两个参数实现进化的目的。为了提高算法全局搜索能力,避免粒子陷入局部最优解,同时考虑到智能群体在搜索过程中会带有一定的随机性,将式(1)中的惯性权重w改为高斯随机数Rnd3来表示先前速度对当前速度的影响具有随机性。另外,为了表达当前位置和速度对下一个位置的随机影响程度,在式(2)增加了随机搜索因子η:

为了验证改进PSO算法的有效性,本文对改进PSO算法在研究者普遍使用的几个测试函数[11⁃12]上进行了测试,并将其与传统PSO算法进行比较。结果显示,改进的PSO算法无论是在迭代次数还是在精度方面都要优于传统的PSO算法,因此,可以用来优化BP神经网络的初始权值和阈值。测试结果见表1,部分测试函数适应度与迭代次数关系如图1所示。

表1 PSO算法测试结果表
Tab.1 PSO algorithm test results table

图1 函数适应度曲线
Fig.1 Function fitness curves

1.2 改进的BP_Adaboost算法模型

Adaboost算法[9⁃15]首先需要建立多个不同的弱分类器,然后将这些弱分类器组合成强分类器,以达到提高分类器泛化性能的目的。对于具有k个类别的多分类问题,传统的Adaboost算法通过提高前一个弱分类器错分样本的权值,同时降低被正确分类样本的权值,来找到多个错误率小于1/2的弱分类器。但是,随着弱分类器的增加,很可能导致弱分类器的错误率达不到要求,存在弱分类器数量不足、不能组合成为足够好的强分类器的可能。针对此问题,在汲取SAMME[16]算法经验的基础上,对Adaboost算法的权值分配策略进行了改进:

式中,at为第t个弱分类器的权值,t=1,2,…,K;K为总的弱分类器个数;εt为第t个弱分类器的错误率。

在原算法的基础上增加ln(K-t+1)。改进后,每个弱分类器的分类错误率只需满足εt≤(K-t+1)/(K-t+2)的要求即可。

运用改进的权值分配策略,采用经典的“一对一”多分类方法设计多分类器。具体算法如下。

输入:训练数据样本T={(xl,yl),…(xm,ym)},其中输入数据xi∈X,标签yi∈{1,2,…,N}。

输出:强分类器G(x),分类结果。

(1)for j=1:N-1

for k=j+1:N

将yj=j的数据样本设置为正类,yk=k的样本设置为负类。

(2)训练数据样本T的权值分布初始化:

(3)for t=1:

①在训练样本的权值分布下,训练PSO优化后的BP神经网络作为第t个弱分类器ht(x)。

②计算ht(x)的误差率:

③计算ht(x)的权值分配系数:

④更新训练数据样本的权值分布:

式中,Zt为归一化因子。

end

(4)得到最终的强分类器G(x)输出分类类别

M为设置弱分类器的个数。

end

end

1.3 改进PSO_BP_Adaboost算法

改进PSO_BP_Adaboost算法的流程如图2所示,算法采用MATLAB软件在UCI数据集(选用研究者普遍使用的几个数据集)[17]Pen⁃Digits、Letter、Wine上进行测试。数据集的有关信息如表2所示。

图2 PSO_BP_Adaboost算法流程图
Fig.2 PSO_BP_Adaboost algorithm flow chart

表2 测试数据集信息表
Tab.2 Test data set information table

传统BP_Adaboost算法和PSO_BP_Ada⁃boost算法在相同迭代次数时的分类误差如图3~图5所示,可以看出本文所提算法在弱分类器个数和测试误差方面都优于传统的BP_Adaboost算法。

图3 两种算法在Wine数据集上的误差
Fig.3 Error of two kinds of algorithms on Wine data set

图4 两种算法在Pen-Digits数据集上的误差
Fig.4 Error of two kinds of algorithms on Pen-Digits data set

图5 两种算法在Letter数据集上的误差
Fig.5 Error of two kinds of algorithms on Letter data set

2 加工尺寸超差故障诊断实例

2.1 参数选择

采用三坐标测量仪检测汽车发动机缸盖上的孔直径。该型缸盖上分布6个不同位置的孔,为减小计算量,任意选取4个孔的测量值作为BP网络的输入。

根据对加工零件尺寸超差故障的分析,以及对每次故障记录数据的判断,将该零件尺寸超差故障产生的原因分为刀具的磨损和机床/操作者/环境因素。

本文对零件加工尺寸数据进行处理,将数据分为3类进行分析,表3所示为零件尺寸类别标签及类别名称。

表3 测试数据分类表
Tab.3 Test data classification table

2.2 建立模型

选取检测记录的150组数据模型进行训练,随机选取其中100组数据作为训练样本数据,50组数据作为测试样本。

本文中PSO_BP_Adaboost算法有4个输入、1个输出,4个输入分别为直径1、直径2、直径3、直径4,1个输出为“一对一”分类方法中设置的正类或负类,即输出为{+1,-1}。

设置BP网络的结构为4⁃10⁃1,即输入层由4个神经元、隐含层有10个神经元、输出层有1个神经元。整个BP神经网络共有4×10+10×1=50个权值和10+1=11个阈值,则PSO算法要优化的参数个数为50+11=61。BP神经网络采用MATLAB自带的函数newff创建,训练次数为100,训练目标为0.001,学习率设置为0.1。

在PSO算法优化BP网络的过程中,PSO算法的进化次数为10,种群规模为10。

优化的BP_Adaboost算法中,采用10个BP网络作为弱分类器组成一个强分类器,测试样本数据共有3类,根据“一对一”分类算法,共需要3×(3-1)/2=3个强分类器,总共需要3×10=30个弱分类器。

2.3 结果分析

训练好模型后,本文选取的50组测试数据中,只有1组测试结果与实际情况不相符,正确率达到98%。图6为传统BP_Adaboost算法和PSO_BP_Adaboost算法的误差率比较图,可以看出本文所提方法误差较小。表4所示为本文所提方法与SVM、Adaboost.M1算法的测试结果。结果显示,针对所选的测试数据,本文所提方法较SVM和Adaboost.M1算法有更高的分类正确率,说明本文所提方法可以用于零件尺寸超差故障诊断。

图6 两种算法误差率
Fig.6 Two algorithm error rates

表4 不同分类算法测试结果
Tab.4 Test results of different classification algorithms %

3 结论

提出了改进的PSO算法及Adaboost算法,应用PSO算法快速寻优的特点,优化BP神经网络的连接权值和阈值,通过训练多个优化后的BP神经网络弱分类器组合成Adaboost强分类器。对所建立的强分类器算法,采用某一零件的测量尺寸数据进行验证。试验结果表明,本文所提的算法正确率较高,性能较好,可以用于零件尺寸超差故障的分类检测。

参考文献:

[1] LEE J M,KIM S J,HWANG Y H,et al.Diagnosis of Mechanical Fault Signals Using Continuous Hid⁃den Markov Model[J].Journal of Sound and Vibra⁃tion,2004,276(3/5):1065⁃1080.

[2] WIDODO A,YANG Bo⁃Suk.Support Vector Ma⁃chine in Machine Condition Monitoring and Fault Diagnosis[J].Mechanical Systems and Signal Pro⁃cessing,2007,21(6):2560⁃2574.

[3] SAMANTA B.Gear Fault Detection Using Artificial Neural Networks and Support Vector Machines with Genetic Algorithms[J].Mechanical Systems and Signal Processing,2004,18(3):625⁃644.

[4] YU Yang,YU Dejie,CHENG Junsheng.A Roller Bearing Fault Diagnosis Method Based on EMD En⁃ergy Entropy and ANN[J].Journal of Sound and Vi⁃bration,2006,294(1/2):269⁃277.

[5] PAYAA B A,ESATA I I,BADIB M N M.Artifi⁃cial Neural Network Based Fault Diagnostics of Ro⁃tating Machinery Using Wavelet Transforms as a Preprocessor[J].Mechanical Systems and Signal Processing,1997,11(5):751⁃765.

[6] 鲍久圣,阴妍.BP神经网络在机械故障诊断中的应用[J].现代制造工程,2005(1):113⁃114.BAO Jiusheng,YIN Yan.Application of BP Neural Network in Mechanical Fault Diagnosis[J].Modern Manufacturing Engineering,2005(1):113⁃114.

[7] 吴志攀,赵跃龙,罗中良,等.基于PSO⁃BP神经网络的车牌号码识别技术[J].中山大学学报(自然科学版),2017,56(1):46⁃52.WU Zhipan,ZHAO Yuelong,LUO Zhongliang,et al.License Plate Recognition Technology Based on PSO⁃BP Neural Network[J].Acta Scientiarum Natu⁃ralium Universitatis Sunyatseni,2017,56(1):46⁃52.

[8] WU Dongmei,GAO Hao.A BP and Switching PSO Based Optimization Approach for Engine Optimiza⁃tion[J].National Academy Science Letters,2017,40(1):33⁃37.

[9] 马廉洁,陈杰,巩亚东,等.基于PSO算法改进BP神经网络的氟金云母点磨削工艺参数优化[J].中国机械工程,2016,27(6):761⁃766.MA Lianjie,CHEN Jie,GONG Yadong,et al.Pro⁃cess Parameter Optimization Based on PSO⁃BP Neural Network in Point Grinding Fluorophlogopite[J].China Mechanical Engineering,2016,27(6):761⁃766.

[10] LIU Chaojie,DING Wenfeng,LI Zheng,et al.Pre⁃diction of High⁃speed Grinding Temperature of Ti⁃tanium Matrix Composites Using BP Neural Net⁃work Based on PSO Algorithm[J].The Interna⁃tional Journal of Advanced Manufacturing Technol⁃ogy,2017,89(5/8):2277⁃2285.

[11] 李建平,宫耀华,赵思远,等.粒子群优化算法的改进及数值仿真[J].吉林大学学报(理学版),2017,55(2):322⁃332.LI Jianping,GONG Yaohua,ZHAO Siyuan,et al.Improvement of Particle Swarm Optimization Al⁃gorithm and Numerical Simulation[J].Journal of Jilin University(Science Edition),2017,55(2):322⁃332.

[12] 朱成实,勾延生,李铁军,等.基于改进PSO算法的数控机床主轴优化设计[J].中国机械工程,2015,26(20):2784⁃2788.ZHU Chengshi,GOU Yansheng,LI Tiejun,et al.Optimization Design of CNC Machine Tool Spin⁃dle Based on Improved PSO Algorithm[J].China Mechanical Engineering,2015,26(20):2784⁃2788.

[13] 曹莹,苗启广,刘家辰,等.AdaBoost算法研究进展与展望[J].自动化学报,2013,39(6):745⁃758.CAO Ying,MIAO Qiguang,LIU Jiachen,et al.Re⁃search Progress and Prospect of AdaBoost Algo⁃rithm[J].Acta Automatica Sinica,2013,39(6):745⁃758.

[14] 刘庆华,丁文涛,涂娟娟,等.优化BP_AdaBoost算法及其交通事件检测[J].同济大学学报(自然科学版),2015,43(12):1829⁃1833.LIU Qinghua,DING Wentao,Tu Juanjuan,et al.BP_AdaBoostOptimization Algorithm and Its Traffic Incident Detection[J].Journal of Tongji University(Natural Science),2015,43(12):1829⁃1833.

[15] FREUND Y,SCHAPIRE R E.A Decision⁃theoret⁃ic Generation of On⁃line Learning and an Applica⁃tion to Boosting[J].Journal of Computer and Sys⁃tem Sciences,1997,55(1):119⁃139.

[16] ZHU J,ZOU H,ROSSET S,et al.Multi⁃class Ad⁃aBoost[J].Statistics and Its Interfance,2009,2(3):349⁃360.

[17] BLAKE C.UCI Repository of Machine Learning Data Bases[DB/OL].(1998)[2018⁃08⁃21]ftp://ftp.ics.uci.edu/pub/machine⁃learning⁃databases.*

Applications of Improved PSO_BP_Adaboost Algorithm in Fault Diagnosis of Dimension Out-of-tolerance

JIANG Chunying KANG Yuxiang YE Changlong YU Suyang
School of Mechatronics,Shenyang Aerospace University,Shenyang,110136

Abstract:An improved PSO algorithm was used to optimize a BP neural network,and a number of BP networks can form a kind of Adaboost strong classifier.Therefore,an improved PSO_BP_Adaboost multi⁃classifier algorithm was established with the idea of“one⁃to⁃one”,and the validity was proved by some of UCI dataset.The same diameters of 4 holes in different positions on one workpiece were chosen as the input values of the BP network.It was verified by real data that the correct rate of the algorithm reaches 98%.The results show that this improved PSO_BP_Adaboost algorithm may be used effectively for dimension fault diagnosis of out⁃of⁃tolerance.

Key words:fault diagnosis;particle swarm optimization(PSO);neural network;Adaboost algorithm

基金项目:沈阳市科技计划资助项目(F16-216-6-00)

收稿日期:2017-07-24

DOI:10.3969/j.issn.1004⁃132X.2018.20.015 开放科学(资源服务)标识码(OSID):

中图分类号:TP306.3;TP183

(编辑 张 洋)

作者简介:姜春英,女,1978年生,副教授。研究方向为机电系统智能监测与故障诊断。发表论文10余篇。E⁃mail:jiangchunying@hotmail.com。