PRGC: Potential Relation and Global Correspondence Based Joint Relational Triple Extraction

PRGC:基于潜在关系和全局对应的联合关系三元组抽取

Abstract

​ 本文讲关系抽取任务分解为关系判断、实体提取和subject-object对齐三个子任务,提出了一种基于潜在关系和全局对应的联合关系三元组抽取框架(PRGC)。具体而言,首先设计一个预测潜在关系的组件,将后续实体提取限制在预测的关系子集上,而不是所有的关系;然后用特定于关系的序列标记组件处理subject-object之间的重叠问题;最后设计一个全局对应组件来以较低的复杂度将主客体对齐成三元组。在两个公共数据集上达到了新的SOTA。

1 Introduction

​ 关系抽取是从非结构化文本中识别(subject,relation,object)三元组。本文将其分解为三个子任务:1.关系判断:识别句子中的关系;2.实体提取:识别句子中的subject和object;3.subject-object对齐:将subject-object对齐成一个三元组

对于关系判断:本文通过PotentialRelationPrediction\mathcal{Potential\ Relation\ Prediction }Potential Relation Prediction组件来预测潜在关系,而不是保留所有的冗余关系,这降低了计算复杂度,取得了更好的性能,特别是在实体提取方面。在实体提取方面:本文使用了一个更健壮的 RelationSpecificSequenceTag\mathcal{Relation\ Specific\ Sequence\ Tag}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={x1,x2,...,xn}S=\{x_1,x_2,...,x_n\}S={x1​,x2​,...,xn​},期望的输出是关系三元组T(S)={(s,r,o)∣s,o∈E,r∈R}T(S)=\{(s,r,o)|s,o \in E, r\in R\}T(S)={(s,r,o)∣s,o∈E,r∈R},其中E、RE、RE、R分别表示实体集和关系集。

2.1.1 Relation Judgement

​ 对于给定句子SSS,该子任务是预测它句子SSS包含的潜在关系,输出为:Yr(s)={r1,r2,...,rm∣ri∈R}Y_r(s)=\{r_1,r_2,...,r_m|r_i\in R\}Yr​(s)={r1​,r2​,...,rm​∣ri​∈R},其中m为潜在关系子集的大小。

2.1.2 Entity Extraction

​ 对于给定句子SSS和预测的潜在关系rir_iri​,该子任务是使用BIO标记方案识别每个token的tag,其中tjt_jtj​表示tag。输出为:Ye(S,ri∣ri∈R)={t1,t2,...,tn}Y_e(S,r_i|r_i\in R)=\{t_1,t_2,...,t_n\}Ye​(S,ri​∣ri​∈R)={t1​,t2​,...,tn​}。

2.1.3 Subject-object Alignment

​ 对于给定句子SSS,该子任务预测主语和宾语的起始tokens之间的对应分数。即真正的三元组中的subject-object对的得分较高。输出为:Ys(S)=M∈Rn×nY_s(S)=M \in R^{n\times n}Ys​(S)=M∈Rn×n,其中MMM表示全局对应矩阵。

2.2 PRGC Encoder

​ 通过BERT对句子S进行编码。encoder的输出:Yenc(S)={h1,h2,...,hn}Y_{enc}(S)=\{h_1,h_2,...,h_n\}Yenc​(S)={h1​,h2​,...,hn​},其中n表示tokens数。

2.3 PRGC Decoder

2.3.1 Potential Relation Prediction

​ 图中RpotR^{pot}Rpot表示潜在关系

给定句子SSS,首先预测句子中可能存在的潜在关系的子集,然后只需要提取用到这些潜在关系的实体。给定n个tokens的句子嵌入h∈Rn×dh\in \mathbb{R}^{n\times d}h∈Rn×d,该潜在关系预测的每个元素为:
havg=Avgpool(h)∈Rd×1Prel=σ(Wrhavg+br)h^{avg}=Avgpool(h)\in \mathbb{R}^{d\times 1}\\ P_{rel}=\sigma(\mathrm{W}_rh^{avg}+b_r) havg=Avgpool(h)∈Rd×1Prel​=σ(Wr​havg+br​)
其中AvgpollAvgpollAvgpoll是平均池化操作,Wr∈Rd×1\mathrm{W}_r\in \mathbb{R}^{d\times 1}Wr​∈Rd×1是可训练权重,σ\sigmaσ是sigmod函数。

本文将其潜在关系预测建模为一个多标签二进制分类任务,如果概率超过某个阈值λ1\lambda _1λ1​,则为对应关系分配标签1,否则将对应的关系标签置为0;接下来只需要将特定于关系的序列标签应用于预测关系,而不要预测全部关系。

2.3.2 Relation-Specific Sequence Tagging

​ 如图1所示,通过2.3.1节中的组件获得了描述的潜在关系的几个特定于关系的句子表示。然后,模型执行两个序列标注操作来分别提取主体和客体。

作者之所以将主语和宾语分开提取,是为了处理一种特殊的重叠模式,即主语宾语重叠(SOO)。作者放弃了传统的LSTM-CRF网络,而采用了简单的全连接神经网络进行实体关系识别。该组件对每个token的具体操作如下:
Pi,jsub=Softmax(Wsub(hi+uj)+bsub)Pi,jobj=Softmax(Wobj(hi+uj)+bobj)P^{sub}_{i,j}=Softmax(W_{sub}(h_i+u_j)+b_{sub})\\ P^{obj}_{i,j}=Softmax(W_{obj}(h_i+u_j)+b_{obj}) Pi,jsub​=Softmax(Wsub​(hi​+uj​)+bsub​)Pi,jobj​=Softmax(Wobj​(hi​+uj​)+bobj​)
其中uj∈Rd×1u_j\in \mathbb{R}^{d\times 1}uj​∈Rd×1是训练嵌入矩阵U∈Rd×nrU\in \mathbb{R}^{d\times n_r}U∈Rd×nr​中第j个关系表示,nrn_rnr​是全部关系集合的大小,hi∈Rd×1h_i\in \mathbb{R}^{d\times 1}hi​∈Rd×1是第i个token的编码表示,Wsub,Wobj∈Rd×3W_{sub},W_{obj}\in \mathbb{R}^{d\times 3}Wsub​,Wobj​∈Rd×3是训练权重

2.3.3 Global Correspondence

​ 在序列标注之后,分别获得关于句子关系的所有可能的主语和宾语,然后使用全局对应矩阵来确定正确的主语和宾语对。应该注意的是,全局对应矩阵可以与潜在关系预测同时学习,因为它独立于关系

​ 具体过程如下:首先枚举所有可能的subject-object对;然后在全局矩阵中检查每对subject-object对的对应分数,如果该值超过某个阈值λ2\lambda _2λ2​,则保留该分数,否则将其过滤掉。图1中的绿色矩阵M∈Rn×nM\in \mathbb{R}^{n\times n}M∈Rn×n即是全局对应矩阵,由n个token组成的句子。矩阵中的每个元素都与subject-object对的起始位置有1关,位置代表主客体对的置信度,值越高属于三元组的置信度就越高,矩阵中每个元素的值如下所示:
Pisub,jobj=σ(Wg[hisub;hjobj]+bg)P_{i_{sub},j_{obj}}=\sigma(W_g[h_i^{sub};h_j^{obj}]+b_g) Pisub​,jobj​​=σ(Wg​[hisub​;hjobj​]+bg​)
其中hisub,hjobj∈Rd×1h_i^{sub},h_j^{obj}\in \mathbb{R}^{d\times 1}hisub​,hjobj​∈Rd×1是形成潜在subject-object对的输入语句中的第i个token和第j个token的编码表示,Wg∈R2d×1W_g\in \mathbb{R}^{2d\times 1}Wg​∈R2d×1是可训练权重,σ\sigmaσ是sigmod函数。

2.4 Training Strategy

Lrel=−1nr∑i=1nr(yilogPrel+(1−yi)log(1−Prel))seq=−12×n×nrpot∑t∈{sub,obj}∑j=1nrpot∑i=1nyi,jtlogPi,jtLglobal=−1n2∑i=1n∑j=1n(yi,jlogPisub,jobj)+(1−yi,j)log(1−Pisub,jobj))\mathcal{L_{rel}}=-\frac{1}{n_r}\sum_{i=1}^{n_r}(y_ilogP_{rel}+(1-y_i)log(1-P_{rel}))\\ \mathcal{seq}=-\frac{1}{2\times n \times n_r^{pot}}\sum_{t\in \{sub,obj\}}\sum_{j=1}^{n_r^{pot}}\sum_{i=1}^{n}y_{i,j}^tlogP_{i,j}^t\\ \mathcal{L_{global}}=-\frac{1}{n^2}\sum_{i=1}^{n}\sum_{j=1}^{n}(y_{i,j}logP_{i_{sub},j_{obj}})+(1-y_{i,j})log(1-P_{i_{sub},j_{obj}})) Lrel​=−nr​1​i=1∑nr​​(yi​logPrel​+(1−yi​)log(1−Prel​))seq=−2×n×nrpot​1​t∈{sub,obj}∑​j=1∑nrpot​​i=1∑n​yi,jt​logPi,jt​Lglobal​=−n21​i=1∑n​j=1∑n​(yi,j​logPisub​,jobj​​)+(1−yi,j​)log(1−Pisub​,jobj​​))

其中nrn_rnr​表示关系集的大小,nrpotn_r^{pot}nrpot​表示潜在关系子集的大小,总的损失是:
Ltotal=αLrel+βLseq+γLglobal\mathcal{L_{total}}=\alpha\mathcal{L_{rel}}+\beta\mathcal{L_{seq}}+\gamma\mathcal{L_{global}} Ltotal​=αLrel​+βLseq​+γLglobal​

3 Experiments

本文通过了PRGCRandomPRGC_{Random}PRGCRandom​来验证的PRGC解码器的有效性,其中编码器BERT的所有参数都是随机初始化的。PRGCRandomPRGC_{Random}PRGCRandom​的性能表明,即使不利用预先训练的BERT语言模型,本文的解码器框架仍然比其他解码器框架更具竞争力和健壮性。

模型的具体参数:使用BERT-base作为编码器、句子长度设为100,V100GPU,100个epochs

4 启示

  1. 先抽取潜在关系再抽取与潜在关系有关的实体最后进行subject-object的对齐会提高模型的解码速度和算力资源。
  2. 潜在关系预测阈值λ1\lambda _1λ1​越高,模型的性能越好
  3. 三个损失函数的调参是一个工作量问题。
  4. 如果句子长度太长最后subject-object的对齐工作消耗的空间资源会很大。

PRGC Potential Relation and Global Correspondence Based Joint Relational Triple Extraction相关推荐

  1. [实体关系抽取|顶刊论文]UniRel:Unified Representation and Interaction for Joint Relational Triple Extraction

    2022.11.16|EMNLP 2022|中国科学技术大学 |原文链接|源码链接 UniRel: Unified Representation and Interaction for Joint R ...

  2. 显著检测论文解析1——Global contrast based salient region detection(程明明 IEEE TPAMI)

    显著检测论文解析1 本人在图像处理方面的主要研究方向是显著性检测,在刚接触显著性时感觉很难下手,有太多东西不是很清楚.学习到现在我对这一块有了一定的认识,现在对显著性领域我读过的近几年比较好的论文写一 ...

  3. 阅读图像显著性检测论文五:2011年版本的Global Contrast Based Salient Region Detection

    本博客为博主原创,转载请注明地址:http://blog.csdn.net/xbcreal/article/details/53666249 为什么这篇文章题目要写上2011年呢?因为2015作者又发 ...

  4. Joint Coronary Centerline Extraction and Lumen Segmentation from CCTA CNNTracker and Vascular Grap

    前言 从CCTA中自动分析coronary artery对于CAD的诊断和评估是非常重要的.这方面主要包括两个既相关又分离的task: centerline extraction, lumen seg ...

  5. Capturing Global Informativeness in Open Domain Keyphrase Extraction

    在开放域关键词提取中捕获全局信息 Si Sun 1 ? , Zhenghao Liu 2 ? , Chenyan Xiong 3 , Zhiyuan Liu 4 ?? , and Jie Bao 1 ...

  6. A Cross-Modal Image and Text Retrieval Method Based on Efficient Feature Extraction and Interactive

    基于有效特征提取和交互学习的跨模态图像文本检索 2022年 Scientific Programming 摘要:针对多模态环境的复杂性和现有浅层网络结构无法实现高精度的图文检索,提出一种结合高效特征提 ...

  7. 论文阅读笔记(二)【ACL2021】知识抽取NER

    学习内容 由于刚刚进入知识图谱领域,对该领域的研究热点不是很了解,所以本文直接翻译ACL2021中关于知识抽取NER中各个论文的摘要和共享: 并且适时在最后写出自己的理解: 同时自己也会在了解完全部后 ...

  8. ACL2021 | 信息抽取相关论文

    今日ACL2021放出长文接受列表了(可点击[阅读原文]查阅),JayJay对信息抽取论文做了分类汇总,希望对大家有所帮助- 一.实体抽取 " 实体抽取主要涉及嵌套NER.非连续NER.中文 ...

  9. 知识图谱课程报告-关系抽取文献综述

    关系抽取文献综述 引言: ​ 随着大数据的不断发展,在海量的结构化数据或非结构化数据中更低成本的抽取出有价值的信息越来越重要,可以说信息抽取是自然语言处理领域的一项最基本任务,信息抽取进而可被分成三个 ...

最新文章

  1. spi协议时序图和四种模式实际应用详解
  2. 重载[] int operator[ ]( )
  3. HDU Problem - 1533 Going Home(费用流板子题)
  4. 硬核分析|腾讯云原生OS内存回收导致关键业务抖动问题
  5. java 类隔离_Java类装载体系中的隔离性
  6. Cocos2d-Lua 输出脚本预编译错误产生位置
  7. 研究人员发现针对印度军队的网络间谍活动
  8. Intel IPP密码库 IPPCP 2018——第一部分 基础开发指南
  9. [it-ebooks]电子书列表v0.1.1
  10. linux中文件权限为drwxr,linux drwxr-xr-x 什么意思 ?
  11. Ubuntu20.04安装NVIDIA显卡驱动、CUDA、CUDNN及突破NVENC并发限制
  12. Openkruise/rollouts 源码解读
  13. 年薪20万、50万、100万的管理者,有什么分别?
  14. 【云服务器 ECS 实战】一文掌握负载均衡服务原理及配置方法
  15. 【超图+CESIUM】【基础学习使用】01、前置学习资料
  16. 娃娃鸭Delphi面向对象编程思想刘艺笔记
  17. 高校物联网实训室-实验室建设方案
  18. 函数调用栈帧过程带图详解
  19. 在一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。---(java版)
  20. Matlab产生固定范围内的一个随机数,可以为非整数

热门文章

  1. 计算机管理的逻辑流程图,逻辑流程图.PPT
  2. 在IDEA中导入本地项目
  3. LTE(4G) RRC协议功能和服务
  4. python函数——字典设置默认值 setdefault()
  5. vim安装插件Vundle,NerdTree
  6. net::ERR_CONTENT_LENGTH_MISMATCH 206 (Partial Content) 报错
  7. Oracle Row_Number()函数用法
  8. Linux 修改文件名
  9. 走迷宫最短距离——广搜
  10. MYSQL解决死锁之路 - 常见 SQL 语句的加锁分析