XAI
Captum
- LIME: 用可解释的模型(线性回归/决策树)等模拟大模型的输出
- Local Explanation: 数据中的什么特征影响了模型的决策?Why do you think its a dog?
- 对输入图像进行固定大小的Mask,查看何处对acc/loss影响较大(Occlusion Sensitivity);寻找最小的Mask,以达成对acc/loss的最大影响( Deletion Game)
- 基于Gradient(dX/dY):Pixel值的扰动对结果的扰动影响(Saliency Map);选取一个平均x作为参考背景(Integrated Gradients)
- Global Explanation: 模型认为图像应该长什么样?What does a dog looks like?
- Attention
SHAP
SHAP 提供模型参数的解释,目前已支持: NN, Tree Model, Linear Model, ... 示例见官网/TreeExplainer
其使用步骤:
## 1. 训练 Explainer
explainer = shap.xxxExplainer(model, eX_train)
## 2. 计算解释值
shap_values = explainer.shap_values(eX)
## 3. 可视化
SHAP 枚举不同feature加入模型中的顺序,评估它们对结果的贡献,取均值,示例