import yaml from utils import Parser, Trainer from utils import save_data if __name__ == '__main__': parser = Parser() parser.create_parser() pargs = parser.parser.parse_args() if pargs.config is not None: with open(pargs.config, 'r') as f: default_arg = yaml.load(f, Loader=yaml.FullLoader) key = vars(pargs).keys() for k in default_arg.keys(): if k not in key: print('WRONG ARG: {}'.format(k)) assert (k in key) parser.parser.set_defaults(**default_arg) args = parser.parser.parse_args() mode = args.mode if 'data_preprocess' == mode: save_data(args.data_preprocess_args['window_size'], args.data_preprocess_args['overlap'], args.data_preprocess_args['label_path']) elif 'train' == mode: trainer = Trainer(args.train_args) trainer.train()
else: pass elif self.args.phase == 'test': if self.args.weights is None: raise ValueError('Please appoint --weights.') self.args.print_log = False self.print_log('Model: {}.'.format(self.args.model)) self.print_log('Weights: {}.'.format(self.args.weights)) self.eval( epoch=0, save_score=self.args.save_score) self.print_log('Done.\n') if __name__ == '__main__': p = Parser() p.create_parser() pargs = p.parser.parse_args() if pargs.config is not None: with open(pargs.config, 'r') as f: default_arg = yaml.load(f, Loader=yaml.FullLoader) key = vars(pargs).keys() for k in default_arg.keys(): if k not in key: print('WRONG ARG: {}'.format(k)) assert (k in key) p.parser.set_defaults(**default_arg) args = p.parser.parse_args() p.dump_args(args, args.work_dir)