APP下载

基于极端梯度提升树模型的工程项目安全管理研究

2024-01-08陈华伟

科技创新与应用 2024年1期
关键词:见式梯度工程项目

陈华伟,谭 琳,于 强

(1.浙江耀信工程咨询有限公司,杭州 310000;2.中国电建集团华东勘测设计研究院有限公司,杭州 310000;3.西南交通大学土木工程学院,成都 610000)

近年来,随着我国经济快速发展,建筑行业也不断地发展。由于国内工程安全管理不够完善导致安全事故的频繁发生,既影响项目完成的工期,也影响项目质量。因此,针对新形势下的工程项目安全管理开展研究具有较强的现实意义和理论价值。当前,我国工程项目管理的模式主要包括施工管理承包模式(Construction-Management,CM)、设计-建造模式(Design and Build,DB)及建造-运营-移交模式(Build-Operate-Transfer,BOT)等,这些管理模式既没有达到整体管理,也没有判断工程项目安全管理各个影响因素所占的比例。为了提高工程管理质量并判断各影响因素所占比例,本文提出一种运算程序简单、效率高、囊扩全面的极端梯度提升树模型(XGboost)的新方法。

1 工程项目安全管理指标体系构建

工程项目安全管理到现在还没有一个比较完备的管理制度和体系,工程项目安全管理的内容较多,通常可以分为前期阶段安全管理分析、设计阶段安全管理分析、采购阶段安全管理分析及施工阶段安全管理分析。前期合同安全管理的风险主要是由于业主本身的管理能力,项目所在地的自然环境及地方政策和相关条款。设计阶段安全管理的风险主要包括设计内容衔接不当、设计方案不满足要求、与业主沟通不及时和地质等其他原因造成的工期拖延。采购阶段安全管理的风险主要包括材料设备延期、质量不合格、估价不准及物价上涨等因素。施工阶段安全管理的风险主要包括变更索赔、风险意识不强、施工不协调及管理者对自己责任不明确等因素。

本文在结合当下工程项目安全管理进行探讨的基础上,根据上述安全管理分析构建安全管理指标,根据参考文献和对向施工人员发放问卷调查获得各个指标的权重值,其中一级指标共分为4 个,标记为A1—A4,而每个一级指标下各有4 个二级指标,标记为A11—A44,具体内容见表1[1]。

表1 安全管理各级指标

2 极端梯度提升树算法原理

本文采用的XGboost 是改进版的梯度提升决策树(Gradient Boosting Decision Tree,GBDT)算法,XGboost的优点是限定了基学习器一定要是分类与回归树(Classification and Regression Tree,CART)(在python的XGboost 模块中,基学习器还可以是线性模型或dart),本文仅推导CART 输出一个分数而不是类别,此方法有助于模型整合所有的基于CART 回归树的输出结果,同时XGboost 算法还引入了并行化,以加强预测结果的整体性。此外,XGboost 算法引入了损失函数的二阶偏导,使预测结果更加合理。

XGboost 算法另一个最大的改进考虑了过拟合问题,本文所采用的处理方法是在XGboost 算法的目标函数中加入正则化项,加入正则化项后的目标函数计算式见式(1)。

对于XGboost 算法的目标函数的正则化项,现将工程项目安全管理影响因素作为树的结构(叶子节点数量),以及树的叶子节点的输出分数ω,计算式见式(2)。

式中:T为基于CART 回归树的叶子节点总数;ωt为基于CART 回归树的第t 个叶子节点的输出值(t=1,2,…,T);γ为正则化项的系数,该值越大路径选择的速度越快;λ为正则化项的系数,该值越大路径选择的速度越快。

现将目标函数式进行二阶泰勒公式展开,二阶泰勒展开公式见式(3)。

将目标函数式(3)进行二阶泰勒公式展开,展开式见式(4)。

因此,推导得出式(5)。

将式(2)代入式(5),结果见式(6)。

对于XGboost 模型而言,任何一个影响因素点最后的结果都必然落在同一棵树上,对于落在同一棵树上的因素集而言最终得到的结果都是一样的,假设某棵树有T 个叶子节点,每个叶子节点输出为“j”,则最优路径函数为式(7)。

下面对上述目标函数进行最优化处理,进而可以加快选择路径的速度。令

将式(7)代入到式(1)即可得到式(10)。

现对ωj求导得到最优目标函数式(11)。

将式(11)代入到式(10)即得到最优目标函数,见式(12)

上式也被称为分值函数,通常用此式来衡量XGboost 结构优劣的标准。在构建CART树中,通常需要找到最佳切分点,而切分点的确定就是根据分值函数的分数值来判断。

3 极端梯度提升树模型建立

3.1 参数调整

现对XGboost 模型参数进行修正,learning-rate 指树生长迭代产生的权重;max-depth 是指初始生长的树的深度;gamma 决定了模型算法的保守度;N-estimator是极端梯度提升树模型运算的次数;Subsample 是指极端梯度提升树模型采样的比例。

本文采用hyperopt 基于贝叶斯优化的方式进行调参,具体过程为:首先选一个相对较高的learning-rate。接下来使用XGboost 的cv 功能确定在这个学习率下最优的树的数量,可以在每一次树的迭代中都进行交叉验证,确定最优树的数量,最后将所需要调整的参数在learning-rate 迭代。通过上述调整便可把XGboost模型参数进行修正,得到一个更符合安全管理预测的模型,调整后的具体参数值见表2。

表2 XGboost 参数调整值[2]

3.2 算法

第一步将工程项目安全管理因素作为XGboost 的树结构q(x),并对其做切分,得到L和R两个叶结点,记新的树结构q′,计算式见式(13)。

输入:I→当前节点的数集;

输入:d→当前数据的维度特征;

输出:最大得分。

绘制在该条件下的最优预测值,将其他影响因素返回XGboost 模型重新训练。

3.3 预测模型建立

根据已获取的工程项目安全管理数据,对XGboost目标函数进行优化。基于XGboost 算法对工程项目安全管理预测步骤如下:首先收集建筑工程主题信息,然后将信息转化成工程项目安全管理相关的数据,对部分数据进行补缺处理;其次根据其影响因素将收集的数据进行特征提取并对所提取的特征进行特征编码;再次根据上述的特征编码定义XGboost 参数的取值并建立XGboost 模型,通过该模型建立主题概率矩阵,对模型参数进行修正得到一个新的预测模型;最后将训练数据输入预测模型进行训练即可得到预测结果。具体流程如图1 所示[3]。

图1 工程项目安全管理预测流程图

4 实证研究

某设计院、工程局和采购公司组成的一个联合体,投标位于浙江杭州的一项工程。现采用极端梯度提升树模型对该项目进行安全管理研究。

本文通过向施工管理人员及设计人员发放问卷收集安全管理过程中以往的安全指标和各个因素投入量及产量,并通过Origin2022 对收集的数据进行分析,除去一些误差较大和一些不具有参考价值的数据,将有价值的数据进行处理,从而确定影响每个因素的权重,结果见表3。

表3 各级指标及权重

本文通过向专家和施工人员发放问卷调查获得100 个样点,通过对获取的样点进行分析并与真实值进行对比,真实值与预测值对比图如图2 所示。

图2 真实值与预测值对比

根据图2 可以看出,采用极端梯度提升树模型可以精准地对工程项目安全管理进行预测。

现以真实值为基准条件计算出真实值的均值为61.52。用同样的仿真方法计算预测曲线安全管理的均值为60.42。根据均值即可得出用XGboost 预测工程项目安全管理的误差,计算方法如下

式中:ξ为误差;为真实值均值;为预测值均值。

由式(14)计算的结果ζ=1.8%。这个计算结果说明采用XGboost 预测的结果与原始结果基本一致。

5 结论

本文采用XGboost 的方法对工程项目安全管理进行评价并利用一个实例对该方法进行解释。根据上面的计算评价结果这种基于整体的预测方法可以更好地实现对工程项目安全管理的研究,从而减少因资源分布不当所造成的事故。通过对误差分析发现本文模型对各个样本预测效果更好,预测结果与实际数据相对误差较小。

猜你喜欢

见式梯度工程项目
低温下船用钢材弹塑性曲线研究
Effects of Landau damping and collision on stimulated Raman scattering with various phase-space distributions
一个改进的WYL型三项共轭梯度法
一种自适应Dai-Liao共轭梯度法
桥(门)式起重机起升机构高速浮动轴设计
二氟乙酰氯在含氟医药中的应用进展
一类扭积形式的梯度近Ricci孤立子
工程项目造价控制中常见问题的探讨
地温梯度判定地热异常的探讨
加强工程项目档案管理的有效途径