Page 65 - 2023年第54卷第10期
P. 65

图 2 IAO - XGBoost集成学习算法流程图

              能得出特征的重要程度,难以解释该特征是如何影响预测结果的                               [17] 。与 XGBoost算法的特征重要性分
              析相比,SHAP不仅可以对样本特征的重要性进行排序,挖掘影响预测结果的关键特征,并定性分析
              样本特征与预测结果的正负相关性,还可以显示出单个样本中各个特征对此样本的预测结果是如何起
              作用的,显著提高预测结果的可信度                  [20] 。
                  可解释机器学习框架 SHAP的核心在于诺贝尔奖得主 LloydShapley提出的 Shapley值                            [33] ,该值主
              要用于解决合作博弈论中的分配均衡问题,即解决如何分配多人合作所创造的总价值的公平分配问
              题  [34] 。在机器学习中,可以把输入特征看作合作人员,把模型预测结果看作所创造的总价值,则 Sha
              pley值可计算出各特征对模型预测结果的贡献。
                  假设第 i个渗流样本为 x,其第 j个特征值 x 的 Shapley值  的计算公式如下所示:
                                        i                  i,j            x i,j
                                              S!(m - S -1)!
                                =    ∑                           [f(S ∪ {x })-f(S)]                   (13)
                                x i,j                               x i     i,j     x i
                                       {
                                    S ∈M\ x i,j }    m!
              式中:M是渗流数据集中所有特征的集合,其维度为 m;S是从 M中抽取出来的子集,其大小为 S;
              f(S)是只使用特征集合 S时,模型对渗流样本x的预测值,当 S是空集时,f(S)的值称为基础值,
               x i                                         i                          x i
              相当于模型的预测值在所有渗流样本上的平均值;f(S ∪{x })是在特征集合 S的基础之上,添加特
                                                             x i     i,j
              征值 x 时模型对渗流样本x的预测值在所有样本中的平均值;M\{x }表示 M中剔除第 j个特征之后
                                       i
                                                                             i,j
                    i,j
              的全部特征子集。
                  基于 Shapley值,SHAP对渗流性态指标预测模型的解释可以用一个加性模型表达如下:
                                                               m
                                                             +
                                                  f(x) = x i,0 ∑   z                                 (14)
                                                     i
                                                                   x i,j j
                                                              j =1
              式中: 为整个渗流性态指标预测模型输出的基线,即所有训练样本的预测均值; 为 Shapley值,
                      x i,0                                                                 x i,j
              表示第 i个渗流样本的第 j个特征对预测模型输出 f(x)的贡献值;z为简化特征指示系数,取值为 0或
                                                              i            j
              1,z = 1 表示该特征存在于待解释样本x中;z = 0 则表示该特征不存在于x中。
                  j
                                                        j
                                                                                 i
                                                  i
                  对于上式中的 Shapley值 ,当 >0时,说明第 i个渗流样本的第 j个特征提升了预测值,对
                                          x i,j  x i,j
                                                                                                   2
                                                                                              —   1 0 1 —
   60   61   62   63   64   65   66   67   68   69   70