2023-11-08 17:26:44 +01:00
|
|
|
from traceback import print_exception as traceback
|
|
|
|
|
|
|
|
import quacc.evaluation.comp as comp
|
2023-12-06 10:02:01 +01:00
|
|
|
|
|
|
|
# from quacc.logger import Logger
|
|
|
|
from quacc import logger
|
2023-11-08 17:26:44 +01:00
|
|
|
from quacc.dataset import Dataset
|
2023-11-26 16:30:54 +01:00
|
|
|
from quacc.environment import env
|
2023-11-27 03:27:43 +01:00
|
|
|
from quacc.evaluation.estimators import CE
|
2023-11-08 17:26:44 +01:00
|
|
|
from quacc.utils import create_dataser_dir
|
|
|
|
|
|
|
|
|
|
|
|
def estimate_comparison():
|
2023-12-06 10:02:01 +01:00
|
|
|
# log = Logger.logger()
|
|
|
|
log = logger.logger()
|
2023-11-26 16:30:54 +01:00
|
|
|
for conf in env.load_confs():
|
2023-11-08 17:26:44 +01:00
|
|
|
dataset = Dataset(
|
|
|
|
env.DATASET_NAME,
|
|
|
|
target=env.DATASET_TARGET,
|
|
|
|
n_prevalences=env.DATASET_N_PREVS,
|
|
|
|
prevs=env.DATASET_PREVS,
|
|
|
|
)
|
2023-11-22 19:25:52 +01:00
|
|
|
create_dataser_dir(
|
|
|
|
dataset.name,
|
|
|
|
update=env.DATASET_DIR_UPDATE,
|
|
|
|
)
|
2023-12-06 10:02:01 +01:00
|
|
|
# Logger.add_handler(env.OUT_DIR / f"{dataset.name}.log")
|
|
|
|
logger.add_handler(env.OUT_DIR / f"{dataset.name}.log")
|
2023-11-08 17:26:44 +01:00
|
|
|
try:
|
|
|
|
dr = comp.evaluate_comparison(
|
|
|
|
dataset,
|
|
|
|
estimators=CE.name[env.COMP_ESTIMATORS],
|
2023-11-26 16:30:54 +01:00
|
|
|
)
|
|
|
|
dr.pickle(env.OUT_DIR / f"{dataset.name}.pickle")
|
2023-11-08 17:26:44 +01:00
|
|
|
except Exception as e:
|
|
|
|
log.error(f"Evaluation over {dataset.name} failed. Exception: {e}")
|
|
|
|
traceback(e)
|
|
|
|
|
2023-12-06 10:02:01 +01:00
|
|
|
# Logger.clear_handlers()
|
|
|
|
logger.clear_handlers()
|
2023-11-08 17:26:44 +01:00
|
|
|
|
|
|
|
|
|
|
|
def main():
|
2023-12-06 10:02:01 +01:00
|
|
|
# log = Logger.logger()
|
|
|
|
log = logger.setup_logger()
|
|
|
|
|
2023-11-08 17:26:44 +01:00
|
|
|
try:
|
|
|
|
estimate_comparison()
|
|
|
|
except Exception as e:
|
2023-11-26 16:30:54 +01:00
|
|
|
log.error(f"estimate comparison failed. Exception: {e}")
|
2023-11-08 17:26:44 +01:00
|
|
|
traceback(e)
|
|
|
|
|
2023-12-06 10:02:01 +01:00
|
|
|
# Logger.close()
|
|
|
|
logger.logger_manager().close()
|
2023-11-08 17:26:44 +01:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
main()
|