关于关系三元组抽取的一种新颖的级联的二元标注框架

论文知识记录

三元组共享相同实体的重叠问题

        三元组共享相同实体的重叠问题是指在文本中存在多个关系三元组,而这些三元组在同一句子中共享相同的主语或宾语实体。具体来说,当一句话中存在多个关系描述,而这些关系描述都涉及到相同的实体时,就会出现重叠问题。

例如,考虑以下句子:

"John works at ABC Company. John is the CEO. John graduated from XYZ University."

        在这个例子中,三个句子描述了关于"John"这个实体的不同关系,即工作关系、职位关系和教育关系。这些关系共享相同的主语实体"John",因此存在重叠问题。

        解决重叠问题需要确定每个关系三元组中的实体是指的是相同的实体还是不同的实体。

关系三元组

        事实以(subject, relation, object)或(s, r, o)的形式存在,被称为关系三元组。

EPO(实体对重叠):不同关系之间实体对的重叠(主语以及宾语)

SEP(单个实体重叠):不同关系之间单个实体的重叠

早期三元组抽取方面的工作采取流水线的方法,然而有传播错误,并且忽略了两个步骤的相关性。

(1)首先在输入句子上运行命名实体识别(NER)以识别所有实体

(2)然后在提取出的实体对上运行关系分类(RC)

近期的有实体和关系的联合学习方法,包括基于特征的模型和基于神经网络的模型。

        大多数现有的神经模型(如Miwa和Bansal,2016)仅通过参数共享实现实体和关系的联合学习,而没有联合解码。

重叠问题挑战了原有的序列标注方案。

两种新的解决方案:

        带有复制机制的序列到序列模型,并通过强化学习来改进

        将文本建模为图卷积网络的关系图(Graph Convolutional Networks)

        由于之前的方法仍然将关系视为要分配给实体对的离散的标签,所以使关系分类问题变成了一个机器学习的问题。类别分布不平衡会导致负样本过多,而且重叠三元组问题也会使分类器混淆。

本论文用到的框架

        我们可以将关系建模为将主语映射到宾语的函数,而不是将关系视为实体对上的离散标签。更确切地说,我们学习关系特定的标注器 fr(s) → o,其中每个标注器识别给定关系下给定主语的可能宾语;或者返回无宾语,表示给定主语和关系没有对应的三元组。在这个框架下,三元组抽取是一个两步过程:首先我们确定句子中所有可能的主语;然后对于每个主语,我们应用关系特定的标注器来同时识别所有可能的关系和相应的宾语。

CASREL框架(端到端的级联二元标注框架

包括:一个基于BERT的编码器模块、一个主语标注模块和一个关系特定的宾语标注模块

新型标记框架的能力能够与预训练的大规模语言模型中的先验知识相结合

ps:BERT(基于Transformer的双向编码器表示)

        BERT模型通过训练大规模的无监督数据来学习通用的语言表示,然后可以在各种NLP任务中进行微调。与传统的单向语言模型不同,BERT模型采用了双向Transformer编码器,能够同时利用上下文的信息,使得模型能够更好地理解词语的含义和句子之间的关系。

数据似然性:在给定一组观测数据的情况下,根据模型参数计算出的该组观测数据出现的概率。

给定训练集D中的标注句子xj和句子xj中的一组可能重叠的三元组Tj = {(s, r, o)},我们的目标是最大化训练集D的数据似然性:

式(3)将整个训练集数据的似然性分解为关于主语、关系和宾语的概率乘积,同时考虑了可能的重叠三元组和“空”宾语的情况。

方程(3)中的分解启发了三元组抽取的新颖标记方案:我们学习一个主语标记器 p(s|xj),用于识别句子中的主语实体;对于每个关系 r,我们学习一个对象标记器 pr(o|s, xj),用于识别给定主语的关系特定的对象。

BERT Encoder

S是输入句子中子词索引的独热向量矩阵,Ws是子词嵌入矩阵,Wp是位置嵌入矩阵,其中p表示输入序列中的位置索引,hα是隐藏状态向量,即α层的输入句子的上下文表示,N是Transformer块的数量。 

Cascade Decoder(级联解码器)

首先,我们从输入句子中检测主体然后对于每个候选主体,我们检查所有可能的关系,看看是否有一个关系可以将句子中的对象与该主体关联起来。对应于这两个步骤,级联解码器由两个模块组成,如图2所示:一个主体标记器;和一组关系特定的对象标记器。

主体标记器 

主体标记器在每个标记上的详细操作如下:

        pstart(si)和pend(si)分别表示将输入序列中的第i个标记识别为主体的开始位置和结束位置的概率。如果概率超过一定阈值,则将相应的标记赋值为1;否则,赋值为0。xi是输入序列中第i个标记的编码表示,即xi = hN[i],其中W(·)表示可训练的权重,b(·)是偏置项,σ是sigmoid激活函数。

        主体标记器优化以下似然函数来识别给定句子表示x中主体s的范围: 

Relation-specific Object Taggers (关系特定的对象标记器

        对象标记器在每个标记上的详细操作为:

思考总结

具体例子

假设我们有一个句子:"Elon Musk, the CEO of SpaceX, was born in South Africa."

在这个句子中,我们有两个关系三元组:("Elon Musk", "is the CEO of", "SpaceX") 和 ("Elon Musk", "was born in", "South Africa")。

在CASREL框架中,首先,我们会使用BERT编码器对句子进行编码。然后,我们使用主体标记模块来标记出所有可能的主体实体。在这个例子中,主题实体是"Elon Musk"。

接着,对于每个标记出的主体实体,我们使用特定于关系的对象标记模块来标记出与该主体相关的所有对象。在这个例子中,与"Elon Musk"相关的对象有"SpaceX"和"South Africa"。

然后,我们将主体实体和对象结合起来,形成关系三元组。在这个例子中,我们得到的关系三元组是:("Elon Musk", "is the CEO of", "SpaceX") 和 ("Elon Musk", "was born in", "South Africa")。

这个例子展示了CASREL框架如何从非结构化文本中提取关系三元组。这个框架的关键在于,它将关系视为将主题映射到对象的函数,而不是将关系视为离散的标签。这种方法自然地处理了重叠三元组的问题。

将关系视为将主体映射到对象的函数的概念是通过以下方式实现的:

  1. 主体标记:对于每个可能的主体实体,CASREL首先使用一个二元分类器来预测这个实体是否是一个主体。这个过程可以看作是一个函数,它将句子中的每个实体映射到一个二元标签(是主体或不是主体)。

  2. 特定于关系的对象标记:对于每个标记出的主体实体,CASREL使用一个特定于关系的对象标记模块来预测与该主体相关的所有对象。这个过程可以看作是一个函数,它将主体实体映射到一组对象。

传统模式的弊端

在传统的关系抽取任务中,模型通常会独立地预测每个实体和关系,这可能会导致重叠三元组的问题。例如,如果一个句子中有两个关系三元组共享同一个主体,传统的模型可能会难以正确地抽取这两个三元组。

CASREL框架通过将关系视为将主体映射到对象的函数来解决这个问题。在这种视角下,一个主体可以被映射到多个对象,形成多个关系三元组。这样,即使一个句子中有多个关系三元组共享同一个主体,CASREL也能够正确地抽取出所有的三元组。

在传统的关系抽取任务中,模型通常会"独立地预测每个实体和关系",这意味着模型会分别预测句子中的每个实体(例如,人名、地点、组织名等)以及这些实体之间的关系(例如,"工作在"、"出生在"等)。

例如,对于句子"Elon Musk 是 SpaceX 的 CEO",模型首先会独立地识别出三个实体:"Elon Musk"、"SpaceX"和"CEO"。然后,模型会独立地预测出这些实体之间的关系,例如,"Elon Musk"和"SpaceX"之间的关系是"是...的CEO"。

这种独立预测的方式可能会导致重叠三元组的问题,因为它没有考虑到同一个实体可能会出现在多个关系三元组中。例如,如果一个句子中有两个关系三元组共享同一个实体,传统的模型可能会难以正确地抽取这两个三元组。

CASREL(Cascade Binary Tagging for Relational Triple Extraction)-级联二元标记用于关系三元组抽取——创新点

CASREL的模型创新点在把关系看成函数(这里的函数更多的强调的是一种映射关系),这样一个主体就可以映射到多个对象,自然就解决了重叠三元组问题。

原文链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值