文章起源 | 恒源云社区
原文地址 | PRGC:基于潜在关系和全局对应的联结关系三元组抽取
原文作者 | Mathor
Abstract
本文讲关系抽取工作合成为关系判断、实体提取和subject-object对齐三个子工作,提出了一种基于潜在关系和全局对应的联结关系三元组抽取框架(PRGC)。具体而言,首先设计一个预测潜在关系的组件,将后续实体提取限度在预测的关系子集上,而不是所有的关系;而后用特定于关系的序列标记组件解决subject-object之间的重叠问题;最初设计一个全局对应组件来以较低的复杂度将主客体对齐成三元组。在两个公共数据集上达到了新的SOTA。
1 Introduction
关系抽取是从非结构化文本中辨认(subject,relation,object)三元组。本文将其合成为三个子工作:
1.关系判断:辨认句子中的关系;
2.实体提取:辨认句子中的subject和object;
3.subject-object对齐:将subject-object对齐成一个三元组
对于关系判断:本文通过\( Potential\ Relation\ Prediction \)组件来预测潜在关系,而不是保留所有的冗余关系,这升高了计算复杂度,获得了更好的性能,特地是在实体提取方面。在实体提取方面:本文应用了一个更强壮的 \( Relation\ Specific\ Sequence\ Tag \)组件(简称Rel-Spec Sequence Tag)来别离提取subject和object,以天然地解决subject和object之间的重叠。对于subject-object对齐:本文设计了与一个关系无关的全局对应矩阵来判断特定的subject-object对在三元组中是否无效。
在给定句子的状况下,PRGC首先预测潜在关系的子集和蕴含所有subject-object之间对应分数的全局矩阵;而后进行序列标注,并行地提取每个潜在关系的主客体;最初枚举所有预测的实体对,而后通过全局对应矩阵进行剪枝。
2 Method
2.1 PROBLEM DEFINITION
输出是具备n个token的句子\( S={x_1,x_2,…,x_n} \),冀望的输入是关系三元组\( T(S)={(s,r,o)|s,o \in E, r\in R} \),其中\( E \)、\( R \)别离示意实体集和关系集。
2.1.1 Relation Judgement
对于给定句子\( S \),该子工作是预测它句子\( S \)蕴含的潜在关系,输入为:\( Y_r(s)={r_1,r_2,…,r_m|r_i\in R} \),其中m为潜在关系子集的大小。
2.1.2 Entity Extraction
对于给定句子\( S \)和预测的潜在关系\( r_i \),该子工作是应用BIO标记计划辨认每个token的tag,其中\( t_j \)示意tag。输入为:\( Y_e(S,r_i|r_i\in R)={t_1,t_2,…,t_n} \)。
2.1.3 Subject-object Alignment
对于给定句子\( S \),该子工作预测主语和宾语的起始tokens之间的对应分数。即真正的三元组中的subject-object对的得分较高。输入为:\( Y_s(S)=M \in R^{n\times n} \),其中\( M \)示意全局对应矩阵。
2.2 PRGC ENCODER
通过BERT对句子S进行编码。encoder的输入:\( Y_{enc}(S)={h_1,h_2,…,h_n} \),其中n示意tokens数。
2.3 PRGC DECODER
2.3.1 Potential Relation Prediction
图中\( R^{pot} \)示意潜在关系
给定句子\( S \),首先预测句子中可能存在的潜在关系的子集,而后只须要提取用到这些潜在关系的实体。给定n个tokens的句子嵌入\( h\in \mathbb{R}^{n\times d} \),该潜在关系预测的每个元素为:
其中\( Avgpoll \)是均匀池化操作,\( \mathrm{W}_r\in \mathbb{R}^{d\times 1} \)是可训练权重,\( \sigma \)是sigmod函数。
本文将其潜在关系预测建模为一个多标签二进制分类工作,如果概率超过某个阈值\( \lambda _1 \),则为对应关系调配标签1,否则将对应的关系标签置为0;接下来只须要将特定于关系的序列标签利用于预测关系,而不要预测全副关系。
2.3.2 Relation-Specific Sequence Tagging
如图1所示,通过2.3.1节中的组件取得了形容的潜在关系的几个特定于关系的句子示意。而后,模型执行两个序列标注操作来别离提取主体和客体。
作者之所以将主语和宾语离开提取,是为了解决一种非凡的重叠模式,即主语宾语重叠(SOO)。作者放弃了传统的LSTM-CRF网络,而采纳了简略的全连贯神经网络进行实体关系辨认。该组件对每个token的具体操作如下:
其中\( u_j\in \mathbb{R}^{d\times 1} \)是训练嵌入矩阵\( U\in \mathbb{R}^{d\times n_r} \)中第j个关系示意,\( n_r \)是全副关系汇合的大小,\( h_i\in \mathbb{R}^{d\times 1} \)是第i个token的编码表示,\( W_{sub},W_{obj}\in \mathbb{R}^{d\times 3} \)是训练权重
2.3.3 Global Correspondence
在序列标注之后,别离取得对于句子关系的所有可能的主语和宾语,而后应用全局对应矩阵来确定正确的主语和宾语对。应该留神的是,全局对应矩阵能够与潜在关系预测同时学习,因为它独立于关系。
具体过程如下:首先枚举所有可能的subject-object对;而后在全局矩阵中查看每对subject-object对的对应分数,如果该值超过某个阈值\( \lambda _2 \),则保留该分数,否则将其过滤掉。图1中的绿色矩阵\( M\in \mathbb{R}^{n\times n} \)即是全局对应矩阵,由n个token组成的句子。矩阵中的每个元素都与subject-object对的起始地位有1关,地位代表主客体对的置信度,值越高属于三元组的置信度就越高,矩阵中每个元素的值如下所示:
其中\( h_i^{sub},h_j^{obj}\in \mathbb{R}^{d\times 1} \)是造成潜在subject-object对的输出语句中的第i个token和第j个token的编码表示,\( W_g\in \mathbb{R}^{2d\times 1} \)是可训练权重,\( \sigma \)是sigmod函数。
2.4 TRAINING STRATEGY
其中\( n_r \)示意关系集的大小,\( n_r^{pot} \)示意潜在关系子集的大小,总的损失是:
3 Experiments
本文通过了\( PRGC_{Random} \)来验证的PRGC解码器的有效性,其中编码器BERT的所有参数都是随机初始化的。\( PRGC_{Random} \)的性能表明,即便不利用事后训练的BERT语言模型,本文的解码器框架依然比其余解码器框架更具竞争力和健壮性。
模型的具体参数:应用BERT-base作为编码器、句子长度设为100,V100GPU,100个epochs
4 启发
- 先抽取潜在关系再抽取与潜在关系无关的实体最初进行subject-object的对齐会进步模型的解码速度和算力资源。
- 潜在关系预测阈值\( \lambda _1 \)越高,模型的性能越好
- 三个损失函数的调参是一个工作量问题。
- 如果句子长度太长最初subject-object的对齐工作耗费的空间资源会很大。