APP下载

基于机器学习的水库除险加固工程投资估算方法

2020-12-14李北振

水利技术监督 2020年6期
关键词:向量机器神经网络

李北振

(中国交通建设集团烟台环保疏浚有限公司,山东 烟台 264000)

工程项目投资估算是进行项目可行性研究的重要内容,投资估算的准确性将直接影响投资者的投资决策和项目经济效益评价的质量[1]。在工程项目的可行性研究阶段,工程资料的缺失致使很难通过定额法进行投资估算[2]。水电工程项目的投资者也希望对项目的投资额进行有效地控制[3]。因此,建立一种快速、高效、可行的用于工程项目建设前期的投资估算方法具有深远意义[4]。有学者采用多元线性回归方法建立估算模型[5- 6],但是随着工程项目施工过程的日益复杂,工程投资额与其影响因素之间开始呈现非线性映射的特点[7],这给机器学习算法的应用提供了机会。部分学者已成功将其应用于住宅、综合管廊、桥梁等工程的投资估算中[8- 10]。在水利工程中,主要应用在径流预测、水轮发电机组信号振动故障预报等领域[11- 12],学者对于使用该类方法进行投资估算的研究较少,缺乏构建水利工程投资估算指标体系的方法,也存在应该如何选择机器学习方法的问题。基于上述分析,本文综合运用多种降维方法筛选得到模型的输入向量,得到构建水利工程投资费用估算指标体系的方法,对2种机器学习算法所构建的模型的性能进行比较分析,为将机器学习算法引入水利工程投资估算领域提供参考。

1 投资估算模型原理

1.1 神经网络

人工神经网络是通过模拟人的大脑而建立起来的一种机器学习方法,其在预测估算领域具有很强的应用潜力。本文使用神经网络中结构较为简单的BP神经网络构建模型,其拓扑结构包含输入层、隐含层和输出层3部分。网络结构的选择主要包括输入向量和输出向量的确定、隐含层数目的确定以及隐含层节点数的选择,本文选择试错法确定相关参数。

1.2 支持向量机

支持向量机算法由Vapnilk等人于20世纪60年代提出,其理论基础是统计学习理论。在高维特征空间中,输出结果与输入数据之间的关系可由下式所示的函数关系式表达:

f(x)=ω·Φ(x)+b

(1)

式中,Φ(x)—非线性映射函数;ω—权向量;b—偏置量,由结构风险最小化原理确定。

引入ε线性不敏感损失函数,松弛变量ξi、ξi*(ξi,ξi*≥0)和拉格朗日函数,求解后得到回归函数:

表1 施工临时工程费输入向量筛选及冗余处理结果表

(2)

式中,αi,αi*—拉格朗日系数( 0≤αi,αi*≤C);K(xi,xj)—核函数,其表达式为K(xi,xj)=Φ(xi)TΦ(xj)。

由此可知,正则化参数C、核函数K及其参数和不敏感系数ε是模型的重要参数,将对预测结果产生影响。本文采用交叉验证法和试错法确定各参数取值。

2 投资估算模型的输入向量的确定

2.1 输入向量的初步筛选

本文以水库除险加固工程投资费用中的临时施工费为研究对象。《水利工程设计概(估)算编制规定》(水总[2014]429号)中指出,投资估算可以通过对设计概算编制规定的内容进行适当简化、合并或调整得到。因此,通过对工程项目概预算书的分析,结合《水利建筑工程概算定额》,选择因素费用占总投资额比率较大和因素完整度较高的因素作为初步筛选的输入向量,结果见表1。

2.2 输入向量的冗余处理

对初步筛选得到的估算指标进行冗余处理的目的是为了降低模型输入向量的维度,避免所构建的模型陷入“维数灾难”,同时冗余处理后的指标应该是对投资额影响程度较大的指标。基于上述分析,本文综合运用3种方法进行输入向量的冗余处理:使用SPSS22软件进行主成分分析和因子分析,因子旋转采用方差最大法,以累计贡献率大于85%为指标选取主成分和因子。在分析过程中,只考察各输入向量是否被新的主成分和因子所提取;使各指标在±20%范围内变动,计算得到各指标的敏感性系数,具体结果见表1。

2.3 输入向量的确定

根据2.1和2.2的计算结果,价格占比以3%为界,因素完整度以50%为界,敏感性系数以0.05为界,主成分分析系数以0.5为界,因子分析系数以0.8为界,剔除冗余因素。由于按计算规则,办公及福利费和其他临时工程费应由估算值乘以相应的百分率得到,因此,不将其作为参与模型构建的输入向量,而是在得到满足精度要求的投资估算值后再乘以相应的百分率得到。最终的输入向量结果见表2。

表2 水库除险加固工程施工临时工程费估算模型输入向量结果表

3 投资估算模型的建立

3.1 数据预处理

数据预处理的目的是将所收集到的样本数据转换为可供建模使用的样本数据集。首先检查原始数据信息,剔除有数据缺失的样本,取其中85%的样本构成训练集,其余样本为测试集。同时,为避免数据由于量纲不同对模型权重分配的准确性和各分量自我调节的能力造成影响,进而影响模型估算精度,采用最大最小化方法对样本数据进行归一化处理,处理后的样本数据区间为[0,1]。

3.2 投资估算模型的建立

本文以2.3确定的投资影响因素指标体系为输入向量,以各工程的投资估算值为输出向量,以训练集样本为建模数据,运用试错法确定参数取值,分别构建基于2种机器学习算法的估算模型。将测试集样本数据输入模型,得到测试集各工程的投资费用估算值。上述过程使用MATLAB软件编程实现。

3.3 模型估算性能评价

采用平均相对误差(MRE)、均方误差(MSE)和决定系数(R2)指标对模型的估算性能进行评价,各指标计算结果见表3。

表3 模型结果对比分析表

从表3可分析得出,使用BP神经网络算法和支持向量机算法构建的投资估算模型,均可以满足目前我国对可行性研究阶段投资估算精度(±20%)的要求,因此将机器学习方法应用于构建水利工程项目投资估算模型具有可行性。

通过对2种机器学习方法估算结果的比较可知:从估算精度角度看,基于SVM算法的投资估算模型要优于基于BP神经网络算法的估算模型。同时,基于SVM的估算模型的MSE和R2指标也较优,因此其具有更好的估算性能。

4 结论

本文通过构建基于机器学习的投资估算模型,证明了将机器学习方法应用于构建水库除险加固工程投资估算模型具有可行性,并比较了由2种机器学习方法所构建的估算模型的性能,同时探索了模型输入向量的确定方法,具体研究结论如下:

(1)从预测结果精度角度分析,基于BP神经网络算法和支持向量机算法构建的投资估算模型均满足目前在可行性研究阶段对工程项目进行投资估算的精度要求,因此将机器学习方法应用于构建水利工程投资估算模型具有可行性。综合考虑平均相对误差、均方误差和决定系数等评价指标,基于支持向量机算法构建的投资估算模型具有更优的性能。

(2)在构建投资估算指标体系即模型的输入向量时,可以在充分分析工程项目特点的基础上,根据《水利建筑工程概算定额》初步得到估算指标,再运用敏感性分析方法分析各指标对投资额的影响程度,使用主成分分析及因子分析方法对指标进行降维处理,进而得到经过冗余处理的模型输入向量,该方法既能够降低模型输入向量的维度,同时能够保证模型的精度。

猜你喜欢

向量机器神经网络
机器狗
基于递归模糊神经网络的风电平滑控制策略
向量的分解
机器狗
聚焦“向量与三角”创新题
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
未来机器城
基于Q-Learning算法和神经网络的飞艇控制
向量垂直在解析几何中的应用