段礼祥 , 郭 晗, 2 , 王金江
(1.中国石油大学(北京) 机械与储运工程学院,北京 102249; 2.中国特种设备检测研究院,北京 100013)
数据集不均衡下的设备故障程度识别方法研究
段礼祥1, 郭 晗1, 2, 王金江1
(1.中国石油大学(北京) 机械与储运工程学院,北京 102249; 2.中国特种设备检测研究院,北京 100013)
在机械故障诊断中,由于故障样本难以收集且数量远远少于正常样本,即产生数据集不均衡问题。这将导致传统的分类算法如支持向量机(SVM)在处理不均衡分类问题时对少数类样本(故障样本)的分类准确率过低。加权支持向量机(C-SVM)算法是一种处理样本集不均衡问题的常用算法,可以在一定程度上改善少数类样本的分类准确率。但是在故障程度相近时会导致样本间距过小,加权C-SVM算法对这类故障样本的识别精度不理想。为提高数据集不均衡下故障程度相近样本的分类准确率,采用二叉树结构与加权C-SVM相结合的方法,综合考虑样本类间距离、类内距离和不均衡程度,优化二叉树结构。结果表明,该算法能够有效处理样本距离过近的不均衡数据集分类问题,从而提高了故障程度相近样本的分类准确率。
故障诊断;故障程度识别;数据集不均衡;二叉树加权支持向量机
转子不平衡是旋转机械中最常见的故障之一,正确识别转子不平衡故障程度,是对设备进行视情维修的前提条件[1-2]。在故障程度相近时,不同类别的样本相似度很高,且距离较近,在进行分类时很容易将其误分成其他类别。在工程实际中,故障样本的数量远远少于正常样本,并且当准备收集异常样本时,设备可能已经无法运行,即出现数据集不均衡问题[3-4]。
SVM算法在针对小样本、维数过高、非线性等问题方面具有明显的优势,因此在近些年发展非常迅速[5-6]。但是,在处理不均衡数据集分类问题时,传统SVM算法以样本的整体分类准确率为评价准则,分类超平面会朝着少数类样本方向移动,忽略少数类样本,且在多数类样本内产生过拟合[7-8]。针对这一问题,文献[7]提出了一种加权C-SVM算法,研究惩罚参数C的选择方式,降低了样本的误分率。文献[8]根据正负类样本数量确定惩罚参数C,并将改进后的C-SVM算法与KNN欠抽样算法相结合,取得了良好的效果。
上述文献都证明加权C-SVM算法可以提高不均衡数据集中少数类样本的分类准确率,但是在故障程度相近时,不同类别的样本相似度很高,且容易出现边界混叠现象,利用加权参数移动分类面可能会导致某类样本分类准确率过低。针对这一问题,本文采用一种二叉树加权支持向量机算法,在进行样本加权时综合考虑样本的类间距离、类内距离以及不均衡程度,确定二叉树结构,并采用该方法识别5种不同程度的转子不平衡故障样本。
1.1 加权支持向量机
加权C-SVM算法是在SVM算法的基础上,针对样本的大小、重要度等特点引入不同的权重,其优化问题可以表示成如下形式[7]:
(1)
式中:si表示第i类样本的权重。式(1)的含义是通过给不同种类样本赋予不同的权重,改变样本的惩罚参数,进而补偿类别不均衡所带来的影响。
计算加权参数si的一种最基本方法是计算每种样本与占样本总数的比例,取倒数作为该类样本的加权参数,可以得出:
(2)
式中:ni代表第i类样本数,m代表样本种类。
在进行故障程度识别时,希望故障程度越大的样本识别的错误率越低,因此,要给其赋予较大的惩罚参数。加权C-SVM算法中法分类函数为:
(3)
式中:αi表示拉格朗日算子。在寻找最优解时,若αi=0,则对应的训练样本称作支持向量;若αi=C,则对应的样本称作边界支持向量;若0<αi 1.2 二叉树加权支持向量机 二叉树加权支持向量机由多个二分类加权支持向量机组成,每个节点的分类器按照属性结构排列。二叉树算法比一对一分类算法需要训练的子分类器数目更少,且能够避免一对一方法中产生的不可分区域,并且由于每一级分类器训练样本数目在逐渐减少,因此可以提高运行效率,缩短运行时间。但是二叉树加权支持向量机分类算法存在误差累计问题,即上层节点产生的分类错误会一直延续下去,导致下层节点的分类误差较大。因此,必须确保上层节点的分类器的性能最优,在确定二叉树结构时应该首先识别最容易区分的类别[9-10]。本文综合考虑类间距离与类内距离确定二叉树结构,再根据样本分布范围与样本不均衡度确定加权参数。 (5) 式中::ni表示第i类样本中的样本个数,xj表示将该类样本中的任意样本点。可以得出整个样本集内任意点xk到该类样本中心距离为: (6) 类间距离表示的是两类样本中心点间的距离,不能代表样本的可分离度,因此需要进一步进行计算,第i类样本的类内距离可以表示为: (7) 根据文献[11],可以推出分离性测度公式表示如下: (8) 式中:i和j分别表示第i类样本和第j类样本。Sij越大,证明两类样本的可分离性越好,在建立二叉树支持向量机分类器时,应该在越上层。 1.3 粒子群优化算法 粒子群优化算法的原理是模拟鸟类的捕食行为,鸟类在捕食的时候,会搜索当前最近的食物区域。通过鸟类捕食行为的启发,PSO算法中将问题的潜在解用不同的粒子来表示,通过合适的适应度函数确定各个粒子的适应度值。PSO算法是一种并行的随机搜索算法,可以实现对整个解空间的搜索,并且该算法具有控制参数少、算法简单等优点,因而一经提出便获得了广泛的关注。 假设PSO种群大小为n,用Pi表示种群中第i个粒子的位置,Vi表示速度,fitnessi表示适应度值。则基于PSO的寻优算法步骤可以描述如下:① 初始化种群中的粒子位置和速度,粒子位置Pi,速度Vi随机初始化;② 根据目标函数计算粒子适应度值fitnessi;③ 循环迭代,寻找个体极值Pbest和群体极值Gbest;④ 满足条件,终止循环,算法结束。 2.1 转子振动信号特征提取 本次实验采用美国本特利公司生产的RK4系列转子振动试验台,转子系统由调速台、电机、转轴、双圆盘、轴承、基座等组成,最大速度10 000 r/min。采样精度24 Bit,采样频率16 000 Hz,采样长度25段(每段为1 024点),转速为 6 230 r/min。通过在转子圆盘上加装不同质量的配重螺钉来模拟不同程度的不平衡故障,本实验加装了质量为0.3 g, 0.5 g, 0.8 g, 1.0 g的4种配重螺钉,采集包括正常信号在内的五种样本。采用MF-DFA方法对每段数据进行分析,提取出αmax、αmin、α0、Δf四种特征参数,图1(a)~1(d)所示为每种特征参数对应的分布图。 图1 αmax、αmin、α0、Δf特征参数变化曲线图Fig.1 Curves of αmax,αmin,α0 and Δf features 由图1可以看出,针对转子不平衡信号,特征参数αmax和α0能够较好地区分出5种故障程度,而其他指标均出现不同程度的混叠。αmax与α0两种特征参数只有个别点出现混叠,并且两组参数中混叠的样本点不同,因此本文采用αmax和α0两种特征参数结合共同作为特征向量,并进行归一化处理,形成原始特征集。 2.2 转子故障程度识别 由于RBF核函数能够解决样本特征与类别标签之间的非线性问题,并且计算起来较为简单,因此本文选用RBF核函数。采用RBF核函数的加权C-SVM算法有C和γ两个参数需要确定。采用的数据分析工具是Matlab2013和libsvm工具箱,表1描述了这些数据的基本特性参数。 将原始数据集中任取一组数据作为测试样本,其余149组数据作为训练样本,循环测试150次。分别采用传统SVM算法和加权C-SVM算法对测试样本进行分类,分类结果如图2(a)和2(b)所示,图中纵坐标代表样本实际类别,横坐标代表样本预测类别,不同的颜色代表不同的分类准确率,即0%~100%。通过对比可以看出,传统的SVM多分类方法分类结果偏向多数类样本,即图2(a)中分类结果集中在1、2、3类,第4、5类样本因为数据的数量较少被分类器忽略。观察图2(b)可以发现,将样本集赋予不同的权重后,第4、5类样本分类准确率明显提高,证明分类面的倾斜情况有所好转。 图2 SVM、加权C-SVM、PSO-CSVM、PSO-BT-CSVM算法分类结果Fig.2 Classification results of SVM、weighted C-SVM、PSO-CSVM and PSO-BT-CSVM 引入加权C-SVM算法后,虽然对分类结果的分布起到一定的改善,但是并未完全解决少数类样本的识别问题,即第4类样本有25%被误分为第3类样本。分析原因可能有以下2点:① 在建立分类模型时没有对参数进行优化,可能造成C和γ不够适合,进而导致分类结果不够理想。② 本文中采用的数据是故障程度相近的5组转子不平衡数据,因此特征指标相似度较高,且随着样本个数的减少,很可能出现正类样本特征完全被负类样本包围的情况。引入加权C-SVM算法,调整惩罚参数后虽然样本分布情况得到了改善,但是引入不同的权重仅仅改变了样本的相对重要性,对每类样本的分布情况没有做充分地考虑,在样本距离较近,边界不明显的情况下难以得到理想结果。 表1 数据集描述 针对第一种假设,引入粒子群优化算法优化参数C和γ,得到分类结果如图2(c)所示。可以发现,各类样本的分类准确率均有所提高,证明参数是否优化是影响加权C-SVM分类器结果的一个因素。但是第4类样本仍存在15%的样本点被误分为第3类样本,因此需要进一步分析该类样本的数据特点,找出影响分类结果的因素。前文提到根据样本的不均程度衡度确定样本的权值分布不能反映出样本的分布特性,样本距离较近,边界不明显的情况会影响加权C-SVM的分类效果。针对这一问题,对5种样本的类内距离、类间距离和不均衡程度进行综合分析,引入二叉树加权支持向量机算法进行识别。首先要根据公式(5)~(8)计算出每种样本与其他样本之间的可分离度,可以得到表2。 表2 故障样本可分离度 由表2可知,第4类样本与第3类样本的可分离度最小,解释了第四类样本容易被误分的原因。因此,可以将第3、4类样本最后识别,避免其对其他类别的样本造成干扰。计算其他三种样本的平均可分离度为0.653 0、0.499 9、0.551 0,可以确定二叉树分类器的分离顺序为0.0、1.0、0.3、0.5、0.8。由于本文讨论的是不均衡数据集分类情况,按照可分离度来构建二叉树支持向量机分类模型,第二节点分类器将面临样本极度不均衡的情况,即正类样本不均衡程度为1∶9,这种情况很容易使正类样本淹没在负类样本中,导致正类样本无法识别。为了改善每个子分类器的分类效果,确保少数类样本的识别精度,将加权C-SVM与二叉树方法箱结合,构建基于不均衡样本集的BT-CSVM算法。采用样本不均衡度与样本类半径相乘得到权重指标,确定每个节点加权C-SVM分类器的样本权重,计算结果如表3所示。 表3 故障样本分布指标 构造分类器的节点,利用PSO算法优化参数C和γ,图2(d)表示PSO-BT-CSVM算法的分类结果。证明该方法针对样本类间距离较小的不均衡数据集分类效果由于传统的多分类加权C-SVM算法,具体分类准确率如表4所示。 表4 SVM、C-SVM、PSO-CSVM、 对比表4中各种算法,可见加权C-SVM算法能够改善少数类样本的识别精度,但是参数的优化程度和样本的可分离度会对结果产生影响。经过PSO算法优化后第4类样本识别精度有所提高。PSO-BT-CSVM算法在识别分离度较小的样本集上有明显的优势,并且总体分类准确率达到了98%,因此可以得出结论,PSO-BT-CSVM算法在识别故障程度相近的数据集时具有明显优势。 传统SVM算法在进行故障诊断时没有考虑样本的不均衡问题,导致故障样本分类准确率偏低。基于样本不均衡程度的加权C-SVM算法能够改善分类器的少数类样本识别效果,但是降低了多数类样本的分类准确率,并且在处理相近故障程度识别问题时分类结果不理想。本文提出了一种二叉树加权C-SVM算法,提高了故障程度相近样本的分类准确率。 (1) 加权C-SVM算法中惩罚参数C和核函数参数γ的选用直接影响算法的分类准确率。通过PSO算法寻找合适的C和γ可以明显提高样本的分类准确率,但样本相似度高、类间距离小的情况下分类效果仍然不够理想。 (2) 引入样本可分离度概念,解释相近故障程度的样本容易错分的原因。采用二叉树结构与加权C-SVM算法相结合的方式,综合考虑样本可分离度与样本不均衡度2种参数确定加权参数,实例中该方法将类间距离过小的两类样本分类准确率分别提高6.7和10个百分点,而全部样本分类准确率也提高了2.7个百分点。 [1] 张龙, 黄文艺, 熊国良. 基于多尺度熵的滚动轴承故障程度评估[J].振动与冲击, 2014,33(9): 185-189. ZHANG Long, HUANG Wenyi, XIONG Guoliang. Assessment of rolling element bearing fault severity using multi-scale entropy[J].Journal of Vibration and Shock,2014,33(9): 185-189. [2] 江瑞龙, 陈进, 刘韬, 等. 设备性能退化评估在巡检系统中的应用[J]. 振动与冲击,2012, 31(16): 134-137. JIANG Ruilong, CHEN Jin, LIU Tao, et al. Performance degradation assessment with the application of patrol inspection system[J]. Journal of Vibration and Shock, 2012,31(16): 134-137. [3] 陶新民, 刘福荣, 童智靖, 等. 不均衡数据下基于SVM的故障检测新算法[J]. 振动与冲击, 2010,29(12):8-12. TAO Xinmin, LIU Furong, TONG Zhijing, et al. A new fault detection method of unbalanced data based on SVM[J]. Journal of Vibration and Shock, 2010, 29(12):8-12. [4] 姚培, 王仲生, 姜洪开, 等. 不均衡数据下基于CS-Boosting的故障诊断算法[J]. 振动、测试与诊断, 2013, 33(1):111-115. YAO Pei, WANG Zhongsheng, JIANG Hongkai, et al. Fault diagnosis method based on CS-boosting for unbalanced training data[J]. Journal of Vibration, Measurement & Diagnosis, 2013, 33(1):111-115. [5] PAHLO C, EVA A, JOSE B, et al. Multiclass support vector machines with example—dependent costs applied to plankton biomass estimation[J]. IEEE Transaction on Neural Networks and Learning Systems, 2013,24(11):1901-1905. [6] 石志标, 苗莹. 基于FOA-SVM的汽轮机振动故障诊断[J].振动与冲击, 2014,33(22): 111-114. SHI Zhibiao, MIAO Ying. Vibration fault diagnosis for steam turbine by using support vector machine based on fruit fly optimization algorithm[J]. Journal of Vibration and Shock, 2014,33(22): 111-114. [7] WANG Xiping, TAN Wenxue, WU Huarui. An innovative SVM for wheat seed quality estimation[J]. Journal of Information & Computational Science, 2015,12(1): 223-233. [8] 刘进军. 基于惩罚的SVM和集成学习的非平衡数据分类算法研究[J]. 计算机应用与软件, 2014,31(1): 186-190. LIU Jinjun. Research onclassificating unbalanced data based on penalty-based SVM and ensemble learning[J]. Computer Applications and Software, 2014,31(1): 186-190. [9] 赵海洋, 徐敏强, 王金东. 改进二叉树支持向量机及其故障诊断方法研究[J].振动工程学报, 2013,26(5):764-769. ZHAO Haiyang, XU Minqiang, WANG Jindong. An improved binary tree SVM and application for fault diagnosis[J]. Journal of Vibration Engineering, 2013,26(5):764-769. [10] LIU Xiaofeng, LIN Bo. Identification of resonance states of rotor-bearing system using RQA and optimal binary tree SVM[J]. Neurocomputing, 2015,152:36-44. [11] 许永建. 变压器故障诊断技术研究[D]. 南京:南京理工大学, 2010. A mechanical fault severity identification method under unbalanced datasets DUAN Lixiang1, GUO Han1,2, WANG Jinjiang1 (1. School of Mechanical and Transportation Engineering, China University of Petroleum, Beijing 102249, China;2. China Special Equipment Inspection and Research Institute, Beijing 100013, China) In mechanical fault diagnosis, the samples under fault condition are often difficult to obtain, which is the called unbalanced dataset issue. This leads to very low classification accuracy for the conventional algorithm, such as support vector machine (SVM). Weighted C-support vector machine shows improved performance, however, due to the small sample space caused by close fault severities, the classification accuracy of weighted C-support vector machine is still not high enough. To improve the classification accuracy for close fault severity cases under unbalanced dataset, this paper presented an approach integrating weighted C-support vector machine algorithm with binary tree structure, named as BT-CSVM. The binary structure was then optimized taking account of sample space of class-to-class, sample space of inter-class, and unbalance degree. Experimental results show that the proposed method can effectively deal with the unbalanced dataset problem by improving the classification accuracy for close fault severity cases. fault diagnosis; fault severity identification; unbalanced data; binary tree weighted C-support SVM 国家自然科学基金项目(51005247);中国石油大学(北京)科研基金资助(2462015YQ0403;2462014YJRC039) 2015-07-10 修改稿收到日期:2015-10-15 段礼祥 男,副教授,1969年10月生 TH17 A 10.13465/j.cnki.jvs.2016.20.0292 故障诊断应用
3 结 论