def run_everything(prefix, args): params = load_params(prefix) init_level(prefix, 1) experiments.run_jobs(evaluation_jobs(prefix, 1), args, evaluation_key(prefix, 1)) collect_scores_for_level(prefix, 1) for level in range(2, params.search_depth + 1): init_level(prefix, level) experiments.run_jobs(initial_samples_jobs(prefix, level), args, initial_samples_key(prefix, level)) experiments.run_jobs(evaluation_jobs(prefix, level), args, evaluation_key(prefix, level)) collect_scores_for_level(prefix, level) experiments.run_jobs(final_model_jobs(prefix), args, final_model_key(prefix))
def main(): global guider_sess command = sys.argv[1] parser = argparse.ArgumentParser() parser.add_argument('command') # Synthetic Data start_time = time.perf_counter() if command == 'generate': parser.add_argument('--debug', action='store_true', default=False) parser.add_argument('--search_depth', type=int, default=DEFAULT_SEARCH_DEPTH) parser.add_argument('--prefix', type=str, default=DEFAULT_PREFIX) args = parser.parse_args() init_experiment(args.prefix, args.debug, args.search_depth) elif command == 'init': parser.add_argument('level', type=int) parser.add_argument('--prefix', type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args() init_level(args.prefix, args.level) if args.level > 1: experiments.run_jobs(initial_samples_jobs(args.prefix, args.level), args, initial_samples_key(args.prefix, args.level)) elif command == 'eval': parser.add_argument('level', type=int) parser.add_argument('--prefix', type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args() experiments.run_jobs(evaluation_jobs(args.prefix, args.level), args, evaluation_key(args.prefix, args.level)) collect_scores_for_level(args.prefix, args.level) elif command == 'final': parser.add_argument('level', type=int) parser.add_argument('--prefix', type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args() experiments.run_jobs(final_model_jobs(args.prefix, args.level), args, final_model_key(args.prefix)) elif command == 'everything': start_time = time.perf_counter() parser.add_argument('--prefix', type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args() run_everything(args.prefix, args) save_report(args.prefix) end_time = time.perf_counter() - start_time print("Total time ellapsed: %f s" % end_time) else: raise RuntimeError('Unknown command: %s' % command)
if command == "generate": parser.add_argument("--debug", action="store_true", default=False) parser.add_argument("--search_depth", type=int, default=DEFAULT_SEARCH_DEPTH) parser.add_argument("--prefix", type=str, default=DEFAULT_PREFIX) args = parser.parse_args() init_experiment(args.prefix, args.debug, args.search_depth) elif command == "init": parser.add_argument("level", type=int) parser.add_argument("--prefix", type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args() init_level(args.prefix, args.level) if args.level > 1: experiments.run_jobs( initial_samples_jobs(args.prefix, args.level), args, initial_samples_key(args.prefix, args.level) ) elif command == "eval": parser.add_argument("level", type=int) parser.add_argument("--prefix", type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args() experiments.run_jobs(evaluation_jobs(args.prefix, args.level), args, evaluation_key(args.prefix, args.level)) collect_scores_for_level(args.prefix, args.level) elif command == "final": parser.add_argument("level", type=int) parser.add_argument("--prefix", type=str, default=DEFAULT_PREFIX) experiments.add_scheduler_args(parser) args = parser.parse_args()