Dependency-driven Relation Extractionwith Attentive Graph Convolutional Networks
Abstract
句法信息和依赖树在已有的研究中已经广泛用于改进关系抽取,并能更好地指导分析与给定实体相关的上下文信息。 然而,现有的研究依赖树中大多存在噪声,特别是当依赖树自动生成时,其过度利用依赖信息可能会给关系分类带来混乱,必要的剪枝在此任务中非常重要。 本文提出了一种依赖驱动的注意力图卷积网络关系抽取方法(A-GCN)。 在这种方法中,图卷积网络上的注意力机制应用于从现成的依赖解析器获得的依赖树中的不同上下文词,以区分不同词依赖的重要性。考虑到单词之间的依赖类型也包含重要的上下文指导,这可能有助于关系提取。
目录
1.Introduction
2.The Proposed Approach
3.Experimental Settings
4.Results
5.Analyses
6.Conclusion
1.Introduction
关系提取 (RE) 旨在从原始文本中检测实体及其之间的关系的一种技术,是信息提取和检索中最重要的任务之一,在支持许多下游自然语言处理 (NLP) 应用程序中起着至关重要的作用,例如文本挖掘、情感分析、问答等方面。最近,神经网络模型 RE 方法使用强大的编码器(如 CNN、RNN 和 Transformers)显着提高了 RE 的模型性能,因此使 得RE 系统能够更好地理解文本并识别给定文本中实体之间的关系。采用神经网络模型来帮助 RE 不仅简单有效,而且还有望将更多样化和信息丰富的知识纳入 RE 系统。在所有不同的知识中,句法信息,尤其是依赖树,已在许多研究中被证明是有益的因为它们提供了目标实体之间的长距离词连接,从而引导系统更好地提取实体对之间的关系。
然而,频繁的利用依赖信息并不总能带来良好的 RE 性能,因为依赖树中的噪声可能会给关系分类带来混淆,尤其是当依赖树是自动生成时。例如,下图中显示了一个带有依赖树的例句,其中当对象要预测“牛奶”和“南瓜混合物”之间的关系时,“南瓜混合物”和“碗”之间的依赖关系可能会引入噪声。因此,之前的研究在通过特定模型或图卷积网络对依赖信息进行编码之前,总是需要必要的剪枝策略。因为固定剪枝策略不能保证生成包含所有重要上下文信息并过滤掉所有噪声的子树,所以有必要设计一种适当的方法来区分依赖树中的噪声并相应地对其进行建模。
由此,本文提出了一种依赖驱动的神经方法,其中提出了注意力图神经网络 (A-GCN) 来区分该任务的重要上下文信息。此外,鉴于与依赖连接相关联的依赖类型(例如,名义主题)也可能对 RE 模型有用,因为它们包含连接词之间的句法指令,我们通过将类型信息引入其中来进一步改进 A-GCN。具体来说,我们首先从现成的工具包中获取输入句子的依存关系树,然后在依存关系树上构建图,并为任意两个单词之间的不同标记依存关系分配不同的权重,权重的计算基于连接及其依赖类型,最后由 AGCN 根据学习的权重预测关系。这样做,A-GCN 不仅能够从依赖树中区分重要的上下文信息并相应地利用它们,从而不需要依赖剪枝策略,而且 A-GCN 还可以利用大多数先前忽略的依赖类型信息研究。
2.The Proposed Approach
模型的整体架构如下图所示。具体来说,给定一个非结构化输入语句 X = x1,···,xn,其中有n个单词并让 E1 和 E2 表示 X 中的两个实体,我们的方法通过以下方式预测 E1 和 E2 之间的关系
其中Tx是从现成的工具包中获得的x的依赖树,R是关系类型集; P计算给定两个实体的特定关系的概率,而是以X和Tx为输入的A-GCN的输出。
通常,标准 GCN 模型中的图是由词依赖构建的,并由邻接矩阵 A =表示,其中 =1 ,如果 i = j 或存在依赖连接在依赖树 Tx 中的两个词 xi 和 xj 之间,否则=0。基于 A,对于每个单词 ,第 个 GCN 层收集其在 Tx 中的上下文单词携带的信息,并通过以下方式计算 的输出表示 :
是在(-1)层GCN模型的输出, 和 分别是第 层 GCN 的可训练矩阵和偏差, 是 ReLU 激活。
在公式(2)中词之间的连线被平等对待(要么是0要么是1),因此传统的GCN模型不能区分不同连接的重要性。 为此,我们提出了A-GCN,它使用注意力机制来计算不同连接的权重,以便模型能够相应地利用不同的依赖连接。我们首先用类型矩阵来表示Tx中的依赖类型,其中是与和之间的有向依赖连接相关联的依赖类型。 接下来,我们将每个类型映射到它的嵌入。 然后,在第层GCN,计算和之间连接的权重。
其中A,“”表示内积,和分别是和的两个中间向量,由下式计算:
用表示向量级联操作,然后我们将权重应用于和之间的关联依赖连接通过以下方式训练得到的输出表示
然后,我们将最大池机制应用于属于一个实体提及(即,K=1,2)的词的输出隐藏向量,以计算实体表示(表示为)
然后,我们将句子(即)和两个实体(即和)的表示连接起来,并将一个可训练矩阵应用于计算的向量,以通过以下步骤将其映射到输出空间
其中,o是一个| R |维向量,其每个值都表示关系类型集R中的关系类型。最后,我们通过o的softmax函数通过以下公式预测E1和E2之间的关系 :
用 表示 o 中维度u处的值。
图为本文提出的 A-GCN 模型用于关系抽取的整体架构用一个示例输入语句(“诽谤”和“主教”这两个实体分别以蓝色和红色突出显示)及其依赖树进行了说明。左侧部分显示了我们的 A-GCN 模型,其中注意力权重应用于不同的连接,以对依赖类型感知的上下文信息进行建模。右侧部分说明了依赖图的邻接矩阵 A 以及计算不同连接的注意力权重(即 )的过程。
3.Experimental Settings
数据集:在实验中,我们为模型准备了两个英文基准数据集,即 ACE2005EN和 SemEval 2010 。对于 ACE05,我们对其进行预处理(删除两个小子集 cts 和 un)并将文档拆分成训练集、开发集和测试集。下图中显示了 ACE05 和 SemEval 基准数据集的训练/开发/测试集的实例数(即实体对数)。
依赖图构建:为了构造A-GCN的图,我们使用标准的CorenLP Toolkits(SCT)来获得每个输入句子x的依赖关系树Tx。虽然我们的方法能够通过注意力机制来区分不同依赖关系的重要性,但如果我们能够通过特定的剪枝策略过滤掉那些给RE带来混乱的依赖关系,则仍然是有益的。 本文通过包含两组依赖连接,即局部连接和全局连接,构造了A-GCN的图。 具体来说,局部连接包括直接连接到两个实体头部的所有依赖项,全局连接包括沿着两个实体头部之间的最短依赖路径(SDP)的所有依赖项,在许多情况下,也涉及到不直接连接到两个实体的字。 通过一个包括两个实体(即“公司”和基准测试)的示例语句,下图说明了两组依赖关系以及由这两组关系构建的邻接矩阵。 值得注意的是,当SDP较短时,本地组中的连接可能比全局组中的连接多。
示例句子的两组(即局部和全局)依赖关系的图示(实体以红色突出显示),邻接矩阵(右侧)建立在两组的所有连接之上。局部和全局连接分别用橙色和蓝色表示,
具体实施:我们在输入句子中插入四个特殊标记(即“<e1>”、“</e1>”、“<e2>”和“</e2>”)来标记两个实体的边界,这使得编码器在编码过程中能够区分实体的位置,从而提高模型性能。对于编码器,我们使用 BERT。对于A-GCN,我们随机初始化所有可训练参数和依赖类型嵌入。 为了评估方便,我们遵循以前的研究,使用标准的微观F1分数在ACE05数据集上,使用宏观平均F1分数在Semeval数据集上。 在我们的实验中,我们尝试了不同的超参数组合,并在DEV集上对它们进行调整,然后用在DEV集上获得最高F1分数的模型对测试集进行评估。
4.Results
我们的A-GCN模型的F1分数和基线(即仅Bert-only,标准GAT,标准GCN)在不同设置下,使用Bert-Base(A)和Bert-Large(B)。 所有基于图的模型(即GAT、GCN和A-GCN)都使用两种设置进行测试:第一种是使用包含所有依赖连接的全图(FULL),第二种是使用局部和全局连接的组合(L+G)。 我们还运行具有不同层数(即1到3层)的GCN和A-GCN,以进行公平的比较。
在ACE05和Semeval上使用两层的A-GCN和Bert-Large编码器将前人研究和我们的最佳模型进行了比较(F1评分)。
使用 BERT-large 编码器在来自 SemEval 的三组测试实例上的不同模型(即仅 BERT、两层标准 GCN 和两层 A-GCN)的性能(F1 分数),其中每组是基于生成的关于实例中两个实体之间的距离(即单词数)。
5.Analyses
模型利用不同类型依存信息,在两个基准数据集上的性能:
不同设定下模型在两个基准数据集上的性能:
案例研究:
上图中为示例输入分配给A-GCN(full)和AGCN(L+G)不同依赖连接的权重的可视化,其中较深和较粗的线表示具有较高权重的连接。
6.Conclusion
论文地址:https://aclanthology.org/2021.acl-long.344.pdf
论文代码:GitHub - cuhksz-nlp/RE-AGCN
本文为ACL2021中的一篇论文,从实验结果来看,使用GCN是有增益的,尤其是加入了attention 系数的GCN,但是增益不会很大,且GCN并不需要太多层,2层性能就不错,甚至使用Full信息的时候,也就是 依存关系全保留的情况下,使用GCN反而有坏处,如图中的 +1 GCN Layer FULL效果都比Baseline差,精简了信息以后,才有一定的正向增益。相比于使用GAT模型,作者由于引入了entity type信息,故整体的效果还是可以的。GNN模型本身的思想是信息的传播与聚合,在这个过程中,信息会进行流动,相同类别的数据会趋同,不同类别的数据差异会拉大,故GNN非常适用于分类任务,经典的任务如在cora上进行半监督学习。但是用于其他的任务,这种信息的聚合流动不一定能带来收益。由此观之,Graph的信息并不是越多越好,去掉噪声信息,保留核心信息便于模型“突出重点”,而不是全局平均化。
Dependency-driven Relation Extractionwith Attentive Graph Convolutional Networks相关推荐
- 论文阅读课1-Attention Guided Graph Convolutional Networks for Relation Extraction(关系抽取,图卷积,ACL2019,n元)
文章目录 abstract 1.introduction 1.1 dense connection+GCN 1.2 效果突出 1.3 contribution 2.Attention Guided G ...
- 知识图谱论文阅读(十六)【WWW2019】Knowledge Graph Convolutional Networks for Recommender
题目: KGCN 论文链接: 代码链接:https://github.com/hwwang55/KGCN 想法 高阶的意思就是multi-hop的意思 注意是从外向里聚合的,第h-1跳是外侧,第h跳是 ...
- RGCN - Modeling Relational Data with Graph Convolutional Networks 使用图卷积网络对关系数据进行建模 ESWC 2018
文章目录 1 相关介绍 两个任务 main contributions 2 Neural relational modeling 2.1 符号定义 2.2 关系图卷积网络R-GCN 2.3 Regul ...
- 【论文解读 ESWC 2018 | R-GCN】Modeling Relational Data with Graph Convolutional Networks
论文题目:Modeling Relational Data with Graph Convolutional Networks 论文来源:ESWC 2018 论文链接:https://arxiv.or ...
- SGC - Simplifying Graph Convolutional Networks 简化的图卷积网络 论文详解 ICML 2019
文章目录 1 相关介绍 1.1 Simple Graph Convolution (SGC)提出的背景 1.2 SGC效果 2 Simple Graph Convolution 简化的图卷积 2.1 ...
- 论文笔记:ICML 2019 Simplifying Graph Convolutional Networks
前言 随着2017年GCN概念的提出,近年来越来越多的GCN方法被提出.由于GCN本身的提出来源于深度学习中CNN和RNN的概念,因此可能会继承其中一些不必要的复杂度和冗余计算,本文提出了一种简化的图 ...
- 21.Selective Attention Based Graph Convolutional Networks for Aspect-Level Sentiment Classification阅
21.Selective Attention Based Graph Convolutional Networks for Aspect-Level Sentiment Classification阅 ...
- 2018 ESWC | Modeling Relational Data with Graph Convolutional Networks
2018 ESWC | Modeling Relational Data with Graph Convolutional Networks Paper: https://arxiv.org/pdf/ ...
- 论文笔记:ESWC 2018 Modeling Relational Data with Graph Convolutional Networks
前言 论文链接:https://arxiv.org/pdf/1703.06103.pdf github:https://github.com/kkteru/r-gcn 本文提出了一种将图卷积操作应用与 ...
最新文章
- 关于一个无限分类的多选,单选相关的控件
- Iterator(迭代器)接口 --对象循环遍历
- Base62x比Base64的编码速度更快吗?
- antd 函数组件_react函数组件中引用antd<Form/>组件demo
- 如何在Linux中查看所有正在运行的进程
- Java虚拟机的内存空间有几种!
- SpringBoot @ConfigurationProperties详解
- Mac OS Git 安装
- Ubuntu安装teamviewer
- Cisco PPPOE配置详解
- Android图形之HWC(二十四)
- html表格编辑器退出编辑状态,易优后台编辑器取消html标签(比如表格属性等)过滤解决方法...
- JAVA如何动态加载jar,并调用对应的函数?
- php手机i选择图片多选,ios 相册图片多选 带预览功能
- 网络安全等级保护三级产品清单整理
- 朗文当代高级英语辞典android,朗文当代高级英语词典
- 有什么简单办法从格式复杂的 Excel中提取数据
- 电子技术基础——基本共射放大电路
- 最全面的应届毕业生落户上海指南(2021)
- 利用GitHub搭建个人网站
热门文章
- Redis 6.2 执行hset 操作(源码)
- 让我们拥抱DataV,感受数据可视化的魅力
- SpriteKit Programming Guide手游开发之(FAKE STICK HERO)-李珊-专题视频课程
- 解决org.apache.ibatis.binding.BindingException: Type interface XXX is not known to the MapperRegistry
- win7 没有信息服务器地址,win7电脑提示无法解析服务器dns地址,该如何解决?
- 置信区间用计算机如何计算,正态分布置信概率和置信区间的计算机自动计算
- 【看完这篇就够了!!!通俗易懂】置信度理解(95%的置信度、置信区间)
- IDEA中 Ctrl+ALT+V这个快捷键无法使用(被有道词典占用)
- 诺威健康通过聆讯:已派付股息1570万美元,称预计将录得巨额亏损
- 微信支付相关,如何获取API证书