变负载轴承故障诊断卷积神经网络模型
2020-06-30祝道强周新志
祝道强, 周新志, 宁 芊
(四川大学电子信息学院, 成都 610065)
在机械健康监测领域,轴承故障诊断是非常重要的研究方向。滚动轴承作为旋转机械中不可或缺的作用部件,有45%~55%的旋转机械系统故障是由于滚动轴承的损坏导致[1]。而轴承通常处于变负载的工作环境中,造成轴承故障难以准确识别。在变负载环境下准确高效地诊断出轴承故障,对于保障工业生产的稳定可靠和生产作业人员的人身安全意义重大[2]。
当前轴承故障诊断的研究方法分为传统方法和深度学习方法,传统方法大多采用特征提取、特征选择、特征降维、算法诊断的诊断模式[3]。首先使用时频域信号处理方法如经验模态分解(EMD)[4]、快速傅里叶变换(FFT)、小波包变换(WPT)等提取特征后进行特征选择,选择后的特征经过主成分分析(PCA)等方法特征降维后输入到支持向量机(SVM)等机器学习算法实现轴承故障诊断。Li[5]提出一种基于冗余第二代小波包变换(RSGWPT)、邻域粗糙集(NRS)和支持向量机(SVM)的故障诊断方法,显著提高了诊断精度,张敏提出的基于EEMD Hilbert和FWA-SVM的滚动故障轴承算法提高了诊断准确度并优化了收敛时间[6],然而上述算法均存在模型复杂度高、高度依赖数据质量和人工特征提取的问题,难以在实际环境中加以应用[7]。近年来,深度学习在语音识别、图像识别以及自然语言处理等领域取得了巨大的成功,同样为轴承故障诊断研究提供了新思路。Jia等[8]、Xia等[9]提出的基于堆叠自动编码器的轴承故障诊断方法,所构造网络能够自动提取输入信号的高阶特征,简化了复杂困难的人工提取特征过程,但需采用逐层训练的方式,且无法保证所提取高阶特征的有用性。Zhang等[10]提出的TICNN(convolution neural networks with training interference)在不同单一负载下的平均准确率达到95.5%,曲建岭等[11]提出的自适应-维卷积神经网络故障诊断算法(ACNN-FD)在轴承负载为1 hp所得模型对2 hp和3 hp负载的轴承故障诊断准确率达到97.9%和95.5%,两种模型在固定负载数据集下均有较为不错的诊断效果和泛化能力。然而实际环境中由于机械磨损、位置偏移等因素,结构部件存在不同程度的变形,轴承承受负载不是固定负载[12]。单一负载的轴承诊断测试不能充分体现实际环境的轴承负载特点,适应性不强。
为解决上述问题,提出一种端到端的的变负载适应轴承故障诊断模型,符合以下特点:①无需人工提取特征的过程,实现端到端的轴承故障诊断;②能够在负载变化的轴承数据集进行稳定准确的轴承故障诊断。
1 相关模型介绍
1.1 经典网络VGGNet
2014年,牛津大学计算机视觉组在2014提出深度卷积神经网络VGGNet。VGGNet探索了卷积神经网络深度与性能之间的关系,成功构筑16~19层深的卷积神经网络,证明增加网络的深度能够一定程度上提升网络的学习能力。VGGNet中使用最广泛的VGG16结构如图1所示。
由图1可知,VGGNet结构简洁,使用了多个卷积核尺寸为3×3的卷积层堆叠构成卷积组,代替传统的大卷积核卷积层。在VGG16中,共有五个卷积组。同时可以看到,VGGNet卷积层后的三层全连接层的待训练参量数目巨大,会造成巨大的计算开销,容易造成过拟合。VGGNet的二维网络结构也与轴承故障诊断的一维振动信号不匹配,实验部分将对比测试VGGNet在变负载情境下的轴承故障诊断效果。
1.2 全局平均池化与随机失活
随机失活(dropout)是由Srivastava等[13]于2014年提出的一种针对神经网络模型的正则化方法,其主要思想是在训练期间以一定的失活率随机使某层神经元与其他层神经元的连接失活。随机失活可以看作是对原始“完整网络”进行采样得到“稀疏”网络,在训练期间更新各个“稀疏”网络参数,在测试期间使用指数量级的稀疏网络平均值对结果进行预测。训练带有随机失活的网络模型通常能够在分类问题中取得更好的泛化性能。
全局平均池化(global average pooling,GAP)将输入到该层的特征图进行全局的平均,用于代替卷积神经网络的全连接层,能够在结构上对整个网络做正则化。在经典卷积神经网络的分类阶段,往往会使用2~3层全连接层,而由于全连接层的结构特点,权值参数是最多的。在图1所示的VGG16中,第一个全连接层FC1有4 096个节点,上一级的池化层有7×7×512=25 088个节点,两层之间的连接有4 096×25 088个权值,参数量巨大,将造成沉重的训练负担且极易过拟合。使用全局平均池化层代替全连接层,能够显著减少待训练参数数量,有效防止网络过拟合。
2 变负载轴承故障诊断卷积神经网络模型
2.1 模型结构
提出的模型结构如图2所示,由卷积组、池化层、分类层组成。卷积组分为2层卷积组和3层卷积组,卷积组间使用池化核为2×1的最大值池化层(max-pooling)连接。最深层的卷积组后使用全局平均池化层进行池化运算,经过失活率为0.2的随机失活后输出分类结果。
图2 模型结构Fig.2 Model structure
模型训练时,对模型的输入信号进行均匀分布失活率的随机失活:进行每一批次(batch)训练时,在区间为(0,0.5)的均匀分布中随机取值作为当前批次随机失活的失活率。每个批次的输入数据经过不同失活率的随机失活后,模型接收经过不同程度数据增强的输入信号,提高模型轴承故障诊断的稳定性和泛化能力。失活率接近0和0.5的随机失活如图3所示。
图3 随机失活Fig.3 Dropout
2.2 模型训练
训练阶段,权重初始化使用He初始化方法[14],同时由于Adam优化算法具有简单、内存占用小及计算效率高的特点,非常适合训练具有大量输入数据和参数的模型,故本文模型的训练采用Adam优化算法。在模型的训练过程中,使用阶梯衰减学习率法进行迭代训练,使模型在前期快速学习,并随着迭代次数的递进逐步减缓学习速度,提高模型训练效果。阶梯衰减学习率迭代公式为
(1)
式(1)中:Lk为第k次的学习率;d为衰减系数;p为衰减间隔;⎣」为向下取整。模型训练的超参数详细设置如表1所示。
表1 超参数设置Table 1 Hyperparameter setting
3 实验验证
3.1 轴承原始数据集处理
将学术界广泛作为轴承故障诊断标准数据集的美国凯斯西储大学(CWRU)轴承故障模拟数据[15]作为实验的验证数据集,轴承故障模拟实验台如图4所示。
图4 CWRU实验台Fig.4 CWRU test platform
在轴承故障模拟实验中,电机轴承故障由电火花加工(EDM)技术单点引入,分为内圈故障、滚动体故障和外圈故障三种故障类型,每种故障类型设置0.177 8、0.355 6、0.533 4 mm三种故障程度,使用加速度计对多个负载情况下轴承数据进行了记录,记录时采用12、48 kHz两种采样频率。
实验选用采样频率为12 kHz 的0~3 hp负载下的轴承数据,每个负载条件下有正常、滚动体故障、内圈故障、外圈故障4种轴承状态。除正常状态外,另外三种轴承故障状态均包含3种故障程度,共计10种轴承状态。每种负载情况下,各个轴承状态均随机选取500个样本,其中400条样本数据作为训练集,100条样本数据作为测试集,详细样本信息如表2所示。
表2 实验样本信息Table 2 Experimental sample information
3.2 变负载数据集构建
为验证模型轴承故障诊断的变负载适应性,将(0 hp,1 hp)、(1 hp,2 hp)、(2 hp,3 hp)三种近邻负载的样本数据集组合,构成低负载、中负载、高负载3种变负载数据集,并使用不同变负载数据集交叉验证。数据集详细信息如表3所示。
3.3 参数设置
模型的网络结构参数如图5所示。
图5 参数设置Fig.5 Parameter settings
由图5可知,模型共包含6个卷积组。图5中,Conv(l-k-c)中l为卷积组的子层数,k为卷积核大小,c为通道数;c@s中c表示特征图的通道数,s表示特征图的尺寸;uniform dropout指输入的均匀失活率随机失活;GAP为全局平均池化层。
感受野是卷积神经网络(CNN)每一层输出的特征图上像素点在原始输入上映射的区域大小[16]。计算每层神经元感受野尺寸的迭代公式如式(2)所示:
(2)
式(2)中:Rl为第l层对应的感受野大小;Wl为第l层卷积核或池化核的大小;Si为第i层的移动步长。合理的感受野尺寸应能有效感知输入信号周期特征,同时小于整个输入信号的尺寸。
在凯斯西储大学轴承故障模拟实验中,所记录的电机负载与近似转速的关系如表4所示。
表4 负载转速Table 4 Load-speed
根据对应转速可知,电机一个转动周期采样396~420个点。通过式(2)、图5计算本文模型各卷积组的感受野尺寸,计算结果如表5所示。
表5 感受野计算Table 5 Receptive field calculation
由表5可知,卷积组6的感受野尺寸为404×1,能够覆盖一个完整转动周期96%以上的样本点。
3.4 随机失活效果对比
本文模型训练时对输入进行均匀分布失活率的随机失活,为验证该方法在变负载环境下对轴承故障诊断准确率的影响,在保持模型网络结构及训练参数相同的情况下,对输入进行无随机失活模型、固定失活率为0.2的随机失活模型的训练,与本文模型进行效果对比。同时为保证实验结果的可靠性,分别在训练集进行五次模型训练,并取测试集的平均准确率作为测试集实验结果,实验结果如图6所示。
图6 随机失活效果对比Fig.6 Dropout results comparison
由图6可知,无随机失活模型在各测试情形下的最低准确率为93.64%,平均准确率为97.57%,能够对轴承故障进行较为有效的诊断;而采用失活率为0.2的固定随机失活模型与无随机失活模型相比,所有测试情形下的测试准确率均有所下降,其中模型在A->B情形下的准确率降至89.39%,平均准确率由97.57%降至94.38%,对输入进行固定失活率的随机失活使原始输入信号一定程度失真,无法提取完整的轴承故障相关特征,泛化能力明显降低;本文模型对输入进行均匀分布失活率的随机失活,与无随机失活模型对比,A->C情形下的准确率由93.64%提高至98.08%,平均准确率提升至98.36%,对输入进行均匀分布失活率的随机失活有效提高了模型的诊断准确率和泛化能力。
3.5 全局平均池化效果对比
为验证使用全局平均池化层代替全连接层在变负载环境下对轴承故障诊断的影响,将模型中的全局平均池化层替换为全连接层构成全连接模型进行实验效果对比,其他的结构和训练参数均保持一致。为保证实验结果的可靠性,在训练集进行五次模型训练并取平均准确率作为实验结果,如图7所示。
图7 全局平均池化效果对比Fig.7 GAP results comparison
由图7可知,本文模型在各测试集的准确率均高于全连接模型,平均准确率由97.55%提升至98.36%,可见由于全局平均池化层结构待训练参量的减少,过拟合程度得以减轻。
同时,为对比两种模型训练速度,在两种模型的训练时记录在各训练集上的训练时间,并计算平均训练时间,最终结果如表6所示。
表6 训练时间对比Table 6 Training time comparison
由表6可知,本文模型的平均训练时间为221.80 s左右,而全连接模型的平均训练时间为236.19 s。本文模型的平均训练时间较全连接模型快14.39 s,模型训练时间明显缩短。
3.6 经典模型效果对比
为验证本文模型的有效性,选取具有代表性的经典二维卷积神经网络模型VGG16及基于一维卷积神经网络的轴承诊断模型ACNN-FD[11]、TICNN[10]作为对比算法进行实验。三种对比模型在各个变负载数据集进行五次训练及测试, 取均值作为各目标测试集的测试结果。最终实验结果如图8所示。
图8 经典方法效果对比Fig.8 Classic method results comparison
由图8可知, VGG16仅在B->C情形达到90.86%的准确率,其他情形下的准确率均低于90%,平均准确率为83.51%,并不适用于原始信号为一维振动数据的轴承故障诊断;ACNN-FD在 A->B 和 C->B 情形的准确率达到98.81%和98.34%,但在A->C、B->A和B->C情形下准确率仅为88.93%、91.58%和89.59%,平均准确率为93.70%,模型的诊断泛化能力较差;TICNN在大多数情形的准确率达到94%以上,但在C->A情形下的准确率只有86.15%,平均准确率为95.19%,诊断稳定性不足;本文模型在所有情形的准确率均在96%以上,仅在B->C测试准确率为96.87%低于TICNN的99.62%,其他情形的测试准确率均高于三种对比模型,平均准确率为98.36%,能够在变负载环境下实现准确、稳定的轴承故障诊断。
4 结论
提出了一种基于一维卷积神经网络的变负载适应轴承故障诊断模型,得出如下结论。
(1)本模型直接对原始轴承振动信号进行特征提取与故障诊断,无需人工特征提取过程。
(2)由实验验证可知,全局平均池化层的使用减少了模型待训练参量,提高了模型训练速度和泛化能力。训练时对输入进行的均匀分布失活率的随机失活,提高了模型的诊断准确率和稳定性。
(3)通过与经典模型的对比可知,本文模型能够在变负载环境下实现准确、稳定的轴承故障诊断。