网站大量收购独家精品文档,联系QQ:2885784924

归因分析笔记6:SHAP代码笔记.pdfVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
归因分析笔记6 :SHAP代码笔记 ⽬录 Python包: 该包的⽂档: SHAP (SHapley Additive exPlanations)是⼀种归因⽅法attribution method, ⼀种描述特征影响模型平均⾏为的全局解释⽅法. 基于解 释单个预测的局部解释⽅法Shapley 值, 通过组合Shapley 值得到. SHAP包的介绍参考: SHAP多分类参考: 安装 pip install shap or conda install -c conda-forge shap activate Liver pip install shap 使⽤⽰例 Kernel SHAP的实现, 核 SHAP 是⼀种与模型⽆关的⽅法,⽤于估计任何模型的 SHAP 值。因为它不对模型类型做出假设,所以 KernelExplainer ⽐其他特定于模型类型的算法慢。 该例⼦解释iris数据集上的多分类 SVM 完整的notebook代码(解释scikit-learn中的6种模型): import sklearn import shap from sklearn.model_selection import train_test_split # print the JS visualization code to the notebook shap.initj s() # train a SVM classifier X_train,X_test,Y_train,Y_test = train_test_split(*shap.datasets.iris(), test_size=0.2, random_state=0) svm = sklearn.svm.SVC(kernel=rbf, probability=True) svm.fit(X_train, Y_train) # ⽤ Kernel SHAP解释测试集的预测 explainer = shap.KernelExplainer(svm.predict_proba, X_train, link=logit) shap_values = explainer.shap_values(X_test, nsamples= 100) 其中explainer.shap_values(X_test, nsamples= 100)代表解释每个预测(单个测试样本)时重新评估模型的次数(见下⽅) 分别解释4个特征贡献, 从平均输出0.3206推向0.0 1 shap_values() 进⼊shap_values函数仔细看下: 作⽤: 估计⼀组采样的Shap值 输⼊参数 X : numpy.array or pandas.DataFrame or any scipy.sparse 矩阵 ⽤于解释模型输出的样本矩阵 nsamples : auto or int Number of times to re-evaluate the model when explaining each prediction. More samples lead to lower variance estimates of the SHAP values. The auto setting uses `nsamples = 2 * X.shape[1] + 2048`. 解释每个预测(单个测试样本)时重新评估模型的次数。样本越多,Shap值的⽅差估计越低。设为auto代表使⽤ `nSamples=2*X.Shape[1]+2048`。 返回值 array or list For models with a single output this returns a matrix of SHAP values (# samples x # features). Each row sums to the difference between the model output for that sample and the expected value of the model output (which is stored as expected_value attribute of the explainer). For models with vector outputs this returns a list of such matrice

文档评论(0)

132****1393 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档