《A Novel Cascade Binary Tagging Framework For Relational Triple Extraction》阅读笔记

三元组抽取的级联二级制标注框架

        从非结构化的文本中抽取关系三元组对大规模知识图谱的构建非常重要。现有的方法很少有解决重叠标签的问题,即在一个句子中多个三元组共享相同的实体,如下图所示。在这篇论文中,是从一个新的视角重新回顾了关系三元组抽取任务,提出一个新的级联二进制标注框架。在先前的工作中将关系视为离散标签,新框架将关系建模为一个句子中头实体到尾实体的映射函数,解决了重叠标签的问题。

       在关系三元组抽取方面,早期的工作采用pipeline方法,即先识别句子中所有的实体,然后对句子中每个实体对进行分类。这种方法存在错误传播问题,在前一个阶段的错误在下一个阶段也是错的。为了解决这个问题,后来采用基于特征的模型联合学习实体和关系,以及基于神经网络的方法通过学习表示取代结构特征,后者取得了很大成功。但是重叠标签的问题依然没有得到很好地解决。

        在这篇文章中,提出一种新的框架解决重叠标签的三元组问题。新框架不是将抽取的实体对作为分类问题处理,而是先抽取出头实体去预测尾实体。在新框架中,三元组抽取分为两步:首先识别出句子中所有可能的头实体,然后针对每个头实体,使用特定的关系标签的同时识别出所有可能的关系和对应的尾实体。

        端到端的级联二进制标注框架是由基于bert的编码模块,头实体标注模块和具有特定关系的尾实体标注模块。整体架构图如下所示。

        关系三元组抽取的目标是识别句子中所有可能的元组,有些元组可能共享相同的头实体和尾实体。文中实验直接对三元组进行建模,并在三元组层面设计训练目标。

         对于训练数据集D中已标注的第j个句子xj和具有重叠标签的元组集Tj = {(s, r, o)}模型的目标最大化训练集的数据似然:

上式中 s T中 s 代表在元组集合 T出现的头实体Tj |是在元组集 T由 s 头实体引导的集合,(r, o) Tj |中 (r, o对是元组集 T中出现的由 为头实体引导的关系和尾实体对集合,R表示所有可能的关系,R\Tj |表示三元组 Tj 中除由 s 引导的关系外的所有关系,o∅ 表示空的尾实体。

公式2应用了可能性的链式法则。

公式3应用了一个重要的事实:给定主实体 s任何与 s 有关的关系 (  Tj | s中的 ) 在句子中都会有相应的尾实体与此同时句子中其他所有的关系就没有尾实体。

        此种数据似然具有以下益处,首先,因为对数据似然计算是在元组层面,优化似然函数相当于优化元组层面的评估标准。再者,句子中多个元组可能共享实体,通过设计解决了重叠元组的问题。最后,通过学习头实体的标签 p(s|xj 识别句子中的头实体,通过为每一个关系学习尾实体标签以识别特定关系的尾实体。

1. BERT编码器

        使用预训练的BERT模型编码句子的特征信息,这些特征信息将会喂进标注模块。通过对每个词的上下文进行联合学习深层表征,在许多下游任务中被证明有效。具体是由多个transformer模块组成,将transformer模块表示为Trans(x)

 S表示头实体的 one-hot 向量矩阵Ws是头实体嵌入矩阵Wp示在输入序列中 P表示的位置索引的位置嵌入矩阵hα表示隐藏状态向量,表示输入句子在第 α层的上下文表示N表示有几个transformer模块

        值得注意的是,在这个实验中,输入的是单个句子,不是句子对,因此,原始BERT论文中描述的分割嵌入在公式(4)中没有被考虑。

2. 级联解码器模块

       这个模块的基本思想是分两步抽取元组。首先,从输入的句子中提取出头实体,然后,为每一个候选头实体,筛选所有可能将尾实体和头实体有联系的关系。相对应于级联解码器是由两个模块组成:一个是头实体标记模块、一个具有特定关系的尾实体标记集模块。

头实体标记模块:

       下层的标注模块被设计用来识别句子中所有可能的头实体,通过解码在n层bert编码器中被编码的向量hN更确切地说,它采用两个相同的二进制类,通过为每个令牌分配一个二进制标记( 0 / 1 )来分别标记头实体的开始和结束位置,该标记指示当前令牌对应的头实体的开始和结束位置。头实体在每个令牌上的具体操作如下:

表示识别输入句子中第i个令牌作为一个头实体的起始和结束位置的概率。如果概率大于特定的阈值,相应的令牌将被标记为“1”,否则,标记为“0”。xi 示输入句子的第i个令牌的编码表示W(·) 表示可训练的权重,b(·)表示偏执,σ 表示sigmoid激活函数。

       头实体标记器优化以下似然函数,以识别给定句子表示x的头实体s的跨度:

          L表示句子的长度I{z} = 1 表示 z 是真实的,否则为 0表示x中第i个令牌的头实体开始位置的二进制标记,表示 x 中第 i个令牌的头实体结束位置的二进制标记,超参数 θ = {Wstart, bstart,Wend, bend}.

        对于多个头实体识别,采用最近的起始端配对原则,根据起始端位置标记的结果来决定头实体的跨度。例如,如框架图中所示,第一个开始标记“Jackie”的最近端标记是“Brown”,因此第一个头实体识别结果将是“Jackie R . Brown”。值得注意的是,为给定的开始令牌匹配一个结束令牌,这时就不考虑位置在给定令牌位置之前的令牌了,这样的匹配策略能够保持任意实体跨度的完整性,开始和结束位置都被正确识别。

特定关系尾实体标记器

        高层的标注模块同时识别在低层获得的头实体对应的尾实体和关系。这个模块是由具有特定关系的尾实体标记器集构成,这些识别器与低层的头实体标记器具有相同的结构,所有的尾实体识别器能够为检测到的头实体识别出对应的尾实体。与头实体标记器不同的是直接解码被编码的向量hN尾实体识别器在识别的过程中也会考虑头实体特征。尾实体标记器在每个令牌上的具体操作如下:

表示在输入句子中识别第 i 个令牌分别作为尾实体的起始位置和结束位置的概率表示在底层被识别出的第 k 个头实体向量表示。

        每个头实体解码过程都是相同的。注意到头实体通常由多个令牌组成,会使得公式(9)和公式(10)中的 维度增加,因此需要保持两个向量的维数一致。因此,将第k个头实体的开始标记和结束标记之间的平均向量表示作为

关系r的尾实体标记优化了下列似然函数,以确定给定句子表示x中头实体s和尾实体o的跨度。

表示在x中第i个令牌的尾实体开始位置的二进制标记,表示在x中第i个令牌的尾实体结束位置的二进制标记。对于空尾实体,则标记为==0。

         值得注意的是,在高层标注模块中,关系是由尾实体标签的输出决定。例如,检测到的头实体是“杰基·R·布朗”和候选尾实体“华盛顿”之间的关系“Work_in”不成立。因此,关系"work_in"的尾实体标记器不会识别"华盛顿",即开始位置和结束位置的输出都为零,如框架图所示。相比之下,在“杰基·R·布朗”和“华盛顿”之间具有“Birth_place”的关系,因此相应的尾实体标记输出候选对象“华盛顿”的跨度。在此设置中,高层模块能够同时识别与低层模块检测到的头实体相关的关系和尾实体。

3.数据对数似然目标函数

对公式(3)取log, 目标函数为

参数Θ = {θ, {φr}rR}pθ(s|x) 在公式(8)中已定义,pφr (o|s, x) 在公式(11)中已定义。

通过Adam随机梯度下降在混合小批量上最大化目标函数对模型进行训练。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值