2. 可解释性基础概念:全局解释与局部解释、内在可解释模型与事后解释方法

在构建企业级评分接口时,可解释性不是单一维度的属性,而是由解释范围和解释时机两个正交维度构成的矩阵。理解这两个维度,是设计可解释评分接口的前提。

2.1 解释范围:全局解释 vs 局部解释

根据解释覆盖的样本空间,可解释性分为全局解释(Global Explanation)和局部解释(Local Explanation)。前者回答“模型整体如何决策”,后者回答“针对某个具体样本,模型为何给出该结果”。

维度 全局解释 局部解释
目标 理解模型在整个特征空间上的行为规律 理解模型对单个样本的决策依据
输出形式 特征重要性排序、部分依赖图、决策树规则集 特征贡献值(如 SHAP/LIME)、反事实解释
适用场景 模型审计、合规审查、业务规则对齐 用户申诉、拒贷解释、异常样本诊断
计算开销 较高(需遍历全量数据或采样) 较低(仅针对单个样本计算)
企业级接口典型用途 模型监控报告、特征漂移分析 评分结果详情页、风控拒绝原因码
架构决策提示: 在评分接口设计中,局部解释通常作为实时响应的附加字段返回(如 reason_codes 数组),而全局解释更适合离线批处理或管理后台,避免在线推理链路过重。

2.2 解释时机:内在可解释模型 vs 事后解释方法

根据解释能力是模型自带的还是事后附加的,可解释性分为内在可解释模型(Intrinsically Interpretable Models)和事后解释方法(Post-hoc Explanation Methods)。

2.2.1 内在可解释模型

这类模型的结构本身具备可解释性,决策路径可以直接被人类理解。常见模型包括:

  • 线性回归 / 逻辑回归:权重直接反映特征的正负影响方向和强度。
  • 决策树:从根节点到叶节点的路径即为决策规则。
  • 广义加性模型(GAM):每个特征通过独立的形状函数贡献,可单独可视化。
  • 规则列表 / 规则集:如 IF-THEN 规则,天然可读。
企业级选型建议: 在监管严格的金融、医疗场景,优先考虑内在可解释模型作为基线模型。如果业务精度要求必须使用复杂模型(如 GBDT、深度网络),则必须配套事后解释方法。

2.2.2 事后解释方法

事后解释方法不改变原模型结构,而是在模型推理后通过代理模型、梯度或扰动等技术生成解释。主流方法包括:

方法 原理 解释范围 典型工具
LIME 在样本局部拟合可解释代理模型 局部 lime Python 包
SHAP 基于博弈论 Shapley 值分配特征贡献 全局 + 局部 shap Python 包
Partial Dependence Plot 固定其他特征,观察目标特征与预测值的关系 全局 sklearn.inspection
Permutation Importance 打乱特征值后观察精度下降程度 全局 sklearn.inspection
Grad-CAM 利用梯度定位输入区域的重要性(主要用于图像) 局部 深度学习框架内置
可解释性分类矩阵:解释范围 × 解释时机 全局解释(Global) 局部解释(Local) 内在可解释 线性回归权重 决策树规则集 GAM 形状函数 特征重要性排序 部分依赖图(PDP) —— 模型结构自带全局解释能力 决策树单条路径 线性模型特征贡献分解 规则匹配链 GAM 单样本特征效应 对比基线均值 —— 模型结构自带局部解释能力 事后解释 Permutation Importance SHAP 全局特征重要性 累积局部效应(ALE) 代理决策树 H-statistic 交互强度 —— 模型无关,事后计算全局规律 SHAP 单样本力力图 LIME 局部代理模型 反事实解释(Counterfactual) 锚点解释(Anchors) 积分梯度(Integrated Gradients) —— 模型无关,事后计算单样本归因

2.3 企业级评分接口中的选择策略

在实际的评分接口架构中,通常采用混合策略:

  1. 在线推理链路:使用内在可解释模型(如逻辑回归)或轻量级事后解释(如 SHAP 快速近似)返回局部解释。
  2. 离线分析链路:使用 SHAP 全局重要性、PDP 等事后方法生成模型行为报告,用于监控和审计。
  3. 异常检测链路:当局部解释出现异常贡献值时,触发全局解释重新计算,形成闭环反馈。
常见误区: 不要认为“复杂模型 + 事后解释”可以完全替代内在可解释模型。事后解释只是近似,存在解释不忠实(Infidelity)风险——即解释结果可能与模型真实决策逻辑不一致。在监管审计场景中,内在可解释模型仍是最安全的选项。

2.4 可解释性评估指标

选择解释方法时,需要从以下维度进行评估:

指标 定义 评估方式
忠实度(Fidelity) 解释与模型真实决策的匹配程度 移除重要特征后预测变化量
可理解性(Comprehensibility) 人类理解解释的难易程度 用户测试、解释长度、规则数量
稳定性(Stability) 相似样本的解释是否相似 对输入添加微小扰动,观察解释变化
计算效率(Efficiency) 生成解释所需的时间和资源 延迟 P99、CPU/GPU 消耗
接口设计映射: 在评分接口的 GET /v1/score/{id}/explain 响应中,建议同时返回 local_importance(局部特征贡献)和 confidence(解释置信度),让调用方可以评估解释的可靠性。