模型:
michiyasunaga/LinkBERT-base
LinkBERT-base模型在英文Wikipedia文章上进行了预训练,并包含超链接信息。它在论文 LinkBERT: Pretraining Language Models with Document Links (ACL 2022) 中介绍。代码和数据可在 this repository 中获取。
LinkBERT是一个在大型文档语料库上进行预训练的Transformer编码器(类似于BERT的模型)。它是BERT的改进版本,可以捕捉到跨多个文档的知识,例如超链接和引用链接。具体而言,除了单个文档外,LinkBERT通过将链接的文档输入到相同的语言模型上下文中进行预训练。
LinkBERT可以作为BERT的替代模型使用。它在一般语言理解任务(如文本分类)中取得了更好的性能,并且在知识密集型任务(如问题回答)和跨文档任务(如阅读理解、文档检索)中尤为有效。
该模型可通过在下游任务上进行微调来使用,例如问题回答、序列分类和标记分类。您还可以使用原始模型进行特征提取(即获取输入文本的嵌入向量)。
要在PyTorch中使用该模型获取给定文本的特征:
from transformers import AutoTokenizer, AutoModel tokenizer = AutoTokenizer.from_pretrained('michiyasunaga/LinkBERT-base') model = AutoModel.from_pretrained('michiyasunaga/LinkBERT-base') inputs = tokenizer("Hello, my dog is cute", return_tensors="pt") outputs = model(**inputs) last_hidden_states = outputs.last_hidden_state
对于微调,您可以使用 this repository 或遵循其他BERT微调代码库的方法。
在下游任务上进行微调时,LinkBERT达到了以下结果。
HotpotQA | TriviaQA | SearchQA | NaturalQ | NewsQA | SQuAD | GLUE | |
---|---|---|---|---|---|---|---|
F1 | F1 | F1 | F1 | F1 | F1 | Avg score | |
BERT-base | 76.0 | 70.3 | 74.2 | 76.5 | 65.7 | 88.7 | 79.2 |
LinkBERT-base | 78.2 | 73.9 | 76.8 | 78.3 | 69.3 | 90.1 | 79.6 |
BERT-large | 78.1 | 73.7 | 78.3 | 79.0 | 70.9 | 91.1 | 80.7 |
LinkBERT-large | 80.8 | 78.2 | 80.5 | 81.0 | 72.6 | 92.7 | 81.1 |
如果您在项目中使用了LinkBERT,请引用以下内容:
@InProceedings{yasunaga2022linkbert, author = {Michihiro Yasunaga and Jure Leskovec and Percy Liang}, title = {LinkBERT: Pretraining Language Models with Document Links}, year = {2022}, booktitle = {Association for Computational Linguistics (ACL)}, }