不平衡训练数据下的基于生成对抗网络的轴承故障诊断

2021-02-04 13:51李忠智左剑凯刘鹤丹
小型微型计算机系统 2021年1期
关键词:轴承卷积故障诊断

李忠智,尹 航,2,左剑凯,刘鹤丹

1(沈阳航空航天大学 计算机学院,沈阳 110136) 2(仲恺农业工程学院 信息科学与技术学院,广州 510230) 3(同济大学 计算机科学与技术系,上海 201804)

1 引 言

随着智能工厂的发展和运行设备的不断更新,及时准确的故障诊断是避免经济损失和一些不必要的人员伤亡的有效方法[1,2].因为系统存储的丰富历史数据及不需要精确的物理模型的特点,基于数据驱动的故障诊断方法被广泛应用于智能工厂和运行设备的异常检测中[3].

深度学习是一种有效的数据特征提取方法,因为它可以解决浅层学习不能很好地提取大数据中涉及的非线性特征的问题.Jia等人构造了深度神经网络模型从原始轴承振动信号中提取特征,然后对提取的特征利用Softmax进行分类,以识别轴承中出现的故障类型[4].Lei等人使用堆叠式降噪自动编码器(Stacked Denoising Auto Encoder,SDAE)来自适应地提取行星齿轮箱的故障特征并进行故障模式分类[5].Xia等人使用基于SDAE的深度神经网络提取更多具有代表性的特征,并提高了轴承故障诊断的准确性[6].Tamilselvan和Wang使用深度信念网络(Deep Belief Network,DBN)来集成多传感器信息,从而能够对航空发动机和电力变压器进行故障诊断[7].Gan等人使用DBN建立了分层的故障诊断模型,成功实现了故障模式分类和轴承故障定位[8].

卷积神经网络(Convolutional Neural Network,CNN)可以直接从图像和视频等高维数据中提取敏感特征.在时域中将轴承的一维振动信号以矩阵或频谱图像的形式表示,则可以利用CNN的特征提取功能来提取更准确的特征.Wang等人提出了一种基于多传感器数据融合和瓶颈层优化卷积神经网络的旋转机械故障识别新方法[9].结果表明,新颖的卷积神经网络具有更高的识别精度和更快的收敛速度.

虽然深度学习在故障诊断领域取得了一些成绩,但仍然存在许多挑战.首先,大量高质量的数据是基于深度学习的故障诊断方法取得良好性能的保证.因为灾难性故障数据或意外机械故障这类的故障数据数量很小,而正常数据的数量很大[10].所以在故障诊断领域,数据严重的不平衡的问题是非常普遍的问题.当不同类型的故障数据严重不平衡时,基于深度学习的故障诊断性能可能很差[11].因此,不平衡数据特征提取成为基于数据驱动的故障诊断的重要研究领域.目前从不平衡数据中提取特征常用的方法可分为两类.

第一类方法的重点是代价敏感的学习算法,让网络结构对少数类更加敏感,以提高少数类样本的故障诊断精度[12,13].但这些代价敏感的分类方法面临两个困难:1)错误分类的代价无法确定.2)通常很难找到一种有效的方法来评估代价敏感分类器的性能.

第二类方法的重点是使用一些数据预处理技术,如过采样和下采样以减少类间的不平衡[14,15].一种简单的过采样方法是复制几个样本,以增加少数类中的样本数量.然而,这样容易出现过度拟合的问题.而对于下采样预处理,它减少了大多数类的样本数,这不可避免的会造成信息丢失的问题.

生成对抗网络(Generative Adversarial Network,GAN)由Goodfellow等人在2014年提出[16].尽管GAN的历史相对较短,但它已广泛应用于轴承故障诊断领域[17,18].Lee等人将GAN与自适应综合采样方法相结合修正了过采样技术,与标准过采样技术相比显示了采用GAN的优越性[19].Liu等人提出了一种称为分类对抗自动编码器的改进GAN框架,该框架通过自动训练自动编码器,并在潜在编码空间上施加先验分布.然后,鉴别器尝试通过平衡示例与其预测的分类类别分布之间的相互信息来对输入示例进行聚类.在不同的信噪比和不同的电机负载下进行的实验表明,提出的模型更有利于学习数据的有用特征[20].与文献[20]类似,受GAN的启发,Zhang等人提出了一种新的对抗式自适应一维CNN模型[21](Adversarial adaptive 1-D convolutional neural networks,A2CNN).实验表明,A2CNN具有很强的故障诊断能力和域间迁移能力.Xie等人提出了一种基于不平衡数据集的深度卷积生成对抗网络[22](Deep Convolution Generating Adversarial Network,DCGAN)的故障诊断新方法.使用DCGAN模型平衡数据后,提取基于时域和频域数据的统计特征,以训练SVM分类器进行轴承故障分类.所提出的DCGAN方法的训练和测试准确性均比其他类平衡方法(包括随机过采样,随机欠采样和合成少数过采样技术)表现出更好的性能.

尽管以上基于GAN的研究取得了一定的成绩,但GAN的训练过程还存在一些不足:1)由于实际训练样本量很小会导致模型产生一组无意义的噪声,这样GAN根本就不能学习真实数据的分布.2)GAN在训练过程中存在梯度消失问题,会导致模型训练失败.若产生的样本质量较差,则利用GAN生成新样本的方法来促进故障诊断将会无效.

针对上述问题,本文设计了一种新的GAN生成器,来生成更多可判别的故障样本.该生成器的输入为由卷积神经网络提取的不平衡故障的特征,而不是故障样本.生成器的训练损失函数中添加了故障特征和故障诊断误差,而不是只以传统GAN的数据分布一致性为损失项.

本文的后续内容安排如下:第2部分简要介绍了系统框架,第3部分介绍了改进方法,第4部分是实验结果及分析,最后一部分是总结.

2 系统框架

2.1 卷积神经网络

最近,CNN在实际应用中取得了巨大的成功,特别是在图像分类领域[23,24].深度卷积神经网络是一种由分层排列的可训练层组成,能够学习有效的特征表示的神经网络结构.

图1 CWGAN模型的整体框架Fig.1 Framework of the CWGAN model

图像分类任务中的典型卷积层包含输入I和卷积核K,二维卷积定义如下:

(1)

由于本文要处理的数据是一维振动信号,将一维卷积应用于每个卷积层.从(1)式看,当m=1时,上式表示的就为一维卷积.具体来说,一维卷积可以用以下方程来计算:

(2)

对于分类问题,完全连接层应该连接到输出分类结果的最后一个卷积层上.完全连接层的定义为:

yl=φ(Wlyl-1+bl)

(3)

(4)

其中F是Frobenius范数.

2.2 生成对抗网络

生成对抗网络是一种强大的组合神经网络,包括生成器(Generator,G)和鉴别器(Discriminator,D).生成器(G)和鉴别器(D)之间的对抗训练是通过公式(5)实现的:

(5)

其中E代表期望,Pr是真实数据样本分布,Pg是生成数据样本分布.原始GAN有一个缺点:判别器训练地越好,生成器的梯度消失越严重.具体来说,对于一个样本x,判别器损失函数为:

-Pr(x)logD(x)-Pg(x)log[1-D(x)]

(6)

对D(x)求导,得到判别器最优函数:

(7)

代入生成器损失函数L(G)=-Ex:Pg[D(x)],得到JS散度:

(8)

在这样的情况下,若Pr和Pg的交集为零时,则生成器的损失函数恒为零,其梯度会消失.针对这个问题,本文用Wasserstein距离来代替JS散度.使用Wasserstein距离的优势在于即使Pr和Pg两个分布没有重叠,依然能够度量这两者之间的距离.WGAN将训练D和G的问题变为:

(9)

前两项是Wasserstein距离估计的实现,最后一项是网络正则化的梯度惩罚项.通过实验验证,与原始的GAN相比,WGAN的收敛性更好.

3 改进方法

在实际的工业机械运行过程中,大多数情况下都是在

正常条件下运行的.因此故障条件下的数据相对稀缺,这会导致训练深度模型的数据集不平衡.当数据集不平衡时,很难基于传统的深度学习算法构造准确的故障分类器.本文将CNN强大的特征提取功能与WGAN的数据生成功能相结合来解决此问题.

3.1 生成器设计

为了充分利用不平衡类样本的信息,本文考虑了使用卷积神经网络来提取不平衡类样本的特征,并将样本特征损失添加至生成器的训练损失函数中.然后,对由生成器生成的特征进行解码以获得生成的样本.具体过程如下:

首先,将随机数Z输入卷积神经网络来生成Xfeaturefake.

hz=fθG1(Z)=σ1(WG1Z+bG1)

(10)

Xfeaturefake=fθG2(hz)=σ1(WG2hz+bG2)

(11)

其中θG1={WG1,bG1}和θG2= {WG2,bG2}分别用于连接卷积神经网络的输入层和隐藏层,隐藏层和输出层.WG1和WG2是权重矩阵,bG1和bG2是偏差,σ1是双曲正切激活函数.

为了获得生成的样本Xfake,需要对Xfeaturefake进行解码.本文使用自动编码器的解码网络对Xfeaturefake进行解码.使用不平衡类的样本Xreal训练卷积神经网络和自动编码器.具体过程可以表示为等式(12)和式(13).

Xfeaturereal=fθCNN(Xreal)=σ1(WCNNXreal+bCNN)

(12)

(13)

其中Xfeaturereal是Xreal的特征向量,θCNN= {WCNN,bCNN}是CNN的特征提取网络的参数,而θAE={WTAE,bAE}是相应的解码器网络参数.解码器在Xfeaturefake上的解码过程可以表示为:

(14)

3.2 损失函数设计

对于传统的GAN,只需最小化下式中确保原始样本Xreal和生成的样本Xfake的分布一致性的交叉熵损失函数即可优化生成器网络参数.

(15)

为了生成更多有助于故障诊断的合格故障样本,本文使用特征向量Xfeaturereal和基于CNN的故障诊断判别器的故障诊断结果来指导生成器的训练.通过最小化公式(16)中定义的新损失函数,可以优化生成器的网络参数.

LG=Lg+Lfeature-error+Lfault-error

(16)

(17)

(18)

其中Lg可以指导生成器学习原始样本的分布.Lfeature-error使生成器生成的样本特征尽可能接近原始样本的特征.Lfault-error使生成的样本符合故障诊断的最终目的.将Lfeature-error和Lfault-error加入损失函数中将更有利于故障诊断的进行.

4 实验结果及分析

4.1 参数配置及实验数据集

本文的实验环境配置为:i9-9900KF 3.60GHz的处理器和NVIDIA GTX2080Ti的图形显卡,实验在Python3.6和TensorFlow1.14.0下进行的.

为了验证本文提出的卷积神经网络优化的生成对抗网络的故障诊断方法的性能,使用西储大学(CWRU)提供的公开轴承数据集.选取转速为1730r/min、采样频率2kHz的驱动端轴承故障数据作为实验数据.轴承故障有3种类型:球形故障,内圈故障和外圈故障,而每种故障类型的尺寸分别包含0.007英寸、0.014英寸和0.021英寸3种类型,加上正常的情况,因此总共有10种类型的故障标签.如表1所示.

表1 故障类型及对应标签Table 1 Failure type and corresponding label

4.2 评价指标

在为了全面评价模型的性能,本文选用准确率、召回率、F1值和精确度作为模型的评价指标.4个指标对应的计算公式如式(19)到式(22)所示.

表2 真实标签和预测的混淆矩阵Table 2 Confusion matrix that counts true labels and predictions

(19)

(20)

(21)

(22)

本文通过ROC曲线下面积的大小(Area Under the Curve,AUC)进行比较模型之间的准确度差异.AUC度量了分类器分类样本的性能,AUC的计算公式如下式所示.

(23)

其中,n0和n1分别表示反例和正例的个数,ri为第i个反例在整个测试样例中的排序.

4.3 损失函数图像分析

为了证明WGAN的收敛性能优于比原型网络GAN,本文在生成器和鉴别器上分别进行了对比试验,如图2所示和图3所示.两个损失值变化趋势图中的两条曲线分别是GAN和WGAN生成器和鉴别器上损失函数值的变化趋势图.以鉴别器为例,从图上可以看出两个网络的鉴别器的损失值在整个训练过程中都是逐渐减小的.在GAN的训练过程中,损失值的浮动变化较大,在训练迭代至100,000次时,损失值仍未收敛.但是,WGAN的损失值在训练过程中不断减小,直到减小到接近于0时,网络开始收敛,这反映了鉴别器的鉴别能力在训练过程中不断增强的过程.

图2 GAN和WGAN的生成器损失值变化趋势Fig.2 GAN and WGAN generator loss value trends

图3 GAN和WGAN的鉴别器损失值变化趋势Fig.3 Trend of discriminator loss values for GAN and WGAN

4.4 生成效果分析

为了评价数据生成的效果,本文从定性和定量两个角度对原数据与生成数据进行分析.以标签为4的故障类型为例,首先采用傅里叶变换对原始信号和GAN与CWGAN生成的信号在频域进行分析,结果如图4所示.其中图4(a)展示的为原始信号在时域与频域上的变化,图4(b)展示的为GAN生成的信号在时域与频域上的变化,图4(c)展示的为基于Wasserstein距离引导的卷积生成对抗网络(Convolutional Wasserstein Generative Adversarial Network,CWGAN)生成的信号在时域与频域上的变化.从图中可以看出,CWGAN的生成信号效果优于原始GAN的生成效果.

为了定量地分析原始数据和生成数据的差异,本文选取弗雷歇曲线距离函数计算原始信号曲线L与生成信号曲线W之间的弗雷歇距离F及相似度S=1/F.以标签为0、1、4、7四类故障为例,计算的结果如表3所示.从表3中可以看出,改进模型监督生成的信号相比与原始GAN监督生成的信号与原始信号之间的相似度更大,验证了本文提出的模型的有效性.

4.5 分类结果

为了验证本文所提出的算法的优越性,在本节实验中,对于每一次实验,都随机选取5类故障,并从这5类故障的原数据集中随机选取500个样本作为训练集,250个样本作为验证集,400个样本作为测试集;对于另外的5类故障类型,每种故障类型中都随机选取1000个样本作为训练集,250个样本作为验证集,400个样本作为测试集.对于不平衡数据集中的稀少数据,除SVM方法外,其余各对比方法采取不同的增强策略,使每类故障的训练集数目都为1000个样本.分别使用SVM、带有过采样的CNN、带有下采样的CNN、GAN-CNN与本文所提出的模型CWGAN进行对比,相应的结果如表4所示.

图4 原始信号与生成信号Fig.4 Original and generated signals

表3 生成信号与原始信号的相似度度量Table 3 Similarity measure between the generated signal and the original signal

由表4可知,基准模型SVM对于不平衡的数据集的分类效果较差,平均准确度只有77%.分别使用两种通用的数据增强方法对CNN分类器进行增强,通过下采样增强方式增强的分类器的准确度高于过采样增强的分类器的准确度.本文还进行原始GAN生成数据与提出的模型之间的对比,结果表明,本文所提出的模型能更准确的学习到数据的分布及特征,为分类任务提供更高质量的生成数据.

表4 不同算法之间的对比Table 4 Comparison between different algorithms

图5 原始GAN-CNN与CWGAN准确度对比Fig.5 Comparison of original GAN-CNN and CWGAN accuracy

本文提出的轴承故障诊断方法针对数据集中的10类故障模式,均能够准确地诊断出待识别信号所对应的故障模式,而且平均诊断准确度达到了96%.因此,本文中的轴承诊断方法对于轴承故障有着很好的识别效果.

5 结 论

本文针对不同类别的故障数据集不平衡时会影响神经网络模型准确度的问题,提出了一种卷积神经网络优化GAN的深度学习故障诊断方法.通过实验验证,改变生成器的网络结构并在生成器神经网络模型参数训练中引入故障特征和诊断的误差可以在一定程度上提升模型性能,可以较好地解决不平衡数据集分类问题.

猜你喜欢
轴承卷积故障诊断
基于全卷积神经网络的猪背膘厚快速准确测定
比亚迪秦EV充电系统故障诊断与排除
基于神经网络的船舶电力系统故障诊断方法
迈腾B81.8T起动机无法启动故障诊断分析
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
接触式密封在大功率半直驱永磁风力发电机应用探讨123
斯凯孚展示用于电动汽车的先进轴承产品
一种轴承拆卸装置的实用设计