想象一下你正在分析小说《阿拉丁》。你想追踪文中每一次提到主角的地方,无论是通过他的名字 (“阿拉丁”) ,名词短语 (“那个男孩”) ,还是代词 (“他”) 。
在自然语言处理 (NLP) 中,这通常由 指代消解 (Coreference Resolution, CR) 来处理。CR 的目标是找到文本中的每一个指称 (mention) ,并根据它们所指代的实体将它们聚类在一起。这听起来很简单,但在实践中,CR 是出了名的困难。在新闻文章上训练的模型,应用到文学作品或医学文本时往往表现糟糕。为什么?因为它们常常陷入试图消解 所有内容 的泥潭,包括无关紧要的背景人物或抽象概念,并且经常在什么才算作“指称”这一问题上产生分歧。
在这篇文章中,我们将深入探讨一篇引人入胜的论文,题为 “主要实体识别: 指代消解的一种可泛化替代方案” (Major Entity Identification: A Generalizable Alternative to Coreference Resolution) 。 研究人员提出了一个视角的转变: 与其试图从零开始消解每一个实体,如果我们预先告诉模型谁是 主要实体 (Major Entities) 会怎样?
结果是,这种任务不仅更易于评估、运行速度更快,而且在不同领域间的泛化能力也更好。
传统指代消解的问题
要理解为什么我们需要一种新方法,我们首先需要看看标准 CR 遇到了什么困难。
指代消解本质上是一个无监督聚类问题。模型阅读文本,并试图将文本跨度 (指称) 分组为簇。
- 指称检测 (Mention Detection) : “这个短语是指代某个东西吗?”
- 聚类 (Clustering) : “‘那个可怜的裁缝’和‘他’是指同一个人吗?”
瓶颈在于 泛化能力 。 不同的数据集有不同的标注规则。例如,著名的 OntoNotes 数据集 (用于训练许多模型) 有着严格的规则,这与 LitBank 等文学数据集截然不同。一个在 OntoNotes 上训练的模型会学习到关于什么是“指称”的特定特质。当你测试该模型在小说上的表现时,它会失败——这不一定是因为它不懂语言,而是因为它在寻找错误类型的指称。
主要实体识别 (MEI) 的登场
作者提出了 主要实体识别 (Major Entity Identification, MEI) 。 其核心理念很简单: 在大多数实际应用中,我们并不关心每一个实体。如果你在分析电影剧本,你关心的是主要角色。如果你在分析财经新闻,你关心的是特定的公司。
在 MEI 中,目标实体作为 输入 提供。

如 图 1 所示,区别在于结构上:
- CR (左) : 模型必须弄清楚“Mustapha”、“poor tailor” (可怜的裁缝) 、“father” (父亲) 和“friends” (朋友) 都是实体,然后对它们进行聚类。
- MEI (右) : 我们提供集合 \(E = \{Mustapha, Aladdin\}\) 作为输入。模型的唯一工作就是扫描文本并标记指代这些特定输入的指称。其他所有内容都被忽略。
这种转变将问题从 聚类 (对未知项目分组) 转变为 分类 (将项目分配给已知类别) 。
为什么要关注主要实体?
从统计上看,少数主要实体主导了语篇。在文学数据集中,一小部分角色占据了绝大多数的指称。通过忽略“单例” (仅提及一次的实体) 和背景噪音,模型可以专注于重要内容。

表 1 强调了这一区别。请注意,虽然指称的数量下降了 (因为我们忽略了次要角色) ,但 平均簇大小 (Average cluster size) 飙升。在 FantasyCoref 数据集中,平均簇大小从 CR 的约 9.7 跃升至 MEI 的 38.1。这表明 MEI 专注于推动叙事的实体。
解决方案: MEIRa
研究人员提出了一种名为 MEIRa (基于 排序 的主要实体识别,Major Entity Identification via Ranking )的监督模型。
与动态构建簇的传统 CR 模型不同,MEIRa 通过排序来工作。它接收一个文档和一个“指示性短语” (例如,“Aladdin”、“Mustapha”) 列表,并学习将文本中的指称链接到这些短语。
架构
该过程包含三个主要步骤:
- 文档编码: Longformer 模型阅读文档以理解上下文。
- 指称提议: 模型识别可能成为指称的潜在文本跨度。
- 识别模块: 这是将指称链接到主要实体的核心引擎。

图 2 展示了该架构。让我们分解一下:
- 输入: 我们有一个来自文本的指称 \(m\) 和一组实体表示 \(E\) (源自提供的主要实体名称) 。
- 评分 (\(f\)): 一个神经网络对指称 \(m\) 属于实体 \(e\) 的可能性进行评分。
- 阈值处理 (\(\tau\)): 如果分数足够高,则匹配成功。如果不够高,该指称被分配给“空”类 (意味着它指代次要实体或者根本不是指称) 。
评分函数的数学定义如下:

这里,函数 \(f\) 接收指称的向量 (\(\mathbf{m}_i\))、实体的向量 (\(\mathbf{e}_j\)) 以及一些元数据 \(\chi\) (如它们之间的距离) 。它输出一个分数。
决策逻辑是一个简单的阈值检查:

如果最高分 \(s_i^*\) 超过阈值 \(\tau\),则指称被分配给该实体。否则,返回 \(\emptyset\)。
MEIRa 的两种风味: 静态版与混合版
作者提出了该模型的两种变体,可见于图 2 的路径中:
- MEIRa-静态版 (MEIRa-S): 主要实体 (例如,“Aladdin”) 的表示在开始时计算一次。它永远不会改变。这使得模型 极其快速 , 因为每个指称都可以并行处理。
- MEIRa-混合版 (MEIRa-H): 这更像传统的指代消解。随着模型找到 Aladdin 的指称 (例如,“the boy”、“he”) ,它会更新 Aladdin 的表示以包含新的上下文。这种“动态记忆”通常能提高准确性,但需要按顺序处理文本。
评估: 它具有泛化能力吗?
该论文的主要主张是 MEI 比 CR 具有更好的泛化能力。为了测试这一点,研究人员在一个数据集 (OntoNotes) 上训练模型,并在完全不同的文学数据集 (LitBank 和 FantasyCoref) 上进行测试。
结果非常鲜明。

表 3 显示了泛化性能。看看基线 CR 模型 (Coref-ID, Coref-CM, Coref-FM) 的性能下滑。当在 OntoNotes 上训练并在 LitBank 上测试时,它们的性能崩塌了 (例如,Coref-ID 的 Micro-F1 下降到 57.7) 。
相比之下, MEIRa-H 保持了高性能 (在 LitBank 上达到 78.6 Micro-F1) 。因为 MEI 将“谁重要”的定义转移给了输入,模型不会被关于单例指称或次要角色的不同标注风格所困惑。它只是寻找你要求的实体。
速度比较
我们之前提到 MEIRa-S (静态版) 允许并行处理。这有多大区别呢?

如 图 3 所示,MEIRa-S 提供了巨大的速度提升——比基线 longdoc 模型 快约 25 倍 。 对于长篇书籍或大型档案,这种效率是颠覆性的。
MEI 与大型语言模型
该论文还探讨了像 GPT-4 这样的大型语言模型 (LLM) 如何处理这项任务。你可能认为 LLM 非常适合这个任务,但它们有一个特定的弱点: 指称边界 (Mention Boundaries) 。
如果你让 LLM “找到所有提到 Alice 的地方”,它在语义上理解这个任务。然而,它很难识别文本的确切跨度 (例如,识别“那个好奇的小女孩”与仅仅识别“女孩”) 。这导致在严格的指标上表现不佳。
两阶段提示解决方案
为了解决这个问题,作者设计了一个巧妙的两阶段提示策略:
- 词级检测: 首先,要求 LLM 仅标记指称的 中心词 (head word) (例如,在“the big red dog”中,只标记“dog”) 。LLM 在这种精确任务上表现得更好。
- 中心词到跨度检索 (H2S) : 使用第二个提示 (或像 spaCy 这样的确定性工具) 将该中心词扩展为完整的语法跨度 (“the big red dog”) 。

表 6 展示了这一策略的影响。
- 单一提示 (Single Prompt) : GPT-4 在 LitBank 上达到 70.7 的 Micro-F1。
- 两阶段提示 (词级 + H2S) : GPT-4 跃升至 85.5 , 实际上在该特定数据集上优于监督的 MEIRa 模型。
这表明,虽然像 MEIRa 这样的监督模型高效且稳健,但通过正确的提示工程,LLM 也可以适应 MEI,避开它们在跨度检测上的弱点。
结论
从指代消解向 主要实体识别 的转变代表了 NLP 的一种务实进化。通过承认我们通常知道我们对 谁 感兴趣,我们可以简化问题,使得模型:
- 更稳健: 在不同领域间迁移时 (例如,新闻 \(\to\) 文学) 不会崩溃。
- 更易评估: 我们可以使用标准的分类指标 (精确率/召回率) ,而不是复杂的聚类指标。
- 更快: MEIRa-静态版架构允许大规模并行化。
无论你是构建工具来分析小说中的角色弧光,还是在法律合同中追踪实体,MEI 都提供了一种简化的、“以用户为中心”的替代方案,取代了传统指代消解的繁重工作。
对于学生和研究人员来说,这篇论文是一个很好的例子,说明了重构任务 (从“聚类所有东西”到“分类重要的东西”) 如何解决模型性能的持久瓶颈。
](https://deep-paper.org/en/paper/file-3352/images/cover.png)