CN117520960A - 基于XGBoost和特征组合的轴承故障诊断方法 - Google Patents
基于XGBoost和特征组合的轴承故障诊断方法 Download PDFInfo
- Publication number
- CN117520960A CN117520960A CN202311485678.9A CN202311485678A CN117520960A CN 117520960 A CN117520960 A CN 117520960A CN 202311485678 A CN202311485678 A CN 202311485678A CN 117520960 A CN117520960 A CN 117520960A
- Authority
- CN
- China
- Prior art keywords
- model
- data
- value
- xgboost
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000003745 diagnosis Methods 0.000 title claims abstract description 27
- 238000012549 training Methods 0.000 claims abstract description 44
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 39
- 238000007781 pre-processing Methods 0.000 claims abstract description 4
- 238000007789 sealing Methods 0.000 claims description 18
- 230000001419 dependent effect Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 16
- 238000012360 testing method Methods 0.000 claims description 15
- 238000012544 monitoring process Methods 0.000 claims description 14
- 238000005457 optimization Methods 0.000 claims description 14
- 230000002159 abnormal effect Effects 0.000 claims description 11
- 238000012423 maintenance Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 7
- 238000003066 decision tree Methods 0.000 claims description 6
- 238000009826 distribution Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 claims description 5
- 238000011156 evaluation Methods 0.000 claims description 5
- 239000013585 weight reducing agent Substances 0.000 claims description 4
- 230000000295 complement effect Effects 0.000 claims description 3
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 230000008676 import Effects 0.000 claims description 3
- 238000002955 isolation Methods 0.000 claims description 3
- 230000001186 cumulative effect Effects 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 claims description 2
- 238000012887 quadratic function Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 47
- 239000007789 gas Substances 0.000 description 16
- 238000007637 random forest analysis Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 239000010687 lubricating oil Substances 0.000 description 4
- 238000012706 support-vector machine Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 239000003921 oil Substances 0.000 description 3
- 238000005096 rolling process Methods 0.000 description 3
- 239000000126 substance Substances 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000005315 distribution function Methods 0.000 description 2
- 238000005461 lubrication Methods 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 150000002739 metals Chemical class 0.000 description 2
- VNWKTOKETHGBQD-UHFFFAOYSA-N methane Chemical compound C VNWKTOKETHGBQD-UHFFFAOYSA-N 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000005299 abrasion Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013398 bayesian method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000003749 cleanliness Effects 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001595 flow curve Methods 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 239000003345 natural gas Substances 0.000 description 1
- 239000003209 petroleum derivative Substances 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01M—TESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
- G01M13/00—Testing of machine parts
- G01M13/04—Bearings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
- G06F18/15—Statistical pre-processing, e.g. techniques for normalisation or restoring missing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/27—Regression, e.g. linear or logistic regression
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本发明公开了一种基于XGBoost和特征组合的轴承故障诊断方法,包括以下步骤:S1、数据预处理;S2、构建BO‑XGBoost和特征组合模型:S21、利用BO算法寻找最优超参数组合;S22、将最优超参数组合代入XGBoost算法中形成BO‑XGBoost模型;S23、构建密封气流量特征折线图模型;S3、进行BO‑XGBoost模型训练;S4、将待预测的数据分别输入BO‑XGBoost预测模型和密封气流量特征折线图模型中,当两个模型均输出预警时,组合模型会输出故障警报。本发明将BO‑XGBoos算法和密封气流量特征组合对离心式压缩机轴承故障进行诊断,能够提升判断的精度,实现对轴承故障的有效预警。
Description
技术领域
本发明属于机械制造技术领域,特别涉及一种基于XGBoost和特征组合的轴承故障诊断方法。
背景技术
近年来,随着化工、石油天然气等行业的快速发展,离心式压缩机的使用也变得越来越广泛,该机组输送的介质均为危化品,因此,一旦该设备某部分发生故障,就可能引起链式反应,轻则导致设备停机检修,重则造成危化品泄漏,给社会带来诸多不利影响。在该设备中,轴承是其关键部件之一,也是最脆弱的部件之一,据统计,旋转设备中超过41%的机器故障由轴承引起,而轴承故障的产生并不是突发性的,是循序渐进、逐步发展产生的过程,如果能在轴承使用的早期进行预测,将大大降低现场维修成本和减少诸多不利危害。因此,能准确、及时的预测出轴承的问题显得格外重要。
目前,用于轴承故障诊断的方法主要包括三种:
1、基于信号处理的故障诊断模型,广泛应用的方法包括:快速傅立叶变换(FFT)、小波变换(WT)及经验模态分解(EMD)等。该方法是通过相关函数等数学方法直接分析可测信号,得出具体的结果,但该方法容易受到信号噪声的干预,对信号的检测和处理有很强的依赖性,而在工业中,离心式压缩机所处的环境均比较复杂,实际所测的振动信号几乎都是非平稳多分量的信号,其有用信号往往都淹没于强噪声背景之下,因此,对检测手段、设备要求很高,且难以实现;
2、基于深度学习的故障诊断模型,广泛应用的方法包括:人工神经网络(ANN)、长短时记忆网络(LSTM)等。虽然深度学习算法在数据特征自动识别和提取有很大优势,但它常用于语音识别、图像处理、文本识别等领域,针对特征明显的SCADA系统采集的结构化数据使用较少;
3、基于机器学习的故障诊断模型,广泛应用的方法包括:随机森林(RF)、支持向量机(SVM)。RF易于扩展,不容易出现过拟合,但模型较复杂,解释性相对较差,处理数据量较大时,耗费时间较长;SVM适用于小样本数据处理,在处理大规模数据时,训练时间较长。
以上这些故障诊断模型主要针对滚动轴承,而石化行业的离心式压缩机,因其载荷大、转速高,主要采用滑动轴承,滑动轴承和滚动轴承虽然有相似的地方,但因结构差异大,所以出现的故障也不同,在高温、高速、高载荷的运行情况下,滑动轴承的轴颈与轴瓦发生热膨胀,轴承间隙消失,金属之间直接接触,出现轴瓦磨损、烧瓦等,造成轴承严重损坏,通常还会对机组造成更大的伤害,维修成本也急剧增加。
申请号为202011386823.4的专利申请公开了一种基于随机搜索和卷积神经网络的轴承故障诊断方法,通过结合随机搜索算法优化超参数,建立卷积神经网络模型,用于智能诊断滚动轴承故障,解决了现有技术中的传统方法准确度不够和智能方法中人工调参繁琐费时的问题。该方法首先初始化超参数组合,然后配置随机搜索的分布函数,接着不断更新随机搜索的分布函数,最后经过多次试验,择优得到轴承的诊断模型。该方法相较于传统方法,提升了准确度,提高了超参数优化效率。方法中使用的随机搜索是一种基本的优化算法,当参数空间较小时,表现效果还可以,但是当参数空间变得较大或较复杂时,随机搜索的效率就会变得很低,需花费大量时间和计算资源进行搜索,而且可能会错过潜在的优秀的超参数组合。此外,方法中应用的卷积神经网络属于深度学习的代表算法之一,在数据特征自动识别和提取有较大优势,但更适合用于语音识别、图像处理、文本识别等领域,而对于特征明显的SCADA系统采集的结构化数据使用较少。
申请号为202110708178.1的专利申请公开了一种基于随机森林和融合特征的轴承故障诊断方法,包括数据处理步骤、特征提取步骤、特征融合步骤、模型训练步骤和故障诊断步骤,是一种通过分别提取时域特征和频域特征进行特征融合,基于随机森林算法对轴承故障进行智能的、自动化诊断的方法。解决了现有技术中的传统方法对设备故障判断准确率不高和预判不及时的问题。该方法选择随机森林算法作为模型,该算法在处理小规模数据集时表现较好,但在处理大规模复杂数据时,准确率偏低、泛化能力较弱、效率不够高,此外,该模型较复杂,解释性相对较差。
可见,现有的方法在轴承故障诊断中存在准确度不足、效率不够高等问题,尤其在处理数据量庞大、特征明显的SCADA系统采集的结构化数据时,问题更加突出。此外,现有方法在超参数寻优方面存在效率偏低的问题,不利于及时有效正确的预测出轴承的故障,从而错过最佳检修时机。另外,传统方法中,仅根据密封气流量进行故障判别,易造成误判。
发明内容
本发明的目的在于克服现有技术的不足,提供一种将BO-XGBoos算法和密封气流量特征组合对离心式压缩机轴承故障进行诊断,能够提升判断的精度,实现对轴承故障的有效预警的基于XGBoost和特征组合的轴承故障诊断方法。
本发明的目的是通过以下技术方案来实现的:基于XGBoost和特征组合的轴承故障诊断方法,包括以下步骤:
S1、数据预处理,包括以下子步骤:
S11、采集轴承运行数据,并对采集数据中出现的缺失值、异常值进行处理:针对缺失值,在jupyter中利用循环语句找寻缺失值,计算缺失值对应位置处前5行对应数据的平均值,若缺失值前面数据不足5行则取后面的数据补足,将该平均值填充到缺失值位置;针对异常值,调用SkLearn库中的Isolation Forest模块找到异常值并删除,然后对删除异常值所形成的缺失值进行填充,计算缺失值对应位置处前3行数据的平均值并填充到该缺失值位置;
S12、对数据集中的特征进行提取,剔除与轴承故障诊断无关的数据特征;采用Spearman等级相关系数计算数据的相关性,再利用多元回归模型判别出最适合做因变量的数据,然后删除其余数据:
S13、对故障数据进行标记,根据设备运行维护记录,标记出故障数据,并统计故障数据和正常数据数量;
S14、判断故障数据与正常数据的数据量比值,若比值低于预设阈值则采用SMOTE法对故障数据进行过采样,直到故障数据与正常数据的数据量比值不小于预设阈值;
S15、提取故障数据,使用min()函数找出故障数据中的最小值;
S16、将处理好的数据集划分为训练集和测试集;
S2、构建BO-XGBoost和特征组合模型,包括以下三个子步骤:
S21、利用BO算法寻找最优超参数组合,包括弱学习器个数n_estimators、弱学习器决策树的最大深度max_depth、权重缩减系数learning_rate和迭代次数;
S22、构建BO-XGBoost模型:将最优超参数组合代入XGBoost算法中形成BO-XGBoost模型;
S23、构建密封气流量特征折线图模型:调用matplotlib模块,读取测试集数据,以S12确定的因变量数据为横坐标,密封气流量为纵坐标,创建折线图,以故障数据的最小值为基准绘制一条平行于横轴的直线作为参考线;调用IPython.display模块中的clear_output函数导入采集的密封气流量数据形成监测值曲线,若监测值曲线上任意一点处于参考线以下,则发出预警,并通过display函数显示参考线和监测值曲线;
S3、进行BO-XGBoost模型训练,包括以下子步骤:
S31、将训练集数据传入BO-XGBoost模型中,对模型进行训练,直到达到迭代次数,从中选择最优模型;
S32、将测试集数据导入训练好的BO-XGBoost模型中,对因变量进行预测,输出预测值;
S33、计算预测值与真实值的决定系数和均方误差,并计算模型运行时间,将决定系数、均方误差和模型运行时间分别与期望值进行对比;如果决定系数小于预期值,或者均方误差大于预期值,或者模型运行时间大于预期值,则重新利用贝叶斯优化对超参数进行寻优,将最优组合代入XGBoost重新构建模型,进行训练和预测,直到决定系数、均方误差、模型运行时间均达到期望值,然后输出模型最为最终的BO-XGBoost预测模型;
S4、将待预测的轴承运行数据分别输入BO-XGBoost预测模型和密封气流量特征折线图模型中,若BO-XGBoost预测模型输出的预测值超过设定的参考值,输出预警;若密封气流量特征折线图模型中监测值曲线上任意一点处于参考线以上,则发出预警;当两个模型均输出预警时,组合模型会输出故障警报。
本发明的有益效果是:
1、本发明选用贝叶斯优化进行超参数寻优,该算法相较于传统的方法,如人工调参、网格搜索、随机搜索,在设置超参数范围时,人工调参、网格搜索、随机搜索均需采用枚举的方式设置,该方法很大程度上受人员经验影响较大,不具有普适性,而贝叶斯优化只需要设置指定参数的最大最小值和迭代次数,便会自动搜索最优值,它在每一次迭代的时候,会先回顾一下之前的迭代结果,结果太差就不去找了,会尽量往结果好一点的附近去找最优解,这种方法更加智能,也更加适合现今数据量庞大或更复杂的环境;此外,在相同的参数范围和迭代次数条件下,其运行时间更短,并且得出的超参数组合可让模型准确率提升的更高,效率也更高;
2、本发明选用的XGBoost算法,相较于传统的随机森林、支持向量机、梯度提升决策树等,该算法的损失函数是对误差部分做了二阶泰勒展开,因此,准确度更高;此外,对每个弱学习器,如决策树建立的过程做并行选择,找到合适的子节点分裂特征和特征值,运行效率得到提升;在对相同的数据集进行测试时,XGBoost运算的速度和准确度均高于其它算法,再基于该算法本身的优势,更适合处理现今庞大且复杂的数据库。
3、将BO-XGBoost算法和密封气流量特征组合对离心式压缩机轴承故障进行诊断,能够提升判断的精度,实现对轴承故障的有效预警。
附图说明
图1为本发明的心式压缩机轴承故障诊断方法的流程图;
图2为本发明的贝叶斯优化原理图;
图3为本发明的XGBoost算法原理图;
图4为测试集数据的预测值和真实值对比图。
具体实施方式
结合滑动轴承与滚动轴承异同,本发明将采用机器学习和特征组合的方法对离心式压缩机轴承故障进行诊断。
首先,机器学习算法的选择,针对现有技术对收集振动信号在复杂环境下噪声难以处理的情况,本发明所需的数据集为设备运行中采集的压力、压差、温度、流量、转速等,这些数据在工业环境中随处可见,并且基本上都布置了比较成熟的监测和储存系统,比如SCADA系统,因此,数据收集方便,无需增加检测设备。针对传统的机器学习算法,在处理大规模数据时耗时长的问题,本发明选用XGBoost算法,该算法不仅预测准确率高,而且训练速度快,可通过缓存技术和并行化来加速模型的训练速度,尤其是在处理大规模数据集时表现更好。
其次,特征选择,正常运转情况下轴瓦和轴承之间是有间隙的,旋转时,间隙中充满润滑油,进行冷却润滑带走热量,同时,由于离心式压缩机的特殊结构及传输介质的危害性较大,通常会对轴承处通入密封气进行密封,避免滑油窜入到流程中,造成滑油泄露或更大的危害,为了避免这种情况发生,通常密封气压力会略高于滑油压力,所以有一部分密封气会通过轴与轴瓦之间的间隙窜入到滑油系统,如果在高温、高速、高载荷的运行情况下,滑动轴承的轴颈与轴瓦发生热膨胀,轴承间隙逐渐减小,密封气的流通面积也减小,那么密封气流量也会减小,随着间隙越来越小,金属之间直接接触,造成轴瓦磨损,流通面积又会增大,密封气耗量也会增大,由于这个膨胀过程时间较短,且轴与轴瓦之间的间隙本身就很小,而数据采集通常是间歇性的,所以很难看出流量减小的趋势,但磨损是不可逆的,一旦发生,间隙会变大,密封气流量也会增大,随后一旦开始采集数据,流量曲线增大趋势较明显,因此,密封气流量增大可作为滑动轴承故障诊断的一个参考,但是密封气控制系统较复杂,进入系统之前,需对其温度、阀门开度(流通量)、洁净度等严格控制,此外,还受到现场复杂多变的环境影响,因此单从这一点来预判轴承故障是不准确的。
为解决上述问题,本方案将XGBoos算法和密封气流量特征组合对离心式压缩机轴承故障进行诊断,提升判断的精度。
缩略语和关键术语定义
1、离心式压缩机:由内部转子的叶轮带动气体做高速旋转,使气体产生离心力,由于气体在叶轮里的扩压流动,从而使气体通过叶轮后的流速和压力得到提高,连续地产生出压缩气体。
2、滑动轴承:在滑动摩擦下工作的轴承。滑动轴承工作平稳、可靠、无噪声。在液体润滑条件下,滑动表面被润滑油分开而不发生直接接触,可以大大减小摩擦损失和表面磨损,并且油膜还具有一定的吸振能力。
下面结合附图进一步说明本发明的技术方案。
如图1所示,本发明的一种基于XGBoost和特征组合的轴承故障诊断方法,包括以下步骤:
S1、数据预处理,包括以下子步骤:
S11、采集轴承运行数据,并对采集数据中出现的缺失值、异常值进行处理:因为在实际工作中,系统获取数据时可能会出错,为了避免错误数据的导入,需提前对数据进行处理。具体地,针对缺失值,在jupyter中利用循环语句找寻缺失值,计算缺失值对应位置处前5行对应数据的平均值,若缺失值前面数据不足5行则取后面的数据补足,将该平均值填充到缺失值位置;针对异常值,调用SkLearn库中的Isolation Forest模块找到异常值并删除,该模块是一种基于树的方法,它尝试通过隔离异常点来检测它们,适合处理大型数据,该模块可准确找到异常值,然后对删除异常值所形成的缺失值进行填充,计算缺失值对应位置处前3行数据(若前面数据不足3行则使用后面的数据补足)的平均值并填充到该缺失值位置;
S12、对数据集中的特征进行提取,剔除与轴承故障诊断无关的数据特征,保留有价值特征,提升数据质量;因为在对设备运行参数进行采集的时候,有些参数并不是为了监控设备的运转状态,比如启动次数、运行时间等,这时就需要剔除这些特征。各个模型算法一般只有一个因变量,如果在采集的数据中存在多个因变量,比如离心式压缩机轴承的监测点一般有四个,为了满足模型运算要求,就需要剔除三个特征,这时采用Spearman(斯皮尔曼)等级相关系数计算数据的相关性,利用Spearman等级相关系数可以计算两个变量之间的相关系数,如果两个变量的相关系数接近于1,则表明它们之间存在较强的线性关系。再利用多元回归模型判别出最适合做因变量的数据,将两个参数作为因变量,其他参数作为自变量,利用模型的拟合优度(R2)来判断哪个参数更适合作为主要因变量。如果某个参数在多元回归模型中的R方值较高,则表明它对模型的解释能力更强,更适合作为主要因变量。本发明采集的数据集含有4个因变量,利用Spearman等级相关系数和多元回归模型进行筛选,最终选择出一个特征作为因变量,然后删除其余数据:
S13、对故障数据进行标记,根据设备运行维护记录,标记出故障数据,并统计故障数据和正常数据数量;
S14、从imblearn库中引入用于进行SMOTE法过采样的SMOTE()函数,判断故障数据与正常数据的数据量比值,若比值低于预设阈值则采用SMOTE法对故障数据进行过采样,因为在正常情况下,石化行业设备稳定性是维修人员关注的重点,所以故障后会立即维修,在数据集中故障数据也会明显偏少,这时正常和故障数据比例明显的不均衡,这会导致模型在训练集上表现良好,但测试效果不佳,为了改善这种情况,就需要进行过采样操作。本发明中采用SMOTE法过采样,即随机选取少数类数据中的一个点,找到离该样本点最近的4个样本点,在选中的样本点和最近的4个样本点分别连成的4条线段上随机选取4点生成新的样本点。之后重复上述步骤,直到故障数据与正常数据的数据量比值不小于预设阈值。本实施例中故障数据492个,进行扩展后2800个,与正常数据量一致。
S15、提取故障数据,使用min()函数找出故障数据中的最小值,作为后续绘制折线图的参考线数据,本实施例中为282;
S16、将处理好的数据集按照7:3的比例划分为训练集和测试集,训练集用于对建立好的模型进行训练,测试集则是作为评估模型故障诊断能力的工具。
S2、构建BO(贝叶斯优化)-XGBoost和特征组合模型,包括以下三个子步骤:
S21、利用BO算法寻找最优超参数组合,包括弱学习器个数n_estimators、弱学习器决策树的最大深度max_depth、权重缩减系数learning_rate和迭代次数;
BO是基于概率分布的全局优化算法,是一种用于优化黑箱函数的方法,可以在较少的迭代次数内找到全局最优解,它基于贝叶斯定理和高斯过程回归,通过对目标函数的不断探索和利用,逐渐逼近全局最优解。贝叶斯优化有两个核心部分,包括概率代理模型和采集函数。根据模型的参数个数是否固定,概率代理模型分为参数模型和非参数模型,相比参数固定的参数模型,非参数模型更加灵活,并且使用贝叶斯方法不容易发生过拟合。高斯过程是一种常用的非参数模型。采集函数是根据后验概率分布构造的,通过最大化采集函数来选择下一个最优评估点。通俗来讲,贝叶斯优化的过程就是在进行一次迭代的时候,先回顾下之前的迭代结果,结果太差的x附近就不去找了,尽量往结果好一点的x附近去找最优解,这样一来搜索的效率就大大提高了。贝叶斯优化流程如图2所示。具体实现方法为:首先设定参数取值范围和迭代次数,本实施例中弱学习器个数(n_estimators)、弱学习器决策树的最大深度(max_depth)、权重缩减系数(learning_rate)分别设定为(50,150)、(3,10)、(0.05,0.15);然后运用BO算法进行计算,选择使得采集函数取得最大值的参数组合为最优超参数组合;
所述BO算法采用高斯回归;高斯过程回归是一种基于高斯分布的概率模型,用于对目标函数进行建模,由均值函数m:x→R和协方差函数k:x×x→R构成,表示对目标函数在不同输入值处的不确定性估计,该过程的模型为:f(x)=gp(m(x),k(x,x)),g表示高斯函数;
高斯回归的具体优化流程为:
S211、判断模型是否初始化,若是则利用上一轮选出的最大采集函数值点的集合作为训练数据,否则随机产生初始化点作为训练数据;
S212、进行高斯回归:通过训练数据,得到高斯回归的均值μs和方差σs 2,表达式如下:
μs(x)=μ0(x)+k(x)T(k+σ2I)-1(y-m) (1)
其中,y为观测值;s为评估次数,k(x)T表示k(x,x)的转置,μ0(x)是高斯回归的初始均值,σ2为初始噪声方差,I为单位矩阵;
S213、采集函数是用于选择下一个采样点的关键策略。它结合先验模型的不确定性和已有观测值的信息,评估在不同输入值处的目标函数改善程度。常见的采集(AC)函数包括基于提升PI、期望改善EI、置信边界UCB,旨在探索和利用之间平衡,帮助找到可能的最优解。本发明的采集函数使用PI采集函数,基于提升的策略偏好选择对于当前最优目标函数值有所提升(这里的提升是指比当前目标函数值要小)的位置作为评估点。PI采集函数计算方法为:
其中,D1:s表示已观测的数据集;v*表示当前最优函数值;ξ表示平衡参数;φ表示标准正态分布累计密度函数;p()代表PI采集函数;
S214、计算最大采集函数的值,判断该值是否大于预设的目标值,若是则输出最大采集函数对应的参数作为下一轮训练的数据集,返回步骤S211,直到达到设定的迭代次数;若否则返回步骤S212;
S215、选择最优模型,获得最优参数。本实施例中得到的最优组合为:n_estimators=104、max_depth=10、learning_rate=0.11637,迭代次数为25。
在对超参数寻优时,本案例是通过5折交叉验证计算模型的均方误差(MSE),将样本数据集分成5个样本子集,其中4个子集被用作训练数据,而另一个子集被用作验证数据,这个过程会进行5次,每次都会选取其中一个子集作为验证数据,其余的作为训练数据,平均5次的误差结果,最终得到误差估计。通过K折交叉验证,可以避免数据集的选取对结果的影响,提高模型的性能。
S22、构建BO-XGBoost模型:将最优超参数组合代入XGBoost算法中形成BO-XGBoost模型;XGBoost是基于梯度提升(Gradient Boosting)框架的机器学习算法,能处理分类和回归问题。它以分类回归树(CART)和随机森林为基础。针对一个训练集,XGBoost通过多轮迭代,每次迭代中树的模型保持不变,首先使用CART树训练得到一个模型,这样每一次增加一棵新树,针对每个样本都会产生一个偏差值,然后将样本偏差值作为新的训练集,记为模型1偏差;继续使用CART树训练得到一个新模型,得到模型2偏差;如此重复,直到达到设定的退出条件为止,将所有模型进行叠加,得到最佳模型;具体原理流程如图3所示。它对损失函数进行二阶泰勒展开,并对目标函数增加了正则化,既提升了精度,也防止过拟合。此外,它还能处理缺失值,支持并行计算,从而提升精度和速度。
XGBoost目标函数的整体表达式如下:
式中第1部分为损失函数,是真实值和预测值误差的总和;第2部分为正则项,是将t棵树的复杂度累加起来,作用是防止过拟合,正则项的表达式如下:
式中,γ和λ表示控制惩罚力度的系数;T表示当前树的叶子结点个数;ωj表示第j个叶子结点的权重;
采用二阶泰勒展开对目标函数进行简化,并将正则项代入目标函数式,得到:
gi表示损失函数的一阶梯度;hj表示损失函数的二阶梯度;Ij表示叶子结点样本集合;对(6)上式进行简化,得到表达式如下:
式中,Gj表示Hj表示/>
将目标函数转化为一元二次函数,求得最优解表达式如下:
将最优解带入到目标函数式,得到最优目标函数:
计算出最优目标函数后通过反向传播算法计算误差对参数的梯度,然后通过梯度下降算法来更新模型参数,直到达到设定的训练次数,从模型中选择效果最好的模型作为最终的预测模型。
S23、构建密封气流量特征折线图模型:调用matplotlib模块,读取测试集数据,以S12确定的因变量数据为横坐标,密封气流量为纵坐标,创建折线图,以故障数据的最小值为基准绘制一条平行于横轴的直线作为参考线;调用IPython.display模块中的clear_output函数导入采集的密封气流量数据形成监测值曲线,若监测值曲线上任意一点处于参考线以下,则发出预警,并通过display函数显示参考线和监测值曲线;
S3、进行BO-XGBoost模型训练,包括以下子步骤:
S31、将训练集数据传入BO-XGBoost模型中,对模型进行训练,直到达到迭代次数,从中选择最优模型;
S32、将测试集数据导入训练好的BO-XGBoost模型中,对因变量进行预测,输出预测值;
S33、计算预测值与真实值的决定系数和均方误差,并计算模型运行时间,将决定系数、均方误差和模型运行时间分别与期望值进行对比;针对BO-XGBoost模型,一般选择决定系数(R2)、均方误差(MSE)、运行时间(效率)进行评估。R2是评价回归模型拟合优度的指标,它表示模型解释因变量变异的比例,R2的取值范围为0-1,越接近1,说明模型的拟合效果越好。MSE是回归模型中最常用的评价指标,它是预测值和真实值之间差异的平方和的平均值,其值越小,说明模型的预测能力越好。运行时间就是模型开始运行到最后预测出结果的时间,一般时间越短越好,说明模型效率高。如果决定系数小于预期值,或者均方误差大于预期值,或者模型运行时间大于预期值,则重新利用贝叶斯优化对超参数进行寻优,将最优组合代入XGBoost重新构建模型,进行训练和预测,直到决定系数、均方误差、模型运行时间均达到期望值,然后输出模型最为最终的BO-XGBoost预测模型;
S4、将待预测的轴承运行数据分别输入BO-XGBoost预测模型和密封气流量特征折线图模型中,若BO-XGBoost预测模型输出的预测值超过设定的参考值,输出预警;若密封气流量特征折线图模型中监测值曲线上任意一点处于参考线以上,则发出预警;当两个模型均输出预警时,组合模型会输出故障警报。
将本实施例的测试集中目标函数的真实值和预测值代入计算,预测值与实际值对比如图4所示。本案例得出决定系数结果为0.996,几乎接近于1,得到拟合效果达到预期;计算测试集中目标函数的真实值和预测值之间差异的平方和的平均值,本案例得出结果为0.00019,说明模型的预测能力很好;计算模型从开始运行到输出预测值所消耗的时间,本案例得出结果为0.45秒,时间很短,说明模型的效率高。
特征模型因其参考的是实测值,只需要查看当前最新采集到的特征数据值是在参考线上还是下,如果是上,则输出故障预警。
当传入实际参数时候,BO-XGBoost模型预测值超过参考值,输出预警,特征模型预测值超过参考线时,也输出预警,当两个模型均输出预警时,此时组合模型会输出报警,提醒维修人员进行干预。组合模型一旦构建好,就只需导入采集好的新数据即可,模型会自动对数据进行处理、分析,然后输出预测结果,对轴承的状况进行诊断预测,不需要再进行人工判别。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (3)
1.基于XGBoost和特征组合的轴承故障诊断方法,其特征在于,包括以下步骤:
S1、数据预处理,包括以下子步骤:
S11、采集轴承运行数据,并对采集数据中出现的缺失值、异常值进行处理:针对缺失值,在jupyter中利用循环语句找寻缺失值,计算缺失值对应位置处前5行对应数据的平均值,若缺失值前面数据不足5行则取后面的数据补足,将该平均值填充到缺失值位置;针对异常值,调用SkLearn库中的Isolation Forest模块找到异常值并删除,然后对删除异常值所形成的缺失值进行填充,计算缺失值对应位置处前3行数据的平均值并填充到该缺失值位置;
S12、对数据集中的特征进行提取,剔除与轴承故障诊断无关的数据特征;采用Spearman等级相关系数计算数据的相关性,再利用多元回归模型判别出最适合做因变量的数据,然后删除其余数据:
S13、对故障数据进行标记,根据设备运行维护记录,标记出故障数据,并统计故障数据和正常数据数量;
S14、判断故障数据与正常数据的数据量比值,若比值低于预设阈值则采用SMOTE法对故障数据进行过采样,直到故障数据与正常数据的数据量比值不小于预设阈值;
S15、提取故障数据,使用min()函数找出故障数据中的最小值;
S16、将处理好的数据集划分为训练集和测试集;
S2、构建BO-XGBoost和特征组合模型,包括以下三个子步骤:
S21、利用BO算法寻找最优超参数组合,包括弱学习器个数n_estimators、弱学习器决策树的最大深度max_depth、权重缩减系数learning_rate和迭代次数;
S22、构建BO-XGBoost模型:将最优超参数组合代入XGBoost算法中形成BO-XGBoost模型;
S23、构建密封气流量特征折线图模型:调用matplotlib模块,读取测试集数据,以S12确定的因变量数据为横坐标,密封气流量为纵坐标,创建折线图,以故障数据的最小值为基准绘制一条平行于横轴的直线作为参考线;调用IPython.display模块中的clear_output函数导入采集的密封气流量数据形成监测值曲线,若监测值曲线上任意一点处于参考线以下,则发出预警,并通过display函数显示参考线和监测值曲线;
S3、进行BO-XGBoost模型训练,包括以下子步骤:
S31、将训练集数据传入BO-XGBoost模型中,对模型进行训练,直到达到迭代次数,从中选择最优模型;
S32、将测试集数据导入训练好的BO-XGBoost模型中,对因变量进行预测,输出预测值;
S33、计算预测值与真实值的决定系数和均方误差,并计算模型运行时间,将决定系数、均方误差和模型运行时间分别与期望值进行对比;如果决定系数小于预期值,或者均方误差大于预期值,或者模型运行时间大于预期值,则重新利用贝叶斯优化对超参数进行寻优,将最优组合代入XGBoost重新构建模型,进行训练和预测,直到决定系数、均方误差、模型运行时间均达到期望值,然后输出模型最为最终的BO-XGBoost预测模型;
S4、将待预测的轴承运行数据分别输入BO-XGBoost预测模型和密封气流量特征折线图模型中,若BO-XGBoost预测模型输出的预测值超过设定的参考值,输出预警;若密封气流量特征折线图模型中监测值曲线上任意一点处于参考线以上,则发出预警;当两个模型均输出预警时,组合模型会输出故障警报。
2.根据权利要求1所述的基于XGBoost和特征组合的轴承故障诊断方法,其特征在于,所述步骤S21具体实现方法为:首先设定参数取值范围和迭代次数;然后运用BO算法进行计算,选择使得采集函数取得最大值的参数组合为最优超参数组合;
所述BO算法采用高斯回归;高斯过程回归是一种基于高斯分布的概率模型,用于对目标函数进行建模,由均值函数m:x→R和协方差函数k:x×x→R构成,表示对目标函数在不同输入值处的不确定性估计,该过程的模型为:f(x)=gp(m(x),k(x,x)),g表示高斯函数;
高斯回归的具体优化流程为:
S211、判断模型是否初始化,若是则利用上一轮选出的最大采集函数值点的集合作为训练数据,否则随机产生初始化点作为训练数据;
S212、进行高斯回归:通过训练数据,得到高斯回归的均值μs和方差σs 2,表达式如下:
μs(x)=μ0(x)+k(x)T(k+σ2I)-1(y-m) (1)
其中,y为观测值;s为评估次数,k(x)T表示k(x,x)的转置,μ0(x)是高斯回归的初始均值,σ2为初始噪声方差,I为单位矩阵;
S213、计算采集函数:采集函数使用PI采集函数,PI采集函数计算方法为:
其中,D1:s表示已观测的数据集;v*表示当前最优函数值;ξ表示平衡参数;φ表示标准正态分布累计密度函数;p()代表PI采集函数;
S214、计算最大采集函数的值,判断该值是否大于预设的目标值,若是则输出最大采集函数对应的参数作为下一轮训练的数据集,返回步骤S211,直到达到设定的迭代次数;若否则返回步骤S212;
S215、选择最优模型,获得最优参数。
3.根据权利要求1所述的基于XGBoost和特征组合的轴承故障诊断方法,其特征在于,所述步骤S22中,首先使用CART树训练得到一个模型,这样每一次增加一棵新树,针对每个样本都会产生一个偏差值,然后将样本偏差值作为新的训练集,记为模型1偏差;继续使用CART树训练得到一个新模型,得到模型2偏差;如此重复,直到达到设定的退出条件为止,将所有模型进行叠加,得到最佳模型;
XGBoost目标函数的整体表达式如下:
式中第1部分为损失函数,是真实值和预测值误差的总和;第2部分为正则项,是将t棵树的复杂度累加起来,作用是防止过拟合,正则项的表达式如下:
式中,γ和λ表示控制惩罚力度的系数;T表示当前树的叶子结点个数;ωj表示第j个叶子结点的权重;
采用二阶泰勒展开对目标函数进行简化,并将正则项代入目标函数式,得到:
gi表示损失函数的一阶梯度;hj表示损失函数的二阶梯度;Ij表示叶子结点样本集合;对(6)上式进行简化,得到表达式如下:
式中,Gj表示Hj表示/>
将目标函数转化为一元二次函数,求得最优解表达式如下:
将最优解带入到目标函数式,得到最优目标函数:
计算出最优目标函数后通过反向传播算法计算误差对参数的梯度,然后通过梯度下降算法来更新模型参数,直到达到设定的训练次数,从模型中选择效果最好的模型作为最终的预测模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311485678.9A CN117520960A (zh) | 2023-11-08 | 2023-11-08 | 基于XGBoost和特征组合的轴承故障诊断方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311485678.9A CN117520960A (zh) | 2023-11-08 | 2023-11-08 | 基于XGBoost和特征组合的轴承故障诊断方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117520960A true CN117520960A (zh) | 2024-02-06 |
Family
ID=89757948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311485678.9A Pending CN117520960A (zh) | 2023-11-08 | 2023-11-08 | 基于XGBoost和特征组合的轴承故障诊断方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117520960A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117853827A (zh) * | 2024-03-07 | 2024-04-09 | 安徽省大气探测技术保障中心 | 大气温室气体监测用采样泵工作状态运行监测系统及方法 |
-
2023
- 2023-11-08 CN CN202311485678.9A patent/CN117520960A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117853827A (zh) * | 2024-03-07 | 2024-04-09 | 安徽省大气探测技术保障中心 | 大气温室气体监测用采样泵工作状态运行监测系统及方法 |
CN117853827B (zh) * | 2024-03-07 | 2024-05-14 | 安徽省大气探测技术保障中心 | 大气温室气体监测用采样泵工作状态运行监测系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Remaining life prediction method for rolling bearing based on the long short-term memory network | |
Xing et al. | A label description space embedded model for zero-shot intelligent diagnosis of mechanical compound faults | |
Zeng et al. | Gearbox oil temperature anomaly detection for wind turbine based on sparse Bayesian probability estimation | |
US20220283576A1 (en) | Automatic diagnosis method, system and storage medium for equipment | |
Yang et al. | An unsupervised spatiotemporal graphical modeling approach for wind turbine condition monitoring | |
Yu | A hybrid feature selection scheme and self-organizing map model for machine health assessment | |
Kusiak et al. | Prediction of status patterns of wind turbines: A data-mining approach | |
Chen et al. | Anomaly detection and critical attributes identification for products with multiple operating conditions based on isolation forest | |
CN112016251B (zh) | 一种核动力装置故障的诊断方法及系统 | |
Liu et al. | Research on fault diagnosis of wind turbine based on SCADA data | |
CN111597682A (zh) | 预测风力机齿轮箱轴承剩余寿命的方法 | |
Zhao et al. | A deep feature optimization fusion method for extracting bearing degradation features | |
CN117520960A (zh) | 基于XGBoost和特征组合的轴承故障诊断方法 | |
Korkos et al. | Data annotation and feature extraction in fault detection in a wind turbine hydraulic pitch system | |
Salilew et al. | Investigation of fault detection and isolation accuracy of different Machine learning techniques with different data processing methods for gas turbine | |
Peco Chacón et al. | State of the art of artificial intelligence applied for false alarms in wind turbines | |
Deon et al. | Digital twin and machine learning for decision support in thermal power plant with combustion engines | |
Hu et al. | Intelligent condition assessment of industry machinery using multiple type of signal from monitoring system | |
Liang et al. | Self-organization comprehensive real-time state evaluation model for oil pump unit on the basis of operating condition classification and recognition | |
Dienst et al. | Automatic anomaly detection in offshore wind SCADA data | |
Zhang et al. | Review of remaining useful life prediction using support vector machine for engineering assets | |
Cohen et al. | Fault prognosis of turbofan engines: Eventual failure prediction and remaining useful life estimation | |
Tan et al. | The health index prediction model and application of PCP in CBM wells based on deep learning | |
Lv et al. | General log-linear weibull model combining vibration and temperature characteristics for remaining useful life prediction of rolling element bearings | |
Jing et al. | Two-layer PSDG based fault diagnosis for wind turbines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |