-
在机械领域,航空发动机、大型电机组等重大装备正在朝着高速、高精、高效的方向发展.为保障人身安全,防止事故造成重大经济损失,建立可靠的故障诊断系统十分必要[1].轴承是旋转机械设备必不可少的也是极易出现损伤的部件,对轴承的故障诊断具有重要的经济和社会意义.
随着机器学习的发展,以及工业监测数据的积累,“大数据”时代下传统的故障诊断方法越来越不能满足当今的需求,数据驱动的故障诊断方法越来越受国内外专家、学者们的重视[2].深度学习理论作为模式识别和机器学习领域最新的研究成果,在机器视觉、语音识别、情感分析、语言翻译、个性化推荐等领域取得了优异的成果.卷积神经网络(convolutional neural network,CNN)是深度学习方法中的典型网络,由于其强大的特征提取能力而被广泛应用在图像处理、视频分析、目标检测等场景.
近年来,CNN及其发展的神经网络也越来越多地被应用于故障诊断.文献[3]研究了一种基于CNN和振动信号峭度的故障诊断方法,有效识别了滚动轴承故障.文献[4]提出了一种自适应的一维卷积网络(ACNN-FD)算法,实现了端到端的故障诊断.文献[5]将原始振动信号分别输入1-DCNN和LSTM两个通道,将空间和时间维度上特征信息融合,从而对轴承进行了故障分类.文献[6]提出了一种能处理一维频谱序列的改进的一维DenseNet网络结构.以上方法虽然取得了较好的诊断效果,但其中有些并没有很好地发挥CNN网络强大的特征提取能力,有些转化为二维数据后会损失一些时序信息,而有些网络结构较浅,网络泛化能力以及对小数据集的诊断效果可能并不理想.因此,本文提出一种基于一维密集连接的卷积网络的故障诊断方法,直接输入一维振动数据,通过多层密集连接的卷积网络对故障进行特征提取,实现智能故障诊断.
HTML
-
CNN主要包括输入层、卷积层、池化层、输出层,有以下三大优点:局部感受野、权值共享以及池化[7].一维CNN对于序列数据的特征提取非常重要,比较适用于端到端的轴承故障诊断.
卷积层的主要功能是对输入数据进行特征提取,是CNN的重要组成部分,其内部包含多个卷积核.在前馈运算时,卷积运算将卷积核与输入数据相应位置的对应元素相乘,并按一定的步长扫描完整个输入数据[8].不同卷积核可以学习出不同特征,对应得到多个特征图.一维卷积公式为
池化层:卷积层的主要作用是特征提取,卷积得到的特征图会被传至池化层进行特征选择和过滤,使用pooling技术将卷积后得到的小邻域内的特征点整合得到新的特征,改变卷积层的特征图并降低特征图的维度[9].池化处理一方面可以防止无用参数增加时间复杂度,另一方面也增加了特征的整合度.
-
CNN的发展一般通过层数的加深或者加宽进行.如ResNet[10]网络,通过残差块堆叠加深网络,利用跳跃连接机制减弱网络退化; 如Inception[11]在加宽网络的同时一定程度上解决了梯度消失现象和过拟合现象,而DenseNet[12]通过对特征的复用提出了一种新的结构,不但减缓了梯度消失的现象,参数量也更少. 3个密集块的DenseNnet网络结构如图 1所示,它是采用跨通道的形式来连接的,其公式为
其中xl为第l层的输出,即通过特征在通道上的连接来实现特征复用,提升效率.由于特征复用,最后的分类器使用了低级特征,较标准卷积网络只学习深层特征的诊断效果更好.
-
深层网络模型的参数太多,而训练样本小的情况下训练出来的模型很容易产生过拟合的现象.文献[13]提出了Dropout方法,对解决此问题有较好的效果.其原理为:为了防止过拟合,可以通过在训练过程中随机删掉网络中一半的隐藏神经元,阻止特征检测器的共同作用来提高神经网络的性能.
1.1. CNN
1.2. DenseNet
1.3. Dropout
-
DenseNet网络一般由多个BN+ReLU+Conv的三层结构组成的密集块和由Conv+AvgPooling组成的Transition层两部分组成.但网络过深容易产生过拟合问题,不利于轴承的故障诊断,因此,本文利用不同卷积核大小的卷积层,以密集连接的方式构造密集块.基于一维密集连接卷积网络的故障诊断模型如图 2所示,轴承加速度数据经过预处理输入到模型中,经过深层网络不断地提取特征信息,最终经过分类层输出概率分布,根据概率分布输出故障类型.
本文网络结构各参数如表 1所示.一维数据进入1个卷积层提取浅层信息; 再经过由BN+Tanh+Conv组成的密集块,其中一维卷积层是卷积核大小分别为12×1,6×1和3×1的卷积层,以提取不同尺度的特征,密集连接能够使每一层与前面的层建立连接,从而利用不同层次的特征,充分提取故障信息; 后经过一个BN层、一个一维卷积层和一个最大池化层作为过渡层; 扁平层能够将所提取的特征信息压平以输入到SoftMax分类层.为减小网络过拟合的影响以及提高泛化能力,本文网络加入了Dropout层.已有研究表明Dropout的取值为0.2或0.5时能得到较好的结果[14],取0.5的时候Dropout随机生成的网络结构最多,因此将抛弃率取值设为0.5.
-
实验数据来自美国凯斯西储大学轴承数据[15],轴承型号为SKF6205,1 hp负载,12 kHZ采样频率下的驱动端加速度数据.其中故障类型共9种,包括故障程度分别为0.177 8 mm、0.355 6 mm、0.533 4 mm的滚动体故障、内圈故障和外圈故障,以及1类无故障数据.实验数据集划分如表 2所示,滚动轴承振动数据共10种类型,训练集每类1 750个样本,测试样集每类500个样本,验证集每类1 000个样本.
-
本文训练和测试环境为12核,24G内存,Intel Xeon (Cascade Lake) Platinum 8269处理器.编程环境为keras2.2,tensorflow1.10,python3.6.输入样本长度取为2 048,batchsize为128,训练迭代次数为150.学习率初始值设为0.000 5,采用动态调整策略,每50次衰减为原来的1/5,优化器为Adam.
基于一维密集连接卷积网络故障诊断模型在数据集上的故障分类结果如图 3所示,图 3(a)为该模型在数据集的准确率曲线图,可以看到模型在经过2到3次迭代训练后在验证集上的准确率就达到了97%左右,在迭代20次左右便可稳定在99%以上,而经过150次的迭代后本文模型在验证集上的准确率可达100%. 图 3(b)为模型在测试集上的混淆矩阵,实验结果表明各类均分类正确.
模型的学习能力和其复杂度有关,模型复杂度越高,其学习能力越强.对神经网络来说,提高复杂度一般有两条途径:加深模型和加宽模型.在一定程度上,网络越深特征提取的效果越好. CNN具有强大的特征提取能力,本文的方法选用了多层一维卷积提取深层特征,利用密集连接机制来提高模型的复杂度,并将深层特征与浅层特征进行融合,充分提取故障特征,因此能取得较好的故障诊断结果.
-
机器学习中的评测指标有准确率(Accuracy)、召回率(Recall)、F值(F-Measure)等[16].其中准确率为最常见和直观的评价指标; 召回率能反映模型预测值与真实值的差距,体现算法的鲁棒性; F值综合准确率和召回率,F值较高时说明该方法较为有效.为验证本文方法的有效性,以准确率、召回率、F值为评价指标,在凯斯西储大学轴承数据集上将本文方法与基于以下深度学习的故障诊断方法进行对比:
CNN:该算法结构采用表 1的输入层、卷积层C0、BN层、卷积层C4、池化层、扁平层、Dropout层、输出层.其中卷积层C0由64个卷积核为2×1,步长为3的神经元组成,激活函数为relu; 卷积层C4由32个卷积核为2×1,步长为3的神经元组成,激活函数为relu; 池化层采用最大池化,池化尺寸为4; Dropout层的参数为0.5;最后输出层采用SoftMax对故障进行分类.
LSTM:该算法结构采用表 1的输入层、LSTM层、扁平层、Dropout层、输出层.其中输入层参数与表 1相同,LSTM层单元数设为128,激活函数为tanh; Dropout层的参数为0.5;最后输出层采用参数为SoftMax的全连接层对故障进行分类.
ResNet:该算法结构采用图 2的结构,密集块中一维卷积层和BN层参数不变,将密集连接结构换为skip connection.
不同方法的诊断结果如表 3所示,由于CNN网络较浅,训练时间以及诊断时间最短,特征提取不理想,准确率仅为82.76%. LSTM诊断准确率在98%以上,但其准确率很大程度上与LSTM的单元数取值有关,单元数大,虽然诊断结果更好但训练代价过大,诊断时间也较长. ResNet和本文模型的准确率最为接近,达到了99.7%,从训练时间上看两者差异不大,但由于本文模型利用密集连接机制将各层不同层次特征信息融合,准确率较高一些.
为避免实验偶然性,本文将以上4种方法进行多次训练,5次训练准确率如图 4所示,5次训练准确率差别不大,LSTM和CNN的准确率明显劣于ResNet和本文方法,ResNet和本文方法的准确率差别并不明显.从5次实验数据实验准确率均值看,ResNet的平均准确率为99.8%,而本文方法的平均准确率为99.9%,只有少量错误.两种方法在准确率上的差异较小,但本文方法只构造了一组密集块和过渡层,从整体上来看本文方法的诊断效果稍好一些.
为了直观地看出模型分类结果的优劣,对模型特征提取情况进行可视化.利用t-SNE算法将多维向量降到二维,将最后一层降维可视化,不同算法最后一层t-SNE可视化结果如图 5所示,10种颜色代表 10种类别的数据,图 5(a)中有3个类别混杂在一起,而图 5(b)中蓝色和绿色混杂,图 5(c)中有个别几个数据分类错误,而图 5(d)中分类完全正确.
-
高铁轮对轴承故障实验数据,轴承型号为FAG F-80781109 TAROL 130/240-B-TVP,采样频率为51.2kHZ,采样时间为60 s,高铁轮对轴承实验台如图 6所示.对轴承加工尺寸为长5 mm,宽1 mm,深0.7 mm的故障,故障类型包括外圈故障、内圈故障和无故障轴承数据.测试工况包括定转速1 200 r/min,1 500 r/min,1 800 r/min,2 100 r/min 4种.每类工况下的3种状态共12类,并分别标记为0~11.对数据集进行划分,训练集每类3 500个样本,测试样集每类600个样本,验证集每类1 200个,高铁轮对轴承数据集如表 4所示.数据集中1 200 r/min和2 100 r/min下的无故障、内圈故障和外圈故障的部分数据如图 7所示.
不同方法在高铁轮对轴承数据集上的故障诊断效果如表 5所示,从表 5中可以看到,比起其他故障诊断方法,本文所提方法准确率更高,效果更好.高铁轮对轴承实验结果如图 8所示,其中图 8(a)为模型在高铁轮对轴承数据集上的训练准确率曲线图.前20次迭代准确率较低,保持在90%以下.虽然训练次数不断增加但准确率波动较大.在迭代50次时学习率缩减为0.000 1,模型能够稳定学习特征信息,准确率缓慢增加.迭代150次后,最终在验证集上的准确率为98.6%,损失值为7.1%. 图 8(b)为模型在高铁轮对轴承数据集中的诊断混淆矩阵,可以看到模型对于健康状态的诊断较为准确,内圈故障和外圈故障虽然有一定的错误,但准确率都达到93%以上,诊断总准确率在98%以上.实验结果表明该方法能有效识别故障.
3.1. 实验数据
3.2. 实验结果
3.3. 对比实验
3.4. 高铁轮对轴承实验
-
本文提出了一种基于密集连接卷积网络的故障诊断方法.利用CNN提取局部特征,密集连接机制使网络模型复杂化的同时避免产生过多的参数,提高了模型的学习能力,解决了传统故障诊断方法人工提取特征的不足,实现了端到端的故障诊断.实验结果表明,本文方法得到的故障诊断模型在美国凯斯西储大学的数据集上故障诊断准确率可高达99.9%,对于轴承不同负载下的故障类型均能诊断良好.
在高铁轮对轴承数据集实验中,本文提出的方法准确率也达到了98%以上,实验结果表明该方法在机械故障诊断中具有一定的应用价值.