粒子群优化融合随机森林的电机故障诊断方法

2019-10-31 03:41:14王训训刘正杰丁恩杰
微特电机 2019年10期
关键词:决策树适应度粒子

王训训,陈 天,刘正杰,俞 啸,丁恩杰

(中国矿业大学 物联网(感知矿山)研究中心, 徐州 221000)

0 引 言

作为机械生产设备的动力源泉,电机设备有着越来越重要的作用。电机需要经常在复杂环境下高速运转,因此电机的诸多子部件容易发生失效。一旦电机部件发生损坏,势必会影响正常生产和人的生命安全。近年来,随着机器学习的高速发展,我们对电机故障的诊断不仅仅局限于传统的人为经验,高精度的故障诊断方法层出不穷。

传统的人为判断电机故障主要靠看、听、闻、摸,这样会导致诊断不及时以及效率低下[1]。随着数据挖掘以及机器学习方法的发展,数据驱动的电机故障诊断越来越受到重视。电机故障诊断有如下步骤:首先对提取到的样本信号(包括温度、电流、振动信号等,本文主要讨论振动信号)进行信号处理,主要对传感器采集的振动信号提取其故障特征;接着需要对处理过的信号进行特征筛选,筛选出对故障敏感的特征信息;筛选出的特征一般为维度较高的故障特征,无法直接对其进行模式识别,因此需要对故障特征进行降维操作;最后将低维的故障特征导入分类器模型,用来进行状态模式识别[2]。

电机故障诊断的方法有很多,本文对随机森林故障模式识别算法进行优化,并讨论了一种新的特征筛选算法对电机振动信号特征进行敏感度筛选。

1 粒子群优化算法

粒子群优化(以下简称PSO)是由Eberhart和Kennedy提出的,他们受鸟群体性活动的启发,通过每个单独个体的合作来找到最优化的解。PSO因为其优越的性能成为一种广泛使用的优化算法。PSO优化分为局部最优化和全局最优化。

PSO中粒子选取一个适应度值用来表示问题的可能解,而适应度值取决于适应度函数。PSO寻找最优解的策略:PSO中粒子的移动速度决定其距离和方向,并且粒子移动速度根据移动经验进行动态的选择[3]。PSO算法的步骤如下:(1)随机选取若干粒子,用适应度值对选取的粒子进行优劣程度初始化;(2)通过局部最优pbest和全局最优gbest的值,让初始化的粒子在解空间中寻找新的坐标;(3)根据更新后的粒子坐标计算适应度值,在此值的基础上重新计算pbest和gbest的坐标。

设有一个种群Y=(Y1,Y2,…,Ym),该种群包括m个粒子。种群Y在搜索空间中进行更新,更新公式如下:

(1)

(2)

式中:Yid和Vid分别为粒子i在搜索空间中的位置和速度信息;k表示当前迭代次数;Pid和Pgd分别为个体极值和种群的全局极值;ω为惯性权重;c1,c2为非负加速度因子;r1,r2的取值范围为[0,1],为随机数。在本文中,为了防止粒子在空间中任意移动,将粒子的速度限定在规定的确定区间内。

2 随机森林算法以及PSO_RF算法流程

2.1 BootStrap法重采样

假设有m个样本{y1,y2,…,ym},记为集合Q。Q集合中有放回的进行m次抽取,每次抽取一个样本。其中Q含有m个样本。m次抽取的样本组成一个新的集合,则新的集合中不包含Q中某个样本的概率:

(3)

当m→时,有:

(4)

由上可知,新的集合含有和Q集合相同的样本总数m,而且新的集合中含有重复样本。若去除重复样本,新集合则大概含有原集合的63.2%样本。

2.2 随机森林算法流程

根据BootStrap方法延伸出随机森林(以下简称RF)算法,RF算法可以产生多个训练集,其在生成决策树时,随机地抽取分离属性集。具体的RF算法如下:

1) 采用重采样方法,随机产生N个训练集,记为S={S1,S2,…,SN};

2) 分别选择S集合中的N个训练集,在每个训练集上生成对应的决策树,记为C={C1,C2,…,CN},在每个内部节点选择属性前,首先需要根据节点选择对应的分裂集,并选择最好的分类方式;

3) 为了得到更好的分类效果,需要使每棵树充分生长,而不对其进行剪枝操作;

4) 根据得到的决策树在测试集上测试分类效果;

5) 运用投票方式,测试集所属类别即为决策树中输出最多的类别。

2.3 PSO_RF算法

RF算法具有大量的参数,并且对不同的训练样本集没有固定的参数选择规则。为了解决这一问题,本文采用PSO算法加权优化RF模型(PSO_RF),以达到对RF的参数(如剪枝阈值、预测试样本数、决策树数量等)最优化处理。PSO_RF算法能够快速地筛选出最优解,避免了参数通过经验选取,既能选出最优解,又节省了大量时间[4]。PSO_RF算法步骤如下:

① 根据经验随机确定算法的参数作为PSO_RF算法的初始参数;

② 根据重采样算法,在数据集随机选取l个子训练集,并在这l个子训练集上随机选择x个预测试样本,决策树则根据l个子训练集剩余的(l-x)个样本而生成;

③ 生成所有决策树后,测试每棵决策树上的结果,并计算相应的权值;

④ 计算初始参数下总的模型分类结果;

⑤ 将上述分类结果作为适应度值,采用PSO算法对初始参数进行迭代优化,并与历史分类结果进行对比,最终选出最优的模型参数。

3 基于ARI和RFFI的特征选择方法

调整兰德指数(以下简称ARI)是由兰德指数(以下简称RI)改进得到的新的评价指标。对于给定的样本集合X={x1,x2,…,xn},集合Z表示真实的类,而集合G表示经过K均值算法得到的类[5]。因此ARI的定义:

(5)

式中:a表示X同属G和Z的数目;b表示X属于Z但不属于G的数目;c表示X属于G但不属于Z的数目;d表示X既不属于Z也不属于G的数目。

由上述公式可得,ARI的取值范围为-1~1。ARI的取值越小,表示聚类结果和真实情况差距越大,因此ARI值衡量的是两类数据的拟合度。

随机森林特征重要性指数(以下简称RFFI)能够计算每个特征在所有特征变量中的重要性。RFFI的主要原理是计算每个特征变量在RF的每棵树上有多大的贡献,然后取平均值RFFIave,RFFIave即表示不同特征之间对样本分类结果贡献大小[6]。RFFI选择基尼指数和袋外数据错误率作为贡献度的评价指标。RFFI值越大,表示该特征重要程度越高。

为了达到对样本集更好的特征提取,本文提出一种ARI和RFFI融合的特征提取方法(ARP)。首先根据K均值聚类算法对每种特征分析,计算出反映类间拟合度的ARI值;然后计算每类特征在电机不同的运行状态下的RFFI来描述特征之间的重要程度。对于每类统计特征,ARI值越低,其类间偏离度越大,而RFFI的值越高,其特征重要性越大。因此,提出利用ARI归一化值(归一化区间为0~1)与RFFI的乘积(ARP)来选择故障状态敏感统计特征。计算特征ARP值的主要步骤有:

a) 若某一样本集电机故障种类数为N,且每类故障都含有P类振动样本信号,每个样本共有K类统计特征。设故障的原始特征集CS={CS1,CS2,…,CSk},且CSk:

(6)

接着利用K均值聚类算法,计算其ARI指数以评估聚类程度。对原始特征集CS采取聚类分析,能够得到相应的ARI值。

ARI={ARI(1),ARI(2),…,ARI(k)}

(7)

最后需要对ARI序列进行归一化,归一化范围为0~1,记为ARInor。

b) 计算相同电机状态样本信号的第k种特征的RFFI值,即矩阵CSk的随机森林特征重要性。其中:

RFFIave=∑(errOBB2-errOBB1)/Ntree

(8)

RFFIave用来表示数据集各个特征的重要性,其值越大,表明该特征对数据集的影响越大。

c) 获得ARP序列,其定义为ARInor和RFFIave的乘积:

ARP=ARInor·RFFIave

(9)

对ARP采取降序排列,因此ARP的值越大,对应的统计特征故障状态越敏感。

综上,总的算法流程如图1所示。

图1 算法流程图

4 实验结果与分析

本文的振动信号数据集来源于2017年度国家重点研发计划“矿山安全生产物联网关键技术与装备研发”项目。该数据集共有8种工作状态(1种正常状态和7种故障状态),图2为电机各个运行状态的振动波形。

(a) 电机内置转子弓形

(b) 电机内置破损转子条

(c) 电机内置故障轴承

(d) 电机内置不对中系

(e) 电机内置转子不平衡

(f) 电机定子绕组故障

(g) 电机电压不平衡和单相

(h) 电机正常

为了证明本文方法的优势,分别选取PSO_RF、RF、K最近邻、支持向量机和决策树5种故障状态识别方法对数据集进行训练、预测。在此之前,先将振动信号经经验模态分解和局部线性判别分析降维,得到全部的特征信息,暂不进行特征选取。如表1所示,其中:PSO_RF方法在同工况和变工况条件下识别准确率分别为95.625%和66.25%,要普遍优于其他方法。

表1 5种方法识别准确率对比

表1表示的是全部特征信息的识别准确率,但是并非是特征越多越好,应该是筛选统计特征状态敏感度好的特征信息特征进行训练、预测,摒弃统计特征敏感度差的特征信息,以免造成信息冗余。采用本文的ARP特征选择方法进行敏感特征筛选,模式识别方法采用PSO_RF,测试得到的精度如表2所示。由表2可以看出,当采用ARP做特征选取时,同工况精度达到了99.4%,而变工况精度达到了70.3%,在精度方面有了明显的提升。

表2 特征选择前后识别准确率对比

5 结 语

为了更好地对电机的8种运行状态进行敏感特征提取,本文提出ARI和RF特征重要性方法相结合的特征选择方法(ARP)来筛选敏感特征。同时为了能够提高识别精度并减少模型训练时间,本文采用PSO优化算法优化RF算法(PSO_RF)。实验表明,PSO_RF和ARP结合的电机故障诊断方法对8种工作状态同工况的识别准确率达到99.37%,而变工况的识别准确率达到70.31%。本文的方法能够精确有效地识别出电机的故障状态,对实际的工程具有现实意义。

猜你喜欢
决策树适应度粒子
改进的自适应复制、交叉和突变遗传算法
计算机仿真(2022年8期)2022-09-28 09:53:02
一种针对不均衡数据集的SVM决策树算法
基于粒子群优化的桥式起重机模糊PID控制
测控技术(2018年10期)2018-11-25 09:35:54
决策树和随机森林方法在管理决策中的应用
电子制作(2018年16期)2018-09-26 03:27:06
基于粒子群优化极点配置的空燃比输出反馈控制
基于决策树的出租车乘客出行目的识别
基于空调导风板成型工艺的Kriging模型适应度研究
中国塑料(2016年11期)2016-04-16 05:26:02
基于肺癌CT的决策树模型在肺癌诊断中的应用
基于Matlab的α粒子的散射实验模拟
物理与工程(2014年4期)2014-02-27 11:23:08
基于两粒子纠缠态隐形传送四粒子GHZ态