SHAP值理论

一、优点

线性回归的系数越大并不意味着影响越强,shap是同一维度的;

XGBoost的对比是没有正负向;

ps:不会受到缺失值的影响

二、理论基础

博弈论:

ABC三人有每个人完成的效率 ,每两个人完成的效率(有交互作用),三个人一起完成something,应该怎么分配——加性的一种边际分配。

三、shap的应用

1、基础版——shap_values

explainer = shap.Explainer(model)
shap_values = explainer(X)
#也可以shap_values = explainer.shap_values(X) ,X训练集

在SHAP中进行模型解释需要先创建一个explainer,SHAP支持很多类型的explainer

deep:用于计算深度学习模型,基于DeepLIFT算法,支持TensorFlow / Keras。
gradient:用于深度学习模型,综合了SHAP、集成梯度、和SmoothGrad等思想,形成单一期望值方程,但速度比DeepExplainer慢,并且做出了不同的假设。 此方法基于Integrated Gradient归因方法,并支持TensorFlow / Keras / PyTorch。
kernel:模型无关,适用于任何模型
linear:适用于特征独立不相关的线性模型
tree:适用于树模型和基于树模型的集成算法,如XGBoost,LightGBM或CatBoost

shap.SamplingExplainer — SHAP latest documentation

print("shap维度:",shap_values.shape)
print("测试集维度:",X_train.shape)
#the same

训练集or测试集的X都可以。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值