mirror of
https://github.com/Doctorado-ML/benchmark.git
synced 2025-08-17 16:35:54 +00:00
64 lines
1.3 KiB
Python
64 lines
1.3 KiB
Python
import argparse
|
|
from Results import Summary
|
|
from Utils import EnvDefault
|
|
|
|
|
|
def parse_arguments():
|
|
ap = argparse.ArgumentParser()
|
|
ap.add_argument(
|
|
"-m",
|
|
"--model",
|
|
type=str,
|
|
action=EnvDefault,
|
|
envvar="model",
|
|
required=True,
|
|
help="model name",
|
|
)
|
|
ap.add_argument(
|
|
"-s",
|
|
"--score",
|
|
type=str,
|
|
action=EnvDefault,
|
|
envvar="score",
|
|
required=True,
|
|
help="score name {accuracy, f1_micro, f1_macro, all}",
|
|
)
|
|
ap.add_argument(
|
|
"-l",
|
|
"--list",
|
|
type=bool,
|
|
required=False,
|
|
default=False,
|
|
help="List all results",
|
|
)
|
|
args = ap.parse_args()
|
|
return (
|
|
args.score,
|
|
args.model,
|
|
args.list,
|
|
)
|
|
|
|
|
|
(
|
|
score,
|
|
model,
|
|
list_results,
|
|
) = parse_arguments()
|
|
|
|
all_metrics = ["accuracy", "f1-macro", "f1-micro"]
|
|
|
|
metrics = all_metrics if score == "all" else [score]
|
|
|
|
summary = Summary()
|
|
summary.acquire()
|
|
|
|
for metric in metrics:
|
|
title = f"BEST RESULT of {metric} for {model}"
|
|
best = summary.best_result(criterion="model", value=model, score=metric)
|
|
summary.show_result(data=best, title=title)
|
|
summary.show_result(
|
|
summary.best_result(score=metric), title=f"BEST RESULT of {metric}"
|
|
)
|
|
if list_results:
|
|
summary.list()
|