From f9c26056030d0ffd75c3b47f0469bdc5db267e14 Mon Sep 17 00:00:00 2001 From: Jim Martens Date: Mon, 2 Sep 2019 10:58:06 +0200 Subject: [PATCH] Simplified evaluate get results function Signed-off-by: Jim Martens --- src/twomartens/masterthesis/cli.py | 83 +++++++++--------------------- 1 file changed, 23 insertions(+), 60 deletions(-) diff --git a/src/twomartens/masterthesis/cli.py b/src/twomartens/masterthesis/cli.py index eb98f6a..a0eee81 100644 --- a/src/twomartens/masterthesis/cli.py +++ b/src/twomartens/masterthesis/cli.py @@ -393,25 +393,25 @@ def _ssd_evaluate_entropy_loop(use_entropy_threshold: bool, entropy_threshold_mi average_precisions = evaluate.get_mean_average_precisions(cum_precisions, cum_recalls, nr_classes) mean_average_precision = evaluate.get_mean_average_precision(average_precisions) - results = _ssd_evaluate_get_results(true_positives, - false_positives, - cum_true_positives, - cum_false_positives, - cum_true_positives_overall, - cum_false_positives_overall, - cum_precisions, - cum_recalls, - cum_precisions_micro, - cum_recalls_micro, - cum_precisions_macro, - cum_recalls_macro, - f1_scores, - f1_scores_micro, - f1_scores_macro, - average_precisions, - mean_average_precision, - open_set_error, - cumulative_open_set_error) + results = _ssd_evaluate_get_results(true_positives=true_positives, + false_positives=false_positives, + cum_true_positives=cum_true_positives, + cum_false_positives=cum_false_positives, + cum_true_positives_overall=cum_true_positives_overall, + cum_false_positives_overall=cum_false_positives_overall, + cum_precisions=cum_precisions, + cum_recalls=cum_recalls, + cum_precisions_micro=cum_precisions_micro, + cum_recalls_micro=cum_recalls_micro, + cum_precisions_macro=cum_precisions_macro, + cum_recalls_macro=cum_recalls_macro, + f1_scores=f1_scores, + f1_scores_micro=f1_scores_micro, + f1_scores_macro=f1_scores_macro, + average_precisions=average_precisions, + mean_average_precision=mean_average_precision, + open_set_error=open_set_error, + cumulative_open_set_error=cumulative_open_set_error) _pickle(f"{result_file}-{entropy_threshold}.bin" if use_entropy_threshold else f"{result_file}.bin", results) @@ -1026,47 +1026,10 @@ def _ssd_save_history(summary_path: str, history: tf.keras.callbacks.History) -> pickle.dump(history.history, file) -def _ssd_evaluate_get_results(true_positives: Sequence[np.ndarray], - false_positives: Sequence[np.ndarray], - cum_true_positives: Sequence[np.ndarray], - cum_false_positives: Sequence[np.ndarray], - cum_true_positives_micro: np.ndarray, - cum_false_positives_micro: np.ndarray, - cum_precisions: Sequence[np.ndarray], - cum_recalls: Sequence[np.ndarray], - cum_precision_micro: np.ndarray, - cum_recall_micro: np.ndarray, - cum_precision_macro: np.ndarray, - cum_recall_macro: np.ndarray, - f1_scores: Sequence[np.ndarray], - f1_scores_micro: np.ndarray, - f1_scores_macro: np.ndarray, - average_precisions: Sequence[float], - mean_average_precision: float, - open_set_error: np.ndarray, - cumulative_open_set_error: np.ndarray - ) -> Dict[str, Union[np.ndarray, float, int]]: - results = { - "true_positives": true_positives, - "false_positives": false_positives, - "cumulative_true_positives": cum_true_positives, - "cumulative_false_positives": cum_false_positives, - "cumulative_true_positives_micro": cum_true_positives_micro, - "cumulative_false_positives_micro": cum_false_positives_micro, - "cumulative_precisions": cum_precisions, - "cumulative_recalls": cum_recalls, - "cumulative_precision_micro": cum_precision_micro, - "cumulative_recall_micro": cum_recall_micro, - "cumulative_precision_macro": cum_precision_macro, - "cumulative_recall_macro": cum_recall_macro, - "f1_scores": f1_scores, - "f1_scores_micro": f1_scores_micro, - "f1_scores_macro": f1_scores_macro, - "mean_average_precisions": average_precisions, - "mean_average_precision": mean_average_precision, - "open_set_error": open_set_error, - "cumulative_open_set_error": cumulative_open_set_error - } +def _ssd_evaluate_get_results(**kwargs) -> Dict[str, Union[np.ndarray, float, int]]: + results = {} + for key in kwargs: + results[key] = kwargs[key] return results