返回 经典机器学习 思维导图
中文·English
📊 经典机器学习ID: shap-lime

可解释性 SHAP 与 LIME

SHAP & LIME
🎯核心定义
SHAP 与 LIME 是最常用的两类模型可解释性方法。SHAP 基于博弈论 Shapley 值做严格加性的特征归因: ϕi=SN{i}S!(NS1)!N![v(S{i})v(S)]\phi_i = \sum_{S \subseteq N\setminus\{i\}} \frac{|S|!(|N|-|S|-1)!}{|N|!}[v(S\cup\{i\}) - v(S)],其中 v(S)v(S) 是特征子集 SS 的预测期望,权重 S!(NS1)!N!\frac{|S|!(|N|-|S|-1)!}{|N|!} 是特征 ii 在联盟序列中的排列占比;Shapley 值是唯一同时满足效率性、对称性、虚拟性与可加性的归因解,输出被精确分解为 iϕi=f(x)E[f]\sum_i \phi_i = f(x) - E[f]。TreeSHAP 利用树结构在 O(TLD2)O(TLD^2) 内精确计算(无需采样),LIME 则拟合局部可解释替代模型 mingL(f,g,πx)\min_g \mathcal{L}(f, g, \pi_x),在实例 xxπx\pi_x 加权邻域内用稀疏线性/决策树 gg 近似 ff
💡使用场景
风控/信贷/推荐模型上线后做特征解释;面试常问“SHAP 和 LIME 怎么选”“给黑盒模型做归因用什么”;全局解释看 SHAP 特征重要性排序与依赖图,单样本解释看 force plot 或 LIME 局部权重;树模型(如 XGBoost/LightGBM)在工业界一律用 TreeSHAP。
解决的核心痛点
相比线性模型系数只能解释可加线性关系,SHAP 把任意非线性模型的输出公平分解到各特征——加性属性保证 iϕi=f(x)E[f]\sum_i \phi_i = f(x) - E[f]、归因和恒等于预测与基线之差,且跨模型、跨样本可比较;相比 LIME 随机采样导致的不可复现(扰动范围与采样种子都会改变结果),TreeSHAP 对树模型精确、快速且结果唯一确定。
🎯5 个高频面试考点 (Exam Points)
1
写出 Shapley 值公式 ϕi=SN{i}S!(NS1)!N![v(S{i})v(S)]\phi_i = \sum_{S \subseteq N\setminus\{i\}} \frac{|S|!(|N|-|S|-1)!}{|N|!}[v(S\cup\{i\}) - v(S)],解释权重 S!(NS1)!N!\frac{|S|!(|N|-|S|-1)!}{|N|!} 的含义,并说明它是唯一满足效率/对称/虚拟/可加性的归因?
2
SHAP 的加性属性: 为什么 iϕi=f(x)E[f]\sum_i \phi_i = f(x) - E[f]?这与线性模型系数(LIME 的权重)有何本质区别?
3
TreeSHAP 为什么能对树模型精确计算?复杂度 O(TLD2)O(TLD^2) 各符号的含义,为什么不需要采样?
4
写出 LIME 的局部替代目标 mingL(f,g,πx)\min_g \mathcal{L}(f, g, \pi_x): ggπx\pi_xL\mathcal{L} 分别是什么?为什么 LIME 的结果不稳定?
5
SHAP vs LIME 对比: 全局 vs 局部解释分别怎么选?在表格/图像/文本任务上的适用性?
📖 关联深度指南:📄 ml-math-and-eval-metrics
更新于 2026-08-12
🎯
检验攻克程度:针对「可解释性 SHAP 与 LIME」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点数据泄漏下一个知识点数据漂移与 PSI

🔗 更多 经典机器学习 知识点卡片

AdaBoost 算法手推Bagging 与随机森林HMM 参数学习 Baum-WelchGBDT 负梯度拟合