Page 62 - 2023年第54卷第10期
P. 62
化(IAO)算法,并将 IAO算法用于自适应优化 XGBoost算法的超参数 n_estimators、learning_rate和 max_
depth ,从而建立基于 IAO - XGBoost的大坝渗流性态指标预测模型,进一步提高大坝渗流性态指标预测
的精度。
(3)基于 SHAP理论的预测结果解释。针对基于 IAO - XGBoost的大坝渗流性态指标预测模型仅能
得出预测结果和输入特征的重要性排序,而难以深入分析各样本的特征如何影响预测结果的问题,将
可解释机器学习框架 SHAP理论与 IAO - XGBoost算法相结合,在对特征进行全局重要性分析,挖掘关
键特征的同时,分析输入特征对预测结果的正负相关性影响,并解释特征间交互作用以及单个样本的
特征对大坝渗流性态预测结果的影响,从而提高预测模型的可信度。
( 4)案例研究。将所提模型应用于中国西南某土石坝工程,通过对比分析验证所提方法的有效性
和优越性。
3 土石坝渗流性态分析的 IAO - XGBoost集成学习模型
3.1 XGBoost集成学习模型 XGBoost是由 Chen和 Guestrin提出的一种基于梯度提升决策树(Gradient
BoostingDecisionTree,GBDT)模型优化的集成学习方法 [6] 。XGBoost的基本思想是通过加入新的弱学
习器拟合前一次训练的残差,并在训练结束时得到每个样本的预测分数,最后将所有弱学习器中的预
测分数相加而获得样本的预测值 [25] 。目前,XGBoost已经成功应用于众多领域,且在训练样本有限、
训练时间较短等场景下具有独特优势 [25] 。这些特性正好适合于根据渗流数值模拟数据建立大坝渗流性
态指标预测模型。基于 XGBoost建立大坝渗流性态指标预测模型的主要原理如下。
m
(
{
假设渗流性态指标数据集为 D= x,y ) :i = 1 ,…,n;x ∈R ;y ∈R } ,其中每个样本x有 m
i
i
i
i
i
个特征,并且对应一个目标值y,则对于第 i个渗流样本x的渗流性态指标预测值 ^y 可表示如下:
i i i
K
^=
y f(x),f∈ F (1)
i ∑ k i k
k =1
式中:f为一棵回归决策树;F为所有可能的回归决策树的集合;K为回归决策树的总数;f(x)为第
k k i
k棵回归决策树对第 i个渗流性态指标样本x的计算分数。
i
渗流性态指标预测模型训练过程中的目标函数是算法的核心,如下式所示:
n K
i ∑
∑
Obj = l(y, ^y ) + Ω (f)
i
k
i =1 k =1
(2)
1 T
Ω (f) =γ T+ λ ∑ w 2
j
k
2 j =1
式中:l为模型损失函数,用以衡量渗流性态指标预测值 ^y 与渗流性态指标模拟值y之间的拟合程度;
i
i
Ω (f)为正则化项,用以惩罚复杂模型,避免过拟合;T表示第 k棵回归决策树的叶子节点数目;w表
j
k
示第 j个叶子节点的输出分数;γ为叶子节点数目的惩罚项;λ为 L2正则惩罚项。
在渗流性态预测模型训练过程中,采用梯度提升策略,一次添加一个新的回归决策树到已有模型
(t - 1 )
中。假设第 i个渗流样本在第 t - 1 轮迭代的渗流性态指标预测值为 ^y ,可将目标函数表达如下:
i
n
(t - 1)
(t)
∑
Obj = l(y, ^y +f (x))+Ω (f)+constant (3)
t
i
i
i
t
i =1
式中f(x)为第 t轮迭代时新加入的回归决策树。
i
t
对上式进行二阶泰勒展开并去掉常数项 constant后,则目标函数表达为:
n 1
]
2
(t)
Obj = ∑ [ gf(x)+ hf(x) +Ω (f)
i i
i i
i
i
t
i =1 2
(t - 1)
g = ^y (t - 1)l(y, ^y ) ( 4)
i
i
i
i
(t - 1)
2
h = ^y (t - 1)l(y, ^y )
i
i
i
i
— 1 1 8 —
9