alibi icon indicating copy to clipboard operation
alibi copied to clipboard

Additional SHAP explainers

Open Muennighoff opened this issue 1 year ago • 1 comments

Hey great library! Why do you not support additional SHAP explainers such as GPUTreeExplainer, DeepExplainer, GradientExplainer or LinearExplainer?

Muennighoff avatar Sep 11 '22 14:09 Muennighoff

Hey, good questions!

We did explore adding GPUTreeExplainer support, but it turned out that the source distribution on PyPI doesn't contain the cuda source files, leading to build failure, see also this issue. On the other hand I see that since version 0.40.0 they are providing manylinux wheels on PyPI so the issue might be mitigated.

The main benefits for using alibi wrappers for KernelShap and TreeShap instead of the shap library directly is easier handling of categorical variables, see here. For the other explainers you mentioned I would suggest using the shap library directly as we haven't seen a benefit for writing wrappers for these in alibi. (Do note that GradientExplainer in the shap library is actually Expected Integrated Gradients).

In any case we would be keen to know more about your use cases and perhaps we can look into supporting these in the future (either via a simple wrapper or looking at our own implementation if relevant).

jklaise avatar Sep 12 '22 09:09 jklaise