Nan G, Guo Z, Sekulić I, et al. Reasoning with latent structure refinement for document-level relation extraction[J]. arXiv preprint arXiv:2005.06312, 2020.
代码和预训练模型的github链接
LSR模型
- 本文提出了用于文档级关系提取任务的
Latent Structure Refinement(LSR)
模型。 - LSR由三个组件组成:
节点构造器
、动态推理器
和分类器
。- 节点构造器:节点构造函数首先对输入文档的每个句子进行编码,并输出上下文表示形式。将与句子中最短依赖路径上的mentions和tokens相对应的表示提取为节点。
- 动态推理器:然后应用动态推理器根据提取的节点归纳出文档级结构。节点的表示根据潜在结构上的信息传播进行更新,并经过迭代细化。
- 分类器:节点的最终表示用于计算分类器的分类分数。
节点构造器
- 节点构造器将文档中的句子编码为上下文表示,并构造
提及节点
、实体节点
和元依赖路径(MDP)节点
的表示。
上下文编码
- 把文档d中的每一个句子di输入上下文编码器,输出di中每个单词的上下文表示。
- 上下文编码器可以是
BiLSTM
或BERT
。
节点提取
- 我们为文档级图构建了三种类型的节点:
提及节点
、实体节点
和元依赖路径 (MDP) 节点
。- 提及节点:每个句子中实体的不同名称。
- 实体节点:其提及节点的平均值。
- MDP节点:为了构建文档级图,现有方法使用句子的依赖树中的所有节点或通过平均句子的所有token表示来使用一个句子级节点。
动态推理
- 动态推理器有两个模块,
结构归纳
和多跳推理
。- 结构归纳模块用于学习文档级图的潜在结构。将节点构造器构造的节点作为输入,在双线性变换之前,节点的表示被馈送到两个前馈网络中,潜在文档级结构由Kirchhoff的矩阵树定理计算。
- 多跳推理模块用于对潜在结构进行推理,将结构作为输入,并使用密集连接的图卷积网络更新节点的表示。
迭代优化
:模型堆叠了 N 个动态推理器块,以诱导文档级结构 N 次。
分类器
- 经过 N 次细化后,就获得了所有节点的表示。
- 使用
双线性函数
来计算每个关系类型r的概率。