def get_parser()

in train-classif.py [0:0]


def get_parser():
    """
    Generate a parameters parser.
    """
    # parse parameters
    parser = argparse.ArgumentParser(description='Language transfer')

    # main parameters
    parser.add_argument("--dump_path", type=str, default="")
    parser.add_argument("--exp_name", type=str, default="bypass")
    parser.add_argument("--save_periodic", type=int, default=0)
    parser.add_argument("--exp_id", type=str, default="")
    parser.add_argument("--nb_workers", type=int, default=10)
    parser.add_argument("--fp16", type=bool_flag, default=False)

    # dataset
    parser.add_argument("--dataset", type=str, default="cifar10")
    parser.add_argument("--num_classes", type=int, default=-1)

    # model type
    parser.add_argument("--architecture", type=str, default="myresnet2")
    parser.add_argument("--non_linearity", type=str, default="relu")
    parser.add_argument("--pretrained", type=bool_flag, default=False)
    parser.add_argument("--from_ckpt", type=str, default="")
    parser.add_argument("--load_linear", type=bool_flag, default=False)
    parser.add_argument("--train_path", type=str, default="vanilla_train")

    # parser.add_argument("--zero_init_residual", type=bool_flag, default=False,
    #                     help="Resnet parameter")
    # parser.add_argument("--groups", type=int, default=1,
    #                     help="Resnet parameter")
    # parser.add_argument("--width_per_group", type=int, default=64,
    #                     help="Resnet parameter")
    # parser.add_argument("--replace_stride_with_dilation", type=list, default=None,
    #                     help="Resnet parameter")
    # parser.add_argument("--norm_layer", type=str, default=None,
    #                     help="Resnet parameter")

    # training parameters
    parser.add_argument("--optimizer", type=str, default="sgd,lr=0.1-0.01-0.001,momentum=0.9,weight_decay=0.0001")
    parser.add_argument("--batch_size", type=int, default=256)
    parser.add_argument("--epochs", type=int, default=90)
    parser.add_argument("--stopping_criterion", type=str, default="")
    parser.add_argument("--validation_metrics", type=str, default="")
    parser.add_argument("--train_transform", choices=["random", "flip", "center"], default="random")
    parser.add_argument("--seed", type=int, default=0)
    parser.add_argument("--only_train_linear", type=bool_flag, default=False)

    # reload
    parser.add_argument("--reload_model", type=str, default="")

    # evaluation
    parser.add_argument("--eval_only", type=bool_flag, default=False)

    # debug
    parser.add_argument("--debug_train", type=bool_flag, default=False)
    parser.add_argument("--debug_slurm", type=bool_flag, default=False)
    parser.add_argument("--debug", help="Enable all debug flags", action="store_true")

    # multi-gpu / multi-node
    parser.add_argument("--local_rank", type=int, default=-1)
    parser.add_argument("--master_port", type=int, default=-1)

    return parser