Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/shap utils #391

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
Open

Conversation

Alex6022
Copy link

@Alex6022 Alex6022 commented Oct 4, 2024

Dear @Scienfitz and @AdrianSosic,

As you previously offered in PR #335, I have taken a shot at integrating SHAP analysis amongst other explainers provided by the SHAP package. Similar to the Polars integration, it is provided as an optional dependency. As suggested, I have included tests, ensured it works with hybrid spaces and molecular encodings, implemented it as another utility and decoupled the computation and plotting methods. It also uses the exposed surrogate implemented in PR #355.

The Explanation object provided by the SHAP package can be created through
shap_kern = explanation(campaign)

This object can then be passed to the plotting functions wrapped from the SHAP package:
plot_beeswarm(shap_kern)

Additionally, this implementation allows users to selected whether to use the computational or experimental representation of the search space. E.g., while the experimental representation can give a good overview of the important parameters:
image

, the computational representation can give more advanced users the option to understand which encodings specifically predict the target:
image

Please let me know if you have any further input for improving this. Looking forward to it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant