基于DCGAN的机械振动信号扩充方法

2021-12-09 12:42杨超越唐建翟凯
内燃机与配件 2021年23期
关键词:机械振动

杨超越 唐建 翟凯

摘要:为了解决机械故障诊断中信号样本不足这一问题,本文将DCGAN(Deep Convolutional Generative Adversarial Nets)应用于故障诊断中广泛使用的轴承振动加速度信号,证明了生成信号在时频域表现与真实信号一致。通过SVM对比分类实验,证明了利用DCGAN生成的振动信号可以用于解决故障诊断中的样本缺少类间数据不均衡问题,以达到提高故障诊断准确率的目的。

Abstract: In order to solve the problem of insufficient signal samples in mechanical fault diagnosis, DCGAN (Deep Convolutional Generative Adversarial Nets) is applied to the bearing vibration acceleration signal which is widely used in fault diagnosis to generate vibration signals under various working conditions. It is proved that the generated signal is consistent with the real signal in time and frequency domain. Through the comparative classification experiment of SVM, the results show that the correct rate of fault classification can be improved by adding generated vibration. It is proved that the vibration signal generated by DCGAN can be used to solve the problem of lack of inter-class data imbalance in fault diagnosis, so as to improve the accuracy of fault diagnosis.

关键词:生成对抗网络;振动信号;机械振动

Key words: GAN;vibration signal;mechanical vibration

中图分类号:TH113.1                                  文献标识码:A                                  文章编号:1674-957X(2021)23-0113-03

0  引言

基于机器学习的智能模式识别方法近年来快速发展,在语音识别、自然语言处理等领域发展迅速。近年来,深度网络越来越多地应用到故障诊断。

深度学习模型一般需要大量的样本才能保证良好的泛化和拟合能力,然而装备正常运行状态下获取故障振动信号数量有限,并且各类故障信号之间存在样本不平衡和典型故障样本缺少的情况,最理想的解决方法是根据已有样本学习信号的特征并根据特征进行扩展。目前开始有基于深度网络进行机械振动信号生成的研究,运用的模型主要有自动编码器(Auto-Encoder,AE)[1]、变分编码器(Variational Auto-Encoder,VAE)[2]等。

由于自動编码器、变分编码器设计的初衷是面向数据压缩,模型优化的最终目标是实现输出数据与输入数据的均方误差最小化,所以会导致生成数据仅仅是对真实数据的简单复制。GAN(Generative Adversarial Networks)[3]是由Ian Goodfellow于2014年提出的生成模型,由于其自适应学习、对抗训练的优点,已经开始受到智能故障诊断研究人员的关注。

柴志豪[4]利用GAN生成了轴承振动信号的快速傅里叶变换(FFT)频域图,实现了频域图数据库的扩充,证明了利用GAN生成频域图的可行性,提高了故障识别率。何强[5]首先对一维轴承振动信号进行短时傅里叶变换(STFT),得到时频图,将时频图放入WGAN-GP中进行对抗训练,学习到二维时频图的特征。然而这必须将一维信号变换成二维信号,变换方法参数的选择存在人为主观性。使用Deep Convolution GAN(DCGAN)用来生成轴承振动信号的时频图,此方法虽然扩充了数据集,然而时域信号通常携带大量的隐含信息,而且在变换的过程中存在人为主观因素,产生偏差。

基于上述思考,本文尝试将一维卷积运算引入GAN的生成器和判别器中,构建一维DCGAN,通过对抗训练自适应地获取信号的特征,进而对生成信号的时域、频域等特征进行分析,以对生成信号的逼真度和可信性进行评价,实现一维振动信号的生成,并最终实现信号样本库的扩充。

1  基于一维DCGAN的振动信号生成

1.1 GAN原理

GAN的基本结构如图1,由生成器G(Generator)和判别器D(Discriminator)组成,生成器的输入为符合高斯分布的随机噪声,输出为学习到的生成数据。判别器计算生成器的输出和真实信号之间的JS(Jensen-Shannon)距离,用来判别生成信号的逼真度,进而反向调节生成器的参数,提高生成器生成高逼真度信号的能力,判别器区分真实信号与生成信号的能力。这样,生成器和判别器交替训练,生成能力和判别能力也在对抗训练中交替上升。

训练过程如图2所示,判别器的目的是对真实数据的判别趋近真(1),对生成器生成数据的判别趋近假(0)。而生成器的目的是使判别器对生成数据判别趋近于真,达到以假乱真的目的,并根据损失更新生成器和判别器的参数,训练的目标函数如式(1):

■■(1)

式中,Pdata (x)为真实数据,G(z)为生成数据,Z为输入的符合高斯分布的随机噪声。

1.2 DCGAN

为了利用GAN强大的生成能力,生成器和判别器从一维振动信号出发,经过生成器输出生成信号,判别器输出损失。

一维GAN中引入卷积层可以根据信号的不同自适应地改进核函数并学习到信号的特征。

而原始GAN中G和D的网络使用的是全连接层。与全连接层相比,卷积层可以在减少大量参数的同时减少训练时间。

1.3 一维DCGAN

一维DCGAN中的生成器和判别器都是一维卷积网络,主要由卷积层、上采样层、批标准化和激活函数组成。

1.3.1 结构设计和参数

为了使生成器的输入较稳定,设置输入为长度是100的符合标准正态分布的一维随机噪声,经过两次上采样和卷积层,将信号长度扩展为1024。具体过程为输入信号经过全连接层,映射为32768(256*128)长度,后接Reshape层将信号整合为大小为[128 256]的矩阵,卷积层1卷积核个数为128,大小为5,经过上采样层1输出为[512 128]的矩阵,卷积层2的卷积核个数为32,步长为5,上采样层2输出为[1024 32]的矩阵,卷积层3卷积核个数为1,大小为5,之后输出为[1024 1]即为信号的长度。全连接层和卷积层1-2的激活函数为ReLU,可以避免“梯度消失”问题,同时也能加快收敛速度。卷积层3使用双曲正切激活函数tanh,使输出的值在(-1,1)范围内。

判别器构建原理与生成器类似,输入为真实信号或者生成信号,维度为[1024 1],卷积层1个数为32,和大小为5,卷积层2个数为64,大小为5,卷积层3个数为128,大小为5,每个层卷积层后添加Dropout层,防止发生过拟合,导致生成数据与真实数据高度重合。卷积层后的激活函数为LeakyReLU。

1.3.2 算法细节

本文模型采用的是Keras2.2.4,训练过程优化器为Adam,学习率为0.0002,批大小为64,当目标函数收敛且稳定时,训练结束。

2  实验验证

实测信号为同一轴承故障的不同损伤程度振动信号,由于不同损伤程度振动信号的时频图区别非常小,很难分辨,故通过DCGAN生成各种损伤程度的振动信号,用来增加信号的多样性。为表述方便,将0.1778mm、0.3556mm、0.5334mm、0.7112mm故障分别记为故障1~故障4,具体数据如表2。

2.1 实测信号时频图

从FFT变换分析,原信号的频率主要集中在0.6kHz、1.4kHz、2kHz和2.5kHz范围,最大分量在1.4kHz。从时频图分析,在1.4kHz的频率下,间隔从0.005s至0.02s之间不等,且存在高频成分干扰。生成信号在频率和振幅等各个方面都很好地模拟了原信号。

故障2到故障4从FFT变换分析,主要集中在600Hz、1400Hz、2600-1800Hz和3500Hz,生成信号的频率也主要集中在以上频率,从小波变换分析,冲击间隔0.005s至0.015s,故障2至故障4很难从时域、频域和时频域区分每种故障的时域或频域特征。

故障2、故障3和故障4三种振动信号,频率主要集中在0.6kHz,1.3kHz,2.5-2.9kHz和3.4-3.7kHz范围,且间隔在0.003s-0.015s,且生成信号在时域和频域都准确地模拟了原信号。

2.2 基于SVM的分类结果分析

针对小样本分类,由于样本数少,防止过拟合常用的方法有SVM。同时实验结果表明,在KNN、朴素贝叶斯等分类模型中SVM效果最为优秀。

每类故障采用70个真实故障信号、依次加入100个生成信号进行SVM训练,30个信号进行测试,分别进行了六次实验,取平均分类正确率,测试分类正确率如图5。

未加入生成信号用SVM分类的混淆矩阵如表3,其中故障一分类正确率为100%,故障2至4分类正确率较低,这符合从时频图上的直觉观察。

加入400生成信号用SVM分类的混淆矩阵如表 4,从实验结果可知,随着生成信号个数地增加,分类正确率也随之增加,故障4分類正确率已达到93%,效果明显,证明生成信号在某些域可以比真实信号更接近超平面的距离,对超平面的确定比真实信号更具有价值。

实验表明,用一维DCGAN生成的一维振动信号在时域和频域表现与原信号相差无几,说明G和D学习到了原始信号的时域和频域特征,并在SVM的对比分类实验中提高了分类正确率。

在SVM分类中,对超平面和边距起决定性作用的是距离决策面最近的样本。在真实数据的实验中,由于样本数过于少,且数据维度高,样本覆盖范围小,对决策面的支持向量少或者难以覆盖全部的样本范围,只依赖真实数据训练出的模型鲁棒性差,生成数据增加了样本各个维度的多样性,样本覆盖范围大,生成信号会覆盖真实数据未包括的隐含空间,对决策面的支持向量多,决策面更准确。

还有类生成信号在低频表现即使与真实信号略有区别,即使如此,与异类信号相比,距同类信号也要更近。对超平面的决策也有贡献。在SVM分类的实验中,用GAN生成数据的方法对数据的宽容度较高,即生成的数据在时频图上不一定要和原信号保持一致,甚至为了避免过拟合,可以将SVM的训练数据中添加。

3  结论

①从模拟信号的实验结果表明,生成对抗网络可以学习到线性调频信号、复杂周期信号、准周期信号和复杂调频信号的频率变化,且有降噪作用。②在SVM对比分类实验中,随着增加生成信号的个数,分类正确率逐步增加,说明生成信号可以学习到真实信号的特征,增加样本多样性。

参考文献:

[1]葛磊蛟,廖文龙,王煜森,等.数据不足条件下基于改进自动编码器的变压器故障数据增强方法 [J].电工技术学报:1-11.

[2]张弛,吴东,王伟,等.不平衡样本下基于变分自编码器预处理深度学习和DGA的变压器故障诊断方法[J].南方电网技术, 2021,15(03):68-74.

[3]IAN G, JEAN P-A, MEHDI M, et al., editors. Generative adversarial nets. Advances in neural information processing systems; 2014.

[4]柴志豪.基于GAN的轴承故障诊断方法[J].内燃机与配件, 2020(14):126-7.

[5]何强,唐向红,李传江,等.负载不平衡下小样本数据的轴承故障诊断[J].中国机械工程,2021,32(10):1164-1171,1180.

猜你喜欢
机械振动
高中物理教科书主题内容静态难度比较分析及启示
布地奈德雾化吸入联合机械振动排痰治疗喘息性肺炎临床分析
浅析机械加工过程中机械振动的原因及对策
电梯运行抖动的成因分析及对策
对轧钢机械振动故障的诊断研究
风力发电机组实施智能监控的必要性与前景
对电梯曳引机异常噪声和振动的理解和分析
水轮发电机组运行中的振动分析
机械生产中工艺系统的振动
机械振动易错问题分析