APP下载

基于GAF与GoogLeNet的轴承故障诊断研究

2022-10-14黄磊马圣曹永华

机床与液压 2022年1期
关键词:轴承卷积矩阵

黄磊,马圣,曹永华

(1.江苏航空职业技术学院航空工程学院,江苏镇江 212134;2.成都芯米科技有限公司技术研发部,四川成都 610213)

0 前言

航空发动机的转子系统中各类轴承众多且工况环境复杂,其运行精度和安全可靠性制约着发动机总体性能[1]。轴承在复杂多变的载荷环境下长时间高速连续运转,常因承受冲击载荷、热载荷、机械磨损等而发生各种故障[2]。由于轴承的任何显著性故障均从微弱故障中演变而来,而前期微弱故障相比显著性故障而言,它对设备的影响较小,故障特征表现微弱、识别难度更大。但若前期微弱故障处理不及时,将会快速发展为显著性故障,对发动机转子系统造成危害[3]。因此,微弱故障诊断引起国内外学者的广泛关注[3~4]。

目前,智能故障诊断技术常采用信号特征提取、筛选与分类识别算法相结合的方式[5]。通过人工特征提取方法,并结合ELM、SVM等浅层网络的诊断方法,虽然可取得不错成果[6],但相关资料证明[1]其浅层网络结构导致特征提取能力较差,无法实现故障微弱特征的提取。

逐渐兴起的卷积神经网络(Convolutional Neural Network, CNN)具有较强的特征提取能力,能够从图像中提取微弱特征信息,目前广泛应用于图像识别领域[7]。近年来,不少学者将CNN应用于故障诊断中。吴春志等[7]为解决人工提取特征再结合模式识别算法带来的问题,提出利用一维卷积神经网络直接从齿轮箱原始振动信号中学习特征的故障识别方法。昝涛等人[8]在一维卷积网络的基础上,将原始信号、频谱分析信号作为输入,构建多输入层卷积神经网络的轴承故障诊断模型。曹继平等[9]针对CNN诊断方法存在的计算效率低、参数调试等问题,提出采用粒子群优化算法确定CNN网络结构和参数的自适应深度卷积神经网络,并用主成分分析方法将故障诊断特征学习过程可视化。宫文峰等[10]为解决传统CNN模型参数过多问题,引入全局均值池化技术对CNN进行改进,改进的CNN在轴承故障诊断模型中取得了较好的效果。

综上所述,大多数运用在故障诊断技术上的CNN网络均存在结构参数较多、网络深度受限、无法通过加深网络层数实现深层次特征提取的问题。而Google借鉴AlexNet网络设计的GoogLeNet在加深网络的同时,减少了网络结构参数,并增加辅助分类器,提高网络计算效率、特征识别能力;并且CAO等[11]验证了它在故障识别上的可行性。因此,文中以GoogLeNet为诊断识别模型,并将一维时间序列轴承原始信号、EMD分解信号通过格拉姆矩阵转换为二维图片作为输入、故障类别作为输出,实现轴承故障诊断识别。

1 基本理论

1.1 经典卷积神经网络模型

卷积神经网络(Convolutional Neural Network, CNN)是一种受哺乳动物视觉皮层细胞感野启发而演变的典型前馈神经网络,通过对样本的不断训练更新神经元的权重和偏置[9]。由于它能够捕捉深层的特征,而被广泛地应用在模式、视频识别等领域。CNN模型一般由卷积层、激活层、池化层、全连接层和分类器组成[13]。

1.1.1 卷积层

卷积运算是CNN中核心计算单元,对输入特征图与卷积和相重合的区域内进行点乘再求和,并通过激活函数实现局部特征的提取。卷积层中的卷积操作可表述为式(1):

xi+1=wi⊗xi+bi

(1)

式中:xi表示输入特征图;xi+1表示卷积计算后的特征图;⊗表示卷积运算符;wi表示卷积核权重;bi表示偏置。

1.1.2 激活层

CNN中常采用Relu激活函数将卷积运算后的特征图通过激活函数作非线性变换。将式(1)代入激活函数中可得:

yi=f(xi+1)=f(wi⊗xi+bi)

(2)

式中:yi为经过激活层输出的特征图。

1.1.3 池化层

由于卷积层不仅增加特征提取的能力,同时增加网络结构的参数数量,从而导致计算复杂度增加,容易导致维度灾难[13]。为避免此问题,CNN中常采用最大池化的方法,在保证特征保留的同时进行降维处理。最大池化操作可表述为式(3):

maxpooling(f[i-1],f[i],f[i+1])=

max(f[i-1],f[i],f[i+1])

(3)

式中:maxpooling表示最大池化;f[i-1]、f[i]、f[i+1]分别表示第i-1、i、i+1个像素值。

1.1.4 全连接层

全连接层属于过渡层,用于连接CNN输出与Softmax分类器。CNN输出特征经过Flatten展平函数转变为一维数组,再经过全连接层输出为n分类的一维向量。全连接层函数表示为

o(x)=f(wx+b)

(4)

式中:x表示全连接层的输入;w表示全连接层权重;b表示全连接层偏置;o(x)表示全连接输出;f(·)表示激活函数。

1.2 格拉姆矩阵

为便于较好地利用机器视觉算法的优势,将一维时域振动信号转换为二维图像。基本思想是:先对时域数据进行极坐标编码,随后对生成的角度进行Gram矩阵变换,如图1所示。

图1 基于格拉姆算法的转换流程

假设一维振动时序序列X={xi|i=1,2,…,n},为保证内积不偏向于序列中最大值,先将序列X缩放至[-1, 1]内。由于直接计算每对点得到的Gram矩阵的分布遵循以0为中心的高斯分布,所得到的图片存在噪声。为此,在构造Gram矩阵时,先将时序序列X转换到极坐标中。极坐标角度φ由arccosx计算得到,极坐标半径为i/n。

由于每个向量的范数都根据时间依赖性进行调整,二维极坐标空间的内积受到限制。为保证充分利用极坐标信息,采用式(5)计算内积[14]:

x⊕y=cos(θ1+θ2)=cos(arccosx+arccosy)=cos(arccosx)·cos(arccosy)-sin(arccosx)·

(5)

其中:θ表示x和y之间的角度。由式(5)可知,x和y越接近,惩罚越大,当x=y时输出-1,其结果更容易与高斯噪声进行区分。因此,基于式(5)便可得到Gram矩阵G:

G=

(6)

2 GoogLeNet模型

深层CNN网络具有更强的特征提取能力,但增加CNN深度容易导致过拟合、梯度弥散等问题。为此,2014年Google提出GoogLeNet网络结构,增加网络深度和宽度的同时减少网络结构参数。在GoogLeNet的Inception v1结构中,通过在3×3卷积层、5×5卷积层前和最大池化层后增加1×1卷积层降低特征图的厚度,其结构如图2所示。

图2 Inception v1结构

Inception v1结构中1×1卷积层主要用于降低特征图维度,并经过激活函数ReLU增加网络的非线性特征。GoogLeNet采用模块化的结构(Inception结构),便于增添和修改。同时,为避免梯度消失,网络额外增加2个辅助分类器,用于向前传导梯度(即将中间某层的输出作为分类,并按照较小的权重加到最终分类结果中)。基于Inception构建的22层GoogLeNet的网络结构如图3所示。

图3 GoogLeNet的网络结构

3 基于GoogLeNet的轴承故障诊断模型

3.1 振动数据集来源

滚动轴承振动实验平台如图4所示,实验中采用307型滚动轴承,转子转速为988 r/min,每周期传感器采样1 024个点,每次实验进行16个周期。振动信号模拟工况包括:正常、内环故障、外环故障、滚动体故障4种,4种故障类型的时域波形如图5所示,图中仅呈现一个周期1 024组样本数据点。

图4 滚动轴承实验平台

图5 时域波形

3.2 数据处理

由于采集到的轴承故障振动数据有限,为避免故障数据特征难以捕捉,需要增加故障样本数量。数据增强[14]方式较多,为增加信号局部特征的表达,采用经验模态分解法对振动信号进行分解,并选取本征模态分量累积贡献率90%的分量。以内环故障模式为例,其经验模态分解如图6所示,其本征模态分量累计贡献率如表1所示。

表1 IMF能量累积分布 单位:%

图6 内环故障EMD分解

将选择的分量和原始振动信号分量作为一维时序序列转为二维图像的输入。同时,采用如图7所示的重叠采样方法,增加训练样本数量,文中样本重叠采样比例为2∶3。

图7 重叠采样方法

将一维时序序列作为格拉姆矩阵算法输入,其各类故障信号由一维时序信号转换成二维图片,从而构成图片数据集,数据集中部分图片如图8所示。

图8 数据集示意

3.3 基于GoogLeNet的轴承故障诊断模型

基于GoogLeNet的轴承故障诊断模型的诊断流程如图9所示,其算法详细步骤描述如下:

图9 基于GoogLeNet的轴承故障诊断模型的诊断流程

步骤1:设置不同轴承故障类型,并通过实验平台采集故障振动信号;

步骤2:对振动信号进行经验模态分解,选取本征模态分量累计贡献率90%的分量与振动原始信号一起作为时序序列数据源;

步骤3:对数据进行重复采样,并对采样后的时序序列进行格拉姆矩阵变换,创建故障数据集;

步骤4:将故障样本数据集作为GoogLeNet网络的输入,输入样本为224×224×3的RGB图像,输出故障标签为4,每次batch为32,学习速率为0.001;

步骤5:将训练好的GoogLeNet模型用于诊断测试集样本。

4 基于GoogLeNet的轴承故障诊断结果分析

为较好地描述GoogLeNet模型在实验数据集下的诊断效果,采用双纵坐标轴描述GoogLeNet模型训练过程中训练集、测试集的准确率和模型收敛趋势,其结果分别如图10、图11所示。

图10 训练集诊断结果

图11 测试集诊断结果

由图10可以发现:GoogLeNet模型在训练过程中波动性较大,即使迭代步数到达2万步以上,误差减小,但训练识别率仍存在较大波动,说明利用GAF对时域信号处理后生成的不同图片特征间差异性较大,这可能是由于振动信号的时域信号具备的时序信息导致的,而这一问题可以通过增加重叠采样比例和多次训练取均值得到改善。

由图11可以发现:GoogLeNet模型在识别过程中波动性较大,即使迭代步数到达2万步以上,误差减小,但训练识别率仍存在较大波动;随着网络训练步数增加,其识别准确率逐渐增加,识别率虽出现明显波动,但其准确大于70%,绝大多数情况下准确率达到了90%以上,说明经过训练后的GoogLeNet模型具备一定的轴承故障识别能力。

为更清楚地展示GoogLeNet模型在测试集中各个类别的识别结果,引入混淆矩阵对实验结果进行分析。GoogLeNet模型在测试集下的故障识别结果如图12所示。每类故障样本100个,共4种故障类型。图中主对角线上的数字代表GoogLeNet模型对每一类故障状态正确诊断的样本个数及占总样本的比例;每一列均量化为精确信息,即正确分类的个数和误分类的个数以及某故障被误判为哪一类故障。

图12 测试结果的混淆矩阵

由图12可知:GoogLeNet模型能够较好地区别正常、内环故障、外环故障、滚动体故障4种类型,且每类故障识别准确的样本分别占总样本的23.25%、23.5%、23.25%、23%;每类故障被误诊的概率不超过总样本的1%;GoogLeNet模型对滚动体故障识别效果相比正常、内环故障、外环故障效果较差,其误诊样本达到总体样本的2%。

5 总结

针对轴承故障振动信号微弱难以识别且常用的频谱分析流程繁琐,采用格拉姆矩阵将时域振动信号转换为二维图像,并利用GoogLeNet模型强有力的特征提取能力对轴承故障振动信号进行识别。

首先,对实验平台采集的轴承故障振动信号进行EMD分解,提取本征模态分量累积能量分布90%的分量;其次,采用格拉姆算法将选择的本征模态分量与原始振动信号处理为二维图片;最后,利用GoogLeNet模型对数据训练与识别。仿真结果表明:GoogLeNet模型在GAF构建的数据集下,随着迭代步数增加,误差减小,但训练识别率仍存在较大波动;随着网络训练步数增加,其识别准确率逐渐增加,识别率虽出现明显波动,但准确率大于70%,绝大多数情况下准确率达到了90%以上,说明经过训练后的GoogLeNet模型具备一定的轴承故障识别能力。

猜你喜欢

轴承卷积矩阵
基于全卷积神经网络的猪背膘厚快速准确测定
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
接触式密封在大功率半直驱永磁风力发电机应用探讨123
斯凯孚展示用于电动汽车的先进轴承产品
一种轴承拆卸装置的实用设计
多项式理论在矩阵求逆中的应用
矩阵
矩阵