Skip to content

Commit

Permalink
Bugfix: Correct call of method SklearnCounterfactual.__build_result_dict
Browse files Browse the repository at this point in the history
  • Loading branch information
andreArtelt committed May 8, 2020
1 parent bc6c0b4 commit 3b72e36
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 6 deletions.
5 changes: 4 additions & 1 deletion ceml/sklearn/lda.py
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,10 @@ def solve(self, x_orig, y_target, regularization, features_whitelist, return_as_
if self.model.predict([xcf]) != y_target:
raise Exception("No counterfactual found - Consider changing parameters 'regularization', 'features_whitelist', 'optimizer' and try again")

return self.__build_result_dict(xcf, y_target, delta) if return_as_dict else xcf, y_target, delta
if return_as_dict is True:
return self._SklearnCounterfactual__build_result_dict(xcf, y_target, delta)
else:
return xcf, y_target, delta


def lda_generate_counterfactual(model, x, y_target, features_whitelist=None, regularization="l1", C=1.0, optimizer="mp", return_as_dict=True, done=None):
Expand Down
5 changes: 4 additions & 1 deletion ceml/sklearn/linearregression.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,10 @@ def solve(self, x_orig, y_target, regularization, features_whitelist, return_as_
delta = x_orig - xcf
y_cf = self.model.predict([xcf])

return self.__build_result_dict(xcf, y_target, delta) if return_as_dict else xcf, y_cf, delta
if return_as_dict is True:
return self._SklearnCounterfactual__build_result_dict(xcf, y_target, delta)
else:
return xcf, y_target, delta


def linearregression_generate_counterfactual(model, x, y_target, features_whitelist=None, regularization="l1", C=1.0, optimizer="mp", return_as_dict=True, done=None):
Expand Down
5 changes: 4 additions & 1 deletion ceml/sklearn/lvq.py
Original file line number Diff line number Diff line change
Expand Up @@ -334,7 +334,10 @@ def solve(self, x_orig, y_target, regularization, features_whitelist, return_as_
if self.model.predict([xcf]) != y_target:
raise Exception("No counterfactual found - Consider changing parameters 'regularization', 'features_whitelist', 'optimizer' and try again")

return self.__build_result_dict(xcf, y_target, delta) if return_as_dict else xcf, y_target, delta
if return_as_dict is True:
return self._SklearnCounterfactual__build_result_dict(xcf, y_target, delta)
else:
return xcf, y_target, delta


def lvq_generate_counterfactual(model, x, y_target, features_whitelist=None, dist="l2", regularization="l1", C=1.0, optimizer="auto", return_as_dict=True, done=None):
Expand Down
5 changes: 4 additions & 1 deletion ceml/sklearn/naivebayes.py
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,10 @@ def solve(self, x_orig, y_target, regularization, features_whitelist, return_as_
if self.model.predict([xcf]) != y_target:
raise Exception("No counterfactual found - Consider changing parameters 'regularization', 'features_whitelist', 'optimizer' and try again")

return self.__build_result_dict(xcf, y_target, delta) if return_as_dict else xcf, y_target, delta
if return_as_dict is True:
return self._SklearnCounterfactual__build_result_dict(xcf, y_target, delta)
else:
return xcf, y_target, delta


def gaussiannb_generate_counterfactual(model, x, y_target, features_whitelist=None, regularization="l1", C=1.0, optimizer="auto", return_as_dict=True, done=None):
Expand Down
5 changes: 4 additions & 1 deletion ceml/sklearn/qda.py
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,10 @@ def solve(self, x_orig, y_target, regularization, features_whitelist, return_as_
if self.model.predict([xcf]) != y_target:
raise Exception("No counterfactual found - Consider changing parameters 'regularization', 'features_whitelist', 'optimizer' and try again")

return self.__build_result_dict(xcf, y_target, delta) if return_as_dict else xcf, y_target, delta
if return_as_dict is True:
return self._SklearnCounterfactual__build_result_dict(xcf, y_target, delta)
else:
return xcf, y_target, delta


def qda_generate_counterfactual(model, x, y_target, features_whitelist=None, regularization="l1", C=1.0, optimizer="auto", return_as_dict=True, done=None):
Expand Down
5 changes: 4 additions & 1 deletion ceml/sklearn/softmaxregression.py
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,10 @@ def solve(self, x_orig, y_target, regularization, features_whitelist, return_as_
if self.model.predict([xcf]) != y_target:
raise Exception("No counterfactual found - Consider changing parameters 'regularization', 'features_whitelist', 'optimizer' and try again")

return self.__build_result_dict(xcf, y_target, delta) if return_as_dict else xcf, y_target, delta
if return_as_dict is True:
return self._SklearnCounterfactual__build_result_dict(xcf, y_target, delta)
else:
return xcf, y_target, delta


def softmaxregression_generate_counterfactual(model, x, y_target, features_whitelist=None, regularization="l1", C=1.0, optimizer="mp", return_as_dict=True, done=None):
Expand Down

0 comments on commit 3b72e36

Please sign in to comment.