mirror of
https://github.com/Doctorado-ML/benchmark.git
synced 2025-08-17 08:25:53 +00:00
Add Excel tests
This commit is contained in:
@@ -348,10 +348,12 @@ class GridSearch:
|
|||||||
platform,
|
platform,
|
||||||
progress_bar=True,
|
progress_bar=True,
|
||||||
folds=5,
|
folds=5,
|
||||||
|
test=False,
|
||||||
):
|
):
|
||||||
today = datetime.now()
|
today = datetime.now()
|
||||||
self.time = today.strftime("%H:%M:%S")
|
self.test = test
|
||||||
self.date = today.strftime("%Y-%m-%d")
|
self.time = "12:00:00" if test else today.strftime("%H:%M:%S")
|
||||||
|
self.date = "2022-02-22" if test else today.strftime("%Y-%m-%d")
|
||||||
self.output_file = os.path.join(
|
self.output_file = os.path.join(
|
||||||
Folders.results,
|
Folders.results,
|
||||||
Files.grid_output(
|
Files.grid_output(
|
||||||
@@ -412,7 +414,7 @@ class GridSearch:
|
|||||||
return f"{duration/3600:.3f}h"
|
return f"{duration/3600:.3f}h"
|
||||||
|
|
||||||
def _store_result(self, name, grid, duration):
|
def _store_result(self, name, grid, duration):
|
||||||
d_message = self._duration_message(duration)
|
d_message = "1s" if self.test else self._duration_message(duration)
|
||||||
message = (
|
message = (
|
||||||
f"v. {self.version}, Computed on {self.platform} on "
|
f"v. {self.version}, Computed on {self.platform} on "
|
||||||
f"{self.date} at {self.time} "
|
f"{self.date} at {self.time} "
|
||||||
|
@@ -18,8 +18,8 @@ class BaseReport(abc.ABC):
|
|||||||
if not os.path.isfile(os.path.join(Folders.results, file_name)):
|
if not os.path.isfile(os.path.join(Folders.results, file_name)):
|
||||||
raise FileNotFoundError(f"{file_name} does not exists!")
|
raise FileNotFoundError(f"{file_name} does not exists!")
|
||||||
else:
|
else:
|
||||||
file_name = os.path.join(Folders.results, file_name)
|
self.file_name = os.path.join(Folders.results, file_name)
|
||||||
with open(file_name) as f:
|
with open(self.file_name) as f:
|
||||||
self.data = json.load(f)
|
self.data = json.load(f)
|
||||||
self.best_acc_file = best_file
|
self.best_acc_file = best_file
|
||||||
self.lines = self.data if best_file else self.data["results"]
|
self.lines = self.data if best_file else self.data["results"]
|
||||||
@@ -205,7 +205,6 @@ class ReportBest(BaseReport):
|
|||||||
self.grid = grid
|
self.grid = grid
|
||||||
file_name = os.path.join(Folders.results, name)
|
file_name = os.path.join(Folders.results, name)
|
||||||
super().__init__(file_name, best_file=True)
|
super().__init__(file_name, best_file=True)
|
||||||
self.compare = False
|
|
||||||
self.score_name = score
|
self.score_name = score
|
||||||
self.model = model
|
self.model = model
|
||||||
|
|
||||||
@@ -246,11 +245,6 @@ class ReportBest(BaseReport):
|
|||||||
|
|
||||||
def footer(self, accuracy):
|
def footer(self, accuracy):
|
||||||
self.header_line("*")
|
self.header_line("*")
|
||||||
if self.compare:
|
|
||||||
for key, value in self._compare_totals.items():
|
|
||||||
self.header_line(
|
|
||||||
f" {key} {self._status_meaning(key)} .....: {value:2d}"
|
|
||||||
)
|
|
||||||
self.header_line(
|
self.header_line(
|
||||||
f" Scores compared to stree_default accuracy (liblinear-ovr) .: "
|
f" Scores compared to stree_default accuracy (liblinear-ovr) .: "
|
||||||
f"{accuracy/BEST_ACCURACY_STREE:7.4f}"
|
f"{accuracy/BEST_ACCURACY_STREE:7.4f}"
|
||||||
|
81
benchmark/tests/Excel_test.py
Normal file
81
benchmark/tests/Excel_test.py
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
import os
|
||||||
|
import csv
|
||||||
|
import unittest
|
||||||
|
from openpyxl import load_workbook
|
||||||
|
from xlsxwriter import Workbook
|
||||||
|
from ..Results import Excel
|
||||||
|
from ..Utils import Folders
|
||||||
|
|
||||||
|
|
||||||
|
class ExcelTest(unittest.TestCase):
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
os.chdir(os.path.dirname(os.path.abspath(__file__)))
|
||||||
|
super().__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
def tearDown(self) -> None:
|
||||||
|
files = [
|
||||||
|
"results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.xlsx",
|
||||||
|
"results_accuracy_STree_iMac27_2021-10-27_09:40:40_0.xlsx",
|
||||||
|
"results_accuracy_ODTE_Galgo_2022-04-20_10:52:20_0.xlsx",
|
||||||
|
]
|
||||||
|
for file_name in files:
|
||||||
|
file_name = os.path.join(Folders.results, file_name)
|
||||||
|
if os.path.exists(file_name):
|
||||||
|
os.remove(file_name)
|
||||||
|
return super().tearDown()
|
||||||
|
|
||||||
|
def check_excel_sheet(self, sheet, file_name):
|
||||||
|
with open(file_name, "r") as f:
|
||||||
|
expected = csv.reader(f, delimiter=";")
|
||||||
|
for row, col, value in expected:
|
||||||
|
if value.isdigit():
|
||||||
|
value = int(value)
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
value = float(value)
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
self.assertEqual(sheet.cell(int(row), int(col)).value, value)
|
||||||
|
|
||||||
|
def test_report_excel_compared(self):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json"
|
||||||
|
)
|
||||||
|
report = Excel(file_name, compare=True)
|
||||||
|
report.report()
|
||||||
|
file_output = report.get_file_name()
|
||||||
|
book = load_workbook(file_output)
|
||||||
|
sheet = book["STree"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel_compared.test")
|
||||||
|
|
||||||
|
def test_report_excel(self):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json"
|
||||||
|
)
|
||||||
|
report = Excel(file_name, compare=False)
|
||||||
|
report.report()
|
||||||
|
file_output = report.get_file_name()
|
||||||
|
book = load_workbook(file_output)
|
||||||
|
sheet = book["STree"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel.test")
|
||||||
|
|
||||||
|
def test_Excel_Add_sheet(self):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-10-27_09:40:40_0.json"
|
||||||
|
)
|
||||||
|
excel_file_name = file_name.replace(".json", ".xlsx")
|
||||||
|
book = Workbook(excel_file_name)
|
||||||
|
excel = Excel(file_name=file_name, book=book)
|
||||||
|
excel.report()
|
||||||
|
report = Excel(
|
||||||
|
file_name="results/results_accuracy_ODTE_Galgo_2022-04-20_10:52:20"
|
||||||
|
"_0.json",
|
||||||
|
book=book,
|
||||||
|
)
|
||||||
|
report.report()
|
||||||
|
book.close()
|
||||||
|
book = load_workbook(excel_file_name)
|
||||||
|
sheet = book["STree"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel_add_STree.test")
|
||||||
|
sheet = book["ODTE"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel_add_ODTE.test")
|
@@ -24,6 +24,7 @@ class GridSearchTest(unittest.TestCase):
|
|||||||
"progress_bar": False,
|
"progress_bar": False,
|
||||||
"platform": "Test",
|
"platform": "Test",
|
||||||
"folds": 2,
|
"folds": 2,
|
||||||
|
"test": True,
|
||||||
}
|
}
|
||||||
return GridSearch(**params)
|
return GridSearch(**params)
|
||||||
|
|
||||||
@@ -66,18 +67,15 @@ class GridSearchTest(unittest.TestCase):
|
|||||||
"kernel": "liblinear",
|
"kernel": "liblinear",
|
||||||
"multiclass_strategy": "ovr",
|
"multiclass_strategy": "ovr",
|
||||||
},
|
},
|
||||||
"",
|
"v. 1.2.4, Computed on Test on 2022-02-22 at 12:00:00 took 1s",
|
||||||
],
|
],
|
||||||
"balloons": [
|
"balloons": [
|
||||||
0.625,
|
0.625,
|
||||||
{"C": 1.0, "kernel": "linear", "multiclass_strategy": "ovr"},
|
{"C": 1.0, "kernel": "linear", "multiclass_strategy": "ovr"},
|
||||||
"",
|
"v. 1.2.4, Computed on Test on 2022-02-22 at 12:00:00 took 1s",
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
dt = Datasets()
|
self.assertSequenceEqual(data, expected)
|
||||||
for dataset in dt:
|
|
||||||
self.assertEqual(data[dataset][0], expected[dataset][0])
|
|
||||||
self.assertSequenceEqual(data[dataset][1], expected[dataset][1])
|
|
||||||
|
|
||||||
def test_duration_message(self):
|
def test_duration_message(self):
|
||||||
expected = ["47.234s", "5.421m", "1.177h"]
|
expected = ["47.234s", "5.421m", "1.177h"]
|
||||||
|
99
benchmark/tests/Report_test.py
Normal file
99
benchmark/tests/Report_test.py
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
import os
|
||||||
|
import unittest
|
||||||
|
from io import StringIO
|
||||||
|
from unittest.mock import patch
|
||||||
|
from ..Results import Report, BaseReport, ReportBest
|
||||||
|
from ..Utils import Symbols
|
||||||
|
|
||||||
|
|
||||||
|
class ReportTest(unittest.TestCase):
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
os.chdir(os.path.dirname(os.path.abspath(__file__)))
|
||||||
|
super().__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
def test_BaseReport(self):
|
||||||
|
with patch.multiple(BaseReport, __abstractmethods__=set()):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-09-30_11:"
|
||||||
|
"42:07_0.json"
|
||||||
|
)
|
||||||
|
a = BaseReport(file_name)
|
||||||
|
self.assertIsNone(a.header())
|
||||||
|
self.assertIsNone(a.print_line(None))
|
||||||
|
self.assertIsNone(a.footer(accuracy=1.0))
|
||||||
|
|
||||||
|
def test_report_with_folder(self):
|
||||||
|
report = Report(
|
||||||
|
file_name="results/results_accuracy_STree_iMac27_2021-09-30_11:"
|
||||||
|
"42:07_0.json"
|
||||||
|
)
|
||||||
|
with patch("sys.stdout", new=StringIO()) as fake_out:
|
||||||
|
report.report()
|
||||||
|
with open("test_files/report.test", "r") as f:
|
||||||
|
expected = f.read()
|
||||||
|
self.assertEqual(fake_out.getvalue(), expected)
|
||||||
|
|
||||||
|
def test_report_without_folder(self):
|
||||||
|
report = Report(
|
||||||
|
file_name="results_accuracy_STree_iMac27_2021-09-30_11:42:07_0"
|
||||||
|
".json"
|
||||||
|
)
|
||||||
|
with patch("sys.stdout", new=StringIO()) as fake_out:
|
||||||
|
report.report()
|
||||||
|
with open("test_files/report.test", "r") as f:
|
||||||
|
expected = f.read()
|
||||||
|
self.assertEqual(fake_out.getvalue(), expected)
|
||||||
|
|
||||||
|
def test_report_compared(self):
|
||||||
|
report = Report(
|
||||||
|
file_name="results_accuracy_STree_iMac27_2021-09-30_11:42:07_0"
|
||||||
|
".json",
|
||||||
|
compare=True,
|
||||||
|
)
|
||||||
|
with patch("sys.stdout", new=StringIO()) as fake_out:
|
||||||
|
report.report()
|
||||||
|
with open("test_files/report_compared.test", "r") as f:
|
||||||
|
expected = f.read()
|
||||||
|
self.assertEqual(fake_out.getvalue(), expected)
|
||||||
|
|
||||||
|
def test_compute_status(self):
|
||||||
|
file_name = "results_accuracy_STree_iMac27_2021-10-27_09:40:40_0.json"
|
||||||
|
report = Report(
|
||||||
|
file_name=file_name,
|
||||||
|
compare=True,
|
||||||
|
)
|
||||||
|
with patch("sys.stdout", new=StringIO()):
|
||||||
|
report.report()
|
||||||
|
res = report._compute_status("balloons", 0.99)
|
||||||
|
self.assertEqual(res, Symbols.better_best)
|
||||||
|
res = report._compute_status("balloons", 1.0)
|
||||||
|
self.assertEqual(res, Symbols.better_best)
|
||||||
|
|
||||||
|
def test_report_file_not_found(self):
|
||||||
|
with self.assertRaises(FileNotFoundError):
|
||||||
|
_ = Report("unknown_file")
|
||||||
|
|
||||||
|
def test_report_best(self):
|
||||||
|
report = ReportBest("accuracy", "STree", best=True, grid=False)
|
||||||
|
with patch("sys.stdout", new=StringIO()) as fake_out:
|
||||||
|
report.report()
|
||||||
|
with open("test_files/report_best.test", "r") as f:
|
||||||
|
expected = f.read()
|
||||||
|
self.assertEqual(fake_out.getvalue(), expected)
|
||||||
|
|
||||||
|
def test_report_grid(self):
|
||||||
|
report = ReportBest("accuracy", "STree", best=False, grid=True)
|
||||||
|
with patch("sys.stdout", new=StringIO()) as fake_out:
|
||||||
|
report.report()
|
||||||
|
with open("test_files/report_grid.test", "r") as f:
|
||||||
|
expected = f.read()
|
||||||
|
self.assertEqual(fake_out.getvalue(), expected)
|
||||||
|
|
||||||
|
def test_report_best_both(self):
|
||||||
|
report = ReportBest("accuracy", "STree", best=True, grid=True)
|
||||||
|
with patch("sys.stdout", new=StringIO()) as fake_out:
|
||||||
|
report.report()
|
||||||
|
with open("test_files/report_best.test", "r") as f:
|
||||||
|
expected = f.read()
|
||||||
|
|
||||||
|
self.assertEqual(fake_out.getvalue(), expected)
|
81
benchmark/tests/SQL_test.py
Normal file
81
benchmark/tests/SQL_test.py
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
import os
|
||||||
|
import csv
|
||||||
|
import unittest
|
||||||
|
from openpyxl import load_workbook
|
||||||
|
from xlsxwriter import Workbook
|
||||||
|
from ..Results import Excel
|
||||||
|
from ..Utils import Folders
|
||||||
|
|
||||||
|
|
||||||
|
class SQLTest(unittest.TestCase):
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
os.chdir(os.path.dirname(os.path.abspath(__file__)))
|
||||||
|
super().__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
def tearDown(self) -> None:
|
||||||
|
files = [
|
||||||
|
"results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.xlsx",
|
||||||
|
"results_accuracy_STree_iMac27_2021-10-27_09:40:40_0.xlsx",
|
||||||
|
"results_accuracy_ODTE_Galgo_2022-04-20_10:52:20_0.sql",
|
||||||
|
]
|
||||||
|
for file_name in files:
|
||||||
|
file_name = os.path.join(Folders.results, file_name)
|
||||||
|
if os.path.exists(file_name):
|
||||||
|
os.remove(file_name)
|
||||||
|
return super().tearDown()
|
||||||
|
|
||||||
|
def check_excel_sheet(self, sheet, file_name):
|
||||||
|
with open(file_name, "r") as f:
|
||||||
|
expected = csv.reader(f, delimiter=";")
|
||||||
|
for row, col, value in expected:
|
||||||
|
if value.isdigit():
|
||||||
|
value = int(value)
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
value = float(value)
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
self.assertEqual(sheet.cell(int(row), int(col)).value, value)
|
||||||
|
|
||||||
|
def test_report_excel_compared(self):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json"
|
||||||
|
)
|
||||||
|
report = Excel(file_name, compare=True)
|
||||||
|
report.report()
|
||||||
|
file_output = report.get_file_name()
|
||||||
|
book = load_workbook(file_output)
|
||||||
|
sheet = book["STree"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel_compared.test")
|
||||||
|
|
||||||
|
def test_report_excel(self):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json"
|
||||||
|
)
|
||||||
|
report = Excel(file_name, compare=False)
|
||||||
|
report.report()
|
||||||
|
file_output = report.get_file_name()
|
||||||
|
book = load_workbook(file_output)
|
||||||
|
sheet = book["STree"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel.test")
|
||||||
|
|
||||||
|
def test_Excel_Add_sheet(self):
|
||||||
|
file_name = (
|
||||||
|
"results/results_accuracy_STree_iMac27_2021-10-27_09:40:40_0.json"
|
||||||
|
)
|
||||||
|
excel_file_name = file_name.replace(".json", ".xlsx")
|
||||||
|
book = Workbook(excel_file_name)
|
||||||
|
excel = Excel(file_name=file_name, book=book)
|
||||||
|
excel.report()
|
||||||
|
report = Excel(
|
||||||
|
file_name="results/results_accuracy_ODTE_Galgo_2022-04-20_10:52:20"
|
||||||
|
"_0.json",
|
||||||
|
book=book,
|
||||||
|
)
|
||||||
|
report.report()
|
||||||
|
book.close()
|
||||||
|
book = load_workbook(excel_file_name)
|
||||||
|
sheet = book["STree"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel_add_STree.test")
|
||||||
|
sheet = book["ODTE"]
|
||||||
|
self.check_excel_sheet(sheet, "test_files/excel_add_ODTE.test")
|
@@ -121,6 +121,7 @@ class UtilTest(unittest.TestCase):
|
|||||||
"results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json",
|
"results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json",
|
||||||
"results_accuracy_STree_macbook-pro_2021-11-01_19:17:07_0."
|
"results_accuracy_STree_macbook-pro_2021-11-01_19:17:07_0."
|
||||||
"json",
|
"json",
|
||||||
|
"results_accuracy_ODTE_Galgo_2022-04-20_10:52:20_0.json",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
self.assertCountEqual(
|
self.assertCountEqual(
|
||||||
|
@@ -4,6 +4,9 @@ from .Dataset_test import DatasetTest
|
|||||||
from .BestResults_test import BestResultTest
|
from .BestResults_test import BestResultTest
|
||||||
from .Experiment_test import ExperimentTest
|
from .Experiment_test import ExperimentTest
|
||||||
from .GridSearch_test import GridSearchTest
|
from .GridSearch_test import GridSearchTest
|
||||||
|
from .Report_test import ReportTest
|
||||||
|
from .Excel_test import ExcelTest
|
||||||
|
from .SQL_test import SQLTest
|
||||||
|
|
||||||
all = [
|
all = [
|
||||||
"UtilTest",
|
"UtilTest",
|
||||||
@@ -12,4 +15,7 @@ all = [
|
|||||||
"BestResultTest",
|
"BestResultTest",
|
||||||
"ExperimentTest",
|
"ExperimentTest",
|
||||||
"GridSearchTest",
|
"GridSearchTest",
|
||||||
|
"ReportTest",
|
||||||
|
"ExcelTest",
|
||||||
|
"SQLTest",
|
||||||
]
|
]
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
"kernel": "liblinear",
|
"kernel": "liblinear",
|
||||||
"multiclass_strategy": "ovr"
|
"multiclass_strategy": "ovr"
|
||||||
},
|
},
|
||||||
"v. 1.2.4, Computed on Test on 2022-04-24 at 00:18:17 took 0.261s"
|
"v. 1.2.4, Computed on Test on 2022-02-22 at 12:00:00 took 1s"
|
||||||
],
|
],
|
||||||
"balloons": [
|
"balloons": [
|
||||||
0.625,
|
0.625,
|
||||||
@@ -15,6 +15,6 @@
|
|||||||
"kernel": "linear",
|
"kernel": "linear",
|
||||||
"multiclass_strategy": "ovr"
|
"multiclass_strategy": "ovr"
|
||||||
},
|
},
|
||||||
"v. 1.2.4, Computed on Test on 2022-04-24 at 00:18:17 took 0.478s"
|
"v. 1.2.4, Computed on Test on 2022-02-22 at 12:00:00 took 1s"
|
||||||
]
|
]
|
||||||
}
|
}
|
@@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"score_name": "accuracy",
|
||||||
|
"title": "Gridsearched hyperparams v022.1b random_init",
|
||||||
|
"model": "ODTE",
|
||||||
|
"version": "0.3.2",
|
||||||
|
"stratified": false,
|
||||||
|
"folds": 5,
|
||||||
|
"date": "2022-04-20",
|
||||||
|
"time": "10:52:20",
|
||||||
|
"duration": 22591.471411943436,
|
||||||
|
"seeds": [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1],
|
||||||
|
"platform": "Galgo",
|
||||||
|
"results": [
|
||||||
|
{
|
||||||
|
"dataset": "balance-scale",
|
||||||
|
"samples": 625,
|
||||||
|
"features": 4,
|
||||||
|
"classes": 3,
|
||||||
|
"hyperparameters": {
|
||||||
|
"base_estimator__C": 57,
|
||||||
|
"base_estimator__gamma": 0.1,
|
||||||
|
"base_estimator__kernel": "rbf",
|
||||||
|
"base_estimator__multiclass_strategy": "ovr",
|
||||||
|
"n_estimators": 100,
|
||||||
|
"n_jobs": -1
|
||||||
|
},
|
||||||
|
"nodes": 7.361199999999999,
|
||||||
|
"leaves": 4.180599999999999,
|
||||||
|
"depth": 3.536,
|
||||||
|
"score": 0.96352,
|
||||||
|
"score_std": 0.024949741481626608,
|
||||||
|
"time": 0.31663217544555666,
|
||||||
|
"time_std": 0.19918813895255585
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"dataset": "balloons",
|
||||||
|
"samples": 16,
|
||||||
|
"features": 4,
|
||||||
|
"classes": 2,
|
||||||
|
"hyperparameters": {
|
||||||
|
"base_estimator__C": 5,
|
||||||
|
"base_estimator__gamma": 0.14,
|
||||||
|
"base_estimator__kernel": "rbf",
|
||||||
|
"base_estimator__multiclass_strategy": "ovr",
|
||||||
|
"n_estimators": 100,
|
||||||
|
"n_jobs": -1
|
||||||
|
},
|
||||||
|
"nodes": 2.9951999999999996,
|
||||||
|
"leaves": 1.9975999999999998,
|
||||||
|
"depth": 1.9975999999999998,
|
||||||
|
"score": 0.785,
|
||||||
|
"score_std": 0.2461311755051675,
|
||||||
|
"time": 0.11560620784759522,
|
||||||
|
"time_std": 0.012784241828599895
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
48
benchmark/tests/test_files/excel.test
Normal file
48
benchmark/tests/test_files/excel.test
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
1;1;" Report STree ver. 1.2.3 with 5 Folds cross validation and 10 random seeds. 2021-09-30 11:42:07"
|
||||||
|
2;1;" With gridsearched hyperparameters"
|
||||||
|
3;1;" Score is accuracy"
|
||||||
|
3;2;" Execution time"
|
||||||
|
3;5;" 624.25 s"
|
||||||
|
3;7;" "
|
||||||
|
3;8;"Platform"
|
||||||
|
3;9;"iMac27"
|
||||||
|
3;10;"Random seeds: [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1]"
|
||||||
|
4;5;" 0.17 h"
|
||||||
|
4;10;"Stratified: False"
|
||||||
|
6;1;"Dataset"
|
||||||
|
6;2;"Samples"
|
||||||
|
6;3;"Features"
|
||||||
|
6;4;"Classes"
|
||||||
|
6;5;"Nodes"
|
||||||
|
6;6;"Leaves"
|
||||||
|
6;7;"Depth"
|
||||||
|
6;8;"Score"
|
||||||
|
6;9;"Score Std."
|
||||||
|
6;10;"Time"
|
||||||
|
6;11;"Time Std."
|
||||||
|
6;12;"Hyperparameters"
|
||||||
|
7;1;"balance-scale"
|
||||||
|
7;2;"625"
|
||||||
|
7;3;"4"
|
||||||
|
7;4;"3"
|
||||||
|
7;5;"7"
|
||||||
|
7;6;"4"
|
||||||
|
7;7;"3"
|
||||||
|
7;8;"0.97056"
|
||||||
|
7;9;"0.0150468069702512"
|
||||||
|
7;10;"0.01404867172241211"
|
||||||
|
7;11;"0.002026269126958884"
|
||||||
|
7;12;"{'C': 10000.0, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}"
|
||||||
|
8;1;"balloons"
|
||||||
|
8;2;"16"
|
||||||
|
8;3;"4"
|
||||||
|
8;4;"2"
|
||||||
|
8;5;"3"
|
||||||
|
8;6;"2"
|
||||||
|
8;7;"2"
|
||||||
|
8;8;"0.86"
|
||||||
|
8;9;"0.2850146195080759"
|
||||||
|
8;10;"0.0008541679382324218"
|
||||||
|
8;11;"3.629469326417878e-05"
|
||||||
|
8;12;"{'C': 7, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}"
|
||||||
|
10;1;"** Accuracy compared to stree_default (liblinear-ovr) .: 0.0454"
|
48
benchmark/tests/test_files/excel_add_ODTE.test
Normal file
48
benchmark/tests/test_files/excel_add_ODTE.test
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
1;1;" Report ODTE ver. 0.3.2 with 5 Folds cross validation and 10 random seeds. 2022-04-20 10:52:20"
|
||||||
|
2;1;" Gridsearched hyperparams v022.1b random_init"
|
||||||
|
3;1;" Score is accuracy"
|
||||||
|
3;2;" Execution time"
|
||||||
|
3;5;"22,591.47 s"
|
||||||
|
3;7;" "
|
||||||
|
3;8;"Platform"
|
||||||
|
3;9;"Galgo"
|
||||||
|
3;10;"Random seeds: [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1]"
|
||||||
|
4;5;" 6.28 h"
|
||||||
|
4;10;"Stratified: False"
|
||||||
|
6;1;"Dataset"
|
||||||
|
6;2;"Samples"
|
||||||
|
6;3;"Features"
|
||||||
|
6;4;"Classes"
|
||||||
|
6;5;"Nodes"
|
||||||
|
6;6;"Leaves"
|
||||||
|
6;7;"Depth"
|
||||||
|
6;8;"Score"
|
||||||
|
6;9;"Score Std."
|
||||||
|
6;10;"Time"
|
||||||
|
6;11;"Time Std."
|
||||||
|
6;12;"Hyperparameters"
|
||||||
|
7;1;"balance-scale"
|
||||||
|
7;2;"625"
|
||||||
|
7;3;"4"
|
||||||
|
7;4;"3"
|
||||||
|
7;5;"7.361199999999999"
|
||||||
|
7;6;"4.180599999999999"
|
||||||
|
7;7;"3.536"
|
||||||
|
7;8;"0.96352"
|
||||||
|
7;9;"0.02494974148162661"
|
||||||
|
7;10;"0.3166321754455567"
|
||||||
|
7;11;"0.1991881389525559"
|
||||||
|
7;12;"{'base_estimator__C': 57, 'base_estimator__gamma': 0.1, 'base_estimator__kernel': 'rbf', 'base_estimator__multiclass_strategy': 'ovr', 'n_estimators': 100, 'n_jobs': -1}"
|
||||||
|
8;1;"balloons"
|
||||||
|
8;2;"16"
|
||||||
|
8;3;"4"
|
||||||
|
8;4;"2"
|
||||||
|
8;5;"2.9952"
|
||||||
|
8;6;"1.9976"
|
||||||
|
8;7;"1.9976"
|
||||||
|
8;8;"0.785"
|
||||||
|
8;9;"0.2461311755051675"
|
||||||
|
8;10;"0.1156062078475952"
|
||||||
|
8;11;"0.0127842418285999"
|
||||||
|
8;12;"{'base_estimator__C': 5, 'base_estimator__gamma': 0.14, 'base_estimator__kernel': 'rbf', 'base_estimator__multiclass_strategy': 'ovr', 'n_estimators': 100, 'n_jobs': -1}"
|
||||||
|
10;1;"** Accuracy compared to stree_default (liblinear-ovr) .: 0.0434"
|
46
benchmark/tests/test_files/excel_add_STree.test
Normal file
46
benchmark/tests/test_files/excel_add_STree.test
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
1;1;" Report STree ver. 1.2.3 with 5 Folds cross validation and 10 random seeds. 2021-10-27 09:40:40"
|
||||||
|
2;1;" default A"
|
||||||
|
3;1;" Score is accuracy"
|
||||||
|
3;2;" Execution time"
|
||||||
|
3;5;"3,395.01 s"
|
||||||
|
3;7;" "
|
||||||
|
3;8;"Platform"
|
||||||
|
3;9;"iMac27"
|
||||||
|
3;10;"Random seeds: [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1]"
|
||||||
|
4;5;" 0.94 h"
|
||||||
|
4;10;"Stratified: False"
|
||||||
|
6;1;"Dataset"
|
||||||
|
6;2;"Samples"
|
||||||
|
6;3;"Features"
|
||||||
|
6;4;"Classes"
|
||||||
|
6;5;"Nodes"
|
||||||
|
6;6;"Leaves"
|
||||||
|
6;7;"Depth"
|
||||||
|
6;8;"Score"
|
||||||
|
6;9;"Score Std."
|
||||||
|
6;10;"Time"
|
||||||
|
6;11;"Time Std."
|
||||||
|
7;1;"balance-scale"
|
||||||
|
7;2;"625"
|
||||||
|
7;3;"4"
|
||||||
|
7;4;"3"
|
||||||
|
7;5;"11.08"
|
||||||
|
7;6;"5.9"
|
||||||
|
7;7;"5.9"
|
||||||
|
7;8;"0.98"
|
||||||
|
7;9;"0.001"
|
||||||
|
7;10;"0.2852065515518188"
|
||||||
|
7;11;"0.06031593282605064"
|
||||||
|
8;1;"balloons"
|
||||||
|
8;2;"16"
|
||||||
|
8;3;"4"
|
||||||
|
8;4;"2"
|
||||||
|
8;5;"4.12"
|
||||||
|
8;6;"2.56"
|
||||||
|
8;7;"2.56"
|
||||||
|
8;8;"0.695"
|
||||||
|
8;9;"0.2756860130252853"
|
||||||
|
8;10;"0.02120100021362305"
|
||||||
|
8;11;"0.003526023309468471"
|
||||||
|
8;12;"{'splitter': 'iwss', 'max_features': 'auto'}"
|
||||||
|
10;1;"** Accuracy compared to stree_default (liblinear-ovr) .: 0.0416"
|
52
benchmark/tests/test_files/excel_compared.test
Normal file
52
benchmark/tests/test_files/excel_compared.test
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
1;1;" Report STree ver. 1.2.3 with 5 Folds cross validation and 10 random seeds. 2021-09-30 11:42:07"
|
||||||
|
2;1;" With gridsearched hyperparameters"
|
||||||
|
3;1;" Score is accuracy"
|
||||||
|
3;2;" Execution time"
|
||||||
|
3;5;" 624.25 s"
|
||||||
|
3;8;"Platform"
|
||||||
|
3;9;"iMac27"
|
||||||
|
3;10;"Random seeds: [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1]"
|
||||||
|
4;10;"Stratified: False"
|
||||||
|
6;1;"Dataset"
|
||||||
|
6;2;"Samples"
|
||||||
|
6;3;"Features"
|
||||||
|
6;4;"Classes"
|
||||||
|
6;5;"Nodes"
|
||||||
|
6;6;"Leaves"
|
||||||
|
6;7;"Depth"
|
||||||
|
6;8;"Score"
|
||||||
|
6;9;"Stat"
|
||||||
|
6;10;"Score Std."
|
||||||
|
6;11;"Time"
|
||||||
|
6;12;"Time Std."
|
||||||
|
6;13;"Hyperparameters"
|
||||||
|
7;1;"balance-scale"
|
||||||
|
7;2;625
|
||||||
|
7;3;4
|
||||||
|
7;4;3
|
||||||
|
7;5;7
|
||||||
|
7;6;4
|
||||||
|
7;7;3
|
||||||
|
7;8;0.97056
|
||||||
|
7;9;" "
|
||||||
|
7;10;0.0150468069702512
|
||||||
|
7;11;0.01404867172241211
|
||||||
|
7;12;0.002026269126958884
|
||||||
|
7;13;"{'C': 10000.0, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}"
|
||||||
|
8;1;"balloons"
|
||||||
|
8;2;16
|
||||||
|
8;3;4
|
||||||
|
8;4;2
|
||||||
|
8;5;3
|
||||||
|
8;6;2
|
||||||
|
8;7;2
|
||||||
|
8;8;0.86
|
||||||
|
8;9;"✔"
|
||||||
|
8;10;0.2850146195080759
|
||||||
|
8;11;0.0008541679382324218
|
||||||
|
8;12;3.629469326417878e-05
|
||||||
|
8;13;"{'C': 7, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}"
|
||||||
|
11;2;"✔"
|
||||||
|
11;3;1
|
||||||
|
11;4;"Equal to best"
|
||||||
|
13;1;"** Accuracy compared to stree_default (liblinear-ovr) .: 0.0454"
|
15
benchmark/tests/test_files/report.test
Normal file
15
benchmark/tests/test_files/report.test
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
[94m***********************************************************************************************************************
|
||||||
|
[94m* Report STree ver. 1.2.3 with 5 Folds cross validation and 10 random seeds. 2021-09-30 11:42:07 *
|
||||||
|
[94m* With gridsearched hyperparameters *
|
||||||
|
[94m* Random seeds: [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1] Stratified: False *
|
||||||
|
[94m* Execution took 624.25 seconds, 0.17 hours, on iMac27 *
|
||||||
|
[94m* Score is accuracy *
|
||||||
|
[94m***********************************************************************************************************************
|
||||||
|
|
||||||
|
Dataset Samp Feat. Cls Nodes Leaves Depth Score Time Hyperparameters
|
||||||
|
============================== ===== ===== === ======= ======= ======= =============== ================ ===============
|
||||||
|
[96mbalance-scale 625 4 3 7.00 4.00 3.00 0.970560±0.0150 0.014049±0.0020 {'C': 10000.0, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}
|
||||||
|
[94mballoons 16 4 2 3.00 2.00 2.00 0.860000±0.2850 0.000854±0.0000 {'C': 7, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}
|
||||||
|
[94m***********************************************************************************************************************
|
||||||
|
[94m* Accuracy compared to stree_default (liblinear-ovr) .: 0.0454 *
|
||||||
|
[94m***********************************************************************************************************************
|
11
benchmark/tests/test_files/report_best.test
Normal file
11
benchmark/tests/test_files/report_best.test
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
******************************************************************************************************************************************************************
|
||||||
|
* Report Best accuracy Scores with STree in any platform *
|
||||||
|
******************************************************************************************************************************************************************
|
||||||
|
|
||||||
|
Dataset Score File/Message Hyperparameters
|
||||||
|
============================== ======== ============================================================================ =============================================
|
||||||
|
balance-scale 0.980000 results_accuracy_STree_iMac27_2021-10-27_09:40:40_0.json {'splitter': 'iwss', 'max_features': 'auto'}
|
||||||
|
balloons 0.860000 results_accuracy_STree_iMac27_2021-09-30_11:42:07_0.json {'C': 7, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}
|
||||||
|
******************************************************************************************************************************************************************
|
||||||
|
* Scores compared to stree_default accuracy (liblinear-ovr) .: 0.0457 *
|
||||||
|
******************************************************************************************************************************************************************
|
16
benchmark/tests/test_files/report_compared.test
Normal file
16
benchmark/tests/test_files/report_compared.test
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
[94m***********************************************************************************************************************
|
||||||
|
[94m* Report STree ver. 1.2.3 with 5 Folds cross validation and 10 random seeds. 2021-09-30 11:42:07 *
|
||||||
|
[94m* With gridsearched hyperparameters *
|
||||||
|
[94m* Random seeds: [57, 31, 1714, 17, 23, 79, 83, 97, 7, 1] Stratified: False *
|
||||||
|
[94m* Execution took 624.25 seconds, 0.17 hours, on iMac27 *
|
||||||
|
[94m* Score is accuracy *
|
||||||
|
[94m***********************************************************************************************************************
|
||||||
|
|
||||||
|
Dataset Samp Feat. Cls Nodes Leaves Depth Score Time Hyperparameters
|
||||||
|
============================== ===== ===== === ======= ======= ======= =============== ================ ===============
|
||||||
|
[96mbalance-scale 625 4 3 7.00 4.00 3.00 0.970560±0.0150 0.014049±0.0020 {'C': 10000.0, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}
|
||||||
|
[94mballoons 16 4 2 3.00 2.00 2.00 0.860000±0.2850✔ 0.000854±0.0000 {'C': 7, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 10000.0, 'multiclass_strategy': 'ovr'}
|
||||||
|
[94m***********************************************************************************************************************
|
||||||
|
[94m* ✔ Equal to best .....: 1 *
|
||||||
|
[94m* Accuracy compared to stree_default (liblinear-ovr) .: 0.0454 *
|
||||||
|
[94m***********************************************************************************************************************
|
11
benchmark/tests/test_files/report_grid.test
Normal file
11
benchmark/tests/test_files/report_grid.test
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
******************************************************************************************************************************************************************
|
||||||
|
* Report Grid accuracy Scores with STree in any platform *
|
||||||
|
******************************************************************************************************************************************************************
|
||||||
|
|
||||||
|
Dataset Score File/Message Hyperparameters
|
||||||
|
============================== ======== ============================================================================ =============================================
|
||||||
|
balance-scale 0.919995 v. 1.2.4, Computed on Test on 2022-02-22 at 12:00:00 took 1s {'C': 1.0, 'kernel': 'liblinear', 'multiclass_strategy': 'ovr'}
|
||||||
|
balloons 0.625000 v. 1.2.4, Computed on Test on 2022-02-22 at 12:00:00 took 1s {'C': 1.0, 'kernel': 'linear', 'multiclass_strategy': 'ovr'}
|
||||||
|
******************************************************************************************************************************************************************
|
||||||
|
* Scores compared to stree_default accuracy (liblinear-ovr) .: 0.0384 *
|
||||||
|
******************************************************************************************************************************************************************
|
@@ -3,4 +3,5 @@ scikit-learn
|
|||||||
odte
|
odte
|
||||||
mufs
|
mufs
|
||||||
xlsxwriter
|
xlsxwriter
|
||||||
|
openpyxl
|
||||||
tqdm
|
tqdm
|
||||||
|
Reference in New Issue
Block a user