Fix be_print_strees issues

This commit is contained in:
2022-05-09 16:27:37 +02:00
parent e45ef1c9fa
commit a649efde73
3 changed files with 12 additions and 90 deletions

View File

@@ -16,13 +16,13 @@ def load_hyperparams(score_name, model_name):
return json.load(f)
# def hyperparam_filter(hyperparams):
# res = {}
# for key, value in hyperparams.items():
# if key.startswith("base_estimator"):
# newkey = key.split("__")[1]
# res[newkey] = value
# return res
def hyperparam_filter(hyperparams):
res = {}
for key, value in hyperparams.items():
if key.startswith("base_estimator"):
newkey = key.split("__")[1]
res[newkey] = value
return res
def build_title(dataset, accuracy, n_samples, n_features, n_classes, nodes):
@@ -76,14 +76,16 @@ def main(args_test=None):
arguments = Arguments()
arguments.xset("color").xset("dataset", default="all").xset("quiet")
args = arguments.parse(args_test)
hyperparameters = load_hyperparams("accuracy", "STree")
hyperparameters = load_hyperparams("accuracy", "ODTE")
random_state = 57
dt = Datasets()
for dataset in dt:
if dataset == args.dataset or args.dataset == "all":
X, y = dt.load(dataset)
clf = Stree(random_state=random_state)
hyperparams_dataset = hyperparameters[dataset][1]
hyperparams_dataset = hyperparam_filter(
hyperparameters[dataset][1]
)
clf.set_params(**hyperparams_dataset)
clf.fit(X, y)
print_stree(clf, dataset, X, y, args.color, args.quiet)