3. SHAP核心原理:加性特征归因模型
SHAP(SHapley Additive exPlanations)的核心思想源于博弈论中的Shapley值,由Lundberg和Lee于2017年引入机器学习可解释性领域。在风控模型中,我们需要回答“为什么这个申请被拒绝”或“为什么这个交易被标记为欺诈”,SHAP提供了一套具有坚实数学基础的特征归因框架。
3.1 加性特征归因模型
SHAP属于加性特征归因模型(Additive Feature Attribution Model)家族。这类模型假设:对于一个复杂模型 \( f \) 的预测结果,可以表示为所有输入特征的贡献值之和加上一个基线值。
核心公式:
\[ g(z') = \phi_0 + \sum_{i=1}^{M} \phi_i z'_i \]
其中:
- \( g(z') \) 是解释模型对简化输入 \( z' \) 的预测
- \( \phi_0 \) 是基线预测值(所有特征缺失时的期望输出)
- \( \phi_i \) 是第 \( i \) 个特征的SHAP值(特征归因)
- \( z'_i \in \{0,1\} \) 表示特征 \( i \) 是否被观测到
- \( M \) 是特征总数
这种加性结构使得SHAP具有天然的可分解性:每个特征的贡献独立相加,互不干扰。在风控场景中,这意味着我们可以将模型输出(如违约概率)精确地拆解到每个特征上。
3.2 SHAP值的数学定义
SHAP值基于Shapley值,其数学定义如下:
\[ \phi_i(f, x) = \sum_{S \subseteq N \setminus \{i\}} \frac{|S|! (M - |S| - 1)!}{M!} \left[ f_x(S \cup \{i\}) - f_x(S) \right] \]
其中:
- \( N \) 是所有特征的集合,\( M = |N| \)
- \( S \) 是不包含特征 \( i \) 的特征子集
- \( f_x(S) \) 是在特征子集 \( S \) 条件下模型 \( f \) 对样本 \( x \) 的期望预测
- 求和遍历所有可能的特征子集组合
风控直觉理解:SHAP值衡量的是“当加入特征 \( i \) 时,模型预测值的变化量”在所有可能的特征加入顺序下的加权平均。这确保了每个特征获得的贡献是公平的。
下表对比了SHAP值与常见特征重要性方法的差异:
| 方法 | 归因粒度 | 方向性 | 局部解释 | 理论基础 |
|---|---|---|---|---|
| SHAP值 | 每个样本每个特征 | 正/负贡献 | 是 | 博弈论Shapley值 |
| LIME | 每个样本每个特征 | 正/负贡献 | 是 | 局部线性近似 |
| Permutation Importance | 全局特征 | 仅正贡献 | 否 | 置换检验 |
| Gain Importance | 全局特征 | 仅正贡献 | 否 | 树模型分裂增益 |
3.3 线性性质
SHAP值满足以下四个关键性质,这些性质共同保证了归因的公平性和一致性:
- 局部保真性(Local Accuracy):解释模型的输出等于原始模型的输出,即 \( f(x) = \phi_0 + \sum_{i=1}^{M} \phi_i \)
- 缺失性(Missingness):如果特征 \( i \) 对模型输出没有影响,则 \( \phi_i = 0 \)
- 一致性(Consistency):如果某个特征在任意子集中的边际贡献都不减少,则其SHAP值不会减少
- 加和性(Additivity):对于多个模型的组合,SHAP值可以线性相加
风控应用注意:一致性性质保证了当风控模型迭代优化后,特征的重要性排序不会出现“反直觉”的翻转。例如,如果新模型对“收入”特征的依赖更强,则“收入”的SHAP值一定不会降低,这为模型监控提供了理论保障。
3.4 局部保真性解释
局部保真性(Local Accuracy)是SHAP最核心的工程性质。它确保了在单个样本层面,解释模型能够精确复现原始模型的预测结果。
数学表达为:
f(x) = φ₀ + φ₁ + φ₂ + ... + φ_M
其中:
- f(x) = 原始模型对样本 x 的预测值(如违约概率 0.85)
- φ₀ = 基线预测值(所有样本的平均预测,如 0.12)
- φᵢ = 特征 i 的SHAP值(可正可负)
在风控审批场景中,局部保真性意味着:
- 我们可以将每个申请人的评分精确拆解为“基线风险 + 各特征贡献”
- 所有特征的SHAP值之和加上基线值,严格等于模型输出
- 不存在“未解释的残差”或“近似误差”
下图展示了SHAP加性归因的完整流程:
3.5 SHAP值与线性模型的对比
为了加深理解,我们将SHAP值与线性回归模型的系数进行对比:
| 对比维度 | 线性回归系数 | SHAP值 |
|---|---|---|
| 适用范围 | 仅线性模型 | 任意模型(树、神经网络、集成模型等) |
| 特征交互 | 无法捕捉交互效应 | 通过Shapley值自动包含交互贡献 |
| 局部vs全局 | 全局固定系数 | 每个样本每个特征独立计算 |
| 单位解释 | 特征每变化一个单位,输出变化β | 特征对当前样本预测的边际贡献 |
| 非线性处理 | 需要手动构造特征变换 | 自动适应模型非线性结构 |
风控实战要点:
- SHAP值可以为每个申请人生成个性化的“审批理由”:如“收入贡献+0.15,负债率贡献-0.08,征信分贡献+0.22”
- 局部保真性确保这些理由的加和严格等于模型评分,可用于监管合规解释
- 线性性质使得SHAP值可以跨模型、跨时间进行对比,支持模型监控和漂移检测
下图展示了SHAP值在风控样本上的局部解释示例:
3.6 小结
SHAP的核心原理可以概括为:
- 加性归因模型将复杂模型输出分解为基线值加各特征贡献之和
- SHAP值基于博弈论Shapley值,通过遍历所有特征子集计算公平的边际贡献
- 线性性质保证了归因的一致性、缺失性和局部保真性
- 局部保真性确保每个样本的解释精确无偏,是风控合规解释的数学基础