- adds a
class_index
parameter toTabularExplainer
andExplainer
to specify the class index to be explained for classification models #271 (renamesclass_label
parameter in TreeExplainer toclass_index
) - adds support for
PyTorch
models toExplainer
#272
- fixes a bug that
RandomForestClassifier
models were not working with theTreeExplainer
#273
- adds computation of the Egalitarian Core (
EC
) and Egalitarian Least-Core (ELC
) to theExactComputer
#182 - adds
waterfall_plot
#34 that visualizes the contributions of features to the model prediction - adds
BaselineImputer
#107 which is now responsible for handling thesample_replacements
parameter. Added a DeprecationWarning for the parameter inMarginalImputer
, which will be removed in the next release. - adds
joint_marginal_distribution
parameter toMarginalImputer
with default valueTrue
#261 - renames explanation graph to
si_graph
get_n_order
now has optional lower/upper limits for the order- computing metrics for benchmarking now tries to resolve not-matching interaction indices and will throw a warning instead of a ValueError #179
- add a legend to benchmark plots #170
- refactored the
shapiq.games.benchmark
module into a separateshapiq.benchmark
module by moving all but the benchmark games into the new module. This closes #169 and makes benchmarking more flexible and convenient. - a
shapiq.Game
can now be called more intuitively with coalitions data types (tuples of int or str) and also allows to addplayer_names
to the game at initialization #183 - improve tests across the package
- adds a notebook showing how to use custom tree models with the
TreeExplainer
#66 - adds a notebook show how to use the
shapiq.Game
API to create custom games #184 - adds a notebook showing hot to visualize interactions #252
- adds a notebook showing how to compute Shapley values with
shapiq
#193 - adds a notebook for conducting data valuation #190
- adds a notebook showcasing introducing the Core and how to compute it with
shapiq
#191
- fixes a bug with SIs not adding up to the model prediction because of wrong values in the empty set #264
- fixes a bug that
TreeExplainer
did not have the correct baseline_value when using XGBoost models #250 - fixes the force plot not showing and its baseline value
- add
max_order=1
toTabularExplainer
andTreeExplainer
- fix
TreeExplainer.explain_X(..., n_jobs=2, random_state=0)
Major release of the shapiq
Python package including (among others):
approximator
module implements over 10 approximators of Shapley values and interaction indices.exact
module implements a computer for over 10 game theoretic concepts like interaction indices or generalized values.games
module implements over 10 application benchmarks for the approximators.explainer
module includes aTabularExplainer
andTreeExplainer
for any-order feature interactions of machine learning model predictions.interaction_values
module implements a data class to store and analyze interaction values.plot
module allows visualizing interaction values.datasets
module loads datasets for testing and examples.
Documentation of shapiq
with tutorials and API reference is available at https://shapiq.readthedocs.io