前言
这是EMNLP2020一篇文档级关系抽取的论文,代码链接 https://github.com/nju-websoft/GLRE,这篇论文主要有三个亮点:
- 构建了异质图并使用了R-GCN进行特征传播,相较之前一些构建同质图然后做特征传播的模型,使用异质图可以融合更复杂的特征;
- 有一个本地表示层,通过自注意力的计算方式得到一个local entity representation,消融实验证明了这种方式可以提升关系推理的性能;
- 在关系分类时使用文档主题信息,计算关系向量对文档主题信息的注意力。
1.摘要
文档级关系抽取的目标是识别有多个句子的一篇文档中两个命名实体之间的语义关系,这需要复杂的实体关系推理。本文提出了一种新的文档级RE模型,通过对文档信息进行整体和局部两方面的信息表示进行编码,然后将实体的局部语义和全局语义表示拼接在一起得到实体对的表示,在和文档主题求注意力后进行关系分类。
2.模型
首先用BERT对输入文档以句子为单位编码,然后采用和19年EMNLP中的EoG模型一样的方式构建一个异质图,在异质图上使用R-GCN进行特征传播,接着使用一个本地表示层,最终拼接多个向量(局部表示和全局表示)得到实体对的表示,在对文档主体信息求注意力后进行关系分类。
2.1编码层
D = [ w 1 , w 2 , . . . w k ] D=[w_1,w_2,... w_k] D=[w1,w2,...wk] 是输入文档,其中 w j ( 1 ≤ j ≤ k ) wj(1≤j≤k) wj(1≤j≤k) 是其中的第 j j j 个字。使用BERT对文档D进行编码:
其中 h j ∈ R d w h_j∈R^{d_w} hj∈Rdw 是在BERT最后一层输出的一系列隐藏状态。受BERT输入长度的限制,GLRE将一个长文档以短段落的形式顺序编码。
2.2全局表示层
这个模块构建了一个和EoG中相同的具有不同类型节点和边的全局异构图,以获取不同的依赖关系信息。在这个异质图中,有三种类型的节点:
- 提及节点(M节点),该节点对文档D中实体的不同提及进行建模。提及节点 m i m_i mi 的表示通过对所包含单词的表示进行平均来定义。为了区分节点类型,拼接了一个节点类型表示 t m ∈ R t d t_m∈R^d_t tm∈Rtd。因此, m i m_i mi 的表示是 n m i = [ a v g w j ∈ m i ( h j ) ; t m ] n_{m_i}=[avg_{w_j∈m_i}(h_j);t_m] nmi=[avgwj∈mi(hj);tm] ,其中 [ ; ] [ ;] [;] 是串联运算符。
- 实体节点(E节点),表示文档D中的实体。实体节点 e i e_i ei 的表示是通过其所有提及的平均(将实体对应的所有提及向量做一个平均池化)和节点类型表示 t e