
摘要
命名实体识别(NER)是自然语言处理中的一个基本任务。近期的研究将命名实体识别视为阅读理解任务,通过手动构建类型特定的查询来提取实体。然而,这种范式存在三个问题。首先,类型特定的查询每次推理只能提取一种类型的实体,效率较低。其次,不同类型的实体提取过程相互独立,忽略了它们之间的依赖关系。第三,查询构建依赖外部知识,在现实场景中难以应用于包含数百种实体类型的情况。为了解决这些问题,我们提出了一种并行实例查询网络(PIQN),该网络设置全局且可学习的实例查询,以并行方式从句子中提取实体。每个实例查询预测一个实体,并通过同时输入所有实例查询,可以并行查询所有实体。实例查询不是从外部知识构建的,而是在训练过程中学习其不同的查询语义。在模型训练方面,我们将标签分配视为一个一对多的线性指派问题(LAP),并动态地将金标准实体分配给实例查询,以最小化分配成本。在嵌套和扁平命名实体识别数据集上的实验表明,我们提出的方法优于之前的最先进模型。
代码仓库
tricktreat/piqn
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| chinese-named-entity-recognition-on-msra | PIQN | F1: 93.48 |
| named-entity-recognition-ner-on-conll-2003 | PIQN | F1: 92.87 |
| named-entity-recognition-ner-on-ontonotes-v5 | PIQN | F1: 90.96 |
| named-entity-recognition-on-ace-2004 | PIQN | F1: 88.14 Multi-Task Supervision: n |
| named-entity-recognition-on-ace-2005 | PIQN | F1: 87.42 |
| named-entity-recognition-on-few-nerd-sup | PIQN | F1-Measure: 69.67 Precision: 70.16 Recall: 69.18 |
| named-entity-recognition-on-few-nerd-sup | Locate and Label | F1-Measure: 67.64 Precision: 64.69 Recall: 70.87 |
| named-entity-recognition-on-few-nerd-sup | Sequence-to-Set | F1-Measure: 68.23 Precision: 67.37 Recall: 69.12 |
| nested-named-entity-recognition-on-ace-2004 | PIQN | F1: 88.14 |
| nested-named-entity-recognition-on-ace-2005 | PIQN | F1: 87.42 |
| nested-named-entity-recognition-on-genia | PIQN | F1: 81.77 |
| nested-named-entity-recognition-on-nne | PIQN | Micro F1: 94.04 |
| nested-named-entity-recognition-on-tac-kbp | PIQN | F1: 84.5 |