语言:
- 英语
- 德语
- 法语
- 中文
- 意大利语
- 西班牙语
- 印地语
- 孟加拉语
- 阿拉伯语
- 俄语
- 乌克兰语
- 葡萄牙语
- 乌尔都语
- 印尼语
- 日语
- 尼泊尔语
- 荷兰语
- 土耳其语
- 加泰罗尼亚语
- 保加利亚语
- 粤语
示例文本:
- 文本: >-
1903年12月,法国皇家瑞典科学院将诺贝尔物理学奖授予皮埃尔·居里、玛丽·居里和亨利·贝克勒尔。
- 文本: >-
对于理查德·菲利普斯·费曼来说,在纽约向非专业人士和学生解释并阐明量子物理学中难以直观理解的规律一直至关重要。
- 文本: >-
特伦斯·大卫·约翰·普拉切特于1948年4月28日出生在英格兰白金汉郡的比肯斯菲尔德。
- 文本: >-
北京市,通称北京(汉语拼音:Běijīng;邮政式拼音:Peking),简称“京”,是中华人民共和国的首都及直辖市,是该国的政治、文化、科技、教育、军事和国际交往中心,是一座全球城市,是世界人口第三多的城市和人口最多的首都,具有重要的国际影响力,同时也是目前世界唯一的“双奥之城”,即唯一既主办过夏季奥运会又主办过冬季奥运会的城市。
标签:
许可证: MIT
数据集:
评估指标:
多语言命名实体识别的RoBERTa模型
模型描述
该模型通过按照IOB格式对每个标记进行分类来检测实体:
['O', 'B-PER', 'I-PER', 'B-ORG', 'I-ORG', 'B-LOC', 'I-LOC']
您可以在此GitHub仓库中找到代码。
训练数据
该模型在WikiANN数据集的一部分上进行了微调,对应以下语言:
["en","de", "fr",
"zh", "it", "es",
"hi", "bn", "ar",
"ru", "uk", "pt",
"ur", "id", "ja",
"ne", "nl", "tr",
"ca", "bg", "zh-yue"]
模型在训练集的375,100个句子和验证集的173,100个示例上进行了微调。报告的绩效指标基于额外的173,100个示例。完整的WikiANN数据集包含282种语言的训练示例,是从维基百科构建的。训练示例以自动化方式提取,利用维基百科文章中提到的实体,通常以超链接形式链接到源文章。提供的命名实体识别标签采用IOB2格式。命名实体被分类为地点(LOC)、人物(PER)或组织(ORG)。
评估结果
该模型在WikiANN数据集的测试集上取得了以下结果:
{'LOC': {'f1': 0.8994491397524903,
'number': 184430,
'precision': 0.8941572985543279,
'recall': 0.9048039906739684},
'ORG': {'f1': 0.829114679375883,
'number': 129760,
'precision': 0.8283525257886599,
'recall': 0.8298782367447596},
'PER': {'f1': 0.9115096398413828,
'number': 130471,
'precision': 0.9043545174723882,
'recall': 0.9187788857293958},
'overall_accuracy': 0.9398182274831388,
'overall_f1': 0.8825581369330908,
'overall_precision': 0.8781215422873389,
'overall_recall': 0.8870397898623895}
使用方法
您可以使用AutoTokenize和AutoModelForTokenClassification类加载此模型:
from transformers import AutoTokenizer, AutoModelForTokenClassification
tokenizer = AutoTokenizer.from_pretrained("julian-schelb/roberta-ner-multilingual/", add_prefix_space=True)
model = AutoModelForTokenClassification.from_pretrained("julian-schelb/roberta-ner-multilingual/")
text = "1903年12月,法国皇家瑞典科学院将诺贝尔物理学奖授予皮埃尔·居里、玛丽·居里和亨利·贝克勒尔。"
inputs = tokenizer(
text,
add_special_tokens=False,
return_tensors="pt"
)
with torch.no_grad():
logits = model(**inputs).logits
predicted_token_class_ids = logits.argmax(-1)
predicted_tokens_classes = [model.config.id2label[t.item()] for t in predicted_token_class_ids[0]]
predicted_tokens_classes
关于RoBERTa
该模型是XLM-RoBERTa的微调版本。原始模型在包含100种语言的2.5TB过滤后的CommonCrawl数据上进行了预训练。它由Conneau等人在论文Unsupervised Cross-lingual Representation Learning at Scale中提出,并首次在此仓库中发布。
RoBERTa是一种在大量文本语料上以自监督方式预训练的变换器模型。这意味着它仅对原始文本进行预训练,没有任何人工标注(因此可以利用大量公开可用的数据),并通过自动过程从这些文本生成输入和标签。
更准确地说,它是通过掩码语言建模(MLM)目标进行预训练的。模型随机掩码输入中15%的词,然后通过模型运行整个掩码句子,并预测被掩码的词。这与传统的循环神经网络(RNN)逐个查看词的方式不同,也与像GPT这样内部掩码未来标记的自回归模型不同。它允许模型学习句子的双向表示。
通过这种方式,模型学习了100种语言的内部表示,然后可以用于提取对下游任务有用的特征:例如,如果您有一个带标签句子的数据集,您可以使用XLM-RoBERTa模型生成的特征作为输入来训练标准分类器。
局限性和偏差
该模型受限于其训练数据集,即特定时间段内带有实体标注的新闻文章。这可能无法很好地泛化到不同领域的所有用例。
相关论文
- Pan, X., Zhang, B., May, J., Nothman, J., Knight, K., & Ji, H. (2017). Cross-lingual Name Tagging and Linking for 282 Languages. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) (pp. 1946–1958). Association for Computational Linguistics.
- Rahimi, A., Li, Y., & Cohn, T. (2019). Massively Multilingual Transfer for NER. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics (pp. 151–164). Association for Computational Linguistics.
- Liu, Y., Ott, M., Goyal, N., Du, J., Joshi, M., Chen, D., Levy, O., Lewis, M., Zettlemoyer, L., & Stoyanov, V.. (2019). RoBERTa: A Robustly Optimized BERT Pretraining Approach.
引用
该模型已为以下研究论文进行了微调:
@inproceedings{schelbECCEEntitycentricCorpus2022,
title = {{ECCE}: {Entity}-centric {Corpus} {Exploration} {Using} {Contextual} {Implicit} {Networks}},
url = {https://dl.acm.org/doi/10.1145/3487553.3524237},
booktitle = {Companion {Proceedings} of the {Web} {Conference} 2022},
author = {Schelb, Julian and Ehrmann, Maud and Romanello, Matteo and Spitz, Andreas},
year = {2022},
}