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

WIP: Counterfactual instances #78

Merged
merged 58 commits into from
May 24, 2019
Merged

WIP: Counterfactual instances #78

merged 58 commits into from
May 24, 2019

Conversation

jklaise
Copy link
Member

@jklaise jklaise commented May 10, 2019

No description provided.

@jklaise jklaise requested review from arnaudvl and gipster May 10, 2019 11:59
@jklaise jklaise mentioned this pull request May 10, 2019
12 tasks
@jklaise
Copy link
Member Author

jklaise commented May 10, 2019

This pull request will implement an improved counterfactual search algorithm based on Wachter et al. (2017).

TODO:

  • Incorporate distance loss into the TF graph for speed
  • Support TF and Keras models by directly back-propagating through to get prediction gradients (requires TF version of sorting and getting the highest non-test class probability for target_class=other)
  • Fix bug in learning rate scheduling (global step updating but learning rate is constant)
  • Optimize search speed / sensible hyperparameter choices

Optional:

  • Use FISTA for optimization
  • Optional .fit method if training set is available - scale distance by MADs (use functools.partial to make it a 2-argument distance)
  • Option to offer different losses instead of L1

@jklaise jklaise changed the title WIP: Counterfactual WIP: Counterfactual examples May 10, 2019
@jklaise jklaise changed the title WIP: Counterfactual examples WIP: Counterfactual instances May 10, 2019
@jklaise
Copy link
Member Author

jklaise commented May 17, 2019

One more thing to fix in the core algorithm - there seems to be an off-by-one error in the outer loop where lambda reaches values where it has no hope of finding a solution.

@jklaise jklaise merged commit a652f0d into master May 24, 2019
@jklaise jklaise mentioned this pull request May 24, 2019
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.

None yet

2 participants