diff --git a/apt/minimization/minimizer.py b/apt/minimization/minimizer.py index 1d53932..9acd1b8 100644 --- a/apt/minimization/minimizer.py +++ b/apt/minimization/minimizer.py @@ -16,7 +16,7 @@ from sklearn.tree import DecisionTreeClassifier, DecisionTreeRegressor from sklearn.model_selection import train_test_split from apt.utils.datasets import ArrayDataset, DATA_PANDAS_NUMPY_TYPE -from apt.utils.models import Model, SklearnRegressor, ModelOutputType, SklearnClassifier, \ +from apt.utils.models import Model, SklearnRegressor, SklearnClassifier, \ CLASSIFIER_SINGLE_OUTPUT_CLASS_PROBABILITIES diff --git a/apt/utils/models/model.py b/apt/utils/models/model.py index 3e9ca33..8c03301 100644 --- a/apt/utils/models/model.py +++ b/apt/utils/models/model.py @@ -25,7 +25,7 @@ class ModelOutputType(Flag): CLASSIFIER_SINGLE_OUTPUT_CATEGORICAL = ModelOutputType.CLASSIFIER # single binary probability CLASSIFIER_SINGLE_OUTPUT_BINARY_PROBABILITIES = ModelOutputType.CLASSIFIER | ModelOutputType.BINARY | \ - ModelOutputType.PROBABILITIES + ModelOutputType.PROBABILITIES # vector of class probabilities CLASSIFIER_SINGLE_OUTPUT_CLASS_PROBABILITIES = ModelOutputType.CLASSIFIER | ModelOutputType.PROBABILITIES # single binary logit @@ -36,16 +36,16 @@ CLASSIFIER_SINGLE_OUTPUT_CLASS_LOGITS = ModelOutputType.CLASSIFIER | ModelOutput CLASSIFIER_MULTI_OUTPUT_CATEGORICAL = ModelOutputType.MULTI_OUTPUT | ModelOutputType.CLASSIFIER # vector of binary probabilities, 1 per output CLASSIFIER_MULTI_OUTPUT_BINARY_PROBABILITIES = ModelOutputType.MULTI_OUTPUT | ModelOutputType.CLASSIFIER | \ - ModelOutputType.BINARY | ModelOutputType.PROBABILITIES + ModelOutputType.BINARY | ModelOutputType.PROBABILITIES # vector of class probabilities for multiple outputs CLASSIFIER_MULTI_OUTPUT_CLASS_PROBABILITIES = ModelOutputType.MULTI_OUTPUT | ModelOutputType.CLASSIFIER | \ - ModelOutputType.PROBABILITIES + ModelOutputType.PROBABILITIES # vector of binary logits CLASSIFIER_MULTI_OUTPUT_BINARY_LOGITS = ModelOutputType.MULTI_OUTPUT | ModelOutputType.CLASSIFIER | \ - ModelOutputType.BINARY | ModelOutputType.LOGITS + ModelOutputType.BINARY | ModelOutputType.LOGITS # vector of logits for multiple outputs CLASSIFIER_MULTI_OUTPUT_CLASS_LOGITS = ModelOutputType.MULTI_OUTPUT | ModelOutputType.CLASSIFIER | \ - ModelOutputType.LOGITS + ModelOutputType.LOGITS class ModelType(Enum): @@ -79,9 +79,9 @@ def is_binary(output_type: ModelOutputType) -> bool: def is_categorical(output_type: ModelOutputType) -> bool: return (ModelOutputType.CLASSIFIER in output_type - and not ModelOutputType.BINARY in output_type - and not ModelOutputType.PROBABILITIES in output_type - and not ModelOutputType.LOGITS in output_type) + and ModelOutputType.BINARY not in output_type + and ModelOutputType.PROBABILITIES not in output_type + and ModelOutputType.LOGITS not in output_type) def is_probabilities(output_type: ModelOutputType) -> bool: diff --git a/tests/test_model.py b/tests/test_model.py index 0667b7a..dbfadb2 100644 --- a/tests/test_model.py +++ b/tests/test_model.py @@ -3,11 +3,9 @@ import numpy as np from apt.utils.models import SklearnClassifier, SklearnRegressor, ModelOutputType, KerasClassifier, KerasRegressor, \ BlackboxClassifierPredictions, BlackboxClassifierPredictFunction, is_one_hot, get_nb_classes, XGBoostClassifier, \ - CLASSIFIER_SINGLE_OUTPUT_CATEGORICAL, CLASSIFIER_SINGLE_OUTPUT_BINARY_PROBABILITIES, \ - CLASSIFIER_SINGLE_OUTPUT_CLASS_PROBABILITIES, CLASSIFIER_SINGLE_OUTPUT_BINARY_LOGITS, \ - CLASSIFIER_SINGLE_OUTPUT_CLASS_LOGITS, CLASSIFIER_MULTI_OUTPUT_CATEGORICAL, \ - CLASSIFIER_MULTI_OUTPUT_BINARY_PROBABILITIES, CLASSIFIER_MULTI_OUTPUT_CLASS_PROBABILITIES, \ - CLASSIFIER_MULTI_OUTPUT_BINARY_LOGITS, CLASSIFIER_MULTI_OUTPUT_CLASS_LOGITS + CLASSIFIER_SINGLE_OUTPUT_CATEGORICAL, CLASSIFIER_SINGLE_OUTPUT_CLASS_PROBABILITIES, \ + CLASSIFIER_MULTI_OUTPUT_CATEGORICAL, CLASSIFIER_MULTI_OUTPUT_BINARY_PROBABILITIES, \ + CLASSIFIER_MULTI_OUTPUT_CLASS_PROBABILITIES from apt.utils.datasets import ArrayDataset, Data, DatasetWithPredictions from apt.utils import dataset_utils