基于深度可分离卷积神经网络的轴承故障诊断模型

2024-02-21 11:26金钰森郑雁鹏黄伟韬
无线电通信技术 2024年1期
关键词:残差准确率轴承

金钰森,丁 飞,*,陈 竺,郑雁鹏,黄伟韬

(1.南京邮电大学 智慧物联网应用技术研究院,江苏 南京 210003;2.上海市工业物联网与大数据专家工作站,上海 200233)

0 引言

在工业活动中,为了避免由于设备故障而产生的经济损失,对相关工业设备进行有效的故障诊断尤为重要。旋转机械在现代工业设备中应用最广泛,比如压缩机、发动机、感应电机等[1]。旋转机械常常处于高度负荷或恶劣的工作环境中,导致其发生故障的概率大大增加,若不能及时对故障进行诊断,可能会导致整个系统的中断甚至是灾难性的故障[2]。轴承作为旋转机械中的核心部件,如何快速准确识别其工作状态并进行故障诊断一直受到广泛关注[3]。

近年来,随着机器学习算法研究的不断深入,深度学习已被应用于诸多领域中[4]。作为深度学习中的一个重要分支,卷积神经网络(Convolutional Neural Network,CNN)在机械设备故障诊断中表现出了优异的性能[5]。当前的深度学习方法主要处理的是二维结构数据,在机械故障信号的处理中,起初主要将原始振动信号经过图像变换从一维时序信号转变为二维图像信号作为CNN的输入[6],然后进行特征提取和识别分类,刘星辰等人[7]通过短时傅里叶变换获得振动数据集的频率图,对训练数据集进行交叉验证来更新CNN参数,根据训练好的模型来对振动数据集的频率图进行分类。Shao等人[8]利用小波变换对旋转机械振动信号进行分解,通过连续小波变换获得振动频率图,将其作为CNN的输入来对网络进行训练,根据训练后的CNN模型进行故障特征识别。Verstraete等人[9]通过短时傅里叶变换和小波变换将原始振动信号转为二维图像信息,然后将其作为深度CNN输入来进行故障分类和诊断。

以上方法都需要将一维信号转换为图像形式作为输入,但是由于振动数据在时间上具有相关性,将其转换为二维结构容易破坏时间相关性,丢失部分故障信息,因此可以通过构建一维卷积神经网络 (One-Dimensional Convolutional Neural Network,1D-CNN),直接将原始一维信号作为网络的输入,在保留原始信息的同时,降低网络复杂度,实现端对端的故障识别[10]。杨洁等人[11]通过多个传感器采集航空发动机故障数据,将多个传感器的数据进行融合后输入到1D-CNN中实现了较高精度的故障分类;卞景艺等人[12]提出一种多尺度深度CNN,通过构造不同卷积池化层的多通道网络对轴承和齿轮故障数据进行分析;Liang等人[13]以滚动轴承的一维时序信号作为CNN的输入,通过包含空洞卷积的残差网络结构和通道域注意力方法提出了基于残差连接的一维空洞卷积网络方法,该方法能够有效诊断不同噪声环境和不同载荷下的滚动轴承故障;Wang等人[14]基于视觉几何组(Visual Geometry Group,VGG)16改进1D-CNN模型,将原始振动信号作为网络输入进行特征融合,提出一种基于最优SWD和1D-CNN的多传感器数据融合层混合模型,将提取的特征在融合层中进行融合,该模型可以准确有效地识别故障类型并具有良好的泛化能力。

1D-CNN也存在一定的不足,当网络层数较少时故障信息提取不完整,对含噪声较大的数据的非线性拟合能力较差,网络层数过多则会使模型计算量过大、训练困难,且容易出现梯度爆炸。为了解决以上问题,并满足实际工业场景中对计算开销和计算时延的需求,提出了一种基于深度一维可分离CNN的轴承迁移故障诊断方法,通过对卷积层进行可分离操作来降低计算时间并向构建的网络中添加残差层来保证故障诊断准确率。对轴承数据集根据不同工况进行任务划分来验证不同工作条件的设备之间的迁移诊断效果,通过对比不同的训练网络来验证方法的有效性。

1 1D-CNN

1.1 CNN

一个完整的CNN结构包含输入层、卷积层、激活层、池化层、全连接层以及输出层。卷积层通过卷积核进行数据之间的特征提取和特征映射;激活层将卷积层的运算结果进行非线性映射,将特征映射到高维的非线性空间;池化层对数据进行下采样操作,通过对特征图进行稀疏处理进而减少数据运算量;全连接层通常位于卷积运算的末尾,通过对数据重新拟合来减少特征信息的损失。

CNN通常有多个卷积层,作为CNN的核心组件,卷积层通过卷积核根据设定步长对所在层的输入进行局部卷积操作,输入数据经过卷积运算后输出相应特征图,卷积核通常为一个权值矩阵,CNN通过卷积过程实现权值共享,通过权值共享可以极大减少CNN的参数量,降低模型的复杂度[15]。卷积计算的公式为:

(1)

1.2 1D-CNN模型

1.2.1 1D-VGG16

VGG16神经网络模型是由牛津大学计算机视觉组开发的一个CNN结构,作为一个经典的CNN模型,VGG16的简洁性和易于实现的特点至今仍有研究价值[16]。

1D-VGG16神经网络模型通过组合与堆叠多个卷积维度为3×1的卷积核来提取输入数据的细微特征;通过卷积核对输入数据进行卷积操作;通过最大池化操作对数据进行降维处理,提取数据主要特征;通过全连接层进一步降低网络参数量并结合Softmax分类器达到分类的目的。1D-VGG16网络模型结构如图1所示。

图1 1D-VGG16网络模型Fig.1 1D-VGG16 network model

1.2.2 1D-ResNet50

在CNN结构中,随着网络模型深度的增加,传统CNN容易出现梯度消失/爆炸等问题,导致网络模型训练困难和准确率下降。针对这一问题,文献[17]通过引入跨连接层来构建残差网络,实现网络层数增加并提高训练准确率,残差单元结构如图2所示。

图2 一维残差单元结构图Fig.2 1D structure diagram of residual unit

在一维残差单元中,输入数据x进入网络,经过权重层后得到映射函数F(x),然后通过ReLU函数进行激活后进入第2个权重层,并和输入数据x进行连接得到最终映射函数F(x)+x。在这种映射下,可以保证浅层特征直接映射到深层,降低训练产生的误差。

由于残差块的结构是相似的,通过构建一个可变参数的残差块并进行反复调用来实现不同的卷积块。当输入通道与输出通道不一致的时候,让输入经过一个卷积核大小为1的卷积层,让该卷积层的输出与主体卷积的输出通道相同,实现直接相加操作。此外,当输入通道和输出通道数目一致并需要进行降采样操作时,将卷积层中第1个卷积核的步长由1更改为2;当输入通道和输出通道数目不一致并需要进行降采样操作时,需要将主体卷积层中第1个卷积核的步长由1更改为2,同时也需要更改为了统一输入输出通道数目的卷积层的卷积核,将其步长由1更改为2。

在1D-ResNet50网络中包含了49个卷积层和1个全连接层,每个卷积层所包含卷积核的卷积维度是3×1,1D-ResNet50网络结构可以分成7部分:第1部分不包含残差块,主要对输入数据进行卷积、正则化、激活、最大池化操作,第2~5部分的卷积都包含残差块,每个残差块有3层卷积,1D-ResNet50网络结构如图3所示。

图3 1D-ResNet50网络模型Fig.3 1D-ResNet50 network model

1.2.3 可分离卷积神经网络

可分离卷积神经网络(Separable Convolutional Neural Network,SCNN)相比传统CNN,具有更少的参数,并且实现了训练过程中通道和区域的分离。SCNN由逐通道卷积和逐点卷积组成。在逐通道卷积过程中,卷积层的输入与输出均为具有相同通道数目的特征图;在逐点卷积过程中,对输入特征采用1×1的卷积核进行卷积操作,重复该过程n次即可增加通道数至n层。普通卷积过程与可分离卷积过程分别如图4和图5所示。

图4 普通卷积过程图Fig.4 Ordinary convolution process diagram

(b) 逐点卷积过程

通过可分离卷积操作可以减少卷积过程中的运算次数,假设输入数据大小为DK×DK×M,输出通道数目为N的特征图。若采用传统卷积操作,需要将N个DK×DK×M的卷积核完成卷积操作,共需参数数量为DK×DK×M×N×DF×DF。

若采用可分离卷积操作,在逐通道卷积过程中通过M个DK×DK×1的卷积核进行卷积操作,在逐点卷积过程中通过N个1×1×M的卷积核进行卷积操作即可完成普通卷积的卷积效果,共需参数数量为DK×DK×M×DF×DF+M×N×DF×DF。可分离卷积操作与传统卷积操作所需参数数量之比如式(2)所示:

(2)

所节省的计算资源成本与卷积核大小及输出通道数目成正比。

2 网络模型构建

2.1 主干网络

由于输入数据为滚动轴承一维振动信号,通过构建1D-CNN作为故障诊断模型的主干,所构建主干网络模型的卷积层和池化层均为一维结构。图6为 1D-CNN模型结构,模型包括4个卷积层、1个最大池化层、1个自适应最大池化层以及1个全连接层和瓶颈层。瓶颈层由1个输入输出维度相同的全连接层、1个ReLU激活函数以及1个丢失层组成,作用是更改通道数目,消除对输入特征维度的限制并减少网络训练所需参数的数量,并让源域和目标域共享相同的模型和参数。相比于传统CNN,主要做了如下改进:

图6 1D-CNN结构图Fig.6 1D-CNN structure diagram

① 在每次卷积操作后需要对输出进行批归一化和激活处理,通过批归一化处理可以增加模型的泛化能力。

② 在模型的第1个卷积层中,采用大尺度卷积核来提取短时特征,并为后续网络的构建提供更多的数据。

③ 在网络结构末尾添加瓶颈层,从而消除维度限制,使得源域和目标域可以共享相同的模型和参数。

2.2 深度1D-SCNN

在主干CNN的基础上,引入可分离卷积操作以及残差模块,将主干CNN的卷积层替换为可分类卷积层构建一维可分离卷积神经网络(One-dimensional Separable Convolutional Neural Network,1D-SCNN)。在主干CNN中,若输入通道数为16、输出通道数为32,卷积层采用32个卷积宽度为3的卷积核进行卷积操作,所需运算参数为16×3×32。在1D-SCNN中,首先进行逐通道卷积,采用16个卷积宽度为3的卷积核进行卷积操作,再进行逐点卷积,采用32个卷积宽度为1的卷积核进行卷积操作。通过对卷积层进行可分离操作,共需运算次数为16×3+16×1×32,可以降低的参数量为976。图7为1D-SCNN模型结构,1D-SCNN和传统CNN相比有如下优势:

图7 1D-SCNN结构图Fig.7 1D-SCNN structure diagram

① 减少了卷积过程中所需的参数,降低了网络训练所需的时间。

② 改变传统卷积模式,实现了通道和区域的分离。

③ 通过添加残差连接模块,保证网络训练的准确率。

3 实验验证

3.1 数据集介绍

为验证1D-SCNN在滚动轴承故障中的效果,采用美国凯斯西储大学(CWRU)的轴承数据集[18]进行实验。该数据集为Matlab的mat格式,数据内容分为风扇端和驱动端,采样频率为12 kHz和48 kHz,故障类型包括滚动体故障、外圈故障以及内圈故障,损伤直径包含0.177 8、0.335 6、0.533 4 mm,不同负载对应不同转速,分别为1 730、1 750、1 772、1 797 r/min。

采用12 kHz采样频率下的驱动端轴承振动信号为数据集,共13组故障数据以及1组健康数据,如表1所示。取1 024个采样点作为采样长度,按照的8∶2的比例,将每种类型的数据划分为训练集和测试集。

表1 CWRU轴承故障数据集

为了更直观地展示CWRU轴承振动信号,绘制其时域以及经过快速傅里叶变换的频域数据图,图8为12 kHz下驱动端轴承在0负载情况下的内圈故障数据时域以及频域信号图。

(a) 时域信号

(b) 频域信号

3.2 参数设置

对12 kHz的驱动端轴承数据进行分类,表2列出了14种轴承工况,根据故障尺寸将1种正常轴承数据和3种故障类型(内圈故障、滚子故障、外圈故障)分为14种状态(1种健康状态和13种故障状态)。

表2 CWRU轴承工况划分

在迁移学习任务设置中,所获取的数据集在4种负载状态下,对应4种不同工作速度,将这些工作条件视为不同的任务,如表3所示,包括0、1、2、3,例如0→1表示电机负载为0 kW的源域迁移到电机负载为0.735 kW的目标域,共有12个迁移学习任务。

表3 CWRU迁移学习任务设置

根据模型构建部分所描述的模型结构搭建1D-CNN网络,通过反复实验最终确定1D-CNN模型的相关参数,如表4所示。按照输出特征图的大小,1D-CNN共有5个卷积层。从卷积层1~4依次减小特征向量大小,最终输出大小为256的特征向量。为提取短时特征,第1个卷积层中采用大尺度卷积核,在模块2和模块3中卷积核设置大小为3,在网络结构末尾添加一维全连接层,从而消除输入特征维度的限制并减少网络训练所需参数的数量。

表4 1D-CNN参数

通过将可分离卷积替代普通卷积实现1D-SCNN模型的构建,1D-SCNN模型的相关参数如表5所示。

表5 1D-SCNN参数

3.3 实验结果分析

为验证所提网络的有效性,基于深度学习框架为Pytorch1.1构建改进的SCNN,仿真硬件为Intel(R) Core(TM) i5-7300HQ CPU @ 2.50 GHz、8 GB内存的计算机。

3.3.1 模型训练

首先训练普通迁移学习,按照设置的参数构建网络模型,通过带标签的源域数据集分别对构建好的 1D-CNN、1D-SCNN、1D-VGG16及1D-ResNet50网络模型进行预训练,获取预训练模型,根据获取的预训练模型对不带标签的目标域数据进行测试,模型训练过程如图9所示。为观测训练效果,选取前300 epoch进行展示。4个网络模型均在150 epoch内收敛稳定,在源域和目标域的训练准确率都可以达到99%,但是SCNN模型具有更好的收敛效果。

(a) SCNN模型

(d) VGG16模型

3.3.2 对比分析

从时间角度对不同网络进行分析,在域对抗迁移学习中,4种网络的源域训练过程、源域测试过程以及目标域测试过程的200 epoch训练时间分别如图10所示。由于网络层数不同,1D-SCNN相比1D-VGG16以及1D-ResNet50在网络训练所需的时间上具有明显优势,此外1D-SCNN为了实现和 1D-CNN相同的卷积操作需要更多的卷积层,但是1D-SCNN相比1D-CNN的网络训练时间在源域训练集、源域测试集以及目标域测试集上分别降低了4.8%、8.9%以及8.0%。

图10 不同网络训练消耗时间Fig.10 Time spent on training different networks

从准确率以及损失值角度对不同网络进行分析,对比数据为网络收敛稳定后所获取的最大准确率以及该准确率对应的损失值。图11为4种迁移学习任务对应的最大准确率和损失值,在4种迁移学习任务中,1D-SCNN在各个迁移学习任务中具有最高的识别准确率,并且识别效果越好的网络损失值越小。

图11 不同迁移学习任务的准确率以及损失值对比Fig.11 Comparison of accuracy and loss values of different transfer learning tasks

为进一步验证1D-SCNN模型的特征提取能力,采用t-SNE降维算法将原始输入和所提取特征按相似度投影到二维空间中进行分析,图12为原始样本分布。在1D-SCNN、1D-CNN、1D-VGG16、1D-ResNet50 这4种网络模型中,1D-ResNet50模型和1D-SCNN模型训练效果相近。对于迁移学习任务T01,图13(a)为1D-SCNN模型输出结果,图13(b)为1D-ResNet50模型输出结果,1D-SCNN可以将13种故障类型和1种正常数据类型完全区分,且不同标签样本在二维空间分布中很集中,1D-ResNet50模型的输出特征也可以区分不同的样本但是分类界限以及样本集中程度均不如1D-SCNN模型。

图12 原始样本分布Fig.12 Raw sample input

(b) 1D-ResNet50模型输出结果

4 结论

针对工业故障诊断过程中的低时延和高准确性需求,在传统CNN的基础上提出深度SCNN,通过对卷积层进行可分离操作,降低卷积过程中所需的参数数量进而降低计算时延,并向SCNN中添加残差网络来保证诊断准确率。通过构建主干CNN、SCNN、VGG16以及ResNet50这4种CNN模型,分别对CWRU滚动轴承振动数据进行分类识别来验证所构建网络的有效性。实验结果表明,本研究方法在滚动轴承故障识别中具有较高的识别准确率以及更快的训练速度。

猜你喜欢
残差准确率轴承
轴承知识
基于双向GRU与残差拟合的车辆跟驰建模
轴承知识
轴承知识
轴承知识
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建