论文链接:http://pdfs.semanticscholar.org/a4ad/33855655986d9edcea300db7849d4b8498a0.pdf
代码链接:https://github.com/mrlyk423/relation_extraction
论文来源:ACL 2015
导读
知识图谱作为人工智能应用的重要资源,表示学习对知识图谱的完善和应用至关重要。先前提出的TransE、TransH、TransR模型对表示学习提升不少,表示学习对关系抽取、三元组分类以及链接预测等方面具有作用。TransD模型改进TransR,认为不同的实体应映射到不同的语义空间中,且减少了计算量。
1、引言
知识图谱对于大量的人工智能应用来说是非常有用的资源,但是其距离完善还有一段距离。先前的工作例如TransE、TransH和TransR,认为头实体到尾实体可以被认为是一种翻译,且CTransR获得最优效果。本文,我们提出一个细粒度模型,叫TransD,且相比之前的模型有所提高。在TransD中,我们使用两个向量来表征两个实体(头实体和尾实体)。首先第一个向量表征实体关系,另一个被用来构建动态映射矩阵。相比TransR/CTransR模型,TransD不仅考虑到关系的多样性,也考虑到实体的多样性。TransD有较少的参数,且TransD参数较少,没有矩阵向量乘法运算,可以应用于大型图数据。实验中,我们在两个标准任务上评估了我们的模型。评估的结果表明我们的方法比最优模型更好。
像WordNet、FreeBase、YaGo一样的知识图谱在许多AI应用,例如关系抽取、问答等。这些通常包含大量的结构化数据,形如(head entity,relation,tail entity)即
(
h
,
r
,
t
)
(h,r,t)
(h,r,t) 。TransR模型包含如下几个缺点:
(1)对于特定的关系
r
r
r ,所有实体共享同一个语义空间
M
r
M_r
Mr ,但头实体和尾实体通常不是一个类型的实体,因此实体需要映射到不同的语义空间中;
(2)实体和关系的投影操作是一个连续迭代的操作,仅依靠关系进行推理是不足的;投影矩阵
M
r
\mathbf{M_{r}}
Mr只取决于
r
r
r , 但应该由实体和关系共同决定。
(3)矩阵向量带来大量的参数运算量。每个
r
r
r 对应一个投影矩阵, 关系多时参数过于庞大。
2、TransD模型详解
本文提出一种全新的方法TransD来为图谱进行建模。如图所示
我们定义了两个向量,第一个向量表征实体或关系的语义,另一个向量(投影向量)表示如何将实体从实体空间映射到关系空间中,因此每个实体对有唯一的矩阵。
M
r
h
,
M
r
t
\mathbf{M}_{rh},\mathbf{M}_{rt}
Mrh,Mrt 分别是实体
h
,
t
h,t
h,t 的映射矩阵,
h
i
p
,
t
i
p
(
i
=
1
,
2
,
3
)
\mathbf{h}_{ip}, \mathbf{t}_{ip}(i=1,2,3)
hip,tip(i=1,2,3)及关系
r
p
\mathbf{r}_p
rp为投影向量,
h
i
⊥
,
t
i
⊥
\mathbf{h}_{i\perp},\mathbf{t}_{i\perp}
hi⊥,ti⊥ 分别为头尾实体的投影向量。因此有:
M
r
h
=
r
p
h
p
T
+
I
m
×
n
\mathbf{M}_{rh}=\mathbf{r}_p\mathbf{h}_{p}^{\mathbf{T}}+\mathbf{I}^{m\times n}
Mrh=rphpT+Im×n
M
r
t
=
r
p
t
p
T
+
I
m
×
n
\mathbf{M}_{rt}=\mathbf{r}_p\mathbf{t}_{p}^{\mathbf{T}}+\mathbf{I}^{m\times n}
Mrt=rptpT+Im×n
h
⊥
=
M
r
h
h
\mathbf{h}_{\perp}=\mathbf{M}_{rh}\mathbf{h}
h⊥=Mrhh
t
⊥
=
M
r
t
t
\mathbf{t}_{\perp}=\mathbf{M}_{rt}\mathbf{t}
t⊥=Mrtt
f
r
(
h
,
t
)
=
−
∣
∣
h
⊥
+
r
−
t
⊥
∣
∣
2
2
f_r(\mathbf{h},\mathbf{{t})=-||\mathbf{h}_{\perp}+\mathbf{r}-\mathbf{t}_{\perp}}||_2^2
fr(h,t)=−∣∣h⊥+r−t⊥∣∣22其中
I
m
×
n
\mathbf{I}^{m \times n}
Im×n表示单位矩阵。分析上式,实体投影矩阵主要与当前实体对中的关系和实体有关,相比TransR模型,每个实体所在的投影空间不相同。损失函数如下所示:
L = ∑ ( h , r , t ) ∈ S ∑ ( h ′ , r , t ′ ) ∈ S ′ [ γ + f r ( h , t ) − f r ( h ′ , t ′ ) ] + L=\sum_{(h,r,t)\in S}\sum_{(h',r,t')\in S'}[\gamma + f_r(h,t)-f_r(h',t')]_+ L=(h,r,t)∈S∑(h′,r,t′)∈S′∑[γ+fr(h,t)−fr(h′,t′)]+负采样的策略与TransH和TransR相同。
3、TransD和其他Trans模型的联系
3.1、TransE
当 m = n m=n m=n 且 h p \mathbf{h}_{p} hp, r p \mathbf{r}_{p} rp, t p \mathbf{t}_{p} tp设置为零向量时, 可知TransE是TransD的一个特例。
3.2、TransH
TransH模型中
h
⊥
=
h
−
w
r
h
w
r
t
⊥
=
t
−
w
r
t
w
r
\begin{aligned} \mathbf{h}_{\perp} &=\mathbf{h}-\mathbf{w}_{r} \mathbf{h} \mathbf{w}_{r} \\ \mathbf{t}_{\perp} &=\mathbf{t}-\mathbf{w}_{r} \mathbf{t}\mathbf{w}_{r} \end{aligned}
h⊥t⊥=h−wrhwr=t−wrtwr
TransD模型中
h
⊥
=
M
r
h
h
=
h
+
h
p
⊤
h
r
p
t
⊥
=
M
r
t
t
=
t
+
t
p
⊤
t
r
p
\begin{aligned} \mathbf{h}_{\perp} &=\mathbf{M}_{r h} \mathbf{h}=\mathbf{h}+\mathbf{h}_{p}^{\top} \mathbf{h r}_{p} \\ \mathbf{t}_{\perp} &=\mathbf{M}_{r t} \mathbf{t}=\mathbf{t}+\mathbf{t}_{p}^{\top} \mathbf{t r}_{p} \end{aligned}
h⊥t⊥=Mrhh=h+hp⊤hrp=Mrtt=t+tp⊤trp由此可看到, TransH中投影的方向只取决于
r
r
r, 而在TransD中, 由
e
e
e 和
r
r
r 共同决定.
3.3、TransR
TransR为每个 r r r 都分配了一个矩阵, 而TransD为每个实体和关系分配一个向量, 以向量的乘积代替矩阵, 有效减少了模型的参数量。
4、实验
实验中用到的数据集包括四个,分别如图所示:
实验包括两个部分:三元组分类和链接预测。
4.1、三元组分类
任务给定三元组,判定当前三元组是否正确。实验结果如图所示:
作者在实验过程中关注了一些具有更低accuracy的关系。
分析:
- 对于 s i m i l a r _ t o similar\_to similar_to关系主要因为训练数据不充足,只占了1.5%。
- 对于最右侧的图说明了bern方法的效果要好于unif
4.2、链接预测
给定实体和关系,预测另一个实体。实验结果如图所示: