
摘要
实体是知识表示与聚合的核心。例如,维基百科等百科全书正是以实体为结构单位(每篇维基百科文章对应一个实体)。在知识密集型任务(如实体链接和开放域问答)中,根据查询准确检索出相应实体是一项基础性能力。当前的方法通常被理解为在原子标签(每个实体对应一个标签)之间进行分类,其模型权重向量是通过编码实体元信息(如描述文本)生成的稠密实体表示。然而,该方法存在若干局限:(i)上下文与实体之间的关联性主要依赖向量点积来捕捉,可能忽略细粒度的交互关系;(ii)在处理大规模实体集合时,需存储大量稠密表示,导致内存开销巨大;(iii)训练过程中必须精心采样一组“硬负样本”(hard negatives),增加了训练复杂度。在本研究中,我们提出GENRE——首个通过自回归方式逐词、从左至右生成实体唯一名称来实现实体检索的系统。该方法有效缓解了上述技术挑战:(i)自回归建模形式天然捕捉了上下文与实体名称之间的关联,实现了上下文与名称的显式交叉编码;(ii)内存开销显著降低,因为所采用的编码器-解码器架构参数量仅与词汇表规模相关,而非实体数量;(iii)采用softmax损失函数时无需对负样本进行子采样。我们在超过20个数据集上对实体消歧、端到端实体链接以及文档检索任务进行了实验,取得了新的最先进(SOTA)或极具竞争力的性能表现,同时仅需竞争对手系统约一小部分的内存占用。最后,我们证明,只需指定新实体的名称,即可轻松将其加入系统。代码与预训练模型详见:https://github.com/facebookresearch/GENRE。
代码仓库
facebookresearch/GENRE
官方
pytorch
GitHub 中提及
amzn/seqzero
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| entity-disambiguation-on-ace2004 | GENRE | Micro-F1: 90.1 |
| entity-disambiguation-on-aida-conll | GENRE | In-KB Accuracy: 93.3 |
| entity-disambiguation-on-aquaint | GENRE | Micro-F1: 89.9 |
| entity-disambiguation-on-msnbc | GENRE | Micro-F1: 94.3 |
| entity-disambiguation-on-wned-cweb | GENRE | Micro-F1: 77.3 |
| entity-disambiguation-on-wned-wiki | GENRE | Micro-F1: 87.4 |
| entity-linking-on-aida-conll | De Cao et al. (2021a) | Micro-F1 strong: 83.7 |
| entity-linking-on-derczynski-1 | De Cao et al. (2021a) | Micro-F1: 54.1 |
| entity-linking-on-kilt-aida-yago2 | GENRE | Accuracy: 89.85 KILT-AC: 89.85 R-Prec: 89.85 Recall@5: 94.76 |
| entity-linking-on-kilt-wned-cweb | GENRE | Accuracy: 71.22 KILT-AC: 71.22 R-Prec: 71.22 Recall@5: 79.22 |
| entity-linking-on-kilt-wned-wiki | GENRE | Accuracy: 87.44 KILT-AC: 87.44 R-Prec: 87.44 Recall@5: 94.91 |
| entity-linking-on-msnbc-1 | De Cao et al. (2021a) | Micro-F1: 73.7 |