基于PCA-FastICA的故障信号分离识别方法

2021-04-09 06:25王红军彭宝营
关键词:协方差降维特征值

张 翔,王红军,2,3,彭宝营,2

(1.北京信息科技大学 机电工程学院,北京 100192;2.高端装备智能感知与控制北京市国际科技合作基地,北京 100192;3.北京信息科技大学 现代测控技术教育部重点实验室,北京 100192)

0 引言

随着近年来现代技术的快速发展,对设备健康管理的要求也越来越高,但在燃气轮机转子系统领域,过程检测与故障诊断难度高一直是制约该行业快速发展的重要影响因素。转子系统在正常运行时,振动信号会包含多种成分,包括大量的零件摩擦、设备振动等噪声信号。当设备发生故障时,其振动信号的成分也会随之发生改变,而获取已经发生变化的振动信号中的故障成分相当困难。因此,如何在最短的时间内准确地分析识别出故障的主要成分成为备受关注的研究课题。

独立成分分析(independent component analysis,ICA)[1]是一种包含高阶统计特性的非线性相关的成分分析方法,该方法能分离出振动信号中的有效成分。He 等[2]提出在ICA分解原始数据之前利用字符串匹配的原理,实现提取信号主成分;Han等[3]采用PCA原理对图像进行二阶相关分析和像素降维处理,再通过ICA算法分解原始数据主要成分;Cui[4]等提出经验模态分解(EMD)算法与ICA联合的方法,通过EMD分解信号获取模态分量,再利用ICA提取主成分还原信号,但因为EMD存在模态混叠及端点效应等问题,最终结果不是很理想;NUCERA[5]等提出采用变分模态分解(VMD)算法与ICA相结合,成功提取故障信号的模态分量,但该方法过于依赖多参数设定,也未达到理想效果;Wang等[6]将PCA 和多尺度分散熵(MDE)结合,提取部分故障信号的主成分,采用超球面多类支持向量机进行分类识别;Yu等[7]提出利用样本向量的加权和迭代更新的权向量之间的关系,简化了迭代过程,不需要计算协方差矩阵;Wan等[8]利用PCA对参数矩阵进行降维优化以消除冗余信息,将优化的低维特征矩阵应用于支持向量机进行分类训练;Li等[9]利用PCA提取原始数据的特征向量,再采用二叉树与SVM结合的多分类算法,实现振动传感器运行故障的诊断。

从现有研究可知,ICA应用在低维数据结构中有明显优势[1],然而数据维度一旦超过某一界限[10],以上方法便很难获取振动信号的有效主成分。而PCA原理的数据降维刚好弥补了ICA的缺点。但传统PCA在求解协方差矩阵,特别是在计算较大维度的矩阵时会存在大量的舍入误差。基于此,本文采用改进的PCA算法对原始数据降维处理,再将处理过的低维数据经ICA优化分离,获得故障数据主成分。

1 主成分分析

主成分分析(principal component analysis,PCA)[7]利用线性映射变换,将输入的原始数据中众多相关变量压缩融合为少量互不相关的综合指标(其变量数目远小于原始变量数目),从多维数据矩阵中获取主要信息,生成含有尽可能多主要特征的低维矩阵,简化复杂的问题[11]。

PCA的基础(x,y)方程为

(1)

式中:系数αi=(αi1,αi2,…,αim)T(i=1,2,…,k)为协方差矩阵C中降序排列的第i个特征值λi对应的特征向量,且αi满足

(2)

协方差矩阵C为

(3)

式中:cov(xi,xj)=E[(xi-E(xi))(xj-E(xi))T];A为方程组的特征矩阵。

计算特征值的贡献率c,根据累计贡献率s来确定m个主成分[12]。其中,特征值的贡献率为

(4)

累计贡献率为

(5)

式中n和m为矩阵维度。

2 PCA的缺陷特征优化

传统PCA计算需要用到特征值,而且需要计算协方差矩阵C。当原始数据维数较大时,协方差矩阵的计算量很大[13],且协方差计算时存在舍入误差。奇异值分解[14](singular value decomposition,SVD)因无需计算协方差矩阵,可以避免舍入误差,且信号的重构误差较传统PCA算法小。鉴于此,用奇异值分解的PCA计算方法,避免了协方差矩阵计算时的舍入误差,减少了计算量。式(3)中的矩阵A由Hankel矩阵[15]生成,其中Hankel矩阵通过矩阵转换,将一维零均值的离散值a=[a(1)a(2)…a(N)]按照结构要求生成相应矩阵。对任意实矩阵,其奇异值分解表示为

A=UΣVT

(6)

式中:U=(u1,u2,…,um)为左奇异矩阵;V=(v1,v2,…,vn)为右奇异矩阵,且都属于正交矩阵;Σ=diag(σ1,σ2,…,σr)为对角矩阵,且内部奇异值按照由大到小的顺序排列,其中r的大小等于min(m,n)。

构造对称矩阵AAT(m×m),特征值分解形式为

(7)

式中:Q为正交矩阵;λ为特征值。将式(6)代入AAT中,则

AAT=UΣVT(UΣVT)T=UΣVTVΣTUT

(8)

将式(8)进一步简化为

AAT=UΣΣTUT

(9)

不难发现

(10)

继续推导可得

(11)

从式(7)与式(11)中,可得到

(12)

式中i=1,2,…,m。

综合以上理论分析可以得出:矩阵AAT的特征值是矩阵A奇异值的平方,A的左奇异向量是AAT的特征向量,而A的右奇异向量是ATA的特征向量。

3 改进的PCA-FastICA算法

本文提出的改进PCA-FastICA算法步骤如下:

1) 原始信号PCA降维。首先将信号用PCA做降维处理,得到降维后的低维信号x,保留主要成分,然后用奇异值分解求得特征值和对应的特征向量。

2) 归一化。将低维信号生成的矩阵中的每一个元素同时减去该矩阵的均值,即做归一化处理,使新生成的矩阵具有零均值特征[16]。

3) 白化。矩阵经过归一化处理后,低维x使其各成分不相关且有单位方差,即白化为新向量x′,矩阵AAT的特征值是矩阵A奇异值的平方,A的左奇异向量是AAT的特征向量,此处代替原有的特征值及其向量。

4) 迭代。设置迭代的最大次数,收敛的门限,设置迭代次数p[17]。

5) 设定初始权向量:

wp←E[zg(wpTz)]-E[g′(wpTz)]wp

(13)

(14)

逐次正交化

(15)

PCA-FastICA信号分离识别算法流程如图1所示。

图1 PCA-ICA流程

4 实验分析

本文实验采用某型号转子试验台。振动传感器放置在高压涡轮的机匣外前侧位置,采样频率为2 000 Hz,转速采取由慢速逐渐累加3次的模式进行,转速初始设置为2 000 rad/s,累加到2 500 rad/s、3 000 rad/s,稳定运行5~10 min,观察运行状况并采集数据。

通过传感器测量收集振动传感器在不同时刻不同状态下的振动信号,并根据本文方法进行特征的提取和数据降维,导入到ICA算法里实现信号的成分分离。实验中得到的原始信号时域、频谱图如图2所示。

从图2可以看出,频谱中信号混杂,包含随机噪声等众多频率成分,但不难看出频谱图中幅值变化异样明显。由于原始信号的高维特性,主成分提取困难。现利用改进PCA算法对信号降维,降低部分噪声干扰,在保留足够主要成分的前提下,减少FastICA算法运算的复杂度及计算量,降维结果如图3所示。

图2原始振动信号

图3 PCA降维处理结果

从图3可以看出,原始振动信号经过PCA降维处理后维度明显降低,频谱图能更清晰地看出振动信号的细微纹理。

将降维后的数据导入改进的FastICA算法中进行成分分离,低维信号分离出3个成分,获得的各成分数据的时域图、频谱图如图4、5所示。

从图4中基本无法看出振动信号的有效波动特性,而图5中可以看出明显的相对变化幅度,其在150 Hz和500 Hz附近出现幅值高峰,表明这两个位置均出现不同程度的故障。

图6为普通PCA-FastICA处理的结果,可明显看出第1分量上相对变化不显著,虽然在第2、第3分量上相对变化较大,但已经失去较多的信息。

分别选取图5(b)和图5(c),图6(b)和图6(c)绘制散点图,结果如图7、8所示。从图中可以明显看出,本文方法点集较为集中,故障识别率较高,而普通PCA-FastICA方法的点集呈现长条状,故障识别率较低。

图4 PCA—ICA分量时频图

图5 PCA—ICA分量频谱图

实验证明,在高维数据样本中,本文方法运算速度更快,故障特征提取效果更好,频谱图更能表现故障特征现象,峰值明显,噪声控制更好,这是因为本文方法在计算中避免了大量的舍入误差,能更好地展现分离结果,从而有效识别故障。

图6 普通PCA—ICA频谱图

图7 PCA—ICA散点图

图8 普通PCA—ICA散点图

5 结束语

本文分析了PCA中协方差矩阵与奇异值分解之间的关系,利用这种关系避免了协方差矩阵运算时出现的大量舍入误差现象,减少了PCA算法的计算量,降维后的数据保留更多的特征向量,使FastICA分解算法更有效地分离原始信号主成分,改善了分析故障状态的有效性,提高了模型运算速度,提升了故障识别率,为进一步分析转子系统的故障机理特征提供了有效的方法。

猜你喜欢
协方差降维特征值
混动成为降维打击的实力 东风风神皓极
基于数据降维与聚类的车联网数据分析应用
单圈图关联矩阵的特征值
一种改进的网格剖分协方差交集融合算法∗
大气腐蚀数据降维最优维度研究
降维打击
伴随矩阵的性质及在解题中的应用
求矩阵特征值的一个简单方法
二维随机变量边缘分布函数的教学探索
基于关节信息和极限学习机的人体动作识别