-
Notifications
You must be signed in to change notification settings - Fork 35
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
Adding the VAEAC approach #369
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed all comments
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good. Will just run a few test locally, before we merge. Seems that you fixed a typo with another typo. You can just click accept on these and the code will be updated directly on github.
bash is not default on windows, so was not used before, see: https://dev.to/pwd9000/github-actions-all-the-shells-581h
Co-authored-by: Martin Jullum <[email protected]>
Co-authored-by: Martin Jullum <[email protected]>
In this pull request, we add the
vaeac
(variational autoencoder with arbitrary conditioning) approach for estimating the conditional Shapley values. Thevaeac
approach allows for imputing missing values for arbitrary coalitions using a single variational autoencoder. Additionally, the approach supports mixed data. Finally, we have implemented the approach in torch for R.The
vaeac
approach was introduced by Olsen et al. (2022), but they only provided a python implementation built on top of theshapr
package.Key points in this pull request are the following:
vaeac
methodology in nativetorch
in R.vaeac
approach into theshapr
package as an additional method that supports mixed data.verbose
level toshapr
, which allows the user to specify the degree of messages that will be given. This is in addition to progressr's progress bar.vaeac
model toexplain()
and for continuing to train thevaeac
model for additional epochs if a user is unsatisfied with the accuracy.vaeac
approach.plot_SV_several_approaches()
, which allows us to plot and compare several Shapley value explanations for the same explicands simultaneously.vaeac
approach to demonstrate its capabilities and how to use it, in addition to some extra sections/paragraphs in the main vignette.