Example #1
0
 def test_calibrated_eq_odds_postprocessing_pd_cat(self):
     fairness_info = self.creditg_pd_cat["fairness_info"]
     estim = self.prep_pd_cat >> LogisticRegression(max_iter=1000)
     trainable_remi = CalibratedEqOddsPostprocessing(
         **fairness_info, estimator=estim
     )
     self._attempt_remi_creditg_pd_cat(fairness_info, trainable_remi, 0.65, 0.85)
Example #2
0
 def test_stacking_post_estimator_mitigation_base_and_final(self):
     model = StackingClassifier(
         estimators=[
             (
                 "dtc+ceop",
                 CalibratedEqOddsPostprocessing(
                     **self.fairness_info,
                     estimator=DecisionTreeClassifier()),
             ),
             ("lr", LogisticRegression()),
         ],
         final_estimator=CalibratedEqOddsPostprocessing(
             **self.fairness_info, estimator=DecisionTreeClassifier()),
         passthrough=True,
     )
     self._attempt_fit_predict(model)
Example #3
0
 def test_bagging_post_estimator_mitigation_base(self):
     model = BaggingClassifier(
         base_estimator=CalibratedEqOddsPostprocessing(
             **self.fairness_info, estimator=DecisionTreeClassifier()
         )
     )
     self._attempt_fit_predict(model)
Example #4
0
 def test_stacking_post_estimator_mitigation_ensemble(self):
     model = CalibratedEqOddsPostprocessing(
         **self.fairness_info,
         estimator=StackingClassifier(estimators=[
             ("dtc", DecisionTreeClassifier()),
             ("lr", LogisticRegression()),
         ]))
     self._attempt_fit_predict(model)
Example #5
0
 def test_voting_post_estimator_mitigation_base(self):
     model = VotingClassifier(estimators=[
         (
             "dtc+ceop",
             CalibratedEqOddsPostprocessing(
                 **self.fairness_info, estimator=DecisionTreeClassifier()),
         ),
         ("lr", LogisticRegression()),
     ])
     self._attempt_fit_predict(model)
Example #6
0
 def test_adaboost_post_estimator_mitigation_ensemble(self):
     model = CalibratedEqOddsPostprocessing(
         **self.fairness_info,
         estimator=AdaBoostClassifier(
             base_estimator=DecisionTreeClassifier()))
     self._attempt_fit_predict(model)