def get_eval_conditional(args, results_directory): logger = logging.getLogger() if args.load_run: logger.info(f'Loading previous runs [{args.start_cv},{args.end_cv}[') conditional_estimations = load_conditional_estimations( results_directory, start_cv=args.start_cv, end_cv=args.end_cv) else: logger.info(f'Running runs [{args.start_cv},{args.end_cv}[') conditional_estimations = [ run_conditional_estimation(args, i_cv) for i_cv in range(args.start_cv, args.end_cv) ] conditional_estimations = pd.concat(conditional_estimations, ignore_index=True) conditional_estimations.to_csv( os.path.join(results_directory, 'conditional_estimations.csv')) # EVALUATION eval_conditional = evaluate_conditional_estimation( conditional_estimations, interest_param_name=Config.INTEREST_PARAM_NAME) print_line() print_line() print(eval_conditional) print_line() print_line() eval_conditional.to_csv( os.path.join(results_directory, 'conditional_evaluation.csv')) return eval_conditional
def main(): # BASIC SETUP logger = set_logger() args = INFERNO_parse_args( main_description= "Training launcher for Gradient boosting on S3D2 benchmark") logger.info(args) flush(logger) # INFO model = build_model(args, -1) os.makedirs(model.results_directory, exist_ok=True) config = Config() config_table = evaluate_config(config) config_table.to_csv( os.path.join(model.results_directory, 'config_table.csv')) # RUN if args.load_run: logger.info(f'Loading previous runs [{args.start_cv},{args.end_cv}[') directory = model.results_directory estimations = load_estimations(directory, start_cv=args.start_cv, end_cv=args.end_cv) conditional_estimations = load_conditional_estimations( directory, start_cv=args.start_cv, end_cv=args.end_cv) else: logger.info(f'Running runs [{args.start_cv},{args.end_cv}[') results = [ run(args, i_cv) for i_cv in range(args.start_cv, args.end_cv) ] estimations = [e0 for e0, e1 in results] estimations = pd.concat(estimations, ignore_index=True) conditional_estimations = [e1 for e0, e1 in results] conditional_estimations = pd.concat(conditional_estimations) estimations.to_csv(os.path.join(model.results_directory, 'estimations.csv')) conditional_estimations.to_csv( os.path.join(model.results_directory, 'conditional_estimations.csv')) # EVALUATION eval_table = evaluate_estimator(config.INTEREST_PARAM_NAME, estimations) eval_conditional = evaluate_conditional_estimation( conditional_estimations, interest_param_name=config.INTEREST_PARAM_NAME) eval_table = pd.concat([eval_table, eval_conditional], axis=1) print_line() print_line() print(eval_table) print_line() print_line() eval_table.to_csv(os.path.join(model.results_directory, 'evaluation.csv')) gather_images(model.results_directory)