模型:

microsoft/prophetnet-large-uncased

英文

prophetnet-large-uncased

预训练模型权重为 ProphetNet . ProphetNet是一种用于序列到序列学习的新型预训练语言模型,具有一种称为未来n-gram预测的新颖自监督目标。ProphetNet能够使用n个流解码器预测更多未来的标记。原始实现是Fairseq版本,位于 github repo

使用方法

这个预训练模型可以在序列到序列任务上进行微调。例如,可以按照以下方式对其进行标题生成训练:

from transformers import ProphetNetForConditionalGeneration, ProphetNetTokenizer

model = ProphetNetForConditionalGeneration.from_pretrained("microsoft/prophetnet-large-uncased")
tokenizer = ProphetNetTokenizer.from_pretrained("microsoft/prophetnet-large-uncased")

input_str = "the us state department said wednesday it had received no formal word from bolivia that it was expelling the us ambassador there but said the charges made against him are `` baseless ."
target_str = "us rejects charges against its ambassador in bolivia"

input_ids = tokenizer(input_str, return_tensors="pt").input_ids
labels = tokenizer(target_str, return_tensors="pt").input_ids

loss = model(input_ids, labels=labels).loss

引用

@article{yan2020prophetnet,
  title={Prophetnet: Predicting future n-gram for sequence-to-sequence pre-training},
  author={Yan, Yu and Qi, Weizhen and Gong, Yeyun and Liu, Dayiheng and Duan, Nan and Chen, Jiusheng and Zhang, Ruofei and Zhou, Ming},
  journal={arXiv preprint arXiv:2001.04063},
  year={2020}
}