栈式自编码器在强噪声环境下的轴承故障诊断*
2021-03-01段敏霞董增寿
段敏霞,刘 鑫,董增寿,庞 俊
(太原科技大学电子信息工程学院,太原 030024)
0 引言
轴承是机械设备的重要零部件之一[1],轴承的损坏会造成巨大的经济损失甚至危及人类生命。因此轴承的故障诊断是十分必要的。由于滚动轴承的工作环境复杂,所采集的信号中通常含有大量噪声[2],因此需要对信号进行去噪处理来提高后期故障诊断的准确率。
在滚动轴承的故障诊断中,特征提取是重要一步,对诊断结果具有较大的影响,已有不少学者对这一过程进行了研究。文献[3]采用基于波形匹配延拓的改进经验模态分解(EMD)对轴承数据进行分解,得到各本征模函数(Intrinsic Mode Function, IMFs)分量,选取各IMF分量的能量信息作为特征,将其输入到粒子群算法(PSO)优化的支持向量机(SVM)中进行故障诊断,得到了95.2%的分类准确率。文献[2]对轴承数据采用EMD进行分解,对前几阶的IMF分量构造Hankel矩阵, 获取的奇异值能够表达滚动轴承的运行状态,通过堆叠稀疏自动编码器进行分类,得到了较好的分类结果。文献[4]采用卷积神经网络算法结合SVM分类器用于滚动轴承的故障诊断。并达到了99%的分类识别率。以上方法虽然达到了较高了故障诊断精度,但都是基于纯净数据下的故障诊断,如果轴承数据中有用信号被噪声淹没,以上方法就很难达到较高的分类精度。因此急需一种能够在强噪声背景下的故障诊断模型。
文献[1]提出了一种基于小波包特征提取、自编码器(AE)特征选择和PSO优化SVM特征分类的轴承故障自动诊断方法,在信噪为-10db时达到了94.34的分类精度。文献[5]提出了一种基于混沌同步系统的降噪方法, 将其应用于滚动轴承振动信号的前期处理, 并结合功率谱密度进行故障诊断。文献[6]鉴于在复杂工况和强背景噪声环境下,提出了一种改进经验小波变换的方法,能有效地分离出机车轴承损伤故障的特征。以上这些方法虽然是基于噪声环境下的轴承故障诊断,但并未达到很高的分类精度,尤其是噪声较大时,分类精度更低。为了提高在强噪声背景下的诊断精度,提出了改进小波阈值函数与栈式自编码器(SAE)相结合的诊断模型。该模型在强噪声背景下可以提取出轴承损伤故障的特征,并达到较高的分类精度。
1 小波阈值去噪
传统的小波阈值函数有硬阈值函数和软阈值函数[7],硬阈值函数简单而不连续,很容易引起重构信号的振荡。虽然软阈值函数是连续的,但是会丧失信号的某些特征[8]。为了提高噪音抑制的性能。本文提出了一种改进的新阈值函数,它连续且不存在偏差。
1.1 传统阈值函数
(1)硬阈值函数
当小波系数处于阈值范围之内,小波系数置0,当处于阈值范围之外,小波系数不变[9],即
(1)
其中,wλ表示去噪后的小波系数,w表示信号分解后的小波系数,λ表示阈值。
(2)软阈值函数
当小波系数处于阈值范围之内,小波系数置0,当处于阈值范围之外则减去阈值[10],即
(2)
sign(·)表示符号函数。
1.2 改进阈值函数
传统的软硬阈值函数存在一定的缺陷,为了解决硬阈值函数不连续,软阈值函数存在一定偏差的问题,提出了一种介于软硬阈值之间的新阈值函数,该阈值函数结合了软硬阈值函数的优点。
(3)
(4)
1.3 阈值的选取
阈值的选取对信号的去噪结果具有较大的影响,阈值过大会导致有用的信号被滤除掉,阈值过小会导致信号中的噪声滤除不干净。
Donoho D L等提出的一种固定阈值用于传统阈值函数的去噪[11]:
(5)
传统的固定阈值在不同分解层上的阈值均一致,这不符合噪声的分布规律,噪声系数大多分布在高频小波系数中,随着分解层数的增加,噪声的小波系数会逐渐变小,针对传统固定阈值的不足,本文提出了一种改进的阈值:
(6)
其中,j为小波的分解层数。β为控制因子。随着分解层数的增加,阈值会逐渐减小。
2 SAE基本原理及流程
2.1 SAE基本原理
AE包含编码过程和解码过程。编码过程是将高维数据变成更低维度的数据,解码过程可以看作是编码网络的逆过程,是将编码器的低维数据经过升维重构得到原始的输入数据,其目的就是使输出数据和输入数据的差距最小。表示编码所得的低维数据是可以得到原始输入数据的[12]。AE的网络结构如图1所示。
(1)编码过程:高维空间的训练样本集{xm},通过编码器得到隐藏层的输出向量集{hm},通过公式可以表示成如下形式[13]:
hm=f(Wxm+b)
(7)
其中,f表示的是输入层到隐藏层的激活函数,W为权值矩阵,b为偏置向量。
(8)
其中,g表示的是隐藏层到输出层的激活函数,W′为权值矩阵,d为偏置向量。
图1 AE网络结构
(3)损失函数:AE的原理是通过最小化重构误差来优化参数集{W,b},{W′,d},采用均方误差作为AE的损失函数,其表达式如下:
(9)
通过设置迭代次数,使得损失函数达到最小,以得到编码器的输出hm。损失函数越小,表示hm中包含的信息越多,越能够完好的重构出原始数据。以上过程并不需要标签信息,因此AE的训练过程属于无监督训练。
SAE是由多个AE堆叠而成,是深度神经网络中的一种。主要是用来实现深度学习的无监督预训练的,其无监督预训练过程如图2所示。经过深度编码器后,加入SoftMax对故障类型进行分类。在加入分类器之前,网络使用贪心算法来训练网络参数,无需标签,属于无监督训练。加入分类器后,需添加少量标签数据对权重和偏置进行整体微调,以达到更好的分类精度。该网络的每一层都属于浅层网络,可以防止网络陷入局部最优。
图2 SAE结构
2.2 本文算法流程
采用本文所提方法对轴承数据进行故障诊断的具体流程如下:
(1)采用本文的改进阈值函数和阈值对噪声数据做去噪处理;
(2)提取去噪后的轴承数据的小波包能量;
(3)初始化SAE的网络结构;
(4)训练第一层AE,将其隐含层作为第2个AE的输入,并进行同样的训练,直到第n层AE训练完成;
(5)将训练好的n层AE进行堆叠形成SAE,向SAE网络顶层添加输出层SoftMax分类器;
(6)利用样本数据和标签对整个网络进行有监督的微调。
3 利用该方法进行故障诊断
3.1 小波包能量提取
不同于小波分析,小波包在全频率上对信号进行多层分解,提高了信号的频率分辨率[14]。由于系统出现故障时会对各频带信号的能量有较大影响,且不同的故障对各频带内信号的能量影响也不同,根据不同频带内能量的分布情况我们可以诊断出发生故障的类型[15-16]。因此可以对故障信号进行小波包分解得到各频带的小波包能量,以此来进行故障诊断。用小波包分解对故障信号进行能量特征提取的步骤如下:
(1)对故障信号进行小波包分解,选取的小波基为db3,分解层数为4。
(2)分解后每个节点的小波包能量可由式(10)求得:
(10)
3.2 滚动轴承故障诊断实验
3.2.1 数据描述
这项研究的数据来自CWRU[18]。电机轴由试验轴承支承。这些轴承采用电火花加工,轴承的不同直径分别为0.177 8 mm,0.355 6 mm和0.533 4 mm。振动数据是通过安装在带有磁性底座的外壳上的加速度计收集的。加速度计被放置在两个驱动外壳的6点钟位置。利用16通道DAT记录仪采集振动信号,包括滚动体故障、内圈故障和外圈故障三种工况。这些操作条件是用6205-2RS JEM SKM轴承操作的,这是深沟球轴承类型。所有实验均为单负荷(2 HP负荷),转速为1750 r/min。分别从驱动器端(DE)48 kHz采样频率的数据。表1详细列出了这10种轴承的健康状态。
表1 数据集的详细描述
3.2.2 测试结果
设含有噪声的数据为:
f(t)=s(t)+n(t)
(11)
其中,s(t)表示原始数据,n(t)为噪声标准差为σ的高斯白噪声,服从N(0,σ2)。不同类型的10种故障的原始数据和添加噪声标准差为2的高斯白噪声后的数据的时域波形图如图3所示。图中的第一列表示原始数据的波形,可以看出内圈故障,外圈故障和滚动体故障的波形图存在明显差异。图中第二列表示加噪后的波形图,噪声完全淹没了原始的波形。无法分辨出不同类型的故障。噪声的存在使得特征提取变得困难,从而影响了分类结果的准确度。因此有必要在特征提取前去除数据中的噪声。
图3 10种故障状态振动信号和噪声信号的时域波形
为了确定阈值中控制因子β的大小,我们采用信噪比(signal-to-noise ratio, SNR)作为衡量去噪效果的指标,通过取不同的β值,来观察SNR的变化。在纯净信号中加入噪声标准差为0.5的高斯白噪声。取SNR最大时所对应的β值作为本次实验的最终值。如表2所示。因此设置β的值为3.3。
表2 不同β值的SNR
3.2.3 测试结果
为了对比不同方法在强噪声背景下的故障诊断结果。在轴承数据中加入不同噪声标准差的高斯白噪声,各方法的诊断结果如表3所示。可以看出本文所提方法在不同噪声下的诊断精度最高。文献[1]在噪声强度较大时,诊断精度明显降低。含噪的轴承数据不经过小波阈值去噪的诊断结果相对于去噪后的诊断结果较差,可见采用本文改进阈值函数去噪可以提高轴承数据的诊断精度,相对于SVM的诊断结果,采用SAE可以提高诊断精度。这是因为SAE进一步提取了轴承数据的深层特征,提高了诊断精度。与传统的阈值去噪方法相比较,本文的改进阈值函数的去噪效果更佳,诊断结果也更准确。
表3 不同噪声强度下不同方法的诊断准确率
为了观察不同方法的特征提取能力,采用t-SNE将高维数据降为3维,各方法提取特征的散点图如图4所示,可以看出其他6种方法的不同健康状态并未完全分离,部分健康状态的散点仍有交集,说明这6种方法对轴承数据的特征提取能力还有不足,图4g为本文所提方法的散点图,图中同一健康状态的散点都聚集在一起,而不同健康状态的散点都分离开,可见本文方法的特征提取能力较强。
(a) 小波包能量+SVM (b) 小波包能量+SAE
(c) 硬阈值去噪+小波包能量+SAE(d) 软阈值去噪+小波包能量+SAE
(e) 改进阈值去噪+小波包能量+SVM (f) 文献[5]
(g) 改进阈值去噪+小波包能量+SAE(本章所提方法)
4 结论
编码器很难从含有强噪声的振动数据中识别出不同类型的故障,本文提出了一种改进阈值函数和SAE相结合的轴承故障诊断方法,并用CWRU的轴承数据表明该方法在强噪声背景下仍可准确识别多种故障类型。采用改进的阈值函数对故障样本进行去噪,提取去噪后的小波包能量,最大限度保留故障信息,经过SAE后可以实现对噪声轴承数据的准确诊断。
但本文方法仍存在一些不足,SAE搭建过程中,隐藏层数、节点数、初始学习率以及迭代次数等参数的选取至今还没有完整的理论支撑,需要依靠先验知识以及反复实验才能得出,具有较强的主观性,未来需要确定各参数之间的关系以及寻找一个优化模型可以确定各参数的最佳值。