APP下载

基于Stacking的雷达伺服系统故障诊断

2020-09-02王智吴俊盼魏海坤

软件导刊 2020年8期
关键词:异常检测故障诊断

王智 吴俊盼 魏海坤

摘 要:为了提高南京某所某型雷达伺服系统故障诊断准确率,考虑到传统故障诊断算法的局限性,提出一种基于Stacking集成算法的雷达伺服系统故障诊断方法。针对某所某型雷达伺服系统的历史监测数据,首先采用孤立森林算法识别异常样本;然后基于原始数据构造出新的特征,使用卡方检验进行特征选择,并使用SMOTE算法解决样本不平衡问题;最后,通过建立一种新颖、准确的基于XGBoost、随机森林和BP神经网络的Stacking集成模型进行故障诊断。实验结果表明,该方法在测试集上的诊断准确率达到了96.2%,比传统方法诊断准确率提高了1.8%,证明该方法能够很好地完成雷达伺服系统故障诊断任务。

關键词:雷达伺服系统;故障诊断;异常检测;特征工程;Stacking

DOI:10. 11907/rjdk. 192683 开放科学(资源服务)标识码(OSID):

中图分类号:TP303文献标识码:A 文章编号:1672-7800(2020)008-0006-04

Abstract: In order to improve the accuracy of fault diagnosis for a certain type of radar servo system in a research institute in Nanjing, with the consideration of the limitations of traditional fault diagnosis algorithms, a fault diagnosis method of radar servo system based on Stacking integrated algorithm is proposed. Aiming at the historical monitoring data of a certain type of radar servo system, we first use the isolated forest algorithm to identify abnormal samples. Then, new features are constructed based on the original data, feature selection is performed bt using Chi-square test, and sample imbalance is solved by using SMOTE algorithm. Finally, a novel and accurate Stacking integrated model based on XGBoost, random forest and BP neural network is established for fault diagnosis. The experimental results show that the diagnostic accuracy of the traditional method on the test set is up to 94.4%, and the diagnostic accuracy of the method proposed in this paper reaches 96.2%, which is 1.8% higher than the traditional method. The method proposed in this paper can well complete the fault diagnosis task of radar servo system.

Key Words: radar servo system;fault diagnosis;abnormal detection;feature engineering;Stacking

0 引言

随着国防科技的飞速发展和社会需求的不断增长,雷达系统在我国国防建设和国民经济中发挥着越来越重要的作用。伴随着雷达技术的日益进步,雷达系统的复杂程度越来越高,雷达系统的稳定性和可靠性也越发重要,快速且准确地实现雷达系统的故障诊断成为亟待解决的问题[1]。雷达伺服系统作为雷达系统的一个重要子系统,其故障诊断研究十分重要。目前,传统故障诊断算法诊断速度较慢、诊断准确率不高,难以应对越来越复杂的雷达系统。因此,设计一套高效且准确率高的故障诊断算法尤为必要。

近年来,人工智能技术飞速发展,其在故障诊断领域的应用不断深入。文献[2]采用IRN神经网络模型进行雷达天线伺服系统故障诊断,解决了雷达天线伺服系统故障诊断准确率不高的问题,但是该方法对样本数据质量要求较高且诊断准确率提升不够明显;文献[3]采用异常检测算法和SVM算法进行故障诊断,解决了对样本数据质量要求过高的问题,但是该方法故障诊断的准确率存在瓶颈,诊断结果不能达到预期;文献[4]采用Adaboost-SVM的方法进行故障诊断,一定程度上解决了故障诊断准确率存在瓶颈的问题,但是该方法没有进行针对性的特征工程处理,并且在集成模型选择和优化方面做得不够深入,故障诊断准确率还有一定提升空间;文献[5]采用随机森林模型进行故障诊断,模型预测准确率较高,但缺少模型融合研究;文献[6]采用随机森林模型和XGBoost模型进行故障诊断,通过模型融合进一步提升了故障诊断准确率,但是该方法模型间融合较为简单,模型集成研究不够深入。

以上方法都未在特征工程和模型集成上进行深度优化,本文通过针对性的特征工程处理和Stacking集成算法,对特征工程和模型集成两个方面进行深度优化,并结合异常检测算法,提出一套新颖、高效的雷达伺服系统故障诊断方法。该方法弥补了故障数据特征表述单一和对故障数据质量要求过高的问题,优化了雷达伺服系统故障诊断模型,改进了雷达伺服系统故障诊断准确率。

1 数据预处理

雷达伺服系统的历史监测数据会由于设备老化、操作失误和传感器故障等原因,造成数据异常。因此,在进行特征工程之前需要对数据进行异常值检测[7]。孤立森林模型(Isolation Forest,IF)是一种适用于连续型数据的无监督异常检测算法,该算法通过判断样本点的孤立性检测异常值[8],具有较好的鲁棒性。本文采用该算法对雷达伺服系统的历史监测数据进行异常值检测。

2 特征工程

目前,常见故障诊断算法往往都忽视特征工程的重要性,通常将原始特征直接注入模型中。本文基于原始特征构造出一些新的特征,使得数据对故障的描述更加完备。

根据雷达伺服系统历史监测数据,能够基于时间维度挖掘出一些新的特征,主要包括两个方面:历史值和历史变化率。某所某型雷达伺服系统的运行监测数据共有53项状态参数,每隔5分钟记录1次。在历史值方面,将本次监测数据、5分钟前的监测数据和10分钟前的监测数据加入原始数据作为新的特征。在历史变化率方面,将本次监测数据与5分钟前监测数据的差值以及5分钟前监测数据与10分钟前监测数据的差值作为新的特征加入原始数据。经过处理,得到数据特征维度为265维。加入这两类特征使得故障数据本身具备一定的时间序列特性,可描述故障产生的过程,使得数据对故障的描述更加完备。

3 算法模型

目前,雷达系统故障诊断方法是支持向量机算法[12],但其存在3点不足:处理多分类问题较为困难、在大规模样本上训练困难、对参数和核函数的选择十分敏感。同时,单分类器的预测精度往往存在瓶颈,很难达到令人满意的准确率。针对如上问题,本文在雷达伺服系统故障诊断领域中提出一种新模型:结合XGBoost、随机森林和BP神经网络的Stacking模型。该模型充分吸收了3种模型的优点,通过集成算法将这3种模型相结合,预测精度得到了大幅提升。

3.1 基分类器

极限梯度提升树(eXtreme Gradient Boosting, Xgboost)、随机森林(Random Forest,RF)和人工神经网络(Artificial Neural Network,ANN)都是十分优秀的机器学习模型,在工程实践中获得了广泛应用。本文将这3种模型作为最终基分类器。

XGBoost算法是梯度提升树算法(Gradient Boosting Decision Tree,GBDT)的一种高效实现,是Boosting算法的一种,其基学习器通常为分类回归树(Classification and Regression Tree,CART),基本思想是将多个CART树的预测结果相加作为最终预测结果。该算法支持并行计算,模型预测准确率高[13-14]。

随机森林算法是一种常用的Bagging模型。该算法采用自助采样方法从原始数据中抽取多个Bootstrap样本,然后分别对每个Bootstrap样本构建决策树,最终预测结果为各决策树的预测均值。该算法不需要特征选择、训练速度快、可实现并行计算、泛化性能好[15-16]。

BP神经网络[17]是一种多层前馈神经网络,一般由输入层、隐含层、输出层构成,其基本原理是通过梯度搜索技术使得模型预测值和实际值误差最小。该算法非线性映射能力强,具有高度的自学习和自适应能力[17]。

3.2 模型集成

集成算法是一种非常强大的机器学习方法,该方法将几种机器学习算法组合成一个元算法以获得缩小方差、降低偏差或改进预测的效果。集成算法主要分为3类:Boosting、Bagging和Stacking。考虑到Stacking方法在改进预测准确率方面表现优异[18],本文采用该方法进行算法集成。该算法共有两层,第一层将故障样本训练数据分成5份,使用每一种基模型对数据集进行5折交叉验证,第二层利用第一层的预测结果作为训练数据,继续进行训练,得到最终结果。

以XGBoost模型为例,将雷达伺服系统历史故障检测数据中的训练集切分为5份,分别选择1份作为测试集,其余4份作为训练集,共得到5份训练数据和测试数据。对于这5份数据,训练5个不同的XGBoost模型,使用5个同类模型分别预测对应的测试集并得到对应的预测结果,再将这5份预测结果合并在一起得到训练集完整的预测结果。在测试集上,分别使用5个已经训练好的XGBoost模型进行预测,通过投票选出最终预测结果。同理,随机森林和神经网络两种基模型也使用同样的步骤训练模型。最终将3种模型的预测结果合并,将最终合并结果作为第二层模型的特征。集成模型如图1所示。

对于第二层输入而言,其输入特征发生了变化,不再是原始数据特征,而是第一层3种模型预测结果的合并数据。考虑到逻辑回归模型(Logistics Regression,LR)具有计算代价小和鲁棒性好等优点[19],本文在Stacking算法的第二层采用逻辑回归模型继续进行训练。当Stacking集成模型的两层模型都训练完毕时,可得到最终预测模型。

4 实例分析

基于2016年5月-2019年7月某所某型雷达伺服系统历史监测数据中的故障数据,采用本文提出的故障诊断算法进行处理。其中,XGBoost模型使用Python的机器学习库XGBoost[20]加以实现,随机森林模型、BP神经网络模型和逻辑回归模型都是通过TensorFlow实现[21]。故障诊断具体流程如图2所示。

某所某型雷达伺服系统共计有53个监测点,记录间隔为5分钟。某型雷达的测试点分布在4个区域,分别为天线控制单元、雷达驱动单元、时序控制单元和轴角编码器。其中,天线控制单元有14个测试点,天线驱动单元有11个测试点,时序控制单元有19个测试点,轴角编码器有9个测试点。故障类别如表1所示。

首先使用孤立森林算法对原始数据进行异常点检测并去除异常值,然后将该故障数据前5分钟和前10分钟53个测点的数据及其对应的历史差值和原始数据合并,初步构造出265个特征。使用卡方檢验进行特征选择,选择出相关性较高的200个测点数据构成最终特征输入。由于本次样本数据中F6和F10的故障数据相对较少,因而使用SMOTE算法对这两类样本进行数据扩充。最后,使用集成模型进行训练。模型最终准确率对比如表2所示。

通过比较可以得出本文方法准确率最高,在测试集上的预测准确率达到了96.2%,能够很好地完成雷达伺服系统故障诊断任务。

5 结语

本文利用雷达伺服系统的历史监测数据进行故障诊断方法研究,对比了不同算法模型的表现,提出了基于XGBoost、随机森林和BP神经网络这3种基学习器的Stacking模型。该模型充分吸收了3个基学习器的优点,准确率高于其它主流算法模型。同时,本文在数据预处理方面提出了一种新颖有效的方法,将数据历史值和历史差值作为新的特征加入数据集中,给数据加入了时序特性,改善了故障数据特征表述单一和对故障数据质量要求过高的问题。实验结果表明,本文故障诊断方法诊断准确率达到了96.2%,高于其它主流模型,具备很好的应用价值。下一步将通过增加基学习器种类和集成模型层数,验证能否得到更好的诊断结果。

参考文献:

[1] 聂成,蔡宏,李力. CINRAD/SA天气雷达伺服系统工作原理与典型故障及处理方法[J]. 气象水文海洋仪器,2018,35(1):76-79.

[2] 薛松,刘涛. 基于IRN神经网络的雷达天线伺服系统故障诊断[J]. 电子机械工程,2018,34(6):55-59.

[3] 徐颂捷,何建新,黎志波,等. 基于天气雷达标准输出控制器的故障诊断方法研究[J]. 成都信息工程大学学报,2019,34(3):257-262.

[4] 刘洋,华璧辰,张侃健,等. 基于优化AdaBoost-SVM的模拟电路故障诊断[J]. 软件导刊,2019,18(10):130-134,139.

[5] CERRADA M,ZURITA G,CABRERA D,et al. Fault diagnosis in spur gears based on genetic algorithm and random forest[J]. Mechanical Systems and Signal Processing, 2016,70: 87-103.

[6] 钱力扬. 基于随机森林和XGBoost的大型风力机故障诊断方法研究[D]. 杭州:浙江大学,2018.

[7] 祝永晋,马吉科,季聪. 基于多判据融合的用电信息采集系统异常数据甄别模型[J]. 广东电力,2019,32(9):184-192.

[8] SCHERMAN M,BüLOW J.Insider threat detection using isolation forest[Z]. 2018.

[9] LI J,CHENG K,WANG S,et al. Feature selection: a data perspective[J]. ACM Computing Surveys (CSUR),2018,50(6): 94.

[10] SHARPE D. Your chi-square test is statistically significant: now what?[J].  Practical Assessment, Research & Evaluation,2015,20:10.

[11] FERNáNDEZ A,GARCIA S,HERRERA F,et al. SMOTE for learning from imbalanced data: progress and challenges, marking the 15-year anniversary[J]. Journal of Artificial Intelligence Research, 2018, 61: 863-905.

[12] YIN Z,HOU J. Recent advances on SVM based fault diagnosis and process monitoring in complicated industrial processes[J]. Neurocomputing,2016,174: 643-650.

[13] 孙琛,田晓声. 基于XGBOOST算法的变压器故障诊断[J]. 佳木斯大学学报(自然科学版),2019,37(3):378-380.

[14] LEI Y F, JIANG W L, JIANG A Q,et al. Fault diagnosis method for hydraulic directional valves integrating PCA and XGBoost[J]. Processes, 2019,7(9): 589.

[15] 王子兰,杨瑞. 基于随机森林算法的旋转机械齿轮组故障诊断[J]. 山东科技大学学报(自然科学版),2019,38(5):104-112.

[16] LI C,SANCHEZ R V,ZURITA G,et al. Gearbox fault diagnosis based on deep random forest fusion of acoustic and vibratory signals[J]. Mechanical Systems and Signal Processing,2016,76:283-293.

[17] 顾彬,汪柯颖,沈东,等. 基于BP神经网络的模拟电路诊断[J]. 科技创新与应用,2019(31):57-58.

[18] 包志强,胡啸天,赵媛媛,等. 基于熵权法的Stacking算法[J]. 计算机工程与设计,2019,40(10):2885-2890.

[19] YALCIN A, REIS S, AYDINOGLU A C,et al. A GIS-based comparative study of frequency ratio, analytical hierarchy process, bivariate statistics and logistics regression methods for landslide susceptibility mapping in Trabzon, NE Turkey[J]. Catena,2011,85(3): 274-287.

[20] CHEN T,GUESTRIN C. Xgboost: A scalable tree boosting system[C]. Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM,2016:785-794.

[21] ABADI M,AGARWAL A,BARHAM P,et al. Tensorflow: large-scale machine learning on heterogeneous distributed systems[DB/OL]. https://arxiv.org/pdf/1603.04467v1.pdf.

(責任编辑:孙 娟)

猜你喜欢

异常检测故障诊断
冻干机常见故障诊断与维修
基于量子万有引力搜索的SVM自驾故障诊断
因果图定性分析法及其在故障诊断中的应用
基于LCD和排列熵的滚动轴承故障诊断
基于WPD-HHT的滚动轴承故障诊断
高速泵的故障诊断