使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读

基于进化算法优化GAN的轴承故障诊断  PDF

  • 李可 1
  • 贺少杰 1
  • 宿磊 1
  • 顾杰斐 1
  • 苏文胜 2
  • 卢立新 1
1. 江南大学江苏省食品先进制造装备技术重点实验室 无锡, 214122; 2. 江苏省特种设备安全监督检验研究院无锡分院 无锡, 214071

中图分类号: TH17

最近更新:2023-04-28

DOI:10.16450/j.cnki.issn.1004-6801.2023.02.013

  • 全文
  • 图表
  • 参考文献
  • 作者
  • 出版信息
目录contents

摘要

针对滚动轴承故障诊断故障样本类别不平衡的问题,提出一种基于进化算法优化的条件生成对抗网络(evolutionary conditional generative adversarial nets, 简称ECGAN)故障诊断方法。首先,利用进化算法优化条件生成对抗网络中的生成器,使其在不同的损失函数下生成与原始样本分布相似的新样本,扩充数据集;其次,将生成的样本和原始样本输入判别器,提取出样本中有效的数据特征,判断输入样本的真假和类别;最后,通过对抗学习机制优化生成器和判别器,提高网络的故障识别能力。实验结果表明,在轴承故障样本数据类别不平衡的情况下,ECGAN模型具有较好的故障诊断性能。

引 言

滚动轴承是旋转机器的重要部件,在各种机械设备中发挥了巨大作用。滚动轴承发生损坏会影响整个机械系统的运行状态,造成较大的经济损

1‑2。因此,对滚动轴承开展故障诊断研究有重大的意3

近年来,深度学习在机器学习等领域发展迅速,深度学习神经网络能自动学习数据特征,克服了人工经验选取特征的不足,拥有强大的建模和表征能

4。Mao5提出深度输出核学习的轴承故障诊断方法,在轴承故障诊断中取得了较好的结果。时培明6结合深度学习和粒子群支持向量机对中速轴大齿轮进行故障诊断,结果表明该方法效果较好。汤宝平7改进卷积神经网络(convolutional neural networks, 简称CNN),用多共振分量融合CNN对行星齿轮箱进行诊断,取得较好的效果。传统深度学习分类算法训练分类器多数建立在训练数据各类别样本量大致相当的情况下,但是实际情况中经常会遇到训练数据的某一类或者多类数据数量远大于其他类,例如机械故障诊断所采集的正常样本数据量远多于故障样本,将会导致网络的分类效果降低。

当前,主要通过数据增强与改进算法来解决数据类别不平衡分类问

8‑9。生成对抗网络(generative adversarial nets , 简称GAN10作为高效的深度学习网络,在各个领域得到了广泛运11‑12。Liu13将自编码器和生成对抗网络结合,在滚动轴承无监督诊断中获得较好的分类效果。GAN主要包括生成器和判别器,可以学习真实样本的分布,通过对抗训练生成以假乱真的样14。但是GAN在训练过程中容易出现梯度消失和模式崩溃等问题,导致生成的样本质量较差,难以达到预期目15‑16

针对以上问题,笔者提出ECGAN轴承故障诊断方法。首先,通过进化算法优化生成器,使其在生成数据时有不同的选择方向,通过判别器选择表现较好的生成器进行下一次迭代,生成具有多样性的高质量样本以扩展训练样本的数量;其次,在判别器网络中加入分类器,生成的样本和原始样本一起输入分类器以提高网络分类能力;最后,通过滚动轴承故障诊断实验对比CNN,GAN和ECGAN等模型的分类能力。

1 条件生成对抗网络

1.1 生成对抗网络

GAN由生成器函数(G)和判别器函数(D)组成,其流程如图1所示。

图1  GAN流程图

Fig.1  Flowchart of GAN

将真实数据和生成的数据输入D得到数据的真假概率,将随机噪声向量z输入G得到假数据Gz),网络最终目标是生成以假乱真的假数据。网络训练时,D判别输入数据的真假,G学习真实数据分布,生成可以欺骗D的假样本,然后通过对抗学习机制不断提高GD的能力。损失函数为

minGmaxDV(G,D)=Ex~Pd[logD(x)]+Ez~Pz[log(1-D(G(z)))] (1)

其中:E为数学期望;PdPz为真实数据x与随机噪声z的分布。

网络训练时,通过Adam算

17更新2个模型的参数,不断迭代直至假样本分布等于真实样本分布,达到纳什平18,训练达到最优。

1.2 条件生成对抗网络

GAN中生成器输入的是随机噪声,使得网络自由度较高,以至于训练过程不可控。针对这一问题,文献[

19]提出条件生成对抗网络(conditional generative adversarial nets,简称CGAN)),CGAN的结构如图2所示。在GAN中增加一个条件输入c来指导2个神经网络的训练,本研究c为类别标签,网络训练时将随机噪声和c拼接后输入生成器,生成受c控制的数据,同时判别器也增加条件输入,区分输入数据的真假以及是否为指定的类别。

图2  CGAN结构图

Fig.2  Structure of CGAN

CGAN的损失函数为

minGmaxDV(G,D)=Ex~Pd[logD(x|c)]+Ez~Pz[log(1-D(G(z|c)))] (2)

通过式(2)可知,GD的概率为条件概率,使得网络的计算依赖于给定的条件。因此,可以改变输入条件使模型在某方面进行训练以生成想要的数据,达到扩大指定样本的目的。

2 进化条件生成对抗网络

GAN虽然能很好地扩充数据,但是会产生模式崩塌现象(生成器将其所有的概率集中到一小块区域),或者判别器训练得比较好,生成器得不到更新,最终导致网络训练失败。因此,对GAN进行改进使生成器网络能够一直更新学习十分重要。

2.1 进化算法的使用

近年来,进化算法在建模、优化和设计等方面取得了很多成

20。在GAN的训练过程中,利用进化算法增加生成器网络可供选择的方向,采用表现较好的生成器学习真实样本分布,生成更加真实的样本,扩充少量故障样本。

笔者提出的基于ECGAN的故障诊断模型由进化算法优化改进的CGAN得到,其结构如图3所示。将Softmax分类器加入CGAN的判别器中,使其拥有分类的功能,并用进化算法优化网络的生成器。

图3  ECGAN结构

Fig.3  Structure of ECGAN

2.2 网络训练

2.2.1 D的训练过程

网络训练时,将假样本xf标记为0,真实样本xr标记为1,把真实样本和生成的假样本输入D中,输出相应的真假信息和类别信息,最小化真假标签和类别标签的交叉熵损失。具体损失函数为

Ld=Ex~Pd[log(D(x)]+   Ez~Pz,c~Pc[log(1-D(G(z,c)))]Lc=Ex~Pdata[LD(cx|x)]LECGAN_D=Ld+Lc (3)

其中:LdLc分别为判别真假标签与类别标签的损失;Ex~Pd为真实数据分布;Ez~Pz,c~Pc为生成的数据分布和标签分布;LECGAN_D为ECGAN的判别器损失函数,网络训练时最小化LECGAN_D

2.2.2 G的训练过程

G训练时采用进化机制,主要分为以下3个步骤:

1) G网络的变异,即对每次迭代的G网络进行变异操作,即采用不同的损失函数更新参数。

2) G网络的评价,即D网络评价G生成的数据,给出相应分数。

3) G网络的选择,即根据D网络评分,选择分数高的进行下一次迭代。

式(1)经过变形可以得到

D(x)=Pd(x)/(Pd(x)+Pg(x)) (4)

当GAN网络达到最优,此时网络满足Pd(x)=Pg(x)D(x)=0.5,判别器无法分辨生成数据的真假。GAN的损失函数经过变形后可以得到真假样本的JS散度,即真假样本分布的相似度,此时最小化损失函数生成器生成的数据逐渐向原始数据靠拢。笔者引入进化算法正是优化GAN中的生成器,让生成器采用不同的损失函数进行训练(2个分布之间采用不同的度量方法)。变异细节如下。

1) 极大极小损失函数为

l1=12Ez~Pz,c~Pc[log(1-D(G(z,c)))] (5)

其中:D(G(z,c))为生成样本的判别结果。

D(G(z,c))趋向0时,函数梯度趋于消失,网络更新比较缓慢;当D(G(z,c))向1靠近时,D不能有效区分真假样本,l1会提供有效的梯度让真假分布的距离不断缩小。

2) 启发式损失函数为

l2=-12Ez~Pz,c~Pc[log(D(G(z,c)))] (6)

该函数与l1相反,当D(G(z,c))趋向0时,l2会提供有效的梯度让真假分布的距离不断缩小;当D(G(z,c))向1靠近时,D不能有效区分真假样本,函数的梯度会趋于消失。

3) 最小二乘损失函数为

l3=Ez~Pz,c~Pc[(D(G(z,c))-1)2] (7)

该损失函数与l2类似,但梯度变化平缓,在一定程度上避免了模式崩溃。3种损失函数如图4所示。

图4  3种损失函数

Fig.4  Three kinds of loss functions

首先,评价生成数据的真实性,将每批次生成的数据输入D中,计算出f1

f1=D(G(z,c)) (8)

其次,计算生成数据的多样性f2

f2=-logD-Ex[log(D(x))]-Ez,c[log(1-D(G(z,c)))]-Ex[LD(cx|x)] (9)

其中: D为梯度算子。

利用D的梯度来计算生成数据的多样性,如果生成数据多样性分数高,对应D的梯度较小,可以有效避免模式崩溃等问题。最终的评分函数为

f=f1+f2 (10)

选择分数较高的G进行下一次迭代。具体损失函数为

l[l1,l2,l3]lgc=Ez~Pz,c~Pc[LD(c|G(z,c))]LECGAN_G=l+lgc (11)

其中:l为真假标签的损失函数;lgc为类别标签的损失函数;LECGAN_G为ECGAN的生成器损失函数。

2.3 故障诊断算法的实现

基于ECGAN的轴承故障诊断流程如图5所示,主要步骤如下:

图5  基于ECGAN的故障诊断流程图

Fig.5  Flow chart of fault diagnosis based on ECGAN

1) 获取实验平台运行时轴承的振动信号,分为训练集和测试集,将训练集输入ECGAN模型;

2) 通过对抗学习机制,训练ECGAN中的生成器和判别器,直到纳什平衡;

3) 将测试样本输入模型,输出诊断结果。

3 实验验证

3.1 实验方法和数据采集

为验证本研究方法的有效性,采用如图6所示的滚动轴承故障诊断实验平台,将故障轴承安装于Marathon KVM 56T34F5301J P电动机的末端,在靠近电机的外部轴承端布置传感器,设定主轴转速为1 450 r/min,采样频率为48 kHz。滚动轴承的各项参数见表1,其4种状态的振动信号见图7

图6  滚动轴承故障诊断实验平台

Fig.6  Rolling bearing experiment platform

表1  滚动轴承参数
Tab.1  Basic parameters of the rolling bearing
参数数值
轴承滚珠数 8
节圆直径/mm 33.48
轴承滚珠直径/mm 7.94
外圈故障尺寸/mm 3.048
内圈故障尺寸/mm 4.95

图7  滚动轴承4种状态振动信号

Fig.7  Vibration signals of rolling bearing for four state modes

本研究滚动轴承故障类型分别为轴承内圈、轴承外圈和滚动体故障,训练数据集中正常数据为2 400个,正常数据与故障数据的比值分别为48∶1,24∶1,12∶1,8∶1和6∶1,随机选择每种故障的50,100,200,300和400个数据作为训练样本,每类数据测试集各100个,共400个测试数据。具体样本数据如表2所示。

表2  具体样本数据
Tab.2  Specific sample data
分类

数据

比例

数据类型

正常

数据

轴承内圈故障轴承外圈故障

滚动体

故障

训练 6∶1 2 400 400 400 400
8∶1 300 300 300
12∶1 200 200 200
24∶1 100 100 100
48∶1 50 50 50
测试 1∶1 100 100 100 100

本研究开发故障诊断程序的软件工具为pycharm2018,编程语言为Python,算法的编程框架为tensorflow1.13.1。用于轴承故障诊断的计算机为intel酷睿i5‑8300H处理器,具有8核和8 GB内存。

3.2 故障诊断结果和分析

针对数据不平衡问题中正常数据充足而故障数据较少的情况,利用生成对抗网络产生符合原始数据分布的新样本,用足够多的样本训练分类器,增强网络故障诊断的能力。

3.2.1 数据不平衡时无处理的结果

首先,研究数据类别不平衡对深度学习的影响,此时不对数据进行预处理。为保证结果稳定性,计算10次实验的平均值作为最终结果。笔者采用深度卷积生成对抗网络(deep convolutional generative adversarial networks, 简称DCGAN

21的网络结构,使用CNN对数据进行分类。4种网络的分类器结构相同,如表3所示,不同模型的分类准确率如图8所示。可以观察到,当数据不平衡比例增大时,CNN的准确率呈下降趋势,这表明传统卷积神经网络的分类性能易受数据不平衡的影响,当数据不平衡比例较大时会降低准确率。

表3  网络的分类器结构
Tab.3  The classifier structure of the network
层数分类器结构
1 卷积层:5×5卷积核,64个通道
2 BN处理,lrelu激活
3 卷积层:5×5卷积核,64个通道
4 BN处理,lrelu激活
5 卷积层:5×5卷积核,64个通道
6 BN处理,lrelu激活
7 卷积层:5×5卷积核,64个通道
8 BN处理,lrelu激活
9 卷积层:5×5卷积核,64个通道
10 全连接层1:判别真假;全连接层2:分类

图8  不同模型的分类准确率

Fig.8  Classification accuracy of different models

3.2.2 数据不平衡时加入采样处理的结果

利用采样的方法,从少数类的样本中随机采样来扩充故障数据。由图8可以看出,对少数类采样后,CNN网络的诊断准确度有所提升;但是当样本数据类别不平衡比例很高时(24∶1和48∶1),网络性能也会变得很差。

3.2.3 数据不平衡时生成对抗网络的诊断结果

生成对抗网络中的生成器模型旨在为故障分类训练一个比较好的判别模型。采用CGAN模型对数据分类,生成对抗网络的性能比采样后的CNN好。CGAN网络在数据比例为6∶1到24∶1时,准确率较高。在比例极度不平衡情况下(48∶1),准确率为0.887 5,此时CGAN网络出现模式崩溃,导致生成样本的质量较差,网络无法充分学习样本特征,分类器效果不佳。

针对CGAN的问题,ECGAN模型使用几种不同的损失函数,在训练过程中,每次迭代都选取表现较好的生成器,避免了模式崩溃的问题。由图8可以看出,ECGAN网络轴承故障诊断性能优越,整体高于CGAN模型,当数据比例为48∶1时,准确率达到0.944 5,比CGAN高出5.7%。通过对比实验可知,笔者提出的ECGAN模型针对有限的少量样本时可以取代采样,并获得较好的故障诊断能力。

4 结 论

1) ECGAN通过学习初始样本,生成与初始样本具有相似分布的新样本,扩充了少量的故障样本。生成的样本和初始样本一起训练模型的故障分类器,提高了分类器的泛化能力,有效提升了小故障样本情况下模型的诊断准确性。

2) 利用GAN的对抗学习机制,交替训练ECGAN中的生成器和判别器,得到了较好的生成样本质量和故障诊断效果。

3) 与其他模型(CNN,CNN+采样,CGAN)相比,ECGAN具有更好的滚动轴承故障诊断性能。

参 考 文 献

1

刘长良武英杰甄成刚.基于变分模态分解和模糊C均值聚类的滚动轴承故障诊断[J].中国电机工程学报20153513): 3358-3365. [百度学术] 

LIU ChangliangWU YingjieZHEN Chenggang. Rolling bearing fault diagnosis based on variational mode decomposition and fuzzy C means clustering[J]. Proceedings of the CSEE20153513):3358-3365. (in Chinese) [百度学术] 

2

许迪葛江华王亚萍.量子遗传算法优化的SVM滚动轴承故障诊断[J].振动、测试与诊断2018384): 843-851. [百度学术] 

XU DiGE JianghuaWANG Yapinget al. Rolling bearing fault diagnosis of SVM based on improved quantum genetic algorithm[J]. Journal of Vibration, Measurement & Diagnosis, 2018384): 843-851. (in Chinese) [百度学术] 

3

MURUGANATHAM BSANJITH M AKRISHN-AKUMAR Bet al. Roller element bearing fault diagnosis using singular spectrum an analysis[J]. Mechanical Systems and Signal Processing201335150-166. [百度学术] 

4

王应晨段修生. 深度学习融合模型在机械故障诊断中的应用[J]. 振动、测试与诊断2019396): 1271-1276. [百度学术] 

WANG YingchenDUAN Xiusheng. Improved deep learning fusion model in fault diagnosis[J]. Journal of Vibration, Measurement & Diagnosis, 2019396): 1271-1276. (in Chinese) [百度学术] 

5

MAO WFENG WLIANG X. A novel deep output kernel learning method for bearing fault structural diagnosis[J]. Mechanical Systems and Signal Processing2018117293-318. [百度学术] 

6

时培明梁凯赵娜.基于深度学习特征提取和粒子群支持向量机状态识别的齿轮智能故障诊断[J].中国机械工程2017289): 1056-1061,1068. [百度学术] 

SHI PeimingLIANG KaiZHAO Naet al. Intelligent fault diagnosis for gears based on deep learning feature extraction and particle swarm optimization SVM state identification[J]. China Mechanical Engineering2017289):1056-1061,1068. (in Chinese) [百度学术] 

7

汤宝平熊学嫣赵明航.多共振分量融合CNN的行星齿轮箱故障诊断[J].振动、测试与诊断2020403):507-512. [百度学术] 

TANG BaopingXIONG XueyanZHAO Minghanget al. A multi-resonance component fusion based convolutional neural network for fault diagnosis of planetary gearboxes[J]. Journal of Vibration, Measurement & Diagnosis, 2020403): 507-512. (in Chinese) [百度学术] 

8

PAN ZMENG ZCHEN Zet al. A two-stage method based on extreme learning machine for predicting the remaining useful life of rolling-element bearings[J]. Mechanical Systems and Signal Processing2020144106899. [百度学术] 

9

REZA GKENAN Y. SVD and hankel matrix based de-noising approach for ball bearing fault detection and its assessment using artificial faults[J]. Mechanical Systems and Signal Processing201670/71):36-50. [百度学术] 

10

GOODFELLOW I JPOUGET-ABADIE JMIRZA Met al. Generative adversarial networks[J]. Advances in Neural Information Processing Systems201432672-2680. [百度学术] 

11

LU QTAO QZHAO Yet al. Sketch simplification based on conditional random field and least squares generative adversarial networks[J]. Neurocomputing2018316178-189. [百度学术] 

12

SCHLEGL TSEEBÖCK PWALDSTEIN S Met al. F-AnoGAN: fast unsupervised anomaly detection with generative adversarial networks[J]. Medical Image Analysis20195430-44. [百度学术] 

13

LIU HZHOU JXU Yet al. Unsupervised fault diagnosis of rolling bearings using a deep neural network based on generative adversarial networks[J]. Neurocomputing2018315412-424. [百度学术] 

14

RICK GSEZER KTHEO Get al. On the benefit of adversarial training for monocular depth estimation[J]. Computer Vision and Image Understanding2020190102848. [百度学术] 

15

MA XJIN RSOHN K Aet al. An adaptive control algorithm for stable training of generative adversarial networks[J]. IEEE Access20197184103-184114. [百度学术] 

16

CRESWELL AWHITE TDUMOULIN Vet al. Generative adversarial networks: an overview[J]. IEEE Signal Processing Magazine2017351):53-65. [百度学术] 

17

ZHOU YZHANG MZHU Jet al. A randomized block-coordinate adam online learning optimization algorithm[J]. Neural Computing and Applications20203216):12671-12684. [百度学术] 

18

林懿伦戴星原李力. 人工智能研究的新前线:生成式对抗网络[J]. 自动化学报2018445):775-792 . [百度学术] 

LIN YilunDAI XingyuanLI Liet al. The new frontier of AI research: generative adversarial networks[J]. Acta Automatica Sinica2018445):775-792. [百度学术] 

19

ZHENG TSONG LWANG Jet al. Data synthesis using dual discriminator conditional generative adversarial networks for imbalanced fault diagnosis of rolling bearings[J]. Measurement2020158107741. [百度学术] 

20

王丽萍丰美玲邱启仓. 偏好多目标进化算法研究综述[J]. 计算机学报20196):1289-1315. [百度学术] 

WANG LipingFENG MeilingQIU Qicanget al. Survey on preference-based multi-objective evolutionary algorithms[J]. Journal of Computer Science and Technology20196):1289-1315. [百度学术] 

21

RADFORD AMETZ LCHINTALA S. Unsupervised representation learning with deep convolutional generative adversarial networks[EB/OL]. (2015-11-19) [2020-9-13]. https:∥arxiv.org/pdf/ 1511.06434.pdf. [百度学术]