樊奇
(上??睖y設計研究院有限公司,上海 200434)
人工或天然邊坡會因各種自然和人為因素影響而發(fā)生破壞,滑坡附近群眾的生命財產(chǎn)將受到威脅。對邊坡穩(wěn)定性有影響的因素有很多種,如邊坡的高度和坡度、巖土體的參數(shù)和降雨等,而這些影響因素與邊坡的狀態(tài)之間有著非常復雜的非線性特點,因此如何準確的預測邊坡狀態(tài)是邊坡工程領域的一個研究難點。以往廣泛采用瑞典圓弧法[1]、Janbu 法[2]、有限元法[3]等方法來分析邊坡穩(wěn)定性,這些方法較為成熟,可以比較好的計算邊坡穩(wěn)定性,但這些方法較難去描述邊坡穩(wěn)定性評價中復雜的非線性特點,導致計算存在較大的局限性。近年來,隨著以神經(jīng)網(wǎng)絡[4]為代表的人工智能方法的成功應用,不斷有新方法被引入邊坡穩(wěn)定性評價中,如支持向量機[5-6]、模糊神經(jīng)網(wǎng)絡[7]、高斯過程[8]、Logistics[9]、改進的極限學習機[10]、K-Means 聚類[11]、決策樹[12]等算法,這些方法能較好地解決了邊坡穩(wěn)定性評價中的非線性問題。但這些新方法也存在著一些不足,如:人工神經(jīng)網(wǎng)絡算法需較多邊坡案例數(shù)據(jù)才能有較好的預測,支持向量機算法對數(shù)據(jù)集部分缺失敏感,Logistics 算法易過擬合等。因此,需要研究更具有針對性的邊坡穩(wěn)定性評價算法。
梯度提升決策樹算法(GBDT) 是集成學習算法Boosting 中的子類[13],該算法能較好的解決了邊坡穩(wěn)定性評價中的非線性問題,同時具有模型簡單、精度高等優(yōu)點[14-15]。筆者將GBDT 算法引入邊坡穩(wěn)定性評價中,采用網(wǎng)格搜索(Grid Search,簡稱GS)對建立的GBDT 模型開展參數(shù)調(diào)優(yōu),建立基于GS-GBDT 的邊坡穩(wěn)定性評價模型,并對比分析了該模型與基于BP 神經(jīng)網(wǎng)絡和SVM 的算法模型。
GBDT 算法是由Jerome Friedman 于二十一世紀初提出的,其有效結合了決策樹和集成學習的優(yōu)點,對于回歸、分類問題都可以處理[16],本文基于GBDT 算法建立邊坡穩(wěn)定性安全狀態(tài)的分類模型?;贕BDT 算法建立相應分類模型的過程中,對模型的每一次迭代都將新建立一個弱分類器(采用決策樹模型),該弱分類器建立在上一輪模型殘差減少的梯度方向上。若迭代模型N 次,則將生成N 個弱分類器。最終的GBDT 分類模型是上述N個弱分類器的組合,相應的組合方式有加權、投票等,所建立的模型數(shù)學表達式為:

上式中,fN(x)為分類器模型,即提升樹。N為模型迭代的次數(shù),對應所建立的決策樹數(shù)量。?n為每個弱分類器的權重。Tn(x)為弱分類器。訓練模型即將模型的損失函數(shù)L 最小化。若有M 條數(shù)據(jù)參與模型的訓練,(xi,yi)為數(shù)據(jù)集的第i 條數(shù)據(jù);xi為模型的輸入變量,在本次建模中為影響邊坡穩(wěn)定性的各種因素;yi為模型的輸出,在本次建模中為邊坡的穩(wěn)定性狀態(tài)。最終需對模型開展參數(shù)調(diào)優(yōu)工作,相應地調(diào)優(yōu)函數(shù)表達式為:

對邊坡穩(wěn)定性有影響的因素可分為自身因素和外部因素。自身因素主要有邊坡高度、坡度、巖土體的重度、粘聚力和內(nèi)摩擦角等,當邊坡的高度或者坡度越大,巖土體的重度越大,的巖土體粘聚力和內(nèi)摩擦角越小,邊坡就越容易發(fā)生失穩(wěn)。外部因素主要有孔隙水壓力、地震作用和對坡體的加載力等,后兩者出現(xiàn)較少,本文不考慮其影響,當孔隙水壓力越大,邊坡越容易發(fā)生失穩(wěn)。依據(jù)有關文獻資料和經(jīng)驗,本文最終采用的影響因素有邊坡高度、坡度、巖土體的重度、粘聚力、內(nèi)摩擦角以及孔隙水壓力。
本文選擇文獻[17]中的39 組邊坡樣本數(shù)據(jù)作為數(shù)據(jù)集,數(shù)據(jù)集內(nèi)的邊坡樣本數(shù)據(jù)已被清楚的研究,該數(shù)據(jù)集被廣泛應用,目前已有多篇文獻[19-20]采用了該數(shù)據(jù)集來建立邊坡穩(wěn)定性評價模型,邊坡樣本詳細數(shù)據(jù)見表1。模型的輸入變量:上節(jié)確定的6 個影響因素,即邊坡高度、坡度、巖土體的重度、粘聚力、內(nèi)摩擦角以及孔隙水壓力;模型的輸出:對應邊坡穩(wěn)定性狀態(tài),即穩(wěn)定或破壞。采用前30 個樣本開展模型訓練,建立基于GS-GBDT 的邊坡穩(wěn)定性評價模型,再使用該模型對剩余9個樣本進行預測。

表1 邊坡樣本數(shù)據(jù)
為提升模型的性能,需對模型所涉及到的參數(shù)進行調(diào)優(yōu),本文使用網(wǎng)格搜索法來開展調(diào)優(yōu)工作。該方法具有易解釋、使用簡便等優(yōu)點,其思路為:在建立模型選擇最優(yōu)GBDT 算法參數(shù)過程中,通過遍歷所有參數(shù)組合來得到模型結果最優(yōu)?;贕BDT 算法模型的主要參數(shù)有弱學習器迭代的最大次數(shù)、決策樹的最大深度和葉子節(jié)點樣本最少數(shù)量等[14]。
現(xiàn)基于Python 語言的Scikit-learn機器學習工具包來建立GS-GBDT 模型,網(wǎng)格搜索法通過調(diào)用前述工具包中GridSearchCV 模塊來實現(xiàn)。在模塊中將網(wǎng)格搜索設置為5 折交叉驗證,其余相關參數(shù)搜索范圍與搜索步長的設置見表2。

表2 GridSearchCV 模塊中相關參數(shù)設置
最終,通過搜索得到的參數(shù)分別為:弱學習器迭代的最大次數(shù)為90,決策樹的最大深度為5,葉子節(jié)點樣本最少數(shù)量為2。使用上述最優(yōu)參數(shù)建立基于GS-GBDT 的邊坡穩(wěn)定性評價模型,并采用此模型預測訓練集,預測結果僅1 個樣本預測錯誤,具體為將"穩(wěn)定"邊坡預測為"破壞"邊坡,模型對"破壞"邊坡類預測全部準確。計算得到模型對訓練集預測的準確率達到96.7%,表明所建立的模型對訓練集具有很好的擬合效果。
使用已建立的基于GS-GBDT 的邊坡穩(wěn)定性評價模型,對剩余的9 個樣本進行預測,以了解該模型的預測精度。同時為驗證模型的適應性,將模型與SVM 算法和BP 神經(jīng)網(wǎng)絡算法進行對比,這兩種算法目前應用廣泛,分類效果好。三種算法預測結果見表3。
對比表3 中三種算法的預測結果,從中可見看出,GS-GBDT 算法預測結果的準確率最高,達到100%,模型將邊坡全部準確分類;SVM 算法預測結果準確率次之,準確率為88.9%,將一個“破壞”邊坡預測為“穩(wěn)定”邊坡;BP 神經(jīng)網(wǎng)絡算法預測準確率最差。綜上所述,基于GS-GBDT 的邊坡穩(wěn)定性模型具有一定的適應性,其預測精度與泛化能力較高。

表3 不同算法預測結果比較
4.1 本文提出基于GS-GBDT 的邊坡穩(wěn)定性評價模型,該方法具有較高的精度和泛化能力,同時模型較簡單,能較好的解決邊坡穩(wěn)定性評價中的非線性問題。
4.2 通過邊坡實例驗證,與SVM 算法、BP 神經(jīng)網(wǎng)絡算法建立的模型比較表明,GS-GBDT 算法模型具有最高的預測精度、更強的泛化能力,這表明模型具有一定的適應性,可以在實際工程中推廣應用。
4.3 本文在建模時,所選用的數(shù)據(jù)集共有39 個邊坡樣本,樣本數(shù)量偏少。如果能搜集更多的邊坡樣本,以此建立相應的GS-GBDT 邊坡穩(wěn)定性評價模型,則該模型更具泛化能力和說服力。