def METHOD_NAME():
    parser = argparse.ArgumentParser(description='DG')
    parser.add_argument('--algorithm', type=str, default="ERM")
    parser.add_argument('--alpha', type=float,
                        default=0.1, help="DANN dis alpha")
    parser.add_argument('--batch_size', type=int,
                        default=32, help="batch_size")
    parser.add_argument('--beta1', type=float, default=0.5, help="Adam")
    parser.add_argument('--bottleneck', type=int, default=256)
    parser.add_argument('--checkpoint_freq', type=int,
                        default=100, help='Checkpoint every N steps')
    parser.add_argument('--classifier', type=str,
                        default="linear", choices=["linear", "wn"])
    parser.add_argument('--class_balanced', type=int, default=0)
    parser.add_argument('--data_file', type=str, default='')
    parser.add_argument('--dataset', type=str, default='dsads')
    parser.add_argument('--data_dir', type=str, default='')
    parser.add_argument('--dis_hidden', type=int, default=256)
    parser.add_argument('--gpu_id', type=str, nargs='?',
                        default='0', help="device id to run")
    parser.add_argument('--layer', type=str, default="bn",
                        choices=["ori", "bn"])
    parser.add_argument('--ldmarginlosstype', type=str, default='avg_top_k',
                        choices=['all_top_k', 'worst_top_k', 'avg_top_k'])
    parser.add_argument('--lr', type=float, default=1e-2, help="learning rate")
    parser.add_argument('--lr_decay1', type=float,
                        default=1.0, help='for pretrained featurizer')
    parser.add_argument('--lr_decay2', type=float, default=1.0)
    parser.add_argument('--max_epoch', type=int,
                        default=150, help="max iterations")
    parser.add_argument('--mixupalpha', type=float, default=0.2)
    parser.add_argument('--mixup_ld_margin', type=float, default=10000)
    parser.add_argument('--mixupregtype', type=str,
                        default='l-margin', choices=['ld-margin'])
    parser.add_argument('--net', type=str,
                        default='ActNetwork', help="ActNetwork")
    parser.add_argument('--N_WORKERS', type=int, default=4)
    parser.add_argument('--schuse', action='store_true')
    parser.add_argument('--schusech', type=str, default='cos')
    parser.add_argument('--seed', type=int, default=0)
    parser.add_argument('--seed1', type=int, default=0)
    parser.add_argument('--task', type=str,
                        default="cross_people", choices=['cross_people'])
    parser.add_argument('--test_envs', type=int, nargs='+', default=[0])
    parser.add_argument('--top_k', type=int, default=1)
    parser.add_argument('--output', type=str, default="train_output")
    parser.add_argument('--valid', action='store_true')
    parser.add_argument('--valid_size', type=float, default=0.2)
    parser.add_argument('--weight_decay', type=float, default=5e-4)
    parser.add_argument('--wtype', type=str, default='ori',
                        choices=['ori', 'abs', 'fea'])
    args = parser.parse_args()
    return args