?

基于Stacking模型融合的高性能混凝土強度預測方法

2023-12-01 03:03胡以嬋謝燦榮解威威翁貽令羅雪霜
硅酸鹽通報 2023年11期
關鍵詞:高性能精度預測

胡以嬋,梁 銘,謝燦榮,解威威,翁貽令,池 浩,彭 浩,羅雪霜

(廣西路橋工程集團有限公司,南寧 530011)

0 引 言

混凝土是一種使用廣泛的建筑材料,其性能直接影響建筑物的結構安全、使用壽命和維護成本等關鍵指標。其中,混凝土強度是最重要的指標之一,直接影響建筑物的承載能力和穩定性[1-2]。傳統確定混凝土強度的方法通常是基于基準混凝土配合比,通過保持水膠比或砂率不變,不斷調整膠凝材料和骨料的組合,這種方法不僅耗費大量原材料,浪費大量的人力和時間,且存在偏差大、效率低的問題[3-4],難以對混凝土的強度進行快速準確的評估。由此可見,實現迅速且準確的混凝土抗壓強度預測尤為重要[5-6]。

近年來,國內外研究人員在混凝土抗壓強度預測領域積極探索,許多學者已開始使用機器學習的方法來研究混凝土抗壓強度與相關因素之間的關系[7-11]。對于再生骨料混凝土,Yuan等[12]采用了梯度提升(gradient boosting, GB)和隨機森林(random forest, RF)算法,結果表明RF具有較好的預測效果;而Shang等[13]采用了決策樹(decision tree, DT)和自適應增強(adaptive boosting, AdaBoost)算法對混凝土強度進行預測,其中AdaBoost模型具有更高的預測精度。關于稻殼灰混凝土,Iftikhar等[14]采用遺傳算法(genetic algorithm, GA)和RF進行混凝土強度預測,結果表明GA具有更高的預測精度。針對高性能混凝土,Feng等[15]采用AdaBoost集成學習方法進行強度預測,并采用一組新的數據集來驗證該模型的泛化性能,結果表明該模型具有較高的精度和良好的泛化性能;Asteris等[16]采用人工神經網絡(artificial neural network, ANN)、線性和非線性多元自適應回歸樣條(linear multivariate adaptive regression splines, MARS-L; nonlinear multivariate adaptive regression splines, MARS-C)、高斯過程回歸(gaussian process regression, GPR)和極大極小概率機回歸(minimax probability machine regression, MPMR)四種傳統機器學習(conventional machine learning, CML)模型,將CML模型的預測結果輸出并進行組合,再利用人工神經網絡(artificial neural network, ANN)進行訓練,構建混合集成模型(hybrid ensemble model, HENSM),結果表明HENSM具有更高的預測精度。Farooq等[17]采用個體學習器和集成學習器,總體上RF和DT模型在擬合數據時表現出較高的魯棒性,并且誤差較小。在鋼纖維增強混凝土方面,Kang等[18]采用11種算法進行強度預測,并通過K-fold驗證,防止模型過擬合,結果表明極端梯度提算法(extreme gradient boosting, XGBoost)的預測精度最高;而馬高等[19]采用反向傳播神經網絡(back propagation neural network, BPNN)對纖維增強混凝土進行強度預測,結果表明BPNN能夠很好地挖掘輸入輸出參數的數據信息,得到高精度的預測模型。在其他類型的混凝土強度預測方面,國內外學者也運用機器學習的方法進行了一系列研究,并在預測效果上取得一定的成果。其中,Nguyen等[20]采用深層神經網絡(deep neural network, DNN)和深殘余網絡(residual network, ResNet)預測粉煤灰地質聚合物混凝土的抗壓強度;韓建軍等[21]等采用BPNN對垃圾飛灰混凝土進行抗壓強度預測模型;徐瀟航等[22]采用多層感知機回歸(multi-layer perceptron, MLP)模型、支持向量機(support vector machine, SVR)模型與RF模型對三峽大壩混凝土強度進行預測;梁寧慧等[23]采用回歸樹算法(regression tree, RT)、SVR和ANN對經高溫后的聚丙烯纖維混凝土進行強度預測。韓斌等[24]采用粒子群算法(particle swarm optimization, PSO)對ANN進行優化,實現對濕噴混凝土強度的高精度預測;汪聲瑞等[25]等通過天牛須搜尋算法(beetle antennae search, BAS)訓練MLP,并與混合復雜進化方法(shuffled complex evolution, SCE)、多元宇宙優化算法(multi-verse optimizer, MVO)兩種MLP耦合算法開展混凝土強度預測;李楊等[26]則提出了一種基于分類與回歸樹(classification and regression tree, CART)算法優化SVR回歸算法的預測方法,用于提高混凝土抗壓強度的預測精度。

綜上可知,國內外學者針對不同類型的混凝土已開展了大量的強度預測模型研究。其中,高性能混凝土因優良的耐久性、工作性、力學性能、適用性、體積穩定性和經濟合理性具有廣闊的應用前景[27],目前在公路[28]、鐵路[29]、房屋建筑[30-31]及水運工程[32-33]等領域得到了廣泛應用。然而,在已有研究中主要關注單個學習器對高性能混凝土性能的預測情況,在綜合考慮多種模型的集成上少有研究,如何充分利用單個學習器的優勢,提高模型的預測精度和泛化性能,成為建筑行業混凝土高質量發展的重點。

本研究將人工智能技術XGBoost算法、CatBoost算法、MLP算法、RF算法與集成學習方式有效結合,提出一種基于Stacking模型融合的高性能混凝土強度預測方法。首先,對收集到的1 030組高性能混凝土抗壓強度數據開展數據預處理,研究單一機器學習算法對強度的預測精度;其次,在Stacking集成框架下,建立了多種差異化模型融合的強度預測模型并采用新的103組高性能混凝土數據集來驗證該模型的泛化性能;最后,采用SHAP值(shapely value)對模型進行可解釋性分析。結果表明:選用XGBoost和RF融合的stacking集成模型預測精度和泛化性能較好,可解釋分析顯示最重要的輸入特征變量是齡期和水泥,說明模型內在的預測邏輯與工程實踐的經驗較吻合,具有較高的合理性與可靠度。

1 算法原理介紹

1.1 Stacking集成學習算法方法

Stacking是一種集成學習(ensemble learning)的機器學習方法,最早由Wolpert[34]于1992年提出。該方法通常采用兩層結構,如圖1所示。首先,在第1層利用原始數據集訓練多個基學習器,得到多個預測結果;然后將第1層的預測結果作為輸入,訓練第2層的元學習器,以獲得最終的預測結果。這種層級結構有助于提高模型的準確度,并降低泛化誤差。

基于Stacking集成學習算法的混凝土強度預測流程,即單個初級學習器5倍交叉驗證過程如圖2所示。

圖2 單個初級學習器5倍交叉驗證過程Fig.2 5-fold cross validation process for a single beginner learner

1)劃分訓練集。根據交叉驗證的思想,把訓練集隨機劃分為5個相同數量且互不重疊的子數據集。

2)訓練基學習器。首先,對于基學習器1,在訓練集中隨機選擇4個子數據集作為訓練集,剩余子數據集作為測試集,根據5倍交叉驗證的思想,基學習器1得到的輸出如圖2所示,在原始數據測試集上得到的5個測試結果取平均,最終得到第1個基模型對訓練數據的一個Stacking轉換。其他基學習器重復上述步驟,可以完成第1層模型訓練。

3)訓練元學習器。通過利用第1層基學習器產生的混凝土強度預測值構建新的訓練集,用于訓練第二層預測模型,從而獲得最終的混凝土強度預測值。

1.2 Stacking基學習器

在Stacking中,學習能力越強且關聯程度越低的基學習器,其模型融合的預測效果就越好。本研究選擇XGBoost、CatBoost、MLP、RF基學習器作為Stacking集成模型第1層預測算法。在第2層預測模型中,為了避免過擬合,選擇結構簡單且泛化能力強的線性回歸(linear regression, LR)算法作為元學習器。

1.2.1 XGBoost

XGBoost是由Chen等[35]在2016年提出的一種基于決策樹的集成學習算法,采用了GB的思想,通過不斷地添加基學習器,每次訓練一個新的決策樹,從而盡可能地糾正之前模型的誤差。具體來說,每次訓練新的決策樹時,XGBoost會根據之前模型的殘差來更新樣本權重,并根據新的樣本權重訓練出一個新的決策樹。XGBoost在傳統梯度提升算法的基礎上,通過引入正則化和樹剪枝等技術,可以有效避免過擬合現象,并提高模型的泛化能力。

1.2.2 CatBoost

CatBoost是由Prokhorenkova等[36]于2017年首次提出的一種基于梯度提升決策樹的算法框架。CatBoost在每一步決策樹運算過程中,根據上一個決策樹的殘差調整權重,確保本次計算沿著上一次計算的最小殘差方向進行。這一策略有效地減少了條件偏移和梯度偏差的影響,從而使得該算法能夠實現高精度預測,并具備較強的泛化能力。

1.2.3 Random forest

隨機森林是一種基于裝袋的集成學習算法,最早由Breiman[37]在2001年提出。在RF中,首先通過采用自助抽樣方法對原始數據進行有放回采樣,生成多個樣本;然后再為每個bootstrap樣本構建分類樹,將分類樹的預測組合在一起后通過投票方式組合在一起,得到最終的預測結果。該模型能夠有效處理高維度的數據,且無需進行特征選擇,具有優良的泛化能力、快速的收斂速度以及較少的調節參數等優點。

1.2.4 MLP

多層感知器(multilayer perceptron, MLP)是一種常見的前饋神經網絡模型[38]。它由多個神經元組成,每個神經元分為輸入層、隱含層和輸出層。輸入層中包含一個權值矩陣,用來描述輸入與輸出數據之間的關聯;隱含層根據權值矩陣的設置確定網絡結構及隱層節點數;輸出層中采用MLP神經算法實現運算,最終得到預測結果,對非線性問題有很好的表現能力和泛化能力。

1.2.5 SHAP 值算法

SHAP 算法基于 SHAP值進行模型可解釋性,這一概念來自博弈論[39],其核心思想是利用加性模型G(x)來逼近已訓練好的分類器F(x),具體如式(1)所示。

(1)

式中:φ0為模型對任一樣本預測結果的期望,即所有樣本標簽的均值;φj是n維樣本x的第j個特征的SHAP值。

每個樣本x的任一特征xj在不同特征子集中的邊際貢獻的均值,即定義為該特征的 SHAP 值φj,具體計算方式如式(2)所示。

(2)

式中: {x1,x2,……,xn}為全體輸入特征的集合,S為不包含特征xj的特征子集。

2 數據預處理、模型構建和評估

2.1 數據描述

數據集的數量、質量和多樣性對于模型的預測能力和泛化能力具有至關重要的作用。本研究采用YEH[40]收集到的1 030組混凝土數據,均屬于高性能混凝土(high-performance concrete, HPC),數據集涵蓋了1 030×9組數據,其中前7組數據表示每立方混凝土水泥、高爐礦渣粉、粉煤灰、水、減水劑、粗骨料和細骨料的用量,第8組表示混凝土養護時間,第9組表示混凝土抗壓強度。每組數據的名稱、總數、最大值、最小值、平均值和標準差等信息如表1所示,為了更全面了解數據的分布情況,繪制了每組數據的統計分布直方圖,如圖3所示。

表1 1 030組數據集的描述性統計Table 1 Descriptive statistics of 1 030 group dataset

圖3 數據的統計分布直方圖Fig.3 Statistical distribution histogram of data

2.2 數據預處理

2.2.1 異常值處理

模型構建過程中的極端異常值嚴重影響模型的預測效果。根據表1可以看出,對于齡期特征,其值在1~365 d,其中75%在56 d及以內,結合圖3可知齡期數據集屬于右偏態分布。為提供可靠且高質量的數據,本研究對初始樣本中的部分異常值和離群點進行處理,以3倍標準差為閾值,剔除絕對值大于該閾值的數據,最后剩余981組數據。剔除異常值后各組的數據如表2所示。

表2 剔除異常值后各組的數據Table 2 Data of each group after eliminating outliers

2.2.2 歸一化處理

為消除各輸入參數間量綱對結果帶來的影響,本研究對數據集進行了歸一化處理,通過縮放將每一個特征的取值范圍歸一化到[0, 1],對于所有輸入特征采用式(3)進行計算。

(3)

式中:xmin為某一個特征的最小值,xmax為對應特征的最大值。

2.3 模型構建和評估

數據集分為訓練集和測試集,訓練集是用來訓練模型,而測試集來評估建立模型的性能。本研究中,訓練集和測試集分別按照70%和30%進行劃分。

采用均方根誤差(root mean square error, RMSE)、平均絕對誤差(mean absolute error, MAE)和決定系數(R-square,R2)作為預測指標。其中,RMSE和MAE衡量預測結果的全局和局部絕對誤差,兩者的值越小表示模型的預測精度越高;R2衡量預測整體效果,其值越大表示模型的擬合效果越好,具體計算如式(4)~(6)所示。

(4)

(5)

(6)

3 結果與討論

3.1 基學習器超參數選擇及預測結果

為保證Stacking模型性能趨于最優,需要對各基學習器的學習能力與模型組合對比進行分析。首先,使用經過預處理的數據集訓練各基學習器,然后使用基于概率模型的貝葉斯優化確定各模型的最優超參數組合。各單算法模型的超參數及預測誤差如表3所示。由表3可知:從決定系數R2來看,XGBoost在測試集上的擬合效果最好,Catboost次之,RF排第三,MLP最差;結合計算得到的RMSE值,XGBoost的訓練誤差為3.807,均小于Catboost、MLP和RF的訓練誤差(分別為4.006,9.492和5.007);另外,MAE也說明了XGBoost具有較好的預測精度。各基學習器的預測結果如圖4所示,圖中橫坐標為高性能混凝土強度(HPCCS)的試驗數據,縱坐標為各基學習器計算得到的強度值,紅色實線為等值線(表示試驗值和模型值相等的情況),數據點越靠近實線表明模型的擬合優度越好,結果表明,XGBoost與Catboost具有較好的預測精度,這是因為XGBoost對損失函數進行了二階泰勒展開,優化過程使用了一階和二階導數信息進行更新迭代,使得模型訓練更充分;Catboost是基于梯度提升決策樹的算法框架,可以有效避免條件偏移和梯度偏差,預測性能也較優。

表3 基學習器超參數組合及預測誤差Table 3 Base learner hyperparameter combinations and prediction errors

圖4 各基學習器的預測結果Fig.4 Prediction results of each base learner

在測試集上,以混凝土預測值和實際值之間的差值作為誤差。圖5為各基學習器的誤差直方圖,圖中橫坐標為基學習器預測的誤差值,縱坐標為誤差值對應的頻率,從圖5中可以看出,XGBoost和Catboost模型大約80%的預測值誤差小于5 MPa,再次說明了XGBoost對高性能混凝土強度具有較高的預測精度。

3.2 Stacking集成模型預測性能分析

由于XGBoost和Catboost都屬于Boosting的一種集成學習方法,均采用梯度提升樹算法作為基礎模型。因此,考慮到基學習器的差異性,本研究選擇XGBoost和Catboost分別與MLP、RF進行融合作為Stacking模型的基學習器。不同基學習器組合的Stacking集成模型預測結果如表4和圖6所示。其中,圖6(a)、(c)、(e)、(g)橫坐標為高性能混凝土強度的試驗數據,縱坐標為各Stacking模型計算得到的強度值, 圖6(b)、(d)、(f)、(h)橫坐標為數據集數量,縱坐標為各Stacking模型預測值與試驗值的偏差值。

表4 基學習器組合的stacking集成模型預測結果Table 4 Prediction results of stacking ensemble model with combination of base learners

預測結果顯示,綜合R2、RMSE、MAE三個方面,基學習器組合XGBoost和RF相對于其他組合方式建立的Stacking集成學習模型具有更高預測精度和更穩定的預測結果,模型預測指標R2、RMSE、MAE的值分別為0.949、3.776、2.605。集成Catboost、MLP與RF和集成XGBoost與RF模型的結果優于每個基學習器,這表明Stacking模型中元學習器糾正了基學習器預測錯誤的樣本,并融合多個基學習器的優點,從而提高了模型的預測精度;而集成XGBoost、MLP與RF和Catboost與RF模型的預測結果分別低于基學習器XGBoost和Catboost的結果,說明集成學習需要合理地選擇基學習器,并針對具體問題進行調整和優化,如果組合不當,可能出現集成模型表現不如單個基學習器的情況。

4 模型的驗證和可解釋分析

4.1 模型的驗證

為了驗證基于XGBoost和RF模型融合的Stacking集成學習模型的泛化性能,本研究從Yeh[41]中收集103組高性能混凝土數據開展驗證工作,數據集包括水泥、水、粗骨料、細骨料、減水劑、礦渣、粉煤灰,以及齡期(28 d)和抗壓強度。試驗值與模型值的驗證結果如圖7所示。在圖7中,橫坐標為高性能混凝土強度的試驗數據,縱坐標為Stacking集成學習模型計算得到的強度值,紅色實線為等值線(表示試驗值和模型值相等的情況),數據點越靠近實線表明模型的擬合優度越好。由圖7可知,試驗值和模型值之間的關系非常接近,決定系數R2=0.947,均方根誤差RMSE=3.840,說明本研究建立的基于XGBoost+RF模型融合的Stacking集成學習模型能較好地反映各因素與混凝土強度之間的關系,具有較高的預測精度和良好的泛化性能。

圖7 驗證模型預測結果Fig.7 Prediction result of validate the model

4.2 可解釋分析

本文研究了配合比參數對高性能混凝土強度的影響,并采用基于SHAP值進行模型可解釋分析。本節對整體表現較好的基學習器XGBoost模型進行輸入變量的特征重要性分析。

SHAP值是一種定量化的模型可解釋性工具,有以下兩點規律:一是特征對總體模型的重要性,即某一特征的總SHAP值越大,該特征對于模型的重要度越高;二是特征對預測標簽的重要性,即就某一特征對應各分類標簽而言,SHAP值越大,說明該特征對該標簽的預測越重要,同時也使得該標簽更容易被正確預測。各項特征的重要性分析如圖8和圖9所示,從圖中可以看出,最重要的輸入特征變量是齡期和水泥,而相對次要的輸入特征參數是水含量、細骨料和減水劑。在兩個最重要的輸入特征變量中,齡期對高性能混凝土的抗壓強度具有最重要的影響。這是因為隨著齡期的增加,水泥繼續水化,從而提高高性能混凝土的抗壓強度。水泥是影響抗壓強度的另一個重要因素,因為水泥通過膠結將混凝土構件黏結在一起,黏結力越大,高性能混凝土的抗壓強度越強。

圖8 SHAP值Fig.8 SHAP values

圖9 每個輸入特征的SHAP值Fig.9 SHAP values for each input feature

綜上所述,本研究所構建的XGBoost模型對混凝土強度的預測具備較好的預測精度,且通過模型可解釋性發現模型內在的預測邏輯與表現出的預測效果相一致,且都與工程實踐的經驗較吻合,模型具有較高的合理性與可靠度。

5 結 論

針對傳統經驗公式預測混凝土強度時存在的諸多問題,采用機器學習的方法,將XGBoost算法、CatBoost算法、MLP算法、RF算法與集成學習方式相結合,提出一種基于Stacking集成學習架構下基于多個差異化模型的混凝土強度預測方法,并基于SHAP值對模型進行可解釋分析。主要有以下結論:

1)提出一種基于Stacking集成模型預測混凝土強度的方法,該預測模型預測結果與試驗結果整體擬合效果較好。與其他基學習器的組合相比,選用XGBoost和RF作為第1層基學習器時,模型的預測精度最高,擬合效果最好,此時R2=0.949,RMSE=3.776。

2)采用一組新的數據集來驗證模型的泛化性能,結果表明,本研究建立的基于XGBoost+RF模型融合的Stacking集成學習模型能較好地反映各因素與混凝土強度之間的關系,具有較高的預測精度和良好的泛化性能,此時R2=0.947,RMSE=3.840。

3)基于SHAP值對基學習器XGBoost進行模型可解釋分析,結果表明齡期、水泥是影響混凝土抗壓強度的最關鍵特征變量。說明模型內在的預測邏輯與表現出的預測效果相一致,且與工程實踐的經驗較吻合,模型具有較高的合理性與可靠度。

猜你喜歡
高性能精度預測
無可預測
選修2-2期中考試預測卷(A卷)
選修2-2期中考試預測卷(B卷)
基于DSPIC33F微處理器的采集精度的提高
不必預測未來,只需把握現在
一款高性能BGO探測器的研發
高性能砼在橋梁中的應用
GPS/GLONASS/BDS組合PPP精度分析
SATA推出全新高性能噴槍SATAjet 5000 B
改進的Goldschmidt雙精度浮點除法器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合