语言: 英文
数据集:
bert-base-NER的ONNX转换版本
模型描述
bert-base-NER 是一个经过微调的BERT模型,专为命名实体识别(NER)任务设计,并在此任务上达到了业界领先的性能。该模型能够识别四种实体类型:地点(LOC)、组织(ORG)、人名(PER)以及其他类别(MISC)。
具体而言,该模型基于bert-base-cased架构,并在标准的英文版CoNLL-2003命名实体识别数据集上进行了微调。
若需使用基于相同数据集微调的更大规模BERT-large模型,可选用bert-large-NER版本。
使用场景与限制
使用方法
可通过Transformers的pipeline功能进行NER任务调用:
from transformers import AutoTokenizer, AutoModelForTokenClassification
from transformers import pipeline
tokenizer = AutoTokenizer.from_pretrained("dslim/bert-base-NER")
model = AutoModelForTokenClassification.from_pretrained("dslim/bert-base-NER")
nlp = pipeline("ner", model=model, tokenizer=tokenizer)
example = "My name is Wolfgang and I live in Berlin"
ner_results = nlp(example)
print(ner_results)
局限性
该模型的训练数据源自特定时间段内带有实体标注的新闻文章,可能无法泛化至所有领域场景。此外,模型偶尔会将子词标记误标为实体,需通过后处理修正此类情况。
训练数据
模型微调采用标准CoNLL-2003命名实体识别数据集的英文版本。
训练数据区分实体的起始与延续部分,以处理同类实体连续出现的情况。每个标记将被分类为以下类别之一:
缩写 |
描述 |
O |
非实体部分 |
B-MIS |
紧接其他杂项实体的杂项实体起始 |
I-MIS |
杂项实体 |
B-PER |
紧接其他人名的人名起始 |
I-PER |
人名 |
B-ORG |
紧接其他组织的组织起始 |
I-ORG |
组织 |
B-LOC |
紧接其他地点的地点起始 |
I-LOC |
地点 |
CoNLL-2003英文数据集统计
该数据集基于路透社新闻语料库构建,详细创建方法参见CoNLL-2003论文。
各实体类型训练样本数
数据集 |
LOC |
MISC |
ORG |
PER |
训练集 |
7140 |
3438 |
6321 |
6600 |
开发集 |
1837 |
922 |
1341 |
1842 |
测试集 |
1668 |
702 |
1661 |
1617 |
数据集规模统计
数据集 |
文章数 |
句子数 |
标记数 |
训练集 |
946 |
14,987 |
203,621 |
开发集 |
216 |
3,466 |
51,362 |
测试集 |
231 |
3,684 |
46,435 |
训练过程
模型在单块NVIDIA V100 GPU上训练,超参数设置遵循原始BERT论文对CoNLL-2003 NER任务的推荐配置。
评估结果
指标 |
开发集 |
测试集 |
F1值 |
95.1 |
91.3 |
精确率 |
95.0 |
90.7 |
召回率 |
95.3 |
91.9 |
测试指标略低于官方Google BERT结果(后者采用文档上下文编码与CRF实验)。复现细节参见此讨论。
文献引用
@article{DBLP:journals/corr/abs-1810-04805,
author = {Jacob Devlin and
Ming{-}Wei Chang and
Kenton Lee and
Kristina Toutanova},
title = {{BERT:} Pre-training of Deep Bidirectional Transformers for Language
Understanding},
journal = {CoRR},
volume = {abs/1810.04805},
year = {2018},
url = {http://arxiv.org/abs/1810.04805},
archivePrefix = {arXiv},
eprint = {1810.04805},
timestamp = {Tue, 30 Oct 2018 20:39:56 +0100},
biburl = {https://dblp.org/rec/journals/corr/abs-1810-04805.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
@inproceedings{tjong-kim-sang-de-meulder-2003-introduction,
title = "Introduction to the {C}o{NLL}-2003 Shared Task: Language-Independent Named Entity Recognition",
author = "Tjong Kim Sang, Erik F. and
De Meulder, Fien",
booktitle = "Proceedings of the Seventh Conference on Natural Language Learning at {HLT}-{NAACL} 2003",
year = "2003",
url = "https://www.aclweb.org/anthology/W03-0419",
pages = "142--147",
}