在互联网上浩瀚的非结构化文本海洋中——维基百科页面、新闻文章、财务报告——蕴藏着等待被组织的宝贵数据。多年来,信息抽取 (Information Extraction, IE) 领域一直是这个数字时代的“矿工”,通过挖掘段落来寻找事物之间的关系。

传统上,这项工作主要是通过寻找“三元组”来完成的: 主体、关系和客体 (例如: 比尔·盖茨,联合创始人,微软) 。虽然这种方法有效,但它也有局限性。它将信息视为一堆互不相关的孤立事实,而不是一个实体连贯的画像。

最近的一篇研究论文《Learning to Extract Structured Entities Using Language Models》 (利用语言模型学习提取结构化实体) 提出了一种范式转变。研究人员认为,我们不应仅仅寻找孤立的链接,而应该提取结构化实体 (Structured Entities) ——即关于人、组织和地点的全面、面向对象的表示。

在这篇深度文章中,我们将探讨为什么旧的“三元组”方法有所欠缺,这种新的“以实体为中心”的方法是如何工作的,为此设计的新颖评价指标 AESOP , 以及取得了最先进成果且效率惊人的多阶段语言模型架构 MuSEE

三元组的问题

要理解这项创新,我们必须首先看看现状的局限性。信息抽取主要集中在元组 (subject, relation, object) 上。模型被训练来阅读句子并输出这些元组的列表。

标准的评估指标,如精确率 (Precision) 和召回率 (Recall) ,是基于这些三元组计算的。这导致了作者所描述的“整体性盲点”现象。

考虑一个提到十个不同人物的段落。

  • 人物 A 是主角,有 10 个相关事实 (关系) 。
  • 人物 B 到 J (9 个人) 是次要角色,每人只有 1 个相关事实。
  • 事实总数: 19 个三元组。

现在,想象一个对人物 A 非常执着的模型。它正确识别了人物 A 的所有 10 个三元组,但完全忽略了其他 9 个人。

  • 召回率: 10/19 (约 52%) 。
  • 精确率: 100%。

从统计上看,这个模型看起来还不错。但在功能上呢?它未能识别文本中 90% 的实体。人类评估者会称之为失败,但以三元组为中心的指标却让它通过了。这种脱节推动了对新形式的需求: 结构化实体抽取 (Structured Entity Extraction, SEE)

什么是结构化实体抽取?

结构化实体抽取将目标从“寻找链接”转移到了“构建画像”。任务是定义一个实体 (如“比尔·盖茨”) ,然后填充与该特定实体相关的属性模式 (schema) 。

Figure 1: Illustration of the structured entity extraction, an entity-centric formulation of information extraction.

图 1 所示,该过程将非结构化文本和预定义的模式 (可能的实体类型和属性键列表) 作为输入。输出不是关系的扁平列表,而是一个结构化的 JSON 对象。

注意“预期输出 json”中的层次结构:

  1. 识别实体: “Bill Gates”。
  2. 分类实体: ent_type_human (人类类型) 。
  3. 填充属性: pk_country: America (国家: 美国) ,pk_occupation: Businessman (职业: 商人) 。

这种方法隐式地处理了共指 (coreference) 。如果文本在第一句提到“比尔·盖茨”,在第二句提到“他”,模型必须理解它们属于同一个实体对象。这需要比简单的模式匹配更深层次的文本理解。

AESOP 指标: 一种新的评分方式

如果我们将任务从提取三元组变为提取复杂的对象,我们就不能再使用简单的基于三元组的精确率和召回率了。我们需要一个能够比较两组复杂对象——模型的“预测集”和数据集的“真实值集”——的指标。

研究人员引入了 AESOP (Approximate Entity Set OverlaP,近似实体集重叠) 。

评估实体集之所以困难,是因为它们是无序的。如果模型先输出“微软”然后是“比尔·盖茨”,但真实值先列出“比尔·盖茨”然后是“微软”,指标必须在评分之前先弄清楚哪个预测对应哪个真实值。

AESOP 分两个阶段解决这个问题:

阶段 1: 最优实体分配

首先,该指标扮演“媒人”的角色。它查看预测实体池和真实实体池,并计算相似度矩阵。

\[ \mathbf { F } = \underset { \mathbf { F } } { \arg \operatorname* { m a x } } \sum _ { i = 1 } ^ { m } \sum _ { j = 1 } ^ { n } \mathbf { F } _ { i , j } \cdot \mathbf { S } _ { i , j } , \]

在这个方程 (论文中的方程 2) 中,\(\mathbf{F}\) 是分配矩阵。算法试图最大化所有匹配的总相似度 (\(\mathbf{S}\))。它确保一对一的映射——每个预测实体都与最佳可能的真实实体匹配 (如果是完全的幻觉,则不匹配) 。

相似度 \(\mathbf{S}\) 通常是加权的。作者给实体名称分配了高权重 (0.9),给重叠属性分配了低权重 (0.1)。这模仿了人类的逻辑: 如果你把名字搞错了,属性再对也没多大意义。

阶段 2: 成对实体比较

一旦实体配对成功,AESOP 就会对匹配的质量进行评分。

\[ \psi _ { \mathrm { e n t } } ( e ^ { \prime } , e ) = \bigotimes _ { p \in \mathcal { P } } \psi _ { \mathrm { p r o p } } \mathopen { } \mathclose \bgroup \left( v _ { e ^ { \prime } , p } , v _ { e , p } \aftergroup \egroup \right) , \]

这个方程计算特定一对实体的分数 (\(\psi_{\mathrm{ent}}\))。它查看模式中的每个属性 \(p\) (如“职业”或“年龄”) ,并将预测值 \(v'\) 与真实值 \(v\) 进行比较。比较通常使用 Jaccard 指数 (Token 的交并比) 进行,如果文本略有不同但在语义上接近,则允许获得部分分数。

最终得分

最后,分数被聚合成一个数字:

\[ \Psi ( \mathcal { E } ^ { \prime } , \mathcal { E } ) = \frac { 1 } { \mu } \bigoplus _ { i , j } ^ { m , n } \mathbf { F } _ { i , j } \cdot \psi _ { \mathrm { e n t } } \bigl ( \vec { E ^ { \prime } } _ { i } , \vec { E _ { j } } \bigr ) , \]

这里,\(\mu\) 代表归一化因子 (通常是预测集或目标集大小的最大值) 。这确保了如果模型完美预测了 5 个实体但遗漏了另外 5 个,它会受到适当的惩罚。

解决方案: MuSEE 架构

定义了任务并设定了评分标准后,作者提出了一个新颖的模型: MuSEE (Multi-stage Structured Entity Extraction,多阶段结构化实体抽取) 。

使用像 T5 这样的大型语言模型 (LLM) 进行信息抽取非常强大,但简单地要求 LLM 一次性“输出所有 JSON 数据”会导致问题。序列变得太长,导致模型失去焦点、产生幻觉,或因内存限制而崩溃。

MuSEE 通过将任务分解为三个不同的、可并行化的阶段来解决这个问题。

Figure 2: The pipeline of our proposed MuSEE model.

图 2 所示,MuSEE 利用了编码器-解码器架构 (具体基于 T5) 。以下是流程的细分:

1. 一次编码,多次预测

输入文本仅被输入到编码器中一次。由此产生的丰富的文本表示随后在所有三个阶段中被重复使用。与需要为每个子任务重新阅读文本的流程相比,这是一个显著的效率胜利。

阶段 1: 实体识别

首先提示模型输出文本中存在的唯一实体名称

  • 输入: [文本表示] + [提示: 查找实体]
  • 输出: "Bill Gates", "Microsoft"

这迫使模型立即执行共指消解。它将“Bill”、“Gates”和“他”等提及折叠成一个单一的标识符: “Bill Gates”。

阶段 2: 类型与属性键预测

既然模型知道了文本中有,它需要确定他们是什么以及有哪些可用信息

  • 输入: [文本表示] + [提示: {"Bill Gates"}]
  • 输出: ent_type_human, pk_country, pk_occupation

分词创新: 注意输出不是像“Human”或“Country”这样的自然语言。作者引入了特殊 token (例如 pk_country) 。模型生成单个 token,而不是生成单词“Occupation” (可能是 2-3 个 token) 。这大大缩短了序列长度,使模型更快且更不容易出现生成错误。

阶段 3: 属性值预测

最后,模型提取实际值。

  • 输入: [文本表示] + [提示: {"Bill Gates"} {ent_type_human} {pk_occupation}]
  • 输出: "Businessman"

为什么采用多阶段?

你可能认为运行三个阶段比一个阶段慢。然而,MuSEE 允许进行批处理

  • 在阶段 2,模型可以并行预测“Bill Gates”和“Microsoft”的模式。
  • 在阶段 3,它可以同时预测“Country”和“Occupation”的值。

通过将一个庞大、复杂的生成任务分解为小的、专注的子任务,模型在保持高准确率的同时不牺牲速度。

实验与结果

作者将 MuSEE 与几个强基线模型进行了测试,包括:

  • LM-JSON: 一个简单微调以输出原始 JSON 字符串的 T5 模型 (“暴力”方法) 。
  • GenIE: 一个最先进的生成式约束模型。
  • GEN2OIE: 一个两阶段关系抽取模型。

他们使用了 NYT、CoNLL04、REBEL 等数据集,以及一个自定义的“Wikidata-based”数据集。

有效性 (AESOP 分数)

结果是决定性的。

Table 1: Summary of results of different models.

查看 表 1 , MuSEE (T5-Base 和 T5-Large 版本) 始终获得最高的 AESOP 分数。

  • NYT 数据集上,MuSEE (T5-L) 达到了 82.67 的 AESOP 分数,而 GenIE 为 79.64。
  • Wikidata-based 数据集上,差距更大,MuSEE 得分为 50.94 , 而 GenIE 为 43.50。

这表明 MuSEE 在整体捕捉实体画像方面明显更好,而不仅仅是抓取零散的事实。

效率: 速度优势

对于实际应用来说,最实际的发现可能是效率的提升。

Figure 3: An overall effectiveness-and-efficiency comparison across models.

图 3 绘制了有效性 (y 轴) 与效率 (x 轴,每秒样本数) 的关系。

  • 理想的模型位于右上角 (既快又准) 。
  • MuSEE (T5-B) 是最右边的星星。它每秒处理超过 50 个样本 , 这使得它比 GenIE 快约 5 倍 , 比 IMoJIE 快 10 倍

这种速度是“短 Token”策略和多阶段流程并行生成能力的直接结果。

接地性 (Grounding) 与幻觉

大型语言模型的一个常见担忧是幻觉——生成听起来合理但文本中没有的事实。由于 T5 是在维基百科上预训练的,因此存在一种风险,即它可能“记住”了关于比尔·盖茨的事实,而不是从提供的文本中提取它们。

为了测试这一点,作者创建了一个“扰动”数据集,在其中交换了事实 (例如,更改文本中比尔·盖茨的职业) 。如果模型忽略文本并依赖记忆,它就会得到错误的答案。

Figure 4: Grounding check across models on the Wikidata-based dataset.

图 4 显示了使用扰动数据时性能的下降情况。

  • 紫色条 是原始数据。
  • 粉色条 是扰动数据。

LM-JSON 这样的模型在 F1 分数 (右图) 上出现了大幅下降,这意味着它们严重依赖记忆。然而, MuSEE 表现出最强的韧性 (性能下降最少) ,证明它实际上是在“阅读”文本并提取有据可依的信息。

结论

三元组抽取结构化实体抽取的转变代表了信息抽取领域的成熟。通过将实体视为复杂的对象,我们将模型的输出与人类理解世界的方式——以及数据库存储世界的方式——更紧密地对齐。

这篇论文的贡献有三个方面:

  1. 公式化: 将任务重新定义为以实体为中心。
  2. 评估: AESOP 指标,为复杂实体画像的评分提供了一种灵活、严格的方法。
  3. 架构: MuSEE 模型,证明了将困难任务分解为并行的、模式引导的阶段可以产生更好的准确性和极其优越的速度。

对于学生和从业者来说,MuSEE 提供了一个如何设计 LLM 流程的蓝图: 不要只是要求模型“一次搞定”。构建提示结构,缩短输出,并将工作并行化。随着我们迈向自动知识库构建,这些结构化方法将成为下一代智能数据系统的基础。