← 返回题目列表

集成树模型如何用 SHAP 做解释?

中等 第 22 / 25 题 更新于 2026/09/19
集成学习机器学习面试题模型训练

简化版

树集成常用 TreeSHAP 高效计算局部特征贡献,使预测等于基线加各贡献;解释前要明确输出是 raw margin、概率还是损失,并选择合适背景分布。SHAP 满足可加性,不等于因果或特征独立。

详细版

  • TreeSHAP 利用树路径结构,通常比通用枚举快。

  • 多分类会为每个类别产生一组贡献。

  • 概率空间未必保持与 raw margin 相同的严格加法。

  • 相关特征的贡献分配依赖条件/干预假设。

  • 全局 summary 常聚合绝对 SHAP,会丢失正负方向。

完整版教学

一、SHAP 是相对基线的合作博弈分摊

模型预测相对背景期望多出的部分,被分给各特征。

基线不是零,而是解释器背景数据上的期望输出。

树算法可沿路径统计特征出现与样本覆盖,避免通用 SHAP 对所有特征子集做指数枚举;加速不消除解释假设。

二、底层机制与公式

f(x)=E[f(X)]+sum_j phi_j
for binary raw margin: logit(x)=base_value+sum_j phi_j

三、带数字的推演

raw margin 基线 -1.0,三个贡献 [+0.8,+0.4,-0.2],最终 margin=0,对应概率 0.5。

不能把贡献直接说成概率增加 80%、40%、减少 20%。

四、方案对比

方案/对象核心特点代价或边界
TreeSHAP树结构专用且快依赖输出与扰动设定
KernelSHAP模型无关采样近似且昂贵
Path contribution实现直观不一定满足 SHAP 公理

五、执行流程

固定模型/背景集 -> 指定输出空间 -> 计算单样本贡献
-> 校验 base+sum=output -> 聚合全局分布 -> 相关特征与漂移检查

六、边界条件与工程代价

背景集过大增加计算,过窄则基线只代表某个小群体。

可分业务人群选代表性背景并记录版本。

把绝对贡献求均值得到全局重要性时,正负效果都会变正;方向需看 dependence plot 或分桶统计。

记忆钩子:先做加法对账:基线 + 贡献 = 指定空间的输出。

七、常见误区与追问

  • 误区:SHAP +0.2 表示概率提高 20%。 可能解释的是 raw margin,必须看输出空间。

  • 追问:base value 是什么? 背景分布下模型输出的期望。

  • 误区:TreeSHAP 自动给出因果贡献。 它仍是模型函数的归因。

  • 追问:多分类如何展示? 每个类别分别有基线和贡献向量。

  • 追问:怎样做数值自检? 确认基线加贡献之和与指定模型输出一致。

八、加强记忆

先做加法对账:基线 + 贡献 = 指定空间的输出。

再解释背景集、相关特征与 raw/probability 区别,避免把漂亮图误当因果结论。