基于随机森林的支持向量机某隧道混凝土抗冻性预测研究
0 引言
目前国内外学者对混凝土抗冻耐久性展开了较多研究,取得一定成果。邓祥辉等[1]对引气剂再生混凝土进行抗冻耐久性试验并建立损伤模型;李斌等[2]采用快速冻融法研究了不同种类的外加剂对寒区面板混凝土抗冻性能的影响;张凯等[3]分析了水胶比、引气剂及养护温度等因素对混凝土抗冻性能的显著性影响,建立多元线性回归预测模型;王晨霞等[4]研究了粉煤灰掺量对再生混凝土抗冻性的影响;唐峻峰等[5]分析了钢筋混凝土结构物抗盐冻性能的影响因素并进行了寿命预测;Luo等[6]分析了钢纤维和矿渣粉对混凝土抗冻性能的影响,以上研究成果主要是由传统试验方法得到的,但试验研究存在一定的弊端,如试验周期长、成本高,由于数据误差和不确定性导致规律分析结果失真等。除此之外也有一些学者将智能算法应用于混凝土抗冻性研究中,肖前慧等[7]、Ben等[8]利用人工神经网络进行混凝土力学性能和抗冻性预测,闫春岭等[9]基于RBF与改进BP神经网络预测混凝土相对动弹性模量。然而神经网络模型存在网络结构不易确定、容错率较低、学习速度较慢、模型精度较低等缺点。骨料、粉煤灰、外加剂等用量在很大程度上影响混凝土抗冻耐久性能[10,11]。
1 方法及原理
1.1 随机森林回归算法
1.1.1 随机森林的生成方法
利用Bootstrap方法有放回抽样,从N个原始样本中随机抽取N个作为单棵树的训练集,每个随机生成的训练集生长成对应的决策树,设有M个输入特征,则在决策树每个节点处有m(m≤M)个特征被随机选出,从m个特征中选择最优方式进行分裂。分裂过程中不减枝且Mtry保持不变;重复上述步骤k次,共获得k个训练集,形成k棵决策树,所有决策树组合在一起,生成随机森林[10,12,13]。
随机森林回归模型是在数据样本X和预测变量Y的基础上,生成依赖于随机变量θ决策树形成的,设单棵决策树预测器h(x,θk)的预测结果为hi(X),则随机森林回归模型的最终预测结果表示为:
1.1.2 基于随机森林的特征选择
在随机森林预测中,通过对某个特征加入噪声,根据预测准确率是否出现显著下降来判断特征的重要性程度。基于随机森林的特征选择算法可表述为:通过对特征进行重要性评估对特征进行合理排序,使用序列后向方法从特征值集合中每次除去1个影响最小的特征值,然后逐次迭代,最后收集准确率最高且特征值个数最少的特征集作为最终的特征选取结果。
1.2 支持向量机
支持向量机(SVM)以VC维理论和结构风险最小理论为基础[14],主要是针对小样本设计一种新的机器学习相关算法。该方法的主要思想是输入样本数据以某种非线性函数关系映射到一个特征空间中,在此特征空间中构造最优回归超平面,使所有样本到这个平面的距离最小。在特征空间中,线性函数定义为:
式中:wT为权重;b为偏置顶;(xi)为非线性映射函数。通过引入目标函数来确定支持向量回归模型优化方程为:
式中:c为一个常数。
此时SVM通过二次规划的对偶形式来实现:
通过定义适当的核函数k(xi,xj)(i,j=1,2,…,l)来代替高维空间上的内积运算,此核函数技巧就在于是在样本空间上执行内积的运算。目前常用的核函数有多项式函数、神经网络核函数及高斯径向基核函数等,在此选取泛化能力较好的高斯径向基核函数(RBF),其表达式如下:
得到最后的回归函数为:
式中:x为输入变量;xi为k个样本中第i个样本。
2 RF-SVM混凝土抗冻性预测模型建立
随机森林对于数据指标重要性的评价有助于特征筛选,避免冗余信息,可提高决策的可靠性和有效性,为支持向量机的特征输入起到很好的优化作用。本文RF-SVM混凝土抗冻性预测模型建立流程如图1所示。
图1 RF-SVM混凝土抗冻性预测模型流程
2.1 步骤1:建立初始指标体系和原始训练集
1)构建指标体系基于大量工程经验和文献资料,从原材料和配合比角度选取混凝土抗冻性影响因素为水胶比、水泥强度、水泥用量、粉煤灰、粗集料、细集料、减水剂、引气剂、硅灰、膨胀剂、钢纤维11个因素,选择相对动弹性模量作为混凝土抗冻性能的评价指标,完成指标体系构建。
2)构建原始训练集依据指标体系中输入和输出变量收集数据,作为建立随机森林模型的训练样本。
2.2 步骤2:随机森林特征选择(降维)
1)变量重要性评价对于随机森林中每棵树,使用相应的OOB(袋外数据)来计算其误差,记为err OOB1,随机对OOB的所有样本的特征X加入噪声干扰,再次计算其误差,记为err OOB2。计算特征X的重要性:
2)变量剔除基于特征变量重要性排序,利用递归特征后向剔除法[15],从排序靠后的变量中按一定的百分比剔除评分最小的变量,用留下的特征进行建模对新特征再进行排序,依次重复迭代上述过程,直到只剩下1个指标。比较不同变量组合时的模型均方误差大小,选择使预测模型获得最高精度的组合特征集,作为支持向量机模型的输入变量。
2.3 步骤3:支持向量机模型建立
1)核函数选择由于混凝土相对动弹性模量与影响因素之间存在复杂的非线性关系,建立支持向量机模型时需引入核函数将低维非线性问题转换为高维线性问题,才能对非线性样本映射得到泛化性能较优的回归函数。本文选择适用性强、使用频率高、抗干扰能力强、参数简单的高斯径向基核函数,其表达式如式(5)所示。
2)参数优化为了建立学习和泛化能力更强、性能更优越的SVM模型,需对高斯径向基核函数的2个重要参数即惩罚系数c和核函数宽度参数σ2进行优化选择,以找到表现最好的参数用于建立模型。网格搜索法是一种全局搜索方法,K折交叉验证(K-CV)常用于评估机器算法模型的泛化能力,能避免过拟合问题[16],因此本文采用网格搜索结合K-CV方法来确定SVM模型参数c和σ2。
2.4 步骤4:预测结果评价
选用均方根误差(RMSE)、拟合优度(R2) 2个性能指标来评估模型的预测精度,选择未进行特征选择的支持向量机及人工神经网络进行建模并做对比分析,2个指标的计算式如下:
式中:yobs和ypred分别为观测值和预测值;为观测值的平均值;n为对应样本的样本容量。
3 案例分析
3.1 工程背景
松通高速公路项目起自松原市前郭县,经乾安县后进入白城市境内,再经通榆县,止于吉林省白城市通榆县与内蒙古自治区科右中旗交界处(吉、蒙省界),该工程位于高寒地区,对混凝土抗冻性能要求高。本文所获取数据样本来自松通项目的7个标段。
3.2 建立原始训练集
以松通项目工程混凝土为例,收集各标本的混凝土对应的影响因素和相对动弹性模量数据共100组,构建样本数据如表1所示。
3.3 随机森林降维
3.3.1 随机森林建模
随机抽取原始样本的4/5作为训练集用于随机森林模型建立以实现影响因素特征筛选,剩余1/5的样本作为测试集,验证模型性能。输入随机森林模型的2个重要参数:mtry为分枝时可供选择特征的数量,在回归分析中一般默认为输入总特征数的1/3;ntree为决策树的棵数,默认值即800,在R软件中建模。
3.3.2 重要性计算
利用Importance函数计算得到各影响因素的重要性,并将不同影响因素的重要性降序排列,其排列分布如图2所示。本文以各均方误差减小量(%Inc MSE)的变化幅度来度量各变量的重要性,其值越大变量越重要。由图2可知,水胶比、水泥用量、水泥强度、粗集料用量、粉煤灰用量等变量重要性度量值较大。
图2 重要性排序
表1 样本数据
表1 样本数据
3.3.3 不同变量组合时RMSE变化趋势
利用基于R软件实现的递归特征消除算法(RFE)基于重要性排序对训练集进行特征选择,经过5折交叉验证得到不同变量组合时RMSE变化趋势图,如图3所示。
图3 不同变量组合时RMSE变化趋势
1)由图3可看出,随着最不重要的影响因素依次从变量组合中剔除,模型的预测精度(RMSE)整体上表现出先下降后上升的变化趋势,这表明通过变量选择有效剔除了一些不相关变量和冗余影响因素,提高了模型的预测精度;当变量组合中的变量数达到一个特定值时,如果进一步进行变量剔除,则会误删部分重要变量,从而降低模型的预测性能。
2)当影响因素组合中的变量数达到7个时,均方根误差值达到最小,经递归特征后向筛选得到的变量集合具体包括水胶比、水泥用量、水泥强度、细集料、粗集料、减水剂和粉煤灰7个影响因素。
3)从整体上来说,将随机森林影响因素重要性进行排序,剔除冗余和不重要的指标,得到最优指标集,从而提高模型的预测性能。最后筛选出的最优指标集将用于后文支持向量机模型参数的确定和构建。
3.4 支持向量机预测模型建立
3.4.1 参数优化
将水胶比、水泥用量、水泥强度、细集料、粗集料、减水剂和粉煤灰7个影响因素构成的样本数据输入SVM模型,随机选取80组作为训练集,剩余20组作为测试集。将网格搜索参数σ2与c的搜索范围均控制在[2-8,28],步距大小设置为每次将幂指数增加1的以2为底的幂指数,选择5折交叉验证,根据模型的MSE值确定最优的参数组合,利用MATLAB代码输出相对动弹性模量预测模型的参数优化结果3D视图,如图4所示。
图4 参数优化结果3D视图
由图4可知,惩罚系数c的最优值为48.502 9,核函数参数σ2的最优值为0.108 82,此时在5-CV验证后的均方误差值CVmse最小为0.002 958 9。
3.4.2 模型训练及预测结果分析
根据参数优选的结果c=48.502 9,σ2=0.108 82设置参数,利用训练集学习训练,建立相对动弹性模量SVM预测模型,再利用测试集进行检验,分别得到训练集和测试集的拟合结果,如图5所示。
由图5a可看出,模拟值和实际值很接近,模拟效果较好;由图5b可看出,支持向量机模型在测试集上的预测值曲线非常贴近真实值,均方根误差RMSE=0.006 25,误差较小,R2=0.960 52,拟合精度较高,进一步验证了模型的预测性能。
图5 训练集与测试集拟合结果
3.5 回归预测结果评价
为了检验基于随机森林的支持向量机模型(RF-SVM)的优越性,选择未进行特征选择的支持向量机及人工神经网络进行建模并作对比分析,选用式(8)均方根误差RMSE和式(9)确定性系数R2来衡量模型的预测精度。R2能够度量变量之间的拟合程度,其大小在0~1,越靠近1表示模型拟合效果越精确;RMSE值是指变量预测值与实际值之间的个体差异的总和,其值≥0,越接近0表示模型的预测误差越小。
由预测结果可看出:RF-SVM预测模型、支持向量机预测模型、人工神经网络预测模型的均方根误差分别为0.079,0.847,2.050,确定性系数分别为0.961,0.903,0.822,可看出RF-SVM预测结果的均方根误差最小且确定性系数最接近1,说明随机森林结合支持向量机模型预测结果最贴近实际值,精度最高,效果最好。
4 结语
1)建立了RF-SVM预测高寒地区混凝土的抗冻性智能模型,并提出相应的流程和步骤,RF-SVM预测模型在分析影响因素重要性的基础上进行重要指标筛选,降低SVM模型的维度,加快训练速度。所提出的RF-SVM预测模型为实现混凝土抗冻性能快速预测提供了一种有效工具。
2)本文基于松通项目混凝土样本数据,经随机森林特征筛选后选择最优变量集作为输入变量,构建了基于随机森林的支持向量机混凝土相对动弹性模量预测模型,利用部分工程实际数据作为测试集,验证了模型的准确性和可靠性。
3)将RF-SVM模型和未进行特征选择的支持向量机模型、人工神经网络模型的计算结果进行了对比分析。结果表明,与支持向量机、人工神经网络预测模型相比,RF-SVM模型能够得到更准确、更稳定的预测结果,进一步说明了该模型的良好应用前景。
[2] 李斌,孟宪磊,孔德轩,等.寒区面板混凝土抗冻耐久性研究[J].人民长江,2019,50(6):171-176.
[3] 张凯,王起才,杨子江,等.季节性活动层中混凝土强度与抗冻性显著性分析及预测模型研究[J].硅酸盐通报,2019,38(8):2384-2390.
[4] 王晨霞,张杰,曹芙波.粉煤灰掺量对再生混凝土力学性能和抗冻性的影响研究[J].硅酸盐通报,2017,36(11):3778-3783,3809.
[5] 唐峻峰,汪洁.钢筋混凝土结构物抗盐冻性能的影响因素与寿命预测[J].混凝土,2020(5):28-31.
[6] LUO D,WANG Y,ZHANG S,et al. Frost resistance of coal gangue aggregate concrete modified by steel fiber and slag powder[J]. Applied sciences,2020(10):3229.
[7] 肖前慧,范骏.基于人工神经网络的混凝土抗冻性预测[J].混凝土,2013(1):30-32.
[8] BEN C W,FLAH M,NEHDI M L. Machine learning prediction of mechanical properties of concrete:Critical review[J].Construction and building materials,2020,260:119889.
[9] 闫春岭,张爱玲,胡海波,等.RBF与改进BP神经网络的混凝土抗冻性预测[J].水泥工程,2016(5):19-22.
[10] 薛丽媛,王睿,程亮,等.再生混凝土抗冻耐久性影响因素分析[J].混凝土世界,2018(8):70-73.
[11] 王琛艳.结构物混凝土早期抗冻能力影响因素灰色关联分析[J].硅酸盐通报,2015,34(11):3405-3411.
[12] 吕何,孔政敏,张成刚.基于混合优化随机森林回归的短期电力负荷预测[J].武汉大学学报(工学版),2020,53(8):704-711.
[13] 李光华,李俊清,张亮,等.一种融合蚁群算法和随机森林的特征选择方法[J].计算机科学,2019,46(S2):212-215.
[14] YAZDI J S,KALANTARY F,YAZDI H S. Prediction of elastic modulus of concrete using support vector committee method[J].Journal of materials in civil engineering,2013,25(1):9-20.
[15] 孟杭,黄细霞,刘娟,等.结合随机森林和SVM的风机叶片结冰预测[J].电测与仪表,2020:1-7.
[16] 董美蓉,韦丽萍,陆继东,等.基于K-CV参数优化支持向量机的LIBS燃煤热值定量分析[J].光谱学与光谱分析,2019,39(7):2202-2209.