一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于XGBoost算法的机组设备基准值预测方法及系统与流程

2022-06-08 23:11:00 来源:中国专利 TAG:

一种基于xgboost算法的机组设备基准值预测方法及系统
技术领域
1.本发明涉及机组设备基准值预测技术领域,尤其是涉及一种基于xgboost算法的机组设备基准值预测方法及系统。


背景技术:

2.随着国家对电力企业设备管理水平要求的提高,近年来发电机组逐渐以提高效率、节约能源、改善环境和降低成本为发展目标,尤其对于具备深度调峰能力的机组,严格的考核标准与复杂的运行状况互相矛盾,造成依靠传统控制手段的火电机组经济形势日趋严峻。
3.设备的基准值是指在某一负荷下,设备运行条件正常下某一运行参数(如主蒸汽压力、真空等)在运行工况时应达到的最佳值(或一个范围),因而也称之为应达值。当运行参数偏离基准值时,系统将会造成各项能量损失,所以运行工况下主要参数基准值的确定,有助于指导运行人员经济运行,并作为电厂能耗分析的重要依据和监视设备故障的辅助手段。当机组在额定工况下运行时,额定工况下的参数值可以作为基准参数运行。但由于电网规模的扩大和峰谷差矛盾的日益突出,大容量、高效率的火电机组不得不频繁地参与调峰,这时机组就偏离了额定工况下运行,额定工况下的参数值就不能再作为运行参数的基准值。确定运行参数基准值对于提高机组在各个不同负荷下运行的经济性有很重要的意义,不仅有利于降低供电成本,提高电站运行的经济效益,还有利于节约能源,减轻污染排放。
4.如何充分利用互联网和大数据的平台来提升设备建模的质量,从而提高机组的运行效率,已经成为当前能源行业重点关注的问题。基于此,对于设备运行基准值的预测,对电厂中的智能监盘测点预警以及设备故障检测就显得尤为重要。
5.目前用于机组设备基准值预测的建模方式,多以人工建模与机器学习算法为主,传统的人工建模方式需要实施人员的知识和经验,往往存在操作复杂、预测精度不够高、计算过程缓慢、实施周期长等问题。对于在设备运行基准值预测中应用较为广泛的机器学习算法,如应用于故障预警系统的数据挖掘技术和支持向量机的方法,数据挖掘技术存在欠拟合、逻辑回归性能不够好等问题,支持向量机的方法也存在着对大规模训练样本难以实施等缺点。


技术实现要素:

6.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于xgboost算法的机组设备基准值预测方法及系统。
7.本发明的目的可以通过以下技术方案来实现:
8.一种基于xgboost算法的机组设备基准值预测方法,包括以下步骤:
9.s1、获取机组中设备的历史运行数据,并对数据进行预处理,构建包含多个样本的数据集,每个样本包括多个特征,对应设备多个参数的基准值;
10.s2、利用rf袋外估计对数据进行特征重要性计算,剔除重要性低的特征;
11.s3、对数据集中的样本的特征进行标准化处理,消除特征之间的量纲影响;
12.s4、输入数据集,构建xgboost模型,并进行贝叶斯超参数寻优,得到基准值预测模型;
13.s5、输入设备运行的实时数据,通过基准值预测模型预测得到设备各个参数的基准值。
14.进一步的,所述步骤s1具体为:
15.s11、自机组的厂级信息监测系统sis中获取设备的历史运行数据;
16.s12、对数据进行空缺值、异常值检查,剔除存在空缺值、异常值的数据;
17.s13、过滤拉直线型数据;
18.s14、对数据的特征进行pca降维,得到包含多个样本的数据集,每个样本包含多个特征。
19.进一步的,步骤s2具体为:
20.对于样本的每个特征,采用随机森林rf袋外估计对特征进行重要性排序并进行特征选择,以平均精度下降率mda作为指标进行特征重要性计算,公式如下:
[0021][0022]
其中,n表示随机森林构建的基分类器的数量,erroob
t
表示第t个基分类器的袋外误差,erroob

t
表示第t个基分类器加入噪声后的袋外误差,mda下降越多,说明特征的重要性越高。
[0023]
进一步的,步骤s3中,数据集中含有n个样本,每个样本有l类特征,采用z-score标准化方法分别对每个样本的每类特征进行标准化处理,具体为:
[0024][0025]
其中,x
nl
表示第n个样本的第l类特征的特征数据,表示第n个样本的第l类特征标准化处理后的特征数据,μ
l
表示n个样本中第l类特征的特征数据均值,σ
l
表示n个样本中第l类特征的特征数据标准差。
[0026]
进一步的,步骤s4包括以下步骤:
[0027]
s41、输入含有n个样本的数据集t,t={(x1,y1)、(x2,y2)、(x3,y3)、

、(xn,yn)},每个样本有l类特征,xi=(x
i1
,x
i2
,

,x
il
),对应设备m个参数的基准值,yi=(y
i1
,y
i2
,

,y
im
);
[0028]
s42、建立xgboost模型迭代的目标函数:
[0029][0030]
其中,λ为l2正则惩罚项系数;γ为l1正则惩罚项系数;k为决策树的叶子节点总数;yi为第i个样本的真实值;为第i个样本(t-1)次迭代后的预测值;定义索引为k的叶子上含有的样本集合
是ik;
[0031]
s43、设定xgboost模型超参数调节范围,利用贝叶斯优化算法进行xgboost超参数寻优,得到超参数的最优组合;
[0032]
s44、将超参数的最优组合输入xgboost模型,利用数据集t,根据目标函数o(t)进行训练;
[0033]
s45、若训练得到的xgboost模型的预测性能满足预设置的精度阈值,则记录此次超参数的最优组合,得到基准值预测模型,否则,执行步骤s43,再次进行xgboost超参数寻优。
[0034]
进一步的,步骤s43中,xgboost模型的超参数包括:
[0035]
学习率,参数调节范围为[0.1,0.15];
[0036]
树的最大深度,参数调节范围为(5,30);
[0037]
复杂度的惩罚项,参数调节范围为(0,30);
[0038]
随机抽取样本比例,参数调节范围为(0,1);
[0039]
特征随机采样比例,参数调节范围为(0.2,0.6);
[0040]
权重的l2范数正则化项,参数调节范围为(0,10);
[0041]
决策树的数量,参数调节范围为(500,1000);
[0042]
最小叶结点权重和,参数调节范围为(0,10)。
[0043]
进一步的,步骤s45中xgboost模型的预测性能包括平均绝对百分比误差和决定系数,计算公式如下:
[0044][0045][0046]
其中,e
mape
表示平均绝对百分比误差,r2表示决定系数,yi表示数据集中第i个样本的基准值,表示xgboost模型根据第i个样本的特征xi预测得到的基准值,表示数据集中n个样本基准值的平均值。
[0047]
一种基于xgboost算法的机组设备基准值预测系统,包括:
[0048]
数据集构建模块,获取机组中设备的历史运行数据,并对数据进行预处理,构建包含多个样本的数据集,每个样本包括多个特征,对应设备多个参数的基准值;
[0049]
特征选择模块,利用rf袋外估计对数据进行特征重要性计算,剔除重要性低的特征;
[0050]
标准化处理模块,对数据集中的样本的特征进行标准化处理,消除特征之间的量纲影响;
[0051]
模型构建模块,输入数据集,构建xgboost模型,并进行贝叶斯超参数寻优,得到基准值预测模型;
[0052]
预测模块,输入设备运行的实时数据,通过基准值预测模型预测得到设备各个参数的基准值。
[0053]
进一步的,特征选择模块执行以下步骤:
[0054]
对于样本的每个特征,采用随机森林rf袋外估计对特征进行重要性排序并进行特征选择,以平均精度下降率mda作为指标进行特征重要性计算,公式如下:
[0055][0056]
其中,n表示随机森林构建的基分类器的数量,erroob
t
表示第t个基分类器的袋外误差,erroob

t
表示第t个基分类器加入噪声后的袋外误差,mda下降越多,说明特征的重要性越高。
[0057]
进一步的,模型构建模型执行以下步骤:
[0058]
step1、输入含有n个样本的数据集t,t={(x1,y1)、(x2,y2)、(x3,y3)、

、(xn,yn)},每个样本有l类特征,xi=(x
i1
,x
i2
,

,x
il
),对应设备m个参数的基准值,yi=(y
i1
,y
i2
,

,y
im
);
[0059]
step2、建立xgboost模型迭代的目标函数:
[0060][0061]
其中,λ为l2正则惩罚项系数;γ为l1正则惩罚项系数;k为决策树的叶子节点总数;yi为第i个样本的真实值;为第i个样本(t-1)次迭代后的预测值;定义索引为k的叶子上含有的样本集合是ik;
[0062]
step3、设定xgboost模型超参数调节范围,利用贝叶斯优化算法进行xgboost超参数寻优,得到超参数的最优组合;
[0063]
step4、将超参数的最优组合输入xgboost模型,利用数据集t,根据目标函数o(t)进行训练;
[0064]
step5、若训练得到的xgboost模型的预测精度满足预设置的精度阈值,则记录此次超参数的最优组合,得到基准值预测模型,否则,执行步骤step3,再次进行xgboost超参数寻优。
[0065]
与现有技术相比,本发明具有以下有益效果:
[0066]
(1)基于xgboost算法构建基准值预测模型,利用机器学习算法挖掘数据之间的关联性,能够预测出较合理的设备基准值,泛化能力强、预测精度高、运算速度快,大大提高了机组的自动化能力。
[0067]
(2)初步数据处理,剔除空缺值、异常值和拉直线型数据,避免异常数据的干扰,并初步进行pca主成分分析,筛选出关键的特征,可以将相似、冗余的特征初步去除,降低了后续特征选择和模型训练的计算量。
[0068]
(3)对于pca降维后的数据,再通过rf袋外估计进行特征重要性排序和选择,进一步筛选重要特征,简化数据样本的同时保留了关键特征,能够减少过拟合,提高模型泛化能力,使得模型获得更好的解释性,增强对特征与预测值之间相关性的认识,加快模型的训练速度。
[0069]
(4)通过贝叶斯优化算法进行xgboost超参数寻优,大大降低了xgboost模型中的参数调节工作量,加快了模型构建速度。
附图说明
[0070]
图1为本发明的流程图。
具体实施方式
[0071]
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0072]
在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件。
[0073]
实施例1:
[0074]
一种基于xgboost算法的机组设备基准值预测方法,如图1所示,包括以下步骤:
[0075]
s1、获取机组中设备的历史运行数据,并对数据进行预处理,构建包含多个样本的数据集,每个样本包括多个特征,对应设备多个参数的基准值;
[0076]
s2、利用rf袋外估计对数据进行特征重要性计算,剔除重要性低的特征;
[0077]
s3、对数据集中的样本的特征进行标准化处理,消除特征之间的量纲影响;
[0078]
s4、输入数据集,构建xgboost模型,并进行贝叶斯超参数寻优,得到基准值预测模型;
[0079]
s5、输入设备运行的实时数据,通过基准值预测模型预测得到设备各个参数的基准值。
[0080]
本技术的整体技术方案主要分为数据采集和预处理,利用rf(random forest,随机森林)袋外估计进行特征重要性排序,数据标准化处理,利用贝叶斯参数优化的xgboost模型进行建模,以及应用模型进行基准值预测五个部分。采用java语言开发数据接口采集历史数据,并负责各模块间的数据通信;数据来源于实时数据库平台厂级监控信息系统(supervisory information system,sis);采用python单独安装的xgboost包(当前版本1.4.2)实现所述算法。各部分的功能如下:
[0081]
步骤s1具体为:
[0082]
s11、自机组的厂级信息监测系统sis中获取设备的历史运行数据;
[0083]
s12、对数据进行空缺值、异常值检查,剔除存在空缺值、异常值的数据;
[0084]
s13、过滤拉直线型数据;
[0085]
s14、对数据的特征进行pca降维,得到包含多个样本的数据集,每个样本包含多个特征。
[0086]
发电机组一般都有厂级信息监测系统(sis),在sis中存储着从机组分散控制系统(distributed control system,dcs)采集的历史数据。
[0087]
发电厂部署应用软件通常只从sis读取数据。sis的核心技术是实时数据库(现在改称时序数据库),本方案需布署一台服务器,在服务器上部署与sis实时数据库的接口程序,按上述若干测点采集历史数据,存入部署在服务器的开源的时序数据库。
[0088]
为了保证数据的完备性,应当获取设备至少包含一整年的运行历史数据,过于久远的数据没有参考性,再按照时间进行数据筛选,基于设定的时间阈值,如原始数据时间跨度少于一年则不取。在此基础上,再去除空值型数据,一般由于现场传感器故障或数据传递异常等数据;进一步地,过滤拉直线型数据,关于拉直线型异常数据的定义为:若某个时间区间的测点数据的值在设定的阈值范围内波动(所述阈值范围是根据数据的不同类型而设置的),则该时间区间上的数据为拉直线型异常数据。需要说明的是,这些拉直线型异常数据异常的原因为,在一些异常情况下比如现场传感器故障,传送的数据点不是空值或者报错,而是会不间断地传送上一个测量到的正常值,体现在趋势图上就是拉一条直线,这是拉直线型异常数据的一种。
[0089]
然后再对筛选出来的特征进行主成分分析(principal component analysis,pca)降维,该功能通过python中的sklearn库的pca模块实现。调用sklearn.model_selection模块的train_test_split函数划分训练集和测试集。主成分分析时可以调节需要保留的重要特征的数量,此处根据设备的类型、经验等进行设置即可,相关从业人员可以理解。
[0090]
此外,每隔一段时间定期读入新的数据补充进服务器的数据库,则重新进行数据预处理,执行步骤s1~s4,定期更新基准值预测模型。
[0091]
步骤s2具体为:
[0092]
历史数据经过预处理之后,再利用rf袋外估计对代表设备运行特征的主要测点,如机组负荷、电流等的特征进行重要性排序。rf可用于进行特征选择,在从原样本集中随机可重复抽取样本进行分类器训练过程中,约有1/3的样本数据不会被选中,这些数据称为袋外数据(out ofbag,oob),用oob测试错误率记为袋外误差erroob,计算所有基学习器的测试平均误差,以平均精度下降率mda作为指标进行特征重要性计算,公式如下:
[0093][0094]
其中,n表示随机森林构建的基分类器的数量,erroob
t
表示第t个基分类器的袋外误差,erroob

t
表示第t个基分类器加入噪声后的袋外误差,mda下降越多,说明特征的重要性越高。
[0095]
rf袋外估计是基于随机森林算法确定的,随机森林是构建多颗决策树,即基分类器,每个决策树可以理解为对一个特征进行决策,若给某个特征随机加入噪声之后,袋外的准确率大幅度降低,则说明这个特征对于样本的分类结果影响很大,也就是说它的重要程度比较高。根据上述思想,可以使用rf袋外估计对数据集中样本的特征进行重要性排序,选择重要性较高的特征。具体保留多少特征也是根据设备类型以及经验自定义设置的。
[0096]
步骤s3中:
[0097]
经过预处理和特征选择后,得到的特征通常具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除特征之间的量纲影响,需要进行数据标准化处理。数据集中含有n个样本,每个样本有l类特征,采用z-score标准化方法分别对每个样本的每类特征进行标准化处理,z-score标准化方法将特征数据按均值中心化后,再按标准差缩放,则处理后的数据将服从标准正态分布,即x~n(μ,σ2),具体为:
[0098][0099]
其中,x
nl
表示第n个样本的第l类特征的特征数据,表示第n个样本的第l类特征标准化处理后的特征数据,μ
l
表示n个样本中第l类特征的特征数据均值,ρ
l
表示n个样本中第l类特征的特征数据标准差。此步骤可以运用xgboost的numpy库,完成数据标准化处理。
[0100]
步骤s4具中:
[0101]
以下为xgboost算法的原理:
[0102]
给定数据集d={(x1,y1),(x2,y2),

,(xi,yi),

,(xn,yn)},(xi∈rm,yi∈r),xi即特征,可以理解为m的向量,yi表示xi对应的标签,如根据年龄、性别、收入预测是否会购买产品,则x为(年龄,性别,收入),y为“是”或“否”。本技术中,对于机组中的设备,获取设备不同测点的数据,如电流、电压、振动、声音、负荷等等作为特征,以设备的主要参数的基准值为标签,训练好的xgboost模型,其输入为电流、电压、振动、声音、负荷等设备运行数据,输出为预测的各个设备的基准值。
[0103]
关于xgboost的目标函数:
[0104][0105]
其中,yi为实际值,即训练集中的数值;为第i个样本t次迭代后的预测值;ω(fk)为正则项。ω(fk)对应的公式为:
[0106][0107][0108]
其中,k为决策树的叶子节点总数;α、β分别为l1、l2正则惩罚项系数;ωk为决策树第k个叶子节点的输出值。
[0109]
将ω(fk)代入目标函数o(t)并利用二阶泰勒公式展开,得:
[0110][0111]
定义:
[0112][0113][0114]
得到目标函数为:
[0115][0116]
综上,步骤s4包括以下步骤:
[0117]
s41、输入含有n个样本的数据集t,t={(x1,y1)、(x2,y2)、(x3,y3)、

、(xn,yn)},每个样本有l类特征,xi=(x
i1
,x
i2
,

,x
il
),对应设备m个参数的基准值,yi=(y
i1
,y
i2
,

,y
im
);
[0118]
s42、建立xgboost模型迭代的目标函数:
[0119][0120]
其中,λ为l2正则惩罚项系数;γ为l1正则惩罚项系数;k为决策树的叶子节点总数;yi为第i个样本的真实值;为第i个样本(t-1)次迭代后的预测值;定义索引为k的叶子上含有的样本集合是ik;
[0121]
s43、设定xgboost模型超参数调节范围,利用贝叶斯优化算法进行xgboost超参数寻优,得到超参数的最优组合;
[0122]
选择进行优化的xgboost模型超参数包括:
[0123]
学习率,参数调节范围为[0.1,0.15];
[0124]
树的最大深度,参数调节范围为(5,30);
[0125]
复杂度的惩罚项,参数调节范围为(0,30);
[0126]
随机抽取样本比例,参数调节范围为(0,1);
[0127]
特征随机采样比例,参数调节范围为(0.2,0.6);
[0128]
权重的l2范数正则化项,参数调节范围为(0,10);
[0129]
决策树的数量,参数调节范围为(500,1000);
[0130]
最小叶结点权重和,参数调节范围为(0,10)。
[0131]
s44、将超参数的最优组合输入xgboost模型,利用数据集t,根据目标函数o(t)进行训练;
[0132]
s45、若训练得到的xgboost模型的预测性能满足预设置的精度阈值,则记录此次超参数的最优组合,得到基准值预测模型,否则,执行步骤s43,再次进行xgboost超参数寻优;
[0133]
步骤s45中,在评估模型的性能时,使用平均绝对百分比误差和决定系数进行评估,计算公式如下:
[0134][0135][0136]
其中,e
mape
表示平均绝对百分比误差,r2表示决定系数,yi表示数据集中第i个样本的基准值,表示xgboost模型根据第i个样本的特征xi预测得到的基准值,表示数据集中n个样本基准值的平均值。
[0137]
关于贝叶斯超参数寻优,可以使用python的bayesianoptimization库,进行贝叶斯超参数寻优,设计惩罚函数,找到组合超参数的惩罚函数的全局最优值,作为最优组合,具体内容在此不再赘述,相关从业人员可以理解。在寻优和模型训练的迭代过程中,关于xgboost求解多输出问题,运用sklearn.multioutput模块的multioutputregressor进行求解。用java编程实现python与时序数据库之间的样本输入和结果输出,通过编写python程序,调用python机器学习库sklearn里的xgboost算法模型完成模型训练、储存、预测以及评分,xgboost模块收到随机样本和预测信息,调用python程序训练,把预测结果传给java程序,完成预测。
[0138]
机器学习中的调参是一项繁琐但至关重要的任务,很大程度上影响了算法的性能,手工调参耗时,且主要基于经验和运气进行,网格和随机搜索不需要人力,但需要很长的运行时间。本技术通过贝叶斯超参数寻优,可以较快地确定xgboost模型的较优超参数,加快了模型构建速度。
[0139]
实施例2:
[0140]
本技术还保护一种基于xgboost算法的机组设备基准值预测系统,基于实施例1中所描述的一种基于xgboost算法的机组设备基准值预测方法,包括:
[0141]
数据集构建模块,获取机组中设备的历史运行数据,并对数据进行预处理,构建包含多个样本的数据集,每个样本包括多个特征,对应设备多个参数的基准值;
[0142]
特征选择模块,利用rf袋外估计对数据进行特征重要性计算,剔除重要性低的特征;
[0143]
标准化处理模块,对数据集中的样本的特征进行标准化处理,消除特征之间的量
纲影响;
[0144]
模型构建模块,输入数据集,构建xgboost模型,并进行贝叶斯超参数寻优,得到基准值预测模型;
[0145]
预测模块,输入设备运行的实时数据,通过基准值预测模型预测得到设备各个参数的基准值。
[0146]
各个模块的具体执行内容已在实施例1中描述,在此不再赘述。
[0147]
在机组设备基准值的预测方面,基于电厂传统人工建模的方法效率低下、预测精准率不高,本发明利用一种强有力的机器学习算法——xgboost算法(extreme gradient boosting,极端梯度提升),通过对机组设备历史运行数据的处理,得到符合健康工况的数据,利用rf(random forest,随机森林)袋外估计对代表设备运行特征的主要测点,如机组负荷、电流等相关特征进行重要性排序,排序后再进行标准化处理,导入经贝叶斯超参数优化的xgboost模型进行建模,得到基准值预测模型;将实时数据输入基准值预测模型即可得到所求基准值预测值。
[0148]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献