刘秀丽, 徐小力
(北京信息科技大学 现代测控技术教育部重点实验室,北京 100192)
行星齿轮和轴承被广泛应用于风力发电机组和航空设备中.由于长期工作在变转速和变载荷的环境中,部件容易出现磨损等故障[1],对其开展故障诊断方法研究具有重要意义.
随着机器学习方法的日渐成熟,传统智能诊断方法在故障诊断领域应用广泛.基于机器学习的传统故障诊断方法分为3个步骤:① 通过对信号的降噪和分解等实现对信号的预处理;② 利用特征提取方法获得经处理后的信号的时域、频域和其他特征;③ 将最终提取的特征输入到基于机器学习的分类器中进行训练,利用训练分类器实现对故障类型的识别.在上述步骤中,特征提取方法包括小波变换[1-2]、同步提取变换[3-4]和变分模态分解[5-6]等,其能够二次过滤信号的无用特征,使得所需故障特征更明显.反向传播神经网络[7-8]和支持向量机[9-10]等方法已被应用于故障诊断.虽然传统智能方法具有特征提取操作简单和分类器参数容易调节等特点,最终的诊断识别率可满足大部分场景要求,但其割裂了故障特征提取与诊断识别,在信号特征处理中需要大量的专家经验.
深度学习的目的为模仿人脑的学习方式,构建深层网络模型.其利用大数据训练模型获得数据中隐含的特征,是一种集提取特征与模式识别为一体的智能模型.卷积神经网络(CNN)[11-15]具有特征强大的学习能力和较高的泛化能力,在图像识别领域应用广泛.近几年,一些学者提出将CNN应用于故障诊断领域.李恒等[16]对轴承滚动振动信号进行短时傅里叶变换,得到二维图的时频图样本,再将其分为训练集和测试集放入二维CNN中进行故障诊断;韩涛等[17]提出一种基于多小波变换和CNN的滚动轴承智能复合故障诊断方法,将振动信号进行处理后得到多小波系数分支并利用其构造特征图,输入二维CNN以实现诊断.但上述研究中的CNN对故障信息提取的方式局限在二维形式,对一维时序原始信息的利用有限,影响故障诊断的准确率,并且对信号特征的处理方法仍依赖人工操作,没有充分发挥深度学习模型的优势.Wu等[18]和李东东等[19]将原始一维振动信号直接输入浅层的一维CNN实现故障诊断,但原始振动信号表现出多尺度复杂性和单一尺度的特征提取,无法充分获取故障信息,对故障的特征提取效果不佳,诊断准确率和泛化能力有待提升.
本研究不固定各故障的特征在信号中所占比例和位置,原始振动信号表现出多尺度复杂性,利用特征金字塔网络(FPN)[20]结构对CNN进行改进,构建基于特征金字塔的卷积循环神经网络(CRNN):首先利用CNN框架,结合CNN的卷积层和循环神经网络(RNN)中的长短时记忆(LSTM)层,形成新的CRNN以充分利用CNN对空间域信息和RNN对时域信息的学习能力;然后在每一层中权值共享,减少网络参数;最后利用FPN构建全新特征图,对传感器采集的信号进行特征提取,实现故障诊断.该方法可以同时处理一维原始信号和二维信号,不依赖专家经验和人工提取特征.多尺度的特征提取丰富了诊断信息,更高层级网络结构使得网络的特征学习更有效.
卷积核是构建卷积层的主要部分,其主要目的为提取信息特征.卷积核主要通过稀疏链接和权值共享在输入信息上提取特征,其与输入信息以局部链接的方式进行链接并滑动,滑动时利用权值共享进行计算得到信息特征值:
(1)
(2)
RNN是将时序信息纳入计算范畴的网络,对振动信号具有良好的解析能力.LSTM是循环神经网络中的特种网络,具备良好的时域特征提取特性.借助遗忘门,其可以更快收敛,减小过拟合概率.
LSTM的主要结构如图1所示,包含输入门、输出门和遗忘门,表示为
图1 LSTM结构Fig.1 Structure of LSTM
ft=σ(Wfht-1+Ufxt+bf)
it=σ(Wiht-1+Uixt+bi)
at=tanh(Waht-1+Uaxt+ba)
Ct=Ct-1ft+itat
ot=σ(Woht-1+Uoxt+bo)
ht=ottanhCt-1
(3)
式中:下标t表示第t轮循环;ft为遗忘门;Wf、Wi、Wa和Wo为各门中的隐藏状态权重矩阵的一维分量;Uf、Ui、Ua和Uo为输入数据的权重矩阵的一维分量;xt为特征值;it和at为输入门的两条支路;Ct为细胞状态;ht为隐藏状态,由支路ot和Ct构成.
针对多尺度图像的检测共有如下3种方法[20]:
(1) 利用图像金字塔构建不同尺度的特征金字塔.其缺点是训练时间较长,内存较大,并且网络只对某一个特点的分辨率进行训练,可能会在训练与推理时产生矛盾.
(2) 利用单个高层特征图进行检测.
(3) 利用不同层多尺度的特征图进行检测.该方法没有充分利用低层特征图中的空间信息.
FPN可以弥补目标检测在处理多尺度变化问题时的不足,使得每一层不同尺度的特征图都具有较强的语义信息.FPN可以融合低分辨率但语义信息较强和高分辨率语义信息较弱但空间信息丰富的特征图,且仅增加较少计算量.在以特征金字塔为基础的结构上,其能够对每一层级的特征图分别进行预测.具体结构如图2所示.其中,conv为卷积运算函数,空间分辨率采用2倍采样(2×up),然后利用逐元素相加融合上采样的特征图与相关从下而上的特征图.迭代此过程,直到生成最精细的分辨率特征图.通过附加1×1卷积层来产生最粗糙的分辨率特征图.
图2 FPN结构Fig.2 Structure of FPN
提出一种特征金字塔的CRNN结构,CRNN结合CNN与RNN中的LSTM层,充分利用两种网络对时域特征和空间域特征的强大处理能力,实现对故障特征全方位多尺度特征提取,提高故障诊断的准确率.
CRNN模块的结构如图3所示.其中,Relu为线性整流函数.其由卷积支路和LSTM支路并联构成.卷积支路为卷积层,LSTM支路由LSTM层串联池化层构成.为了配合FPN构建特征图,要求CRNN块的两条支路拥有相同的语义尺寸.由于卷积的运算特性,每经过一层CNN,其实际语义强度增加(颜色渐深)同时,语义信息尺寸相应减小.而LSTM算法经过多轮运算后仍保持与原数据相同的语义尺寸,如图4所示.因此,在LSTM支路中串联池化层以达到改变实际语义尺寸输出的目的.
图3 CRNN块结构Fig.3 Structure of CRNN
图4 CNN和LSTM的语义变化Fig.4 Semantic map of CNN and LSTM
在设定实际参数时,将LSTM支路池化层的池化窗口参数与卷积支路卷积核参数设为相同,可以保证两支路输出的语义信息尺寸相等.将两支路特征进行并联运算:
Y2=UY2+VH+B
(4)
式中:Y2为并行运算的输出;U和V分别为LSTM和卷积两支路的合并权重;Y2为CNN支路输出的一维展开;H为多轮LSTM支路输出的集合;B为偏执项.将Y2代入最大池化层后得到CRNN块的输出矩阵F.
利用特征金字塔构建特征图可以在几乎不增加预算量的前提下增强特征图的数量和质量.在利用传统网络进行故障诊断时,只有最后一层网络的输出被纳入分类器的运算输入范畴.而特征金字塔特征提取方法能够使用低层级网络提取的特征,更有效地利用网络的运算资源.
每个CRNN块产生一个F.设共有q个层级的CRNN块,则其输出分别为F1,F2,…,Fq.利用FPN构建特征图的具体实现方法如下:
(5)
式中:Fz为重构后第z层的特征图;Fr为重构前第r层的特征图.重构特征图均包含深层特征语义,其中部分特征图还包含浅层特征语义.
基于FPN的CRNN模型如图5所示.其优点主要有两方面:① 在网络的各个层级同时提取时域信息和空间域信息,使得特征信息更加丰富,有利于提升诊断准确率;② 使用FPN构建特征图,增强各层级故障特征语义的同时节约运算资源,有利于加快故障诊断模型的收敛速度.特征金字塔的构建如图6所示.
图5 特征金字塔CRNN结构Fig.5 CRNN structure based on feature pyramid
图6 特征金字塔构建示意图Fig.6 Construction of feature pyramid
2.3.1构建数据集 将采集到的振动信号分为训练集和测试集.为了取消量纲,加速收敛并增强数据可靠性,对原始振动数据进行归一化处理:
(6)
图7 顺序重叠抽样法Fig.7 Sequential overlapping sampling
CNN具有降维特性,导致每经过一次池化运算,数据量均降低至原数据的1/4,因此要求拆分后的单个数据长度可以被22n整除.其中,n为池化层层数,且数据长度大于一个转动周期内所采集数据的长度,即
L≥60f/N
其中:L为抽取数据长度;f为采样频率;N为转速.
将一维信号堆叠为二维信号,以满足在减少对原始信号改动的同时,在两支路分别输入二维信号和一维信号.该方法可逆,将堆叠后的信号重新展开为一维信号即可还原信号.在卷积支路中使用堆叠后的二维信号,在LSTM支路中使用一维信号.堆叠方法如图8所示.其中,一维信号长度为mna;二维信号长度为m,宽度为na.
图8 信号堆叠法Fig.8 Signal stacking method
2.3.2网络训练 构建如图9所示的网络结构并初始化网络参数.各支路的具体参数包括:卷积核的宽度Wk、高度Hk、数量Kk和步长Sk;LSTM隐藏层数、LSTM细胞隐藏向量维度Dl和循环次数Kl;池化层窗口宽度Wp、高度Hp和步长Sp;全连接层隐藏层细胞数量以及分类器分类数量.为保证语义信息尺寸一致性,令Wk=Wp、Hk=Hp、Sk=Sp;为保证LSTM中间支路隐藏状态作为特征输出,设
图9 基于特征金字塔CRNN的故障诊断流程Fig.9 Fault diagnosis flow based on feature pyramid CRNN
定Dl等于输入信号单元素的维度; 为保证两支路输出特征数量相等,令Kk=Kl.学习率采用指数衰减法,初始设为0.02,衰减系数设为0.90.共进行80次训练,每次输入10个从数据集中随机抽取的样本.编译语言为Python,模型运行框架为Keras+Sklearn,硬件环境为Intel Core i5 2.5 GHz+Inter Iris Plus Graphics 655.对网络输入训练集样本进行训练.
2.3.3网络测试 网络经多次反向传播更新后,得到最优参数,并输出故障类型和诊断准确率.使用t-分布随机近邻嵌入(t-SNE)可视化网络内部对特征的学习效果.具体流程如图9所示.
行星齿轮箱故障数据由试验台(见图10)测得.电机、扭矩仪、行星齿轮箱和磁粉制动器通过联轴器相互联结实现传动.行星齿轮箱两侧的扭矩仪对行星齿轮箱的输入轴和输出轴施加径向载荷,磁粉制动器施加轴向载荷.行星齿轮箱参数如表1所示.
图10 行星齿轮箱试验台Fig.10 Planetary gearbox test bed
表1 行星齿轮箱基本参数Tab.1 Parameters of planetary gearbox
在行星齿轮箱中放置三向加速度传感器,用以收集纵向振动信号构建试验数据集.利用替换故障件的方法模拟行星齿轮箱故障.采样频率设为 20.48 kHz,电机转速为 1 980 r/min.每组采集到的振动信号点为 3 276 750 个,样本分割窗尺寸设为 1 024 个点.采用顺序重叠抽样法,共生成 4 000 个样本.其中,训练集样本 3 200 个,测试集样本800个.数据集基本信息如表2所示.模型分类器的神经元个数与故障标签数相同.图11为采集信号时域图示例.
表2 行星齿轮箱故障数据集信息Tab.2 Data information of planetary gearbox fault
图11 采集时域信号示例Fig.11 Signal acquisition of time domain
从采集到的振动信号中抽取每种工况的样本信号,约80%作为训练集,约20%作为测试集.抽取信号的步长设为40.选取所抽取样本信号的每个样本堆叠为24×128 的二维样本.使用该信号组进行诊断,网络参数设定如表3所示.
表3 网络参数设定Tab.3 Parameters of network
将预处理后的数据代入设定好的网络中,每迭代200轮计算一次故障诊断准确率(ε),所得曲线如图12所示.学习率设为0.001,经过约 6 000 轮迭代后,学习率设为 0.000 1,网络的准确率得以收敛.
图12 诊断准确率曲线Fig.12 Diagnostic accuracy
在此基础上对网络诊断结果进行K折交叉验证.K折交叉验证是评估模型性能的重要验证方法:将数据集随机划分为K组,选择其中一组作为输入数据进行测试,其余组依次进行测试,并重复若干次划分.为实现K折交叉验证,试验数据总量需要大于单次试验所需最小数据量的K倍.设置K=5,通过调整步长获得更多数据.验证结果如表4所示.可知准确率的最大值为100%,平均值为99.20%,表明网络训练没有过拟合或欠拟合.
表4 网络5折交叉验证准确率Tab.4 50% cross validation accuracy of network
基于特征金字塔的CRNN对试验台的故障诊断准确率较高,为验证其对其他实验数据的泛用性,利用凯斯西储大学的滚动轴承数据集进行泛用性验证,轴承试验台如图13所示.其中,轴承转速为 1 750 r/min,采样频率为12 kHz.轴承故障数据集基本信息如表5所示.对该数据集的诊断结果做5折交叉验证,诊断准确率结果如图14所示.
图13 凯斯西储大学轴承试验台Fig.13 Bearing test bed of Case Western Reserve University
图14 凯斯西储大学数据诊断准确率Fig.14 Data diagnosis accuracy rate of Case Western Reserve University
表5 轴承状态数据信息Tab.5 Data information of bearing status
根据验证结果可知,在该滚动轴承的数据集上,基于特征金字塔的CRNN能很好地实现故障诊断,准确率可达99.5%以上.
利用行星齿轮箱试验台数据对传统模型进行故障诊断对比验证,以验证基于特征金字塔的CRNN在故障诊断方面的优势.分别对DNN、CNN和LSTM进行5折交叉验证,重复3次,结果如表6所示.其中,DNN结构为1层输入层、3层隐藏层和1层输出层;CNN结构为3层卷积层、3层池化层和1层输出层;LSTM包括 3 072 个细胞,重复训练64轮.
表6 DNN、CNN和LSTM诊断准确率Tab.6 Diagnostic accuracy of DNN, CNN, and LSTM
计算得到DNN、CNN和LSTM故障诊断准确率的平均值分别为62.66%、86.50%和95.63%.可知,传统DNN的诊断效果最差,LSTM因为针对时域信息更加有效,所以比CNN诊断准确率更高.基于特征金字塔的CRNN的诊断准确率平均值则比LSTM高3.62%,证明该方法具有优越性.
t-SNE方法具有可视化效果好、低维数据的分布和原始数据特征空间分布重合度高等特点.对完成训练的特征金字塔CRNN中卷积池化层和全连接层的输出特征进行t-SNE降维可视化分析,如图15所示.在图15(a)中,由卷积池化层提取的特征,经过降维后具有良好的聚类效果.在图15(b)中,经过特征金字塔和全连接层筛选后,不同故障类别的特征得到了较好的分类效果,验证了该方法提取目标域故障特征的有效性.
图15 行星齿轮箱试验台数据集t-SNE分析Fig.15 t-SNE analysis of data set of planetary gearbox test bench
(1) 利用CNN和LSTM,特征金字塔CRNN可以同时使用一维和二维信号并行提取信号特征,并使用特征金字塔进行特征构建,实现在较小网络层级和较低系统内存占用前提下的训练和故障诊断.
(2) 利用基于特征金字塔CRNN故障诊断方法对振动信号进行诊断,仅对振动峰值时域信号进行简单归一化和堆叠,简化了人工信号优化流程.该方法可以很好地实现对振动信号的识别和分类,经行星齿轮箱故障数据集测试,得到的诊断准确率平均值为99.20%.
(3) 使用凯斯西储大学数据集验证了基于特征金字塔CRNN对振动信号诊断的泛用性,利用t-SNE对所提方法的网络中全连接层故障特征进行了降维和可视化,验证了该方法提取目标域故障特征的有效性.