Ejemplo n.º 1
0
                        type=str,
                        help="The input data dir")
    parser.add_argument("--train_file",
                        default="ratings_train.txt",
                        type=str,
                        help="Train file")
    parser.add_argument("--test_file",
                        default="ratings_test.txt",
                        type=str,
                        help="Test file")

    parser.add_argument("--model_type",
                        default="kobert",
                        type=str,
                        help="Model type selected in the list: " +
                        ", ".join(MODEL_CLASSES.keys()))

    parser.add_argument('--seed',
                        type=int,
                        default=42,
                        help="random seed for initialization")
    parser.add_argument("--train_batch_size",
                        default=32,
                        type=int,
                        help="Batch size for training.")
    parser.add_argument("--eval_batch_size",
                        default=64,
                        type=int,
                        help="Batch size for evaluation.")
    parser.add_argument(
        "--max_seq_len",
Ejemplo n.º 2
0
    if args.do_pred:
        trainer.load_model()
        texts = read_prediction_text(args)
        trainer.predict(texts, tokenizer)


if __name__ == '__main__':
    parser = argparse.ArgumentParser()

    parser.add_argument("--task", default=None, required=True, type=str, help="The name of the task to train")
    parser.add_argument("--model_dir", default=None, required=True, type=str, help="Path to save, load model")
    parser.add_argument("--data_dir", default="./data", type=str, help="The input data dir")
    parser.add_argument("--intent_label_file", default="intent_label.txt", type=str, help="Intent Label file")
    parser.add_argument("--slot_label_file", default="slot_label.txt", type=str, help="Slot Label file")

    parser.add_argument("--model_type", default="bert", type=str, help="Model type selected in the list: " + ", ".join(MODEL_CLASSES.keys()))

    parser.add_argument('--seed', type=int, default=1234, help="random seed for initialization")
    parser.add_argument("--batch_size", default=16, type=int, help="Batch size for training and evaluation.")
    parser.add_argument("--max_seq_len", default=50, type=int, help="The maximum total input sequence length after tokenization.")
    parser.add_argument("--learning_rate", default=5e-5, type=float, help="The initial learning rate for Adam.")
    parser.add_argument("--num_train_epochs", default=10.0, type=float, help="Total number of training epochs to perform.")
    parser.add_argument("--weight_decay", default=0.0, type=float, help="Weight decay if we apply some.")
    parser.add_argument('--gradient_accumulation_steps', type=int, default=1,
                        help="Number of updates steps to accumulate before performing a backward/update pass.")
    parser.add_argument("--adam_epsilon", default=1e-8, type=float, help="Epsilon for Adam optimizer.")
    parser.add_argument("--max_grad_norm", default=1.0, type=float, help="Max gradient norm.")
    parser.add_argument("--max_steps", default=-1, type=int, help="If > 0: set total number of training steps to perform. Override num_train_epochs.")
    parser.add_argument("--warmup_steps", default=0, type=int, help="Linear warmup over warmup_steps.")
    parser.add_argument("--dropout_rate", default=0.1, type=float, help="Dropout for fully-connected layers")
Ejemplo n.º 3
0
if __name__ == '__main__':
    parser = argparse.ArgumentParser()
    parser.add_argument('--input_file',
                        type=str,
                        default=None,
                        required=True,
                        help='Input file for prediction.Required argument')
    parser.add_argument('--output_file',
                        type=str,
                        default=None,
                        required=True,
                        help='output file for prediction.Required argument')
    parser.add_argument('--model_type',
                        type=str,
                        default=None,
                        choices=MODEL_CLASSES.keys(),
                        required=True,
                        help='Model type selected in list:' +
                        ','.join(MODEL_CLASSES.keys()))
    parser.add_argument('--model_dir',
                        type=str,
                        default=None,
                        required=True,
                        help='load pretrain Model dir.Required argument')
    parser.add_argument('--no_cuda',
                        action='store_true',
                        help='Control to put data in cpu')
    parser.add_argument('--pad_label_id',
                        default=0,
                        type=int,
                        help="To filter first wordPiece slot tag")
Ejemplo n.º 4
0
        write_csvFile(os.path.join(args.data_dir, "result.csv"), results)



if __name__ == '__main__':
    parser = argparse.ArgumentParser()

    parser.add_argument("--task", default="nsmc", type=str, help="The name of the task to train")
    parser.add_argument("--model_dir", default="./model", type=str, help="Path to save, load model")
    parser.add_argument("--data_dir", default="./data", type=str, help="The input data dir")
    parser.add_argument("--train_file", default="news_train.tsv", type=str, help="Train file")
    parser.add_argument("--dev_file", default="news_test_temp.tsv", type=str, help="Test file")
    parser.add_argument("--test_file", default="news_test.tsv", type=str, help="Test file")

    parser.add_argument("--model_type", default="hanbert", type=str,
                        help="Model type selected in the list: " + ", ".join(MODEL_CLASSES.keys()))
    parser.add_argument("--model_name_or_path", default="HanBert-54kN-torch", type=str,
                        help="Path to pre-trained model or shortcut name")

    parser.add_argument('--seed', type=int, default=42, help="random seed for initialization")
    parser.add_argument("--train_batch_size", default=32, type=int, help="Batch size for training.")
    parser.add_argument("--eval_batch_size", default=64, type=int, help="Batch size for evaluation.")
    parser.add_argument("--max_title_len", default=50, type=int,
                        help="The maximum title input sequence length after tokenization.")
    parser.add_argument("--max_sentence_len", default=100, type=int,
                        help="The maximum sentence of contents input sequence length after tokenization.")
    parser.add_argument("--learning_rate", default=5e-5, type=float, help="The initial learning rate for Adam.")
    parser.add_argument("--num_train_epochs", default=5.0, type=float,
                        help="Total number of training epochs to perform.")
    parser.add_argument("--weight_decay", default=0.0, type=float, help="Weight decay if we apply some.")
    parser.add_argument('--gradient_accumulation_steps', type=int, default=1,
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("--per_gpu_eval_batch_size",
                        default=20,
                        type=int,
                        help="Batch size per GPU/CPU for evaluation.")
    parser.add_argument("--per_gpu_train_batch_size",
                        default=20,
                        type=int,
                        help="Batch size per GPU/CPU for evaluation.")
    parser.add_argument("--no_cuda",
                        action="store_true",
                        help="Avoid using CUDA when available")
    parser.add_argument("--model_type",
                        required=True,
                        type=str,
                        choices=list(MODEL_CLASSES.keys()),
                        help="The model architecture to be fine-tuned.")
    parser.add_argument(
        "--model_name_or_path",
        required=True,
        type=str,
        help="The model checkpoint for weights initialization.",
    )
    parser.add_argument(
        "--overwrite_cache",
        action="store_true",
        help="Overwrite the cached training and evaluation sets")
    parser.add_argument("--sequence_length",
                        default=128,
                        type=int,
                        help="Sequence length for language model.")
    parser.add_argument(
        "--mlm_probability",
        type=float,
        default=0.15,
        help="Ratio of tokens to mask for masked language modeling loss")
    parser.add_argument("--num_train_epochs",
                        default=5,
                        type=int,
                        help="Total number of training epochs to perform.")
    parser.add_argument(
        "--max_steps",
        default=-1,
        type=int,
        help=
        "If > 0: set total number of training steps to perform. Override num_train_epochs.",
    )
    parser.add_argument("--warmup_steps",
                        default=0,
                        type=int,
                        help="Linear warmup over warmup_steps.")
    parser.add_argument("--logging_steps",
                        type=int,
                        default=20,
                        help="Log every X updates steps.")
    parser.add_argument("--save_steps",
                        type=int,
                        default=1000,
                        help="Save checkpoint every X updates steps.")
    parser.add_argument(
        "--gradient_accumulation_steps",
        type=int,
        default=1,
        help=
        "Number of updates steps to accumulate before performing a backward/update pass.",
    )
    parser.add_argument("--learning_rate",
                        default=5e-5,
                        type=float,
                        help="The initial learning rate for Adam.")
    parser.add_argument("--weight_decay",
                        default=0.0,
                        type=float,
                        help="Weight decay if we apply some.")
    parser.add_argument("--adam_epsilon",
                        default=1e-8,
                        type=float,
                        help="Epsilon for Adam optimizer.")
    parser.add_argument("--max_grad_norm",
                        default=1.0,
                        type=float,
                        help="Max gradient norm.")
    parser.add_argument(
        "--save_total_limit",
        type=int,
        default=None,
        help=
        "Limit the total amount of checkpoints, delete the older checkpoints in the output_dir, does not delete by default",
    )
    parser.add_argument(
        "--cache_dir",
        default="",
        type=str,
        help=
        "Optional directory to store the pre-trained models downloaded from s3 (instead of the default one)",
    )
    parser.add_argument(
        "--output_dir",
        default="",
        type=str,
        help=
        "Optional directory to store the pre-trained models downloaded from s3 (instead of the default one)",
    )
    parser.add_argument("--training_type",
                        required=True,
                        choices=["comment", "post"],
                        help="Choose between a comment/post fine-tuned model.")
    parser.add_argument("--train_files", nargs='+', help='Training file(s)')
    parser.add_argument("--seed",
                        type=int,
                        default=42,
                        help="random seed for initialization")
    parser.add_argument(
        "--legacy",
        action="store_true",
        help="Legacy code for compatibility with older pytorch versions.")

    args = parser.parse_args()

    device = torch.device(
        "cuda" if torch.cuda.is_available() and not args.no_cuda else "cpu")
    args.n_gpu = torch.cuda.device_count()

    args.device = device

    # Setup logging
    logging.basicConfig(
        format='%(asctime)s - %(levelname)s - %(name)s -   %(message)s',
        datefmt='%m/%d/%Y %H:%M:%S',
        level=logging.INFO)
    logger.warning(
        "Process rank: %s, device: %s, n_gpu: %s, distributed training: %s, 16-bits training: %s",
        -1, device, args.n_gpu, False, False)

    # Set seed
    set_seed(args)

    config_class, model_class, tokenizer_class = MODEL_CLASSES[args.model_type]

    config = config_class.from_pretrained(
        args.model_name_or_path,
        cache_dir=args.cache_dir if args.cache_dir else None)
    config.output_hidden_states = True
    tokenizer = tokenizer_class.from_pretrained(
        args.model_name_or_path,
        cache_dir=args.cache_dir if args.cache_dir else None)

    model = model_class.from_pretrained(
        args.model_name_or_path,
        from_tf=bool('.ckpt' in args.model_name_or_path),
        config=config,
        cache_dir=args.cache_dir if args.cache_dir else None)

    model.to(args.device)
    logger.info("Training/evaluation parameters %s", args)

    # Training
    dataset = load_and_cache_datasets(args, tokenizer)
    train(args, dataset, model, tokenizer)