发布说明

要查看下一版本即将发布的最新更改,请参阅 v0.49.0…master

v0.49.0

发布于 2025-10-14 - GitHub - PyPI

变更内容

注意:这是最后一个支持 Python 3.9 和 Python 3.10 的版本。从 v0.50.0 开始,我们将仅支持 Python 3.11 及以上版本。

  • @nqviller#4171 中为 C++ 库添加了对分类拆分的支持
  • @FanwangM#4119 中添加了自定义小提琴图颜色条的选项

其他变更

  • plots.image 如果提供,则为每一行显示标签,由 @julesvanrie#4113 中实现
  • 使用 nbtest,由 @CloseChoice#4143 中实现
  • 为 PyTorch 的 Flatten 添加支持,由 @RoyiAvital#4148 中实现
  • 更新 .save() 和 .load() 方法以移除 Explainer 和 Serializer 中的 AttributeError,由 @oscarl77#4155 中实现
  • 修复 LGBMRegressor 缺少 objective 错误的问题,由 @imatiach-msft@CloseChoice#1063 中实现
  • 通过为特征名称添加字符串转换来修复数字特征分支中潜在的 TypeError #4150,由 @YunyuG#4159 中实现
  • 改进 Coalition Explainer 用户指南并修复树构建,由 @EnzoFanAccount#4116 中实现

新的贡献者

完整变更日志: v0.48.0...v0.49.0

v0.48.0

发布于 2025-06-12 - GitHub - PyPI

变更内容

新增

文档

  • 更新“解释一个使用标准化特征的模型”,由 @randombenj#3903 中实现

其他变更

新的贡献者

完整变更日志: v0.47.2...v0.48.0

v0.47.2

发布于 2025-04-17 - GitHub - PyPI

变更内容

新增

其他变更

  • 文档:在 Simple California Demo.ipynb 中阐明分区树解释,由 @ethanknights#4027 中实现
  • 修复:唯一值抖动,由 @fabianliebig#4041 中实现
  • 修复:修正 SHAP 值描述中的中性语言,由 @Hrafz#4058 中实现
  • 修复:为 javascript 绘图组件添加回归测试并增加测试用例,由 @CloseChoice#4060 中实现

新的贡献者

完整变更日志: v0.47.1...v0.47.2

v0.47.1

发布于 2025-03-22 - GitHub - PyPI

修复

  • 修复摘要小提琴图中的回归问题,由 @CloseChoice#4033 中实现
  • 修复新 scikit 版本中树模型对缺失数据计算出不正确 SHAP 值的问题,由 @sunruslan#3998 中实现
  • 修复调用 check_additivity 时容差过紧的问题,由 @adamwitmer#3993 中实现
  • 修复提取颜色时出现的 AttributeError,由 @fabianliebig#4017 中实现
  • 修复 uint32 溢出导致的可加性检查失败,由 @arhall0#4006 中实现

新的贡献者

完整变更日志: v0.47.0...v0.47.1

v0.47.0

发布于 2025-03-05 - GitHub - PyPI

变更内容

重大变更

  • 为旧版条形图添加弃用警告,为新的 Explainer API 添加迁移指南,由 @connortann#3739 中实现

新增

已修复

文档

  • 修复 shap.datasets.communitiesandcrime 文档中的错误,由 @TommyGiak#3846 中实现
  • 修复“理解 Tree SHAP”笔记本中的列索引,由 @operte#3749 中实现
  • 重新格式化 API 示例中的散点图笔记本,由 @Xovee#3752 中实现
  • 改进散点图的类型提示和文档,由 @connortann#3811 中实现
  • 为一些外部链接使用 intersphinx,由 @thatlittleboy#3851 中实现
  • 为可复现性固定文档依赖项,由 @connortann#3885 中实现
  • 修复 force plot 中 LightGBM 的拼写错误和描述,由 @davidefiocco#3962 中实现
  • 修复:修复了引言中某些章节标题的 markdown 问题,由 @CSantos01#3957 中实现
  • 修复引言笔记本中 beeswarm 图的注释,由 @davidefiocco#3960 中实现

维护

  • 修复:在测试中显式设置 matplotlib 插值 rcParams,由 @connortann#3953 中实现

其他变更

  • 在 MacOS runner 上跳过情感分析测试,由 @connortann#3955 中实现
  • 移除已弃用且未使用的代码 _build_delta_masked_inputsExplainer._compute_main_effects,由 @connortann#3856 中实现
  • 为保持一致性,改进 TreeExplainer 的 approximate 参数处理,并在 explainer 的 init 方法中弃用该参数,由 @CloseChoice#3834 中实现
  • 重构 Tree explainers 中的 feature_perturbation,由 @glemaitre#2624 中实现
  • 测试决策图,由 @CloseChoice#3720 中实现
  • 升级 ruff,修复规则 E721,由 @connortann#3751 中实现
  • 重构绘图工具和颜色,由 @thatlittleboy#3833 中实现
  • 重构并优化解释操作,由 @thatlittleboy#3850 中实现
  • 修复 CI feedstock 构建,由 @CloseChoice#3862 中实现
  • 为多输出队列调用添加错误,由 @CloseChoice#3870 中实现
  • 修复 beeswarm.ipynb 中的拼写错误,由 @kamurani#3900 中实现
  • DeepExplainer 文档字符串改进,由 @anitagraser#3892 中实现
  • 在生成新的摘要图前清除绘图,以避免颜色条重叠,由 @chun61205#3921 中实现
  • 支持 summary_plot 的 rng,由 @tylerjereddy#3945 中实现
  • 非树 KernelExplainer 的小幅速度提升,由 @tylerjereddy#3983 中实现

新的贡献者

完整变更日志: v0.46.0...v0.47.0

v0.46.0

发布于 2024-06-27 - GitHub - PyPI

变更内容

此版本增加了与最新版本的 numpy 和 tensorflow 的兼容性,并包含多个错误修复。

新增

变更

  • 移除了 shap.summary_plot() 中已弃用的 auto_size_plot 参数。

已修复

  • 修复了解释使用 float16 混合精度训练的模型时的问题,由 @CloseChoice#3652 中实现
  • 修复了 XGBRegressor 模型的反序列化错误,由 @CloseChoice#3669 中实现

以及其他一些文档和代码质量的改进。

新的贡献者

完整变更日志: v0.45.1...v0.46.0

v0.45.1

发布于 2024-05-07 - GitHub - PyPI

这是一个包含少量错误修复的补丁版本。特别地,修复了与加载带有指数损失的 XGBoost 模型相关的错误。

变更内容

新增

  • 为 pytorch deep explainer 添加 selu 激活函数,由 @CloseChoice#3617 中实现
  • 为热力图绘图函数添加 "ax" 选项,由 @sroener#3571 中实现

变更

已修复

  • 修复了加载带有指数损失的 XGBoost 模型的问题,由 @CloseChoice#3616 中实现
  • 修复了 deep explainer 的调用接口,由 @CloseChoice#3558 中实现
  • 修复了使用 Falcon 语言模型进行文本生成的问题,由 @CloseChoice#3592 中实现
  • 修复了 lightgbm 编译问题(macOS 工作流),由 @bewygs#3632 中实现
  • 修复了加载带有指数损失的 XGBoost 模型的问题,由 @CloseChoice#3616 中实现

以及由 @bewygs@CloseChoice@Hugh-OBrien 提供的若干文档和维护更新

新的贡献者

完整变更日志: v0.45.0...v0.45.1

v0.45.0

发布于 2024-03-08 - GitHub - PyPI

这是一个相当重要的版本,包含一些重大变更。

感谢许多新贡献者为本次发布做出的贡献!我们渴望扩大维护者团队,如果您有兴趣成为团队的一员,请在 #3559 与我们联系。

变更内容

重大变更

  • #3414 中放弃了对 3.8 的支持
  • 在某些情况下更改了返回的 SHAP 值的类型和形状,以与模型输出保持一致。具有多个输出的模型的 SHAP 值现在是 np.ndarray 而不是 list,由 @CloseChoice#3318 中实现
  • 移除了 TreeExplainer 和 LinearExplainer 中已弃用的 feature_dependence 参数,由 @thatlittleboy#3340 中实现
  • 移除了 Coefficient 的已弃用别名,由 @connortann#3511 中实现

新增

  • 增加了对 python 3.12 的支持,由 @connortann#3414 中实现
  • 增加了对近期 CUDA 版本的 GPU 构建支持,由 @trivialfis#3462 中实现
  • 通过延迟导入 pytorch 使导入时间加快 2 倍,由 @connortann#3533 中实现
  • 增加了在条形图中返回 matplotlib 图形的支持,由 @richarddli#3494 中实现
  • 为 tensorflow deep explainer 添加 selu 激活函数,由 @CloseChoice#3504 中实现
  • 增加了对 catboost 模型中特殊字符的支持,由 @CloseChoice#3506 中实现
  • 增加了控制 beeswarm 图中标记大小的功能,由 @MonoHue#3530 中实现

已修复

  • 修复了 XGBoost 模型加载问题,由 @trivialfis#3462 中实现
  • 修复了使用某些分词器时的文本掩码问题,由 @costrau#3536 中实现
  • 修复了使用 KernelExplainer 解释 tensorflow 模型时的问题,由 @connortann#3542 中实现
  • 修复了 force_plot 对负贡献值的贡献阈值问题,由 @connortann#3547 中实现
  • @connortann#3514 中移除了对默认警告过滤器或格式化器的覆盖

.. 此外还有 @CloseChoice@yuanx749@LakshmanKishore 及其他贡献者进行的大量文档、测试和其他维护更新。

新的贡献者

完整更新日志: v0.44.1...v0.45.0

v0.44.1

发布于 2024-01-25 - GitHub - PyPI

修复力图显示问题的补丁版本。

已修复

  • @CloseChoice#3464 中修复了影响力图显示的 HTML 问题
  • @CloseChoice#3459 中修复了 catboost 回归器交互值的计算问题
  • @CloseChoice#3345 中更新 XGBoost 解析以使用 ubjson 格式,替换已弃用的二进制格式

其他

  • 文档的进一步改进

完整更新日志: v0.44.0...v0.44.1

v0.44.0

发布于 2023-12-07 - GitHub - PyPI

此版本包含多项增强和错误修复。

变更内容

新增

  • @lorentzenchr#3271 中为 KernelShap 提供了更快、更稳定的线性求解器
  • @mtlulka#3355 中启用了向 group_difference() 图传递 ax 参数的功能
  • @fountaindive#3386 中为条形图添加了对 Explanation.display_data 的支持
  • @connortann#3403 中改进了从源代码构建时的构建信息

已修复

  • @CloseChoice#3325 中修复了在 Windows 上使用特征交互时 CatboostClassifier 的解释问题
  • @vancromy#3314 中修复了将 Xgboost 模型参数传递给 xgboost.DMatrix 的问题
  • @mtlulka#3352 中明确指定了 xgboost>=1.4 的约束
  • @thatlittleboy#3359 中修复了 DMatrix 到 CSR 矩阵的转换问题
  • @CloseChoice#3369 中移除了 dependence_plot 中已弃用的 use_line_collection
  • @SomeUserName1#2799 中修复了与 scatter 图中数组重塑相关的错误

文档

新的贡献者

完整更新日志: v0.43.0...V0.44.0

v0.43.0

发布于 2023-10-09 - GitHub - PyPI

变更内容

此版本包含多项错误修复和改进。

根据 NEP 29 弃用政策,此版本放弃了对 python 3.7 的支持。

重大变更

  • @thatlittleboy#3316 中移除了已弃用的波士顿数据集
  • Explanation.base_values 的形状在不同的 TreeExplainer 模型之间已标准化,始终为 (N,) 而非 (N,1)。由 @thatlittleboy#3121 中完成

新增

  • @noxthot#3265 中为 Pytorch DeepExplainer 添加了可加性检查(默认激活)
  • 添加了标志以允许多输出条形图的图例中打印平均 SHAP 值。由 @101AlexMartin#3062 中完成
  • @connortann#3157 中将热力图和小提琴图添加到顶层 API
  • @owenlamont#3199 中将所有 tqdm 导入替换为 tqdm.auto

已修复

  • @thatlittleboy#3093 中修复了在 MacOS 上使用 lightgbm 测试时(使用较新版本的 libomp)出现的段错误
  • @thatlittleboy#3094 中支持包含单叶树(树桩)的 LightGBM 集成模型
  • @danieleongari#3131 中修复了将 DataFrame 转换为 Explanation.data 的 ndarray 的问题
  • @connortann#3138 中修复了 sklearn 树模型解释的瀑布图
  • 由 @Koen-Git 在 #3153 中修复了梯度解释器的 pandas 输入问题
  • @thatlittleboy#3126 中修复了在具有方形 .values 的 Explanation 对象中对 feature_names 的切片问题
  • @zaburo-ch#2839 中修正了当力的符号都相同时 force_matplotlib 中的 xlim
  • @CloseChoice#3294 中修复了当 col_sample < 1 时的 ngboost 解释
  • @noxthot#3281 中修复了 PyTorch DeepExplainer 中的 torch 可加性检查
  • @znacer#3264 中用警告替换了 DeepExplainer 中的 print 语句
  • @noxthot#3259 中替换了已弃用的 register_backward_hook()
  • @CloseChoice#3306 中修复了已弃用的 xgboost early_stopping_rounds 的使用
  • @connortann#3084 中修复了第三方弃用警告:numba、xgboost、typing、distutils
  • @connortann#2974 中更新了 Javascript 包以更新已弃用的依赖项

教程和示例也得到了大量改进,贡献者包括 @connortann@znacer@arshiaar@thatlittleboy@dsgibbons@owenlamont@CloseChoice

新的贡献者

完整更新日志: v0.42.1...v0.43.0

v0.42.1

发布于 2023-07-15 - GitHub - PyPI

为更广泛的架构提供 wheels 的补丁版本。

新增

已修复

完整更新日志: v0.42.0...v0.42.1

v0.42.0

发布于 2023-07-06 - GitHub - PyPI

此版本包含了许多最初由 SHAP 社区通过 @dsgibbons社区分支贡献的更改,该分支现已合并到主 shap 仓库中。源自此分支的 PR 在此标记为 fork#123

这将是支持 python 3.7 的最后一个版本。

新增

已修复

  • 修复了 plot.waterfall 以支持布尔特征的 yticklabels(fork#58@dwolfeu 贡献)。
  • 防止 TreeExplainer.__call__ 在传递包含分类列的 pandas DataFrame 时抛出 ValueError(fork#88@thatlittleboy 贡献)。
  • 修复了 shap.datasets 中的采样问题,改为无放回采样(fork#36@thatlittleboy 贡献)。
  • 修复了因向 shap.plots.bar 传递字典输入而引起的 UnboundLocalError 问题(#3001@thatlittleboy 贡献)。
  • 修复了使用 Gradient 时 Pyspark 的 tensorflow 导入问题(#2983@skamdar 贡献)。
  • 修复了 shap.plots.heatmap 中颜色条的纵横比,并在内部使用 ax matplotlib API 进行绘图(#3040@thatlittleboy 贡献)。
  • 修复了 numba>=0.44 的弃用警告(fork#9fork#68@connortann 贡献)。
  • 修复了来自 numpy 类型的 numpy>=1.24 弃用警告(fork#7@dsgibbons 贡献)。
  • 修复了来自 Ipython.core.displayIpython>=8 弃用警告(fork#13@thatlittleboy 贡献)。
  • 修复了来自 tf.optimiserstensorflow>=2.11 弃用警告(fork#16@simonangerbauer 贡献)。
  • 修复了来自 sklearn.linear_modelsklearn>=1.2 弃用警告(fork#22@dsgibbons 贡献)。
  • 修复了树解释器中来自 ntree_limitxgboost>=1.4 弃用警告(#2987@adnene-guessoum 贡献)。
  • 修复了在 Windows 和 MacOS 上的构建问题(#3015@PrimozGodec 贡献;#3028#3029#3031@connortann 贡献)。
  • 修复了在 shap.explainers.Exact 中创建不规则数组的问题(#3064@connortann 贡献)。

变更

已移除

维护

v0.41.0

发布于 2022-06-16 - GitHub - PyPI

大量的错误修复和 API 改进。

v0.40.0

发布于 2021-10-20 - GitHub - PyPI

此版本包含许多错误修复和大量新功能,特别是针对基于 transformer 的 NLP 模型。一些亮点包括

  • 为 NLP 模型解释提供了新的绘图、错误修复、文档和功能(详见文档)。
  • @sander-sn 进行了重要的排列解释器性能修复
  • 新的联合散点图,可在同一 y 轴上同时绘制多个点
  • @morriskurz 改进了树模型的内存使用
  • @coryroyce 提供的新文档
  • @PrimozGodec 提供的新 wheel 构建
  • @gialmisi 改进了文档的暗黑模式
  • @c56pony @nsorros @jebarb 进行的 api 调整

v0.39.0

发布于 2021-03-03 - GitHub - PyPI

大量新的文本解释器工作由 @ryserrao 贡献,序列化工作由 @vivekchettiar 贡献!(稍后将记录所有其他更改)

v0.38.1

发布于 2021-01-15 - GitHub - PyPI

修复了 v0.38.0 版本的版本不匹配问题和序列化更新。

v0.38.0

发布于 2021-01-14 - GitHub - PyPI

此版本包含对 transformer 文本模型解释的改进支持,以及对新的基于 Explanation 对象的 API 的支持。具体改进包括

  • @ryserrao 贡献的 Text 解释器中的 Transformer 模型支持
  • @RAMitchell 贡献的 Interventional Tree 解释器 GPU 支持
  • @anusham1990 贡献的图像字幕模型支持
  • @maggiewu19 贡献的基准测试改进
  • @vivekchettiar 贡献的新的文本和图像可视化
  • @vivekchettiar 贡献的新的解释器序列化支持
  • @heimengqi 贡献的 Linear 解释器和新 API 的错误修复
  • @jeffreyftang 贡献的分类图修复
  • @JohnZed 贡献的 CUDA 支持改进
  • @vasilismsr 贡献的对 econML 模型的支持
  • 许多其他的错误修复和 API 改进。

v0.37.0

发布于 2020-11-04 - GitHub - PyPI

此版本包含对新 API 的更多支持、许多错误修复以及对模型无关的文本/图像解释器的初步支持(仍为测试版)。具体贡献包括

  • @tcbegley 修复 Sampling 解释器样本计数问题
  • 添加多条形图绘制支持。
  • 对群组的初步支持。
  • @suragnair 修复导入错误
  • @zhanjiezhu 修复 Tree 解释器在使用 max_features < 1 的隔离森林时的问题
  • @lrjball 进行的大量文档清理和更新
  • @anusham1990 修复拼写错误
  • 为 Exact 解释器添加了文档笔记本。
  • @anusham1990 和 Ryan Serrao 贡献的文本和图像解释器
  • 修复 shap.utils.hclust 的错误
  • 对 InterpretML EBM 模型的初步支持。
  • 为 Explainer 对象添加了列分组功能。
  • 由 @quentinRaq 修复 PyTorch 中 Deep 解释器的 for 循环索引错误
  • @vivekchettiar 贡献的文本到文本可视化的初步概念
  • @wangjoshuah 修复颜色转换警告
  • @PrimozGodec 使用伪逆修复 Kernel 解释器中的可逆性问题
  • @maggiewu19@vivekchettiar 贡献的新基准测试代码
  • 其他小的错误修复和增强。

v0.36.0

发布于 2020-08-27 - GitHub - PyPI

此版本对 SHAP 代码库进行了重大重构,形成了一个新的(更清晰的)API。应保持完全的向后兼容性,但现在大多数功能都可以在具有新 API 的位置找到。请注意,此 API 仍处于测试阶段,因此在下个版本发布前,请勿在生产代码中依赖它。亮点包括

  • 一个新的 shap.Explainer 对象,可根据给定的模型和掩码数据集自动选择解释器。
  • 一个新的 shap.Explanation 对象,允许并行切片数据、SHAP 值、基准值(期望值)和其他特定于解释的元素。
  • 一个新的 shap.maskers.* 模块,将各种掩码(即扰动/隐藏)特征的方式与算法本身分离开来。
  • 一个新的 shap.explainers.Partition 解释器,可以非常快速地解释任何文本或图像模型。
  • 一个新的 shap.maskers.Partition 掩码器,可确保紧密分组的特征被一致地扰动,从而防止“不切实际”的模型输入不当地影响模型预测。它还允许对“结构化博弈”(联盟根据层次聚类进行结构化)的 SHAP 值进行精确的二次时间计算。
  • 一个新的 shap.plots.* 模块,其中包含支持新 API 的 revamped 绘图类型。绘图现在命名更直接,因此 summary_plot(默认)变为 beeswarmdependent_plot 变为 scatter。并非所有绘图都已移植到新 API,但大多数已经完成。
  • 一个新的 notebooks/plots/* 目录,给出了如何使用新绘图函数的示例。
  • 一个新的 shap.plots.bar 函数,可直接创建条形图,并显示层次聚类结构以将冗余特征分组在一起,并显示 Partition 解释器使用的结构(该解释器依赖于 Owen 值,这是 Shapley 值的扩展)。
  • @jameslamb 贡献的相等性检查修复
  • @PrimozGodec 贡献的稀疏 kmeans 支持
  • @rightx2 贡献的 Pytorch 错误修复
  • @SachinVarghese 贡献的 NPM JS 代码清理
  • @ehuijzer 贡献的 logit 力图错误修复
  • @floidgilbert 贡献的决策图文档更新
  • @ChemEngDataSci 贡献的 sklearn GBM 修复
  • @lrjball 贡献的 XGBoost 1.1 修复
  • @QuentinAmbard 使 SHAP spark 可序列化
  • @nasir-bhanpuri 贡献的自定义摘要图颜色映射
  • @YotamElor 贡献,KernelSHAP 现支持字符串输入
  • @imatiach-msft 贡献,修复了文档
  • @fabsig 贡献,支持 GPBoost
  • @gracecarrillo@aokeson 贡献,修复了导入错误

0.35.0

发布于 2020-02-27 - GitHub - PyPI

此版本包括

  • 更好地支持 TensorFlow 2(感谢 @imatiach-msft
  • TreeExplainer 支持 NGBoost 模型(感谢 @zhiruiwang
  • TreeExplainer 支持新的 sklearn.ensemble.HistGradientBoosting 模型。
  • 针对图像和文本的新版改进型 PartitionExplainer。
  • @DorianCzichotzki 贡献,兼容 IBM zOS。
  • 支持 XGBoost 1.0
  • 由 Ivan、Christian Paul、@RandallJEllis@ibuda 贡献,修复了许多错误。

0.34.0

发布于 2019-12-27 - GitHub - PyPI

此版本包括

  • 修复了许多小错误。
  • @koomie 贡献,改进了 matplotlib 旋转时的文本对齐
  • 清理了 C++ transformer 代码,以便更容易地提交 PR。
  • 修复了 TreeExplainer 中过紧的 check_additivity 容差问题 #950
  • 更新了 LinearExplainer API 以匹配 TreeExplainer
  • 由 @SimonStreicher 贡献,允许在 summary_plot 中自定义类别排序

0.33.0

发布于 2019-12-11 - GitHub - PyPI

此版本包含各种错误修复和新功能,包括

  • @QuentinAmbard 贡献,为 TreeExplainer 添加了 PySpark 支持
  • 一种可替代 force_plot 的新绘图类型:waterfall_plot
  • 一个新的 PermutationExplainer,可替代 KernelExplainer 和 SamplingExplainer。
  • @s6juncheng 贡献,为 PyTorch 的 GradientExplainer 添加了 return_variances 功能
  • @ssaamm 贡献,现在我们在 TreeExplainer 中使用异常而不是断言
  • @Jimbotsai 贡献,修复了 image_plot 的转置问题
  • 由 Lasse Valentini Jensen 贡献,修复了颜色条坐标轴附加问题
  • @gabrieltseng 贡献,修复了 PyTorch 中的张量附加问题
  • @joelostblom 贡献,修复了 summary_pot 中的颜色裁剪范围
  • @lemon-yellow 贡献,解决了 sklearn 0.22 的 API 变更问题
  • @imatiach-msft 贡献,确保 matplotlib 是可选依赖项

0.32.1

发布于 2019-11-06 - GitHub - PyPI

此版本旨在从 travis 和 appveyor 推送更好的自动部署包。

0.32.0

发布于 2019-11-06 - GitHub - PyPI

此版本包括

  • @JiechengZhao 贡献,支持 sklearn isolation forest
  • 新的 check_additivity 测试,以确保 DeepExplainer 和 TreeExplainer 中没有错误
  • 修复 #861, #860
  • 修复缺失的 readme 示例 html 文件
  • @QuentinAmbard 贡献,支持 spark decision tree regressor
  • @parsatorb 贡献,更安全的 isinstance 检查
  • @bottydim 贡献,修复了 TF < 2 中的 eager execution 问题

0.31.0

发布于 2019-10-21 - GitHub - PyPI

此版本包含几项新功能和错误修复

  • GradientExplainer 现在支持 TensorFlow 2.0。
  • 我们现在对绘图依赖项进行惰性加载,这意味着 pip 安装不再需要同时引入 matplotlib、skimage 和 ipython。这将使安装过程更加轻量,特别是对于那些不需要绘图的用户 :)
  • 为小型问题添加了新的 BruteForceExplainer,以便于测试和比较。
  • 添加了新的 partial_dependence_plot 函数。此函数将用于在未来的示例笔记本中说明偏依赖图和 SHAP 值之间的密切联系。
  • @gabrieltseng 贡献,处理 LinearExplainer 中没有截距的多分类情况
  • 由 @AbdealiJK 贡献,在 pip 安装期间提供了一些 extras_require 选项
  • 其他小的错误修复和更新

0.30.2

发布于 2019-10-09 - GitHub - PyPI

此版本主要是为了移除对 setup.py 中未包含的 dill 依赖项。它还包括

0.30.1

发布于 2019-09-09 - GitHub - PyPI

  • 修复了最近 sklearn 版本的树模型中的浮点数舍入不匹配问题
  • 更新了 TreeExplainer,使其能更轻松地加载自定义树集成模型。
  • @floidgilbert 贡献,更新了 decision_plot 文档

0.30.0

发布于 2019-08-31 - GitHub - PyPI

0.29.3

发布于 2019-06-19 - GitHub - PyPI

  • 修复了因 TensorFlow 1.14 变更导致 DeepExplainer 出现的问题。

0.29.2

发布于 2019-06-19 - GitHub - PyPI

各种错误修复和改进,包括

  • @dvpolyakov 贡献,为 CatBoost 添加二分类的 SHAP 值
  • @pmeier-tiplu 贡献,修复了绘图中的整数除法问题
  • @mqk 贡献,支持向 dependence_plot 传递 Axes 对象
  • @gabrieltseng 贡献,添加自适应平均池化层和卷积转置层
  • @hchandola 贡献,修复了缺少 matplotlib 后端时的导入错误
  • @prempiyush 贡献,修复 TreeExplainer GradientBoostingClassifier 的错误
  • @KOLANICH 贡献,使 tqdm 更好地与 notebooks 配合
  • @juliusbierk 贡献,允许 deep_pytorch 使用 cuda 模型
  • @nasir-bhanpuri 贡献,修复 sklearn GradientBoostingRegressor 的错误
  • @imatiach-msft 贡献,为 shap linear explainer 添加稀疏支持

0.29.1

发布于 2019-05-15 - GitHub - PyPI

修复以支持最新版 sklearn 中的更改

0.29.0

发布于 2019-05-14 - GitHub - PyPI

此版本的一些贡献亮点(按时间顺序)

  • @jorgecarleitao 贡献,更好的测试
  • @verdimrc 贡献,图像绘图自定义
  • @JiechengZhao 贡献,DeepExplainer 中 PyTorch 的 Batch norm 支持
  • @gabrieltseng 贡献,为 PyTorch DeepExplainer 添加 Leaky ReLU 和其他卷积层支持
  • @moritzaugustin 贡献,修复了 GradientExplainer 中的 Keras 多输入问题并改进了随机种子
  • @doramir 贡献,支持 CatBoost ranker
  • @imatiach-msft 贡献,将 XGBRanker 和 LGBMRanker 添加到 TreeExplainer
  • @andriy-nikolov 贡献,修复 DeepExplainer 中使用 tf.keras 的 embedding lookup 问题
  • @rcarneva 贡献,自定义 dependence_plot 颜色图
  • @dvpolyakov 贡献,修复 CatBoost 模型可能出现的除零问题
  • 大量其他的错误修复/改进!

0.28.5

发布于 2019-02-16 - GitHub - PyPI

此版本仅用于刷新 AppVeyor 上未完成的 0.28.4 Windows 构建。

0.28.4

发布于 2019-02-16 - GitHub - PyPI

  • 修复了 TreeExplainer 导致的内存损坏错误(由 @imatiach-msft 贡献)
  • 添加了对 skopt Random Forest 和 ExtraTrees Regressors 的支持(由 @Bacoknight 贡献)
  • 添加了对 matplotlib forceplot 文本旋转的支持(由 @vatsan 贡献)
  • 添加了 save_html 函数

0.28.3

发布于 2019-01-24 - GitHub - PyPI

  • 修复了 0.28 版本引入的一些绘图颜色问题(例如 #406

0.28.2

发布于 2019-01-23 - GitHub - PyPI

  • 降级 numpy API 使用以支持旧版本。

0.28.1

发布于 2019-01-23 - GitHub - PyPI

  • 修复了在 Windows 上加载 XGBoost 模型时的字节对齐问题。
  • @HughChen 贡献,现在与 XGBoost 模型中的 tree_limit 使用相匹配
  • 修复了 TreeExplainer 中转换后模型输出的 expected_value 问题

0.28.0

发布于 2019-01-21 - GitHub - PyPI

  • KernelExplainer 中添加了对基于排序的特征选择的支持。
  • 弃用 KernelExplainer 中的 l1_reg="auto",以便最终默认为 l1_reg="num_features(10)"
  • 基于 Lch 色彩空间的新色标。
  • 为多类别摘要图提供更好的自动颜色选择。
  • 更好地在 dependence_plots 中绘制 NaN 值
  • @gabrieltseng 贡献,更新以支持 Pytorch 1.0
  • 修复了 sklearn DecisionTreeClassifier 的处理,以正确归一化为概率输出
  • feature_dependence="independent" 时,为 TreeExplainer 启用多输出模型支持
  • 正确加载 LightGBM 模型的目标函数,用于解释模型损失。
  • 修复了与 sklearn 模型的数值精度不匹配问题。
  • 通过现在直接从内存而不是 JSON 加载,修复了与 XGBoost 模型的数值精度不匹配问题。

0.27.0

发布于 2019-01-01 - GitHub - PyPI

  • 更好的层次聚类排序,现在可以旋转子树以提供更好的连续性。
  • 解决了 XGBoost JSON 问题。
  • 在进行自动交互检测时考虑 NaNs。
  • PyTorch 修复。
  • 更新了 LinearExplainer。

0.26.0

发布于 2018-12-12 - GitHub - PyPI

  • 完全重构 TreeExplainer 以支持更深层次的 C++ 集成
  • 在 TreeExplainer 中能够解释树模型的转换后输出,包括损失。与 @HughChen 合作完成
  • @AvantiShri 贡献,允许在 DeepExplainer 中使用动态参考值
  • @ihopethiswillfi 贡献,为分类依赖图添加 x_jitter 选项
  • @dmilad 贡献,添加了对带分位数损失的 GradientBoostingRegressor 的支持
  • 更好地支持绘制 NaN 值
  • 修复了几个错误。

0.25.2

发布于 2018-11-09 - GitHub - PyPI

  • @JasonTam 贡献,允许向 force_plot 传递 ordering_keys
  • @imatiach-msft 贡献,修复了 KernelExplainer 中稀疏非零背景的问题
  • 修复以支持 DeepExplainer 中的 tf.concat。

0.25.1

发布于 2018-11-08 - GitHub - PyPI

修复了 pip 包中未包含 tree_shap.h 的问题。

0.25.0

发布于 2018-11-07 - GitHub - PyPI

  • @gabrieltseng 贡献,在 GradientExplainer 中支持 PyTorch,并在 DeepExplainer 中初步支持 PyTorch。
  • @jverre 贡献,提供单样本 force_plot 的 matplotlib 版本。
  • 在 GradientExplainer 中支持函数式 Keras 模型。
  • KernelExplainer 速度改进。
  • 各种性能改进和错误修复。

0.24.0

发布于 2018-08-24 - GitHub - PyPI

新的改进包括:对于稀疏输入,KernelExplainer 执行速度更快。支持 sklearn gradient boosting 分类器。DeepExplainer 扩展以支持非常深的模型。

0.23.1

发布于 2018-08-16 - GitHub - PyPI

此版本修复了 DeepExplainer 中 softmax 运算符的数值稳定性问题。它还修复了 image_plot 的一个轻微对齐问题。

0.23.0

发布于 2018-08-16 - GitHub - PyPI

此版本包含由 @imatiach-msft 为 KernelExplainer 贡献的一个很好的更新。KernelExplainer 现在运行更快并支持稀疏数据矩阵!

我们还重构了 DeepExplainer,使其与 TensorFlow 1.10 兼容。虽然还有一些问题需要解决,但 DeepExplainer 正在变得更加完整 :)

v0.22.3

发布于 2018-08-09 - GitHub - PyPI

修复了 DeepExplainer 在 TensorFlow >= 1.9 上的问题。修复了一个条形图绘制问题。

v0.22.2

发布于 2018-08-08 - GitHub - PyPI

修复了 other explainers 的 pip 打包错误。

v0.22.1

发布于 2018-08-08 - GitHub - PyPI

修复了上一版本中从 pip 安装时引入的导入错误。

v0.22.0

发布于 2018-08-08 - GitHub - PyPI

iml 的 JS 代码集成到 shap 中以简化依赖关系。在 DeepExplainer 中增加了对更多 TensorFlow 组件的支持。重构了绘图函数并删除了一些长期弃用的函数。修复了 KernelExplainer 在使用非零参考值时的错误 (#192)。

v0.21.0

发布于 2018-07-24 - GitHub - PyPI

一个新的 LinearExplainer,可以为线性模型估计 SHAP 值,同时考虑输入特征之间的相关性。

v0.20.2

发布于 2018-07-23 - GitHub - PyPI

修复了 LightGBM 中分类特征的一些问题。还修复了一些由 v.20 API 变更引起的问题。

v0.20.1

发布于 2018-07-17 - GitHub - PyPI

这只是一个用于构建 Windows wheel 文件的标签。

v0.20.0

发布于 2018-07-17 - GitHub - PyPI

此版本带来了一个重大的接口变更。模型的期望值不再作为返回的 shap_values 数组的最后一列。现在可以通过 explainer.expected_value 访问。这将使未来的工作更加清晰,因为 shap_values 矩阵的形状现在将与模型的输入数组完全相同。这对于具有多维输入张量的深度学习模型尤其重要。请注意,由于此变更,shap.force_plot() 现在需要模型的期望(基准)值作为第一个参数。

v0.19.5

发布于 2018-07-13 - GitHub - PyPI

增加了对嵌入层和 LSTM dropout 等的支持。

v0.19.4

发布于 2018-07-12 - GitHub - PyPI

DeepExplainer 现在支持 LSTM 使用的 TensorFlow 组件。

V0.19.3: v0.19.3

发布于 2018-07-07 - GitHub - PyPI

现已提供 DeepExplainer 和 GradientExplainer 的完整功能实现。

v0.19.2

发布于 2018-06-29 - GitHub - PyPI

修复了解释 sklearn 模型时的一个重要错误 (#137)。

v0.19.1

发布于 2018-06-28 - GitHub - PyPI

这标志着在为支持 DeepExplainer 中的多维输入而可能进行接口更改之前的最终版本。