Returns: argparse.ArgumentParser: """ parser.add_argument( '-T', "--eval-type", dest='eval_type', default="final", choices=['p', 'checkpoints', 'inference', 'loc_predict', 'final'], help="select an evaluation type") return parser if __name__ == '__main__': parser = default_argument_parser() args = custom_argparse(parser).parse_known_args()[0] cfg = setup(args) print('ready to run 0') print('ready to run 1') # torch.set_default_dtype(torch.float16)f out_channels = 1 if cfg.MODEL.BINARY_CLASSIFICATION else cfg.MODEL.OUT_CHANNELS net = UNet(cfg) print('ready to run 2') if args.resume_from: # TODO Remove this full_model_path = os.path.join(cfg.OUTPUT_DIR, args.resume_from) net.load_state_dict(torch.load(full_model_path)) print('Model loaded from {}'.format(full_model_path)) device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
cfg.merge_from_list(args.opts) cfg.NAME = args.config_file if args.log_dir: # Override Output dir cfg.OUTPUT_DIR = path.join(args.log_dir, args.config_file) else: cfg.OUTPUT_DIR = path.join(cfg.OUTPUT_BASE_DIR, args.config_file) os.makedirs(cfg.OUTPUT_DIR, exist_ok=True) if args.data_dir: cfg.DATASETS.TRAIN = (args.data_dir, ) return cfg if __name__ == '__main__': args = default_argument_parser().parse_known_args()[0] cfg = setup(args) out_channels = cfg.MODEL.OUT_CHANNELS if cfg.MODEL.BACKBONE.ENABLED: net = smp.Unet( cfg.MODEL.BACKBONE.TYPE, encoder_weights=None, decoder_channels=[512, 256, 128, 64, 32], ) else: net = UNet(cfg) if args.resume and args.resume_from: full_model_path = path.join(cfg.OUTPUT_DIR, args.model_path) net.load_state_dict(torch.load(full_model_path))
f'{run_type} argmax F1': argmaxF1, f'{run_type} false positive rate': best_fpr, f'{run_type} false negative rate': best_fnr, 'step': step, 'epoch': epoch, }) print(f'{maxF1.item():.3f}', flush=True) return maxF1.item(), best_thresh.item() if __name__ == '__main__': # setting up config based on parsed argument parser = args.default_argument_parser() args = parser.parse_known_args()[0] cfg = setup(args) torch.manual_seed(cfg.SEED) np.random.seed(cfg.SEED) torch.backends.cudnn.deterministic = True torch.backends.cudnn.benchmark = False # loading network net = load_network(cfg) # tracking land with w&b if not cfg.DEBUG: wandb.init( name=cfg.NAME,