从百草园到三味书屋

Recent content on 从百草园到三味书屋

马上订阅 从百草园到三味书屋 RSS 更新: https://youngforever.tech/index.xml

《A Unified Approach to interpreting Model Predictions》论文解读

2023年1月7日 00:59

Introduction #

  • 大数据让复杂模型的优势明显
  • 提出一种新颖统一的方法用于模型解释
    • 用模型的方法来解释复杂模型(用魔法打败魔法)
    • 提出SHAP值作为各种方法近似统一特征重要度度量
    • 提出新的SHAP值估计方法

Interpretation model properties #

描述解释模型需要有的三个性质,而现在解释方法的缺陷有哪些1

  • 局部准确性:如果x‘是x的简化特征,对应解释模型g(x’) = f(x),即解释模型在给定的特征情况下能解释为什么模型预测值是这么多。
  • 缺失性:当x’=0的时候,贡献度$\phi$为0
  • 一致性:模型改变导致特征变的更重要时,贡献度也应该变大

Additive Feature Attribution methods #

一大类方法中解释模型是一系列二元变量的线性函数 称为Additive Feature Attribution methods(AFA)相加特征归因方法 $$g(z’) = \phi_0 + \sum_{i=1}^{M}\phi_i z’_{i}$$ $z’ \in {0, 1}^M$

Classic Shapley Value Estimation #

$$\phi_{i} = \sum_{S \subseteq F\backslash{i}}\frac{|S|!(|F|-|S|-1)!}{|F|!}[f_{S\cup{i}}(x_{S\cup{i}})-f_{S(x_S)}]$$ 基于上面公式精确计算很麻烦,特征的排列有$2^F$种,计算量巨大

SHAP #

SHAP分为模型无关和模型相关两类方法用来近似求解,模型无关的代表是kernelSHAP,而模型相关的代表则有DeepSHAP和TreeSHAP,一个是针对深度学习,一个是针对树模型。

Kernel SHAP #

LIME #

LIME2(Local interpretable model-agnostic explanations)(why should I trust you: Explaining the predictions of any classifier)通过生成的包含需要解释点周围的扰动数据和基于黑箱模型预测结果的数据集,训练一个可以解释的模型,比如逻辑回归、决策树,这个可解释模型需要在解释点周围达到较好的效果。 $$\xi = \mathop{\arg\min}\limits_{g\in G}L(f,g,\pi_x) + \Omega(g)$$

  • f为需解释模型
  • g为可能的解释模型
  • $\pi_x$为定义实例周围多大范围

算法过程:

  • 选择需要解释感兴趣的实例
  • 对其进行扰动,并得到黑箱模型对应结果产生新数据集
  • 根据与实例的接近程度,对新数据集进行赋予权重
  • 基于新数据集和上述损失函数求解可解释模型
  • 解释预测值
    Figure 3: Toy example to present intuition for LIME

KernelSHAP(Linear LIME + Shapley value) #

LIME(Local interpretable model-agnostic explanations)方法的拓展,通过修改LIME需要求解loss等式参数,其主要思路是利用核变换,让$\phi$符合shapley value3 算法过程4

  • 根据$z_k^{’} \in {0, 1}^M$选择k个样本
  • 将$z_k^{’} \in {0, 1}^M$转化为原始特征值并计算黑箱模型预测值
  • 基于SHAP kernel计算$z_k^{’}$ 样本权重,$z_k$里面1的个数不一样权重就不一样
  • 拟合线性模型
  • 从线性模型中返回Shapley values SHAP核为(推导过程见2补充材料): $$\pi_{x’}(z’)= \frac{(M-1)}{(M choose |z’|)|z’|(M-|z’|)}$$ $$L(f,g, \pi_{x’})=\sum_{z’\in Z}[f(h_x^{-1}(z’))-g(z’)]^2\pi_{x’}(z’)$$ x’为简化输入,$x=h_x(x’)$, $z’ \subseteq x’$ 其中第二步:The function h maps...

剩余内容已隐藏

查看完整文章以阅读更多