def METHOD_NAME():
    parser = argparse.ArgumentParser(description="Go NGCF")
    parser.add_argument(
        '--batch_size',
        type=int,
        default=1024,
        help="the batch size for bpr loss training procedure")
    parser.add_argument(
        '--recdim', type=int, default=64, help="the embedding size of NGCF")
    parser.add_argument(
        '--n_layers', type=int, default=3, help="the layer num of NGCF")
    parser.add_argument(
        '--lr', type=float, default=0.0001, help="the learning rate")
    parser.add_argument(
        '--decay',
        type=float,
        default=1e-5,
        help="the weight decay for l2 normalizaton")
    parser.add_argument(
        '--test_batch_size',
        type=int,
        default=1024,
        help="the batch size of users for testing")
    parser.add_argument(
        '--dataset',
        type=str,
        default='gowalla',
        help="available datasets: [lastfm, gowalla, yelp2018, amazon-book]")
    parser.add_argument(
        '--path',
        type=str,
        default="./checkpoints",
        help="path to save weights")
    parser.add_argument(
        '--topks', nargs='?', default="[20]", help="@k test list")
    parser.add_argument('--epochs', type=int, default=1000)
    parser.add_argument('--seed', type=int, default=2020, help='random seed')
    return parser.METHOD_NAME()