SHAP 分析图
🧩 这是什么?
前面介绍的 VIP 图、回归系数图都在回答"整体上谁重要"。但它们有一个共同的局限:只给出一个平均结论。
现实中经常出现这种情况:
某个变量,在一部分样本上是正向贡献,在另一部分样本上却是负向拖累。
SHAP (SHapley Additive exPlanations) 就是用来揭示这种个体差异的。它源自博弈论中的 Shapley 值,把模型的每一次预测 公平地拆分到各个变量头上:
"这一次预测结果,每个变量各自贡献了多少?"
🧐 怎么看?
SHAP 分析图通常包含两种视图:
视图一:重要性条形图(横条)
- 按平均绝对 SHAP 值排序,最重要的变量排在最上面
- 条越长,说明该变量对模型输出的整体影响越大
💡 这张图的作用类似 VIP 图,但理论基础不同:VIP 基于投影方差,SHAP 基于博弈论分配,两者互相印证更有说服力。
视图二:蜂群图 (Beeswarm)
每个变量一行,每个样本一个点:
| 视觉元素 | 含义 |
|---|---|
| 横轴位置 | 该样本上此变量的 SHAP 值——正为推高预测,负为拉低预测 |
| 点的颜色 | 该变量在这个样本上的实际取值(通常深色为高值) |
| 点的分散程度 | 越分散,说明该变量的影响越不稳定、越依赖具体工况 |
蜂群图最经典的读法:
| 图形特征 | 结论 |
|---|---|
| 高值点集中在右侧、低值点集中在左侧 | 该变量越大越推高结果(单调正相关) |
| 高值点集中在左侧、低值点在右侧 | 该变量越大越拉低结果(单调负相关) |
| 点左右混杂、不分明 | 该变量的影响非单调,存在最优区间 |
| 整行点挤在 0 附近 | 该变量对模型几乎无影响 |
💡 "左右混杂"其实是好消息:它往往意味着这个变量存在一个最佳取值区间——太小不行,太大也不行。 这正是工艺优化的目标。
🛠️ 怎么用?
不需要额外配置,拖入图表即可生成。
典型用法
| 目的 | 做法 |
|---|---|
| 验证 VIP 结论 | SHAP 重要性排序与 VIP 排序大致一致 → 结论可靠 |
| 发现非单调变量 | 找蜂群图左右混杂的行 → 这类变量存在最优区间,是优化的重点 |
| 解释单个异常样本 | 结合 数据表格 定位样本 → 看它在各个变量上的 SHAP 值 |
| 向业务方解释模型 | "这次预测偏高,主要是因为温度贡献了 +0.8、pH 贡献了 −0.3" |
与回归系数图的关键区别
| 维度 | 回归系数图 | SHAP 分析图 |
|---|---|---|
| 粒度 | 全局一个系数 | 每个样本一组值 |
| 非线性 | 无法体现 | 能体现非单调关系 |
| 交互效应 | 无法体现 | 能反映变量间的交互 |
| 可读性 | 更简单直观 | 信息量大,需要适应 |
⚠️ 注意事项
- 仅支持有监督模型(PLS / PLS-DA / OPLS / OPLS-DA)
- OPLS 的 SHAP 基于等效系数计算:平台已把校正后的系数投影回原始变量空间,因此结论对应的是原始工艺变量
- SHAP 解释的是"模型",不是"现实":它说明模型为什么这么预测,不等于业务上的因果关系
- 样本量越大越稳定:样本很少时蜂群图的形态可能误导
- 确认因果请使用 因果推断 (DML)
🔗 相关阅读
- VIP 变量贡献 —— 基于投影方差的重要性排序
- 回归系数图 —— 全局系数与方向
- S-Plot 标志物图 —— 贡献 + 可信度的二维筛选