|
1 | 1 | """ |
2 | 2 | Changelog: |
3 | 3 | ========== |
| 4 | +0.0.2: |
| 5 | +* Change the objective value from accuracy to misclassification rate. (1 - accuracy) |
4 | 6 |
|
5 | 7 | 0.0.1: |
6 | 8 | * First implementation of the Multi-Objective Fair Adult Benchmark. |
@@ -127,7 +129,7 @@ def get_meta_information() -> Dict: |
127 | 129 | @staticmethod |
128 | 130 | def get_objective_names() -> List[str]: |
129 | 131 | """Get a list of objectives evaluated in the objective_function. """ |
130 | | - return ['accuracy', 'DSP', 'DEO', 'DFP'] |
| 132 | + return ['misclassification_rate', 'DSP', 'DEO', 'DFP'] |
131 | 133 |
|
132 | 134 | @AbstractMultiObjectiveBenchmark.check_parameters |
133 | 135 | def objective_function(self, configuration: Union[CS.Configuration, Dict], |
@@ -165,7 +167,7 @@ def objective_function(self, configuration: Union[CS.Configuration, Dict], |
165 | 167 | ------- |
166 | 168 | Dict - |
167 | 169 | function_value : Dict - validation metrics after training on train |
168 | | - accuracy: float |
| 170 | + misclassification_rate: float: 1 - validation accuracy |
169 | 171 | DSO: float |
170 | 172 | DEO: float |
171 | 173 | DFP: float |
@@ -247,7 +249,7 @@ def objective_function(self, configuration: Union[CS.Configuration, Dict], |
247 | 249 |
|
248 | 250 | elapsed_time = time.time() - ts_start |
249 | 251 |
|
250 | | - return {'function_value': {'accuracy': float(val_accuracy), |
| 252 | + return {'function_value': {'misclassification_rate': 1 - float(val_accuracy), |
251 | 253 | 'DSO': float(val_statistical_disparity), |
252 | 254 | 'DEO': float(val_unequal_opportunity), |
253 | 255 | 'DFP': float(val_unequalized_odds) |
@@ -310,7 +312,7 @@ def objective_function_test(self, configuration: Union[CS.Configuration, Dict], |
310 | 312 | ------- |
311 | 313 | Dict - |
312 | 314 | function_value : Dict - test metrics reported after training on (train+valid) |
313 | | - accuracy: float |
| 315 | + misclassification_rate: float: 1 - test accuracy |
314 | 316 | DSO: float |
315 | 317 | DEO: float |
316 | 318 | DFP: float |
@@ -381,7 +383,7 @@ def objective_function_test(self, configuration: Union[CS.Configuration, Dict], |
381 | 383 | logger.debug(f"config:{configuration}, test_score: {test_accuracy}, train score:{train_accuracy}," |
382 | 384 | f"dsp:{test_statistical_disparity}, deo :{test_unequal_opportunity}, dfp :{test_unequalized_odds}") |
383 | 385 |
|
384 | | - return {'function_value': {'accuracy': float(test_accuracy), |
| 386 | + return {'function_value': {'misclassification_rate': 1 - float(test_accuracy), |
385 | 387 | 'DSO': float(test_statistical_disparity), |
386 | 388 | 'DEO': float(test_unequal_opportunity), |
387 | 389 | 'DFP': float(test_unequalized_odds) |
|
0 commit comments