What's Changed
Breaking changes
- Add deprecation warning to legacy bar plot, add migration guide to new Explainer API by @connortann in #3739
Added
- Added categorical support for shap.plots.scatter by @hypostulate in #3706
- Introduce vmax parameter in image plot by @sd3ntato in #2848
- New plotting API for beeswarm to accept and return axes by @chriscave in #3561
- Enabeling to create a beeswarm figure without sum of other features by @kalkairis in #2225
- New interface to customise visualisations by @connortann in #3788
- Allow custom styles for bar plot by @connortann in #3849
- TreeExplainer numerical sensitivity by @tylerjereddy in #3990
- Faster non-tree KernelExplainer by @tylerjereddy in #3944
Fixed
- Fix logit errors in KernelExplainer by @CloseChoice in #3917
- Fix TypeError in summary_plot by @bedapisl in #3738
- Re-vendor colorconv from skimage 0.24.0 by @connortann in #3785
- Fix label option for multiple rows in shap.plots.image by @SFatemehM in #3636
- Fix transformers by @costrau in #3578
- Fix OpChain repr for kwargs-only operations by @thatlittleboy in #3838
- Fix the wrong figure for multiclass in summary plot by @46319943 in #3836
- Fix summary plot issue for multiclass case by @CloseChoice in #3925
- Fix colormaps by @CloseChoice in #3909
Documentation
- Fixed error in documentation of shap.datasets.communitiesandcrime by @TommyGiak in #3846
- Fix column indices in Understanding Tree SHAP notebook by @operte in #3749
- Reformat the scatter notebook in API example by @Xovee in #3752
- Improved typing and docs for scatter plot by @connortann in #3811
- Use intersphinx for some external links by @thatlittleboy in #3851
- Pin docs dependencies for reproducibility by @connortann in #3885
- Fix typo in force plot with LightGBM and description by @davidefiocco in #3962
- Fix: fixed markdown issue with some sections title in the introductio… by @CSantos01 in #3957
- Fix comment for beeswarm plot in intro notebook by @davidefiocco in #3960
Maintenance
- Fix: explicitly set matplotlib interpolation rcParams in tests by @connortann in #3953
Other Changes
- Skip sentiment analysis test on MacOS runners by @connortann in #3955
- Remove deprecated unused code
_build_delta_masked_inputs
andExplainer._compute_main_effects
by @connortann in #3856 - Improve handling of the
approximate
parameter to TreeExplainer for consistency, and deprecate the argument in the explainer's init method by @CloseChoice in #3834 - Refactor feature_perturbation in Tree explainers by @glemaitre in #2624
- Test decision plot by @CloseChoice in #3720
- Bump ruff, fix rule E721 by @connortann in #3751
- Refactor plot utils and colors by @thatlittleboy in #3833
- Refactor and optimize explanation ops by @thatlittleboy in #3850
- Fix CI feedstock build by @CloseChoice in #3862
- Add error to multi output cohort call by @CloseChoice in #3870
- Fix typo in beeswarm.ipynb by @kamurani in #3900
- DeepExplainer docstring improvements by @anitagraser in #3892
- Clear plot before generating new summary plots to avoid overlapping color bars by @chun61205 in #3921
- Support rng for summary_plot by @tylerjereddy in #3945
- Minor speedups in non-tree KernelExplainer by @tylerjereddy in #3983
New Contributors
- @bedapisl made their first contribution in #3738
- @operte made their first contribution in #3749
- @Xovee made their first contribution in #3752
- @hypostulate made their first contribution in #3706
- @SFatemehM made their first contribution in #3636
- @sd3ntato made their first contribution in #2848
- @chriscave made their first contribution in #3561
- @kalkairis made their first contribution in #2225
- @TommyGiak made their first contribution in #3846
- @46319943 made their first contribution in #3836
- @kamurani made their first contribution in #3900
- @anitagraser made their first contribution in #3892
- @chun61205 made their first contribution in #3921
- @davidefiocco made their first contribution in #3962
- @CSantos01 made their first contribution in #3957
- @Fredheda made their first contribution in #3984
- @tylerjereddy made their first contribution in #3945
Full Changelog: v0.46.0...v0.47.0