结合贝叶斯算法优化的CNN-LSTM神经网络对水轮机进行故障诊断
结合贝叶斯算法优化的CNN-LSTM神经网络对水轮机进行故障诊断
水轮机是水电站的核心设备,其安全可靠运行至关重要。本文提出了一种基于贝叶斯优化(BO)并结合卷积神经网络(CNN)和长短期记忆(LSTM)的故障诊断模型。实验表明,该模型在水轮机故障诊断中具有优异性能,分别达到92.7%、98.4%和90.4%的准确率,超过了传统的CNN、LSTM和CNN-LSTM模型。
一、研究背景与意义
能源是全球发展的基础,水力发电以其可再生性、清洁度、低成本和强大的调节能力,在世界能源框架中占有重要地位。然而,水轮机在复杂和恶劣的环境中运行,经常发生故障,导致大量的维护成本和经济损失,甚至可能造成灾难性事故。因此,诊断和识别水轮机中的故障至关重要。
现有的水轮机故障诊断方法,如基于分析模型、经验知识和数据驱动的方法,前两者均存在一定的局限性。基于模型的故障诊断方法基于控制理论,而水轮机是一个复杂的非线性时变系统,这限制了该方法在水轮机故障识别中的应用。基于经验的故障诊断方法依赖于专家经验,并且在识别复杂故障时存在组合爆炸的问题。而数据驱动诊断方法适用于水轮机各种工况和复杂结构下的故障诊断,可以解决无法通过分析建模或经验知识解决的复杂问题。
深度学习理论凭借其强大的建模优势和数据处理能力,在数据分析方面具有独特的优势。CNN有强大的特征自学习能力,但处理长序列数据能力有限;而LSTM能有效处理时间序列数据,解决RNN中梯度消失和爆炸问题。然而更好的学习和拟合要求更多的节点和更深的网络层,这会显著增加超参数的数量。BO算法则可以高效解决复杂优化问题,在处理超参数优化方面表现出色。为了应对以上挑战,本文提出了一种基于BO算法的CNN-LSTM水轮机故障诊断方法,最终结果优于传统的神经网络模型。
二、研究方法
模型整体框架如图所示。
A. 构建CNN-LSTM故障诊断模型
CNN通过卷积层、激活函数层、池化层和全连接层,实现对输入数据空间特征的自适应提取和降维。LSTM通过遗忘门、输入门和输出门控制信息传递,学习长序列数据的依赖特征,挖掘时间相关特征。将两者结合,CNN负责提取空间特征并降维,LSTM负责挖掘时间特征和分类,构建成完整的故障诊断模型。CNN是一个多层神经网络,由输入层、卷积层(CONV)、激活函数层、池化层和全连接层(FC)组成,其典型架构如图2所示。
LSTM是一种改进的RNN,它学习长期依赖信息,以缓解RNN在训练过程中的梯度消失和爆炸问题。LSTM的整体结构如图3所示。它由五个构建块组成:单元状态、隐藏状态、输入门、遗忘门和输出门。主要特征包含三个门控结构:输入门、输出门和遗忘门。
在CNN-LSTM故障诊断模型中,CNN负责提取输入数据的空间特征,降低数据维数,同时LSTM负责挖掘隐藏的时间规律特征,其长时记忆也更适合对数据进行分类。CNN-LSTM故障诊断模型如图4所示。首先收集水轮机故障声振动信号,将信号组织并分割成固定段,构建数据样本集;将样本集输入CNN卷积层,利用卷积核自适应提取故障特征;提取的特征在池化层进行最大池化操作,降低数据维数,保留主要特征信息;dimensionality-reduced特征数据作为LSTM层的输入,用于训练神经网络,自动学习故障特征;最后采用Softmax激活函数对水轮机的故障特征进行分类,从而完成故障诊断。
B. BO-CNN-LSTM水轮机故障诊断模型
本文引入了一种基于贝叶斯定理的全局优化算法(BO算法)来选择模型的超参数组合。该算法由概率代理模型和收集函数组成,概率代理模型由先验概率和观测模型组成,收集函数是基于后验概率分布构造的函数。
概率代理模型分为参数和非参数模型。目前使用的概率代理模型如表1所示。非参数模型应用最广泛,因为它们具有更好的灵活性和抗“过拟合”能力。代表模型之一是高斯过程(GP)。泛化多变量高斯概率分布称为 GP。它由协方差函数 k 和平均值函数 m 组成。有限数量的随机变量满足 GP 中的联合高斯分布。假设先验分布的均值为 0:
在上面, 是预测的平均值, 是预测的协方差。
表1. 概率代理模型
获取函数的作用是选择下一个最可能的点,以获得模型的最佳性能评估。后验分布构造从观测数据集D1:t获得。得到了后验分布的构造。并且,将下面的评价点xt+1最大化引导,具体公式如下:
为解决CNN-LSTM模型超参数过多问题,本文引入BO算法。BO-CNN-LSTM水轮机故障诊断模型的框架如图5所示。首先收集水轮机不同工况的声学振动信号,整理分段后划分为训练集和测试集。然后构建CNN-LSTM故障诊断模型,确定其超参数并设置优化区间。接着对超参数应用BO算法,计算当前超参数下模型评估函数的值,根据概率模型采集函数选择下一组超参数进行新一轮训练,直到达到最大迭代次数。若优化后的超参数组合未达到要求,则重置超参数区间继续优化;若达到要求,则用训练集训练CNN-LSTM模型并验证其准确率。若准确率满足要求,BO-CNN-LSTM模型具备故障诊断能力,用测试集验证模型性能。
C. 模型参数设置
在CNN-LSTM故障诊断模型中,网络模型的各层分为7层,包含一个输入层、一个CNN的CONV层、一个CNN的池化层、两个LSTM层、一个FC层和一个Softmax分类层。模型结构参数如表2所示。
表2. CNN-LSTM模型的结构参数
表3选择了三个重要超参数的优化范围,即初始学习率、正则化系数和LSTM层1中的神经元数量。
表3. CNN-LSTM超参的间隔设置
图6说明了优化搜索过程中目标值的变化。BO算法根据以前的观察结果评估超参数空间中的新候选点。对于CNN-LSTM模型的超参数搜索,在30次迭代后,目标值在第5次迭代时完成收敛。
图6. BO算法的流程
BO算法提供了一种高效可靠的模型超参数选择方法,有助于避免手动调整超参数带来的时间损失和模型不稳定问题,从而显著提高模型的准确率和泛化能力。
三、实验验证
水轮机故障信号包括瞬态冲击产生的信号和连续冲击产生的信号。持续冲击产生的信号包括在河流洪水期间,水中沉积物对水轮机转轮机叶片的持续影响。撞击产生的信号包括流道叶片断裂和大石头撞击流道产生的信号。无论是瞬态还是连续冲击故障,都会对水轮机造成损坏。本文量化了水轮机不同运行条件的故障。在含沙水流下模拟水轮机转轮的连续冲击失效。螺栓撞击用于模拟具有瞬态冲击故障的水轮机的工作状态。收集不同工况的声振信号,基于BO-CNN-LSTM模型对水轮机故障进行识别和诊断。设计的故障实验台如图7所示。
图7. 水轮机故障实验台的作过程
故障实验台由蓄水系统、供水系统、实验段和回水系统四部分组成。储水系统包括水箱。供水系统包括压力泵和管道,实验部分包括水力发电机。回水系统包括潜水泵和管道。实验台测量流经水力发电机的含沙水产生的声音信号。在作实验台之前,水箱和水槽将水装满。然后,压力泵和潜水泵同时启动。压力泵将水从水箱中抽出,并沿着管道流向水力发电机,从而撞击转子叶片。流经水力发电机的水回流到水箱中,然后由潜水泵将水抽回水箱,完成循环。实验过程中的沉积物被添加到水箱中。从压力泵和水力发电机之间的管道位置添加螺栓。完成的故障实验台如图8所示。所用水力发电机的功率计如表4所示。
表4水力发电机的性能参数
图8. 水轮机故障实验台
A. 诊断结果
作者以CNN、LSTM和CNN-LSTM模型为对照,采用准确率,精确度,召回率和F1得分作为评价指标,对不同工况组合进行故障诊断实验。
基于沉积物浓度为的1.4kg/m³正常工作状态A、磨损故障B和冲击故障D诊断识别的BO-CNN-LSTM模型,选取CNN、LSTM和CNN-LSTM,3种模型作为对照。四种不同模型的训练曲线如图9所示。
图9(a)展示了CNN、LSTM、CNN-LSTM和BO-CNN-LSTM四种模型的精度曲线。总体而言,经过50次迭代的计算,所有四个模型都可以在水轮机故障诊断中保持超过65%的准确率。而BO-CNN-LSTM模型的准确率曲线波动小于其他三种模型,并在较少的迭代次数内达到稳态。
图9(b)显示了CNN、LSTM、CNN-LSTM和BO-CNN-LSTM四种模型的函数损失率曲线。经过50轮迭代后,这4个模型的功能丢失率始终保持在1以下。值得注意的是,BO-CNN-LSTM模型的函数损失率为0.21,低于其他三种模型,其收敛性也优于其他模型。BO-CNN-LSTM模型有效地融合了CNN和LSTM的特征,同时结合BO算法算法寻找最佳超参数组合,提高了模型的准确性并增强了模型的稳定性。
在混淆矩阵和评估指标上,各模型对冲击故障诊断效果好,但对0.73kg/m³泥沙浓度工况诊断效果较差,BO-CNN-LSTM模型诊断结果与实际一致性最高,评估指标(Accuracy为97.7%、Precision为90.4%、Recall为97.4%、F1score为93.7%)优于其他模型,如图11所示,在捕捉实际故障样本和综合诊断水轮机磨损故障信号方面表现出色。
图9. 模型的训练曲线
图10. 四个模型
图11. 条件A、B和D的评估模型
基于沉积物浓度为的1.4kg/m³正常工作状态A、磨损故障C和冲击故障D的诊断,四种不同模型的训练曲线如图11所示。50次迭代后所有模型准确率超70%。LSTM模型表现最差(73.4%),曲线波动大;CNN模型(85.1%)优于LSTM模型;CNN-LSTM模型(90.7%)性能更优;BO-CNN-LSTM模型准确率达97.5%,相比未优化的CNN-LSTM模型提升6.8%,且准确率曲线稳定、收敛快。损失率方面,50次迭代后所有模型损失率低于0.8,BO-CNN-LSTM模型损失率(0.06)最低、稳定性好。混淆矩阵显示各模型对冲击故障诊断准确,但对1.4kg/m³泥沙浓度磨损故障诊断较差,BO-CNN-LSTM模型与实际结果一致性最高。评估指标上,BO-CNN-LSTM模型(Accuracy为98.4%、Precision为97.6%、Recall为100%、F1score为98.8%)远优于其他模型,在识别实际故障样本、平衡Recall和Precision方面表现卓越,稳定性和可靠性高。
图12. 条件A、C和D的评估模型
对正常工况A、0.74kg/m³泥沙浓度磨损故障B和1.4kg/m³泥沙浓度磨损故障C进行诊断时,50次迭代后四个模型准确率整体较低。LSTM模型(63.8%)最差,曲线波动大;CNN模型(76.8%)表现较好;CNN-LSTM模型(82.3%)融合优势但提升有限;BO-CNN-LSTM模型(89.7%)准确率最高,相比未优化的CNN-LSTM模型提升7.4%,且曲线稳定、收敛快。损失率方面,50次迭代后所有模型损失率低于1.2,BO-CNN-LSTM模型损失率(0.15)最低、收敛性和稳定性好。混淆矩阵表明各模型对三种工况均有诊断错误,0.74kg/m³泥沙浓度磨损故障诊断错误率高,BO-CNN-LSTM模型诊断与实际结果一致性最高。评估指标显示,BO-CNN-LSTM模型(Accuracy为90.4%、Precision为92.9%、Recall为92.9%、F1score为93.1%)最优,在识别实际故障样本、平衡Recall和Precision方面表现出色,稳定性和可靠性好。
图13. 条件A、B和C的评估模型
CNN、LSTM、CNN-LSTM和BO-CNN-LSTM模型在训练过程中呈现不同的性能。CNN和LSTM模型的训练准确率和损失率相对较差。CNN-LSTM模型融合了CNN和LSTM的优点,性能要好得多。正是由于LSTM成功融合到CNN中,有效地解决了CNN模型在处理长序列问题方面的局限性,从而提高了模型的稳定性和准确性。BO-CNN-LSTM模型在训练准确率和损失率方面表现最佳。该模型可以在较小的迭代中达到稳定状态,并表现出更多微小的曲线波动。
具体而言,BO-CNN-LSTM对不同故障诊断类别的诊断准确率均达到90%以上,分别为92.7%、98.4%和90.4%。此外,与未作时序的CNN-LSTM模型相比,BO-CNN-LSTM模型的精度分别提高了5.5%、6.3%和9.0%。水轮机磨损故障诊断准确率低于冲击故障,主要因运行时的噪声干扰,但随着泥沙含量增加,磨损故障诊断准确率提高,因为故障信号幅值增大,特征更明显。
四、结论
本文提出基于BO算法的CNN-LSTM故障诊断模型,用于诊断和识别水轮机的不同故障情况。该模型利用LSTM的特性来弥补CNN算法无法获得时间相关性的不足。增强了模型特征提取的效果。还引入了BO算法,用于CNN-LSTM模型的超参数调整。深度学习模型的超参数调优问题得到了更好的解决。BO-CNN-LSTM模型在水轮机故障诊断中性能卓越,相比未优化的CNN-LSTM模型,准确率分别提升了5.5%、6.3%和9.0%。采用BO算法优化的CNN-LSTM模型具有优异的稳定性、收敛性和更重要的泛化能力。该模型可以更准确地捕获实际故障样本,提供相对全面的水轮机磨损故障信号识别和诊断。
水轮机磨损故障诊断准确率低于冲击故障,但随泥沙含量增加而提高。同时,水轮机的故障数据相对稀缺;为了提高模型的训练效率、应用范围和收敛速度,后续研究可针对水轮机故障信号的特点,开展信号预处理和模型迁移学习,提升模型在复杂工程场景中的应用效果。