Extracting Relational Facts by an End-to-End Neural Model with Copy Mechanism
-
Abstract
本文提出一种基于复制机制的seq2seq学习的端到端模型,可以从任何这类的句子中联合提取相关事实,在解码过程中采用两种不同的策略:一个联合解码器和多个分离解码器。
Instruction
- 一个句子没有重叠三元组:Normal类
- 一个句子某些三元组中的某些实体对重叠:EntityPairOverlap(EPO)类
- 一个句子的某些三元组中有一个重叠的实体,而这些三元组中没有重叠的实体对:SingleEntityOverlap(SEO)类
Model
Encoder
将一个句子s=[w1,…,wn]s=[w_1,…,w_n]s=[w1,…,wn]转化为矩阵x=[x1,…,xn]x=[x_1,…,x_n]x=[x1,…,xn],然后通过RNN编码器读取矩阵xxx,生成输出和隐藏转态ot,ht=f(xt,ht−1)o_t,h_t=f(x_t, h_{t-1})ot,ht=f(xt,ht−1)
Decoder
首先解码生成三元组的关系,其次解码器从源句子中复制一个实体作为三元组的第一个实体,最后解码器从源句子中复制第二个实体,重复此过程,解码器可以生成多个三元组。
(a)是oneDecoder模型的解码器,仅使用一个解码器(带阴影的矩形),并且使用the sentence representation初始化该编码器 。
(b)是multiDecoder模型的解码器,有两个解码器(带阴影的矩形),第一个用s初始化,其他的解码器使用之前的隐藏状态和s进行初始化Predict Relation
假设有m个有效关系,本文使用全连接层来计算置信向量:qr=selu(obW+b)q^r=selu(o_bW+b)qr=selu(obW+b)
Copy the First Entity
要复制第一个实体,本文计算源句中所有单词的置信向量:qe=[q1e,…,qne]q^e=[q^e_1,…,q^e_n]qe=[q1e,…,qne],计算方式如关系预测
Copy the Seconda Entity
复制第二个实体与复制第一个实体相同,唯一的区别是两次不能是同一个实体
Result
启示
- 模型太复杂了,效果也一般