• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 事迹材料
  • 申请书
  • 作文大全
  • 读后感
  • 调查报告
  • 励志歌曲
  • 请假条
  • 创先争优
  • 毕业实习
  • 财神节
  • 高中主题
  • 小学一年
  • 名人名言
  • 财务工作
  • 小说/有
  • 承揽合同
  • 寒假计划
  • 外贸信函
  • 励志电影
  • 个人写作
  • 其它相关
  • 生活常识
  • 安全稳定
  • 心情短语
  • 爱情短信
  • 工会工作
  • 小学五年
  • 金融类工
  • 搞笑短信
  • 医务工作
  • 党团工作
  • 党校学习
  • 学习体会
  • 下半年工
  • 买卖合同
  • qq空间
  • 食品广告
  • 办公室工
  • 保险合同
  • 儿童英语
  • 软件下载
  • 广告合同
  • 服装广告
  • 学生会工
  • 文明礼仪
  • 农村工作
  • 人大政协
  • 创意广告
  • 您现在的位置:六七范文网 > 其它相关 > 正文

    基于深度卷积GRU的转子系统故障诊断*

    来源:六七范文网 时间:2023-05-13 23:45:05 点击:

    刘自然,王煜轩

    (河南工业大学机电工程学院,郑州 450001)

    转子系统是旋转机械的重要部件,在设备运行过程中起着传递力矩和支撑旋转体的作用,因而转子系统的健康状态决定了机械设备的安全性和稳定性[1]。当转动部件受到外部因素影响发生微弱故障时,由于转子系统多在繁杂多变的载荷条件下运行,使得强噪声背景下的故障信号难以被察觉,进而演变为严重故障引发经济财产损失甚至人员安全事故[2]。

    门控循环单元网络(GRU)的隐藏层之间互相连接、传递参数信息,使其拥有处理时间序列的能力,最初被应用在自然语言处理和图像识别领域。传感器采集到的振动信号也是一种时间序列数据,现有研究表明,门控循环单元网络在解决故障诊断问题时具有独特优势[3]。WU等[4]提出双向GRU和长短期记忆(LSTM)文本信息处理算法,解决了语义依赖和梯度消失的同时提高了分类精度。曹梦婷等[5]结合GRU和迁移学习提出一种滚动轴承故障诊断方法,实现了小样本数据集下的故障诊断。张涵等[6]基于GRU网络提出一种电力系统频率计算方法,通过GRU提取输入特征并拟合频率响应曲线。基于GRU的时序数据处理方法通过深层网络结构挖掘输入数据的特征,并设置对应的门机制保留数据中的历史信息,现有研究表明基于GRU的方法具有优异的时序数据处理能力,因此可以在故障诊断中取得可靠的诊断结果。

    但是,转子系统普遍存在故障特征微弱难以提取的问题,GRU难以全面提取表征故障状态的特征信息,需要对其特征提取能力进行优化。此外,故障诊断方法需要应用在多种工业场合中,但现有方法主要针对具体故障的诊断过程,不同的故障类型需要训练多个诊断模型,花费大量的时间成本且泛化性差。

    针对以上问题,本文进行GRU故障诊断方法研究。结合卷积神经网络中的卷积和池化运算提出一种DCGRU方法,利用门控循环单元充分保留并提取原始振动信号中的时序信息,提高故障诊断模型对关键信息的表征能力。

    1.1 GRU原理

    门控循环单元(GRU)使用门机制管理信息参数,调节信息在网络中的流动。GRU包含更新门和重置门,其中更新门将输入门和遗忘门结合在一起,利用这两个门控制和更新参数信息[7]。GRU模型的结构如图1所示。

    图1 GRU算法结构图

    更新门的输入为t时刻的输入xt与上一时刻的隐藏层输出ht-1,然后输出范围在0~1之间的数值,表示保留信息的比例,从而决定ht-1对当前状态的影响。当输入样本维度为d,个数为n时的输入数据Xt∈Rn×d以及上一时刻的隐藏层状态集Ht-1∈Rn×h,可得更新门Zt与重置门Rt的计算公式为:

    Rt=σ(XtWxr+Ht-1Whr+br)

    (1)

    Zt=σ(XtWxz+Ht-1Whz+bz)

    (2)

    重置门当前时刻的输入与上一时刻隐藏层输入进行逐点相乘,通过候选隐藏状态辅助下一步的隐藏状态计算。计算结果越接近于1,则重置门保留上一时刻隐藏层的状态信息越多,反之则越少。重置门可以调节历史信息的保留内容,减少冗余参数进而降低训练难度。隐藏状态的计算公式为:

    (3)

    (4)

    重置门确定上一时刻信息的保留程度,数值越大则保留上一时刻状态信息越多;
    更新门保留信息并将当前信息与隐藏层结合,用于隐藏层节点输出的最终参数,这种结构能有效解决梯度消失和长距离依赖的问题。同时GRU内部只有一个非线性函数且精简了内部储存器Ct-1,而且减少了门的数量,极大地优化了模型结构,有效降低了训练复杂度[8-9]。

    1.2 GRU的局限性

    GRU通过前向传播与反向传播过程完成模型训练,结合上一小节对其结构的分析可知GRU具有处理时序数据的记忆功能。训练过程的数学本质是各个隐藏层中节点激活函数的嵌套,反向传播的要点在于通过链式求导法则反向逐层求解激活函数的导数和误差权重[10]。GRU网络层数较深且链式求导计算过程冗长,多个梯度叠乘极易导致梯度值趋于0,从而出现梯度消失问题。反向传播的计算路径与输入时序数据的长度成正比,对于较长的时序数据,在叠乘过程中GRU模型共享参数,由于部分项过大造成计算结果呈指数级增大,出现梯度爆炸问题使得模型无法收敛[11-12]。

    梯度消失和梯度爆炸问题使得梯度信息无法传递到相隔较远的时间节点上,导致传统GRU模型在处理较长的时序数据时,无法学习长距离依赖。梯度爆炸问题可以通过设定阈值和梯度裁剪进行有效避免,但梯度消失很难被直接观察到,所以需要调整网络中的信息传递方式,通过优化结构的方法解决梯度消失问题[13]。

    现有研究表明,GRU在处理振动信号时能充分发挥其时序数据处理能力,取得较好的特征提取效果。因此,本文结合GRU处理时序数据的优势和卷积神经网络强大的特征提取能力,采用卷积神经网络中的卷积层初步提取振动信号特征,将高维数据映射到低维空间,再将低维数据重组整合后输入到对应的GRU节点中,提出深度卷积GRU的DCGRU端到端转子系统故障诊断方法。

    2.1 卷积操作

    首先使用卷积层中的卷积运算提取转子系统振动信号中的故障信息。传统深度学习模型的各个节点需要与上一次的所有节点连接,传递权重等参数信息,随着层数和节点个数的增加,模型的计算量也同步提升。卷积神经网络(CNN)通过卷积核进行局部感知并提取关键信息,解决过拟合问题的同时降低了训练难度。

    将振动信号输入到一维卷积神经网络中,直接学习数据中的故障特征,进而提高故障诊断效率。卷积层通过具有固定长度的一维卷积核,使用预设步长遍历输入数据的所有信息,卷积核每次移动后进行与上层节点的卷积运算。卷积运算计算过程为:

    (5)

    式中,w为卷积核;
    x(i,j)为进行卷积操作的区域。为了将线性不可分的特征映射到更高的维度空间中,增强模型的非线性表达能力,本文使用指数线性单元(ELU)为DCGRU模型的激活函数,使负值输入具有非0输出,从而提高训练效率,计算公式为:

    (6)

    2.2 池化运算

    通过卷积层对一维振动信号进行卷积操作提取到包含关键信息的特征,池化层对特征进行降采样处理,降低了时序振动信号的维度,减少模型训练计算量,同时固定输出数据的维度,进而加快模型的拟合速度。池化运算机制有效运行的原因在于,卷积层所提取特征的相对位置与其绝对位置相比更为重要,因此周期性在各个卷积层间加入池化层。现有的池化运算方法包括:最大池化、均值池化、随机池化和中值池化等。其中最大池化能忽略卷积操作导致的位置变动因素,而且具有删除冗余信息的特征,所以本文选择常用的最大池化方法构建模型,计算公式为:

    (7)

    2.3 DCGRU故障诊断模型构建

    在GRU网络中嵌入卷积神经网络,提出的DCGRU模型网络结构如图2所示。首先由两层一维卷积层和池化层互相堆叠组成一次特征提取模块,然后将第二个卷积层在池化运算后提取到的高维特征,展开为向量形式输入到GRU中进行二次特征提取,在充分利用卷积操作结果的同时增强信号的时序特征分析。最后将所有特征经过全连接层输入到分类层中,使用Softmax函数计算多个节点概率分布并进行分类。

    图2 DCGRU模型算法结构图

    DCGRU模型的输入数据是传感器采集到的一维振动信号,每个数据包含2048个样本点。卷积层设计了125×1的大尺寸卷积核,加快模型的收敛速度,为了防止卷积过程遗漏局部关键特征,DCGRU模型使用池化核长度大于步长的重叠池化,池化核大小分别为5×1、3×1,设置两个池化层步长为2,表1为DCGRU模型的参数设置。

    表1 DCGRU模型的参数表

    2.4 DCGRU故障诊断模型训练方法

    DCGRU模型训练目的是不断更新权重信息,拟合输入样本的数据分布。通过DCGRU模型进行转子系统故障诊断的本质是对提取相应样本的关键特征并进行分类,因此使用对数损失函数用于衡量预测值与输入真实值之间的差异。定义模型最终损失函数L,则隐藏层梯度为:

    (8)

    计算可得不同参数矩阵对应的梯度:

    (9)

    (10)

    (11)

    DCGRU方法对采集到的转子系统振动信号进行自适应故障诊断,首先将划分好的数据集输入到模型中进行训练,通过自适应矩估计算法(Adam)调整参数使模型收敛,在取得最优训练结果后保存模型。然后在测试集上进行故障诊断,分析诊断结果验证DCGRU方法的有效性。DCGRU方法基于谷歌公司开发的TensorFlow深度学习框架构建,版本号为TensorFlow-2.1.0,实验模型由Python3.6编程语言开发,部署在Intel i7-6900K CPU计算机上。

    为了验证本文提出转子系统故障诊断方法的有效性,采用SpectraQuest公司生产的多功能传动故障模拟试验平台(MFS)进行旋转机械中的转子系统故障模拟实验。实验过程中在主轴上安装不同的转子盘模拟相应的转子故障状态,通过两端的轴承将轴固定在轴承座上,并利用压电式加速度采集转子系统的振动信号。

    在动平衡处理后的正常转子上构造缺陷分别进行转子不平衡、转轴裂纹、角度不对中、松动与角度不对中和转子不平衡的复合故障模拟,并采集健康状态下的运行数据为对照组。转子系统故障安装方法如图3所示。

    (a) 转子不平衡 (b) 转轴裂纹 (c) 角度不对中 (d) 松动图3 转子系统故障安装方式

    3.1 超参数分析及设定

    DCGRU模型包含多个超参数,为了进一步降低人为调节参数对模型训练的影响,使用故障模拟实验台采集到的转子系统振动信号,分析模型中的学习率η、批大小b和训练次数T等关键参数。

    首先将一组数据输入到模型中,在相同条件下设置不同的学习率进行训练,分别记录训练情况并对比不同学习率下模型训练的输出结果分类准确率。图4表示学习率η为0.000 1、0.000 2和0.000 4时的DCGRU模型训练准确率变化情况,模型收敛时取得的最终准确率分别为98.05%、99.33%和99.67%。在图4中,当学习率设置为0.000 4时模型训练速度最快,在训练800次后趋于稳定,同时曲线相比其他两组也更加光滑,表示训练过程中的准确率振荡程度更小、模型训练更稳定,因此确定模型学习率为0.000 4。

    图4 不同学习率下模型训练准确率变化图 图5 不同批大小下模型训练准确率变化图

    同理,分析不同批大小b对模型训练的影响。计算过程中根据批大小选取样本,由当前批量样本的平均统计数据表示输入样本的特性,从而使数据分布一致,增强模型训练的稳定性。设置批大小为100、200、300和400个样本,分析DCGRU模型的训练情况,由图5可知,当b=400时,较大的批大小可以取得较快的收敛速度,但是单个样本的特点极易被其他样本覆盖,导致最终准确率较低;
    但当批大小较小时,准确率振荡情况严重,模型收敛速度缓慢。所以综合训练速度和准确率因素影响,最终确定DCGRU模型的批大小为200。

    最后在确定模型学习率和批大小参数的基础上,分析训练次数的最优解,设置学习率η=0.000 4、批大小b=200得到DCGRU模型训练次数的变化曲线如图6所示。开始训练的前200次迭代中模型收敛趋势明显,准确率迅速增加,在训练500次后趋于稳定并达到最高点,此时模型训练完成。所以保证实验结果的前提下尽可能减少训练次数从而降低训练成本,因此将训练次数设置为1000次。

    图6 准确率随训练次数变化图

    3.2 DCGRU故障诊断实验及结果分析

    将传感器采集到的转子系统6种不同健康状态下的振动信号添加标签信息,以2048个连续采样点为一个样本,6种状态下单个样本的时域图为图7所示。每种状态选取200个独立样本,按照4:1的比例划分训练集与测试集,6种健康状态下共包含960个训练样本。通过上一小节的分析验证,DCGRU模型训练开始时训练集分批次输入,批大小为200。模型从训练集中提取200个训练样本在损失函数的约束下进行训练,输出权值信息等参数并计数准确率和损失,从而完成一次迭代,准确率趋于稳定并达到最大值时保存模型参数。

    图7 6种状态下的时域波形图

    图8表示DCGRU模型训练过程中的损失变化情况,在图8中在开始阶段损失值较大且有强烈的振荡,通过超参数的不断调整,在300次迭代后曲线趋近平滑,取得了稳定的最小值,并最终趋近于0。保存训练好的DCGRU模型,然后利用测试集进行故障诊断结果验证。

    图8 DCGRU模型损失变化情况 图9 DGRU模型故障诊断结果图

    模型最初的分类准确率较低,经过训练后迅速提高,最终取得了97.53%的测试结果。图9为DCGRU模型在测试集上的一组输出结果,其中横坐标表示样本个数,纵坐标表示对应的转子系统健康状态类别,当DCGRU模型输出结果与样本真实类别标签重合时,表示模型故障诊断结果正确,反之则错误。图9中DCGRU模型将两个转子不平衡故障样本错分为复合故障,其他样本的识别结果全部正确。说明DCGRU模型可以取得较好的故障诊断结果,验证了该模型的有效性。

    3.3 不同故障诊断方法对比实验

    为了进一步验证本章所提出故障诊断模型的优越性,采用传统方法分别构建3种模型进行对比实验。第1个为DGRU模型,在超参数和训练方法不变的前提下通过全连接层代替DGRU中的卷积层和池化层;
    第2个为DCGRU(ReLU)模型,使用与DGRU模型相同的网络结构,但是使用ReLU函数代替ELU函数且不加入Dropout;
    第3个为使用相同网络层数的堆叠降噪自编码器(SDAE)。

    在相同数据集上训练4个模型,并分别对每个模型参数进行优化调节,经过多次训练确定参数的最优解。为了更好地将3种传统故障诊断方法与本章提出的DCGRU方法进行对比分析,依次将数据集输入到不同模型中,采用十折交叉验证对比故障诊断结果。4种对比模型的故障诊断结果如图10所示,不同健康状态下的诊断平均准确率如表2所示。

    (a) SDAE方法 (b) DGRU方法

    (c) DCGRU(ReLU)方法图10 4种对比方法故障诊断结果

    表2 不同故障诊断方法的诊断准确率

    由表2可知DCGRU模型最终取得了97.53%的诊断平均准确率,与以传统深度学习方法建立的DCGRU(ReLU)、DGRU和SDAE模型相比故障诊断平均准确率提高了4.74%、5.94%、13.33%。DCGRU模型首先采用卷积运算初步提取故障特征后,通过一维GRU挖掘特征中的关键时序信息进行二次特征提取,因此对比DGRU能取得更高的平均准确率,同时实验结果表明采用ELU函数的模型诊断结果更好,说明ELU函数能有效解决非正输入无法更新的问题。而基于循环神经网络的GRU模型能自适应地提取时序特征,代替了浅层机器学习手工选取特征的步骤,3种GRU模型均取得了90%以上的平均准确率,明显优于浅层机器学习SDAE方法。

    综上所述,针对转子系统故障诊断中存在的特征微弱难以提取问题,本文提出了一种DCGRU故障诊断方法,在GRU处理时序数据的基础上引入CNN的卷积操作。通过CNN充分提取特征获得振动信号的高维信息,然后GRU增强对振动信号的时序特征分析,有效提高了模型的拟合能力,从而获得准确的特征聚类结果,最后利用Softmax层计算分布概率输出诊断结果。

    DCGRU方法在转子系统振动信号测试数据集上最终取得了97.53%的诊断平均准确率,此外,与传统方法进行对比,结果表明:DCGRU方法取得的诊断结果更准确,模型分类性能更好,验证了DCGRU方法在转子系统故障诊断中的可行性和有效性。

    猜你喜欢 池化时序故障诊断 基于高斯函数的池化算法计算机应用(2022年9期)2022-09-25清明小猕猴智力画刊(2022年3期)2022-03-28卷积神经网络中的自适应加权池化软件导刊(2022年3期)2022-03-25基于包络解调原理的低转速滚动轴承故障诊断一重技术(2021年5期)2022-01-18基于不同建设时序的地铁互联互通方案分析铁道建筑技术(2020年11期)2020-05-22基于卷积神经网络和池化算法的表情识别研究计算机技术与发展(2019年1期)2019-01-21数控机床电气系统的故障诊断与维修电子制作(2018年10期)2018-08-04用于手写汉字识别的文本分割方法智能计算机与应用(2018年2期)2018-05-23基于FPGA 的时序信号光纤传输系统电子制作(2017年13期)2017-12-15基于模体演化的时序链路预测方法自动化学报(2016年5期)2016-04-16

    推荐访问:卷积 转子 故障诊断