Knowledge Graph Embedding via Dynamic Mapping Matrix
0. 问题
TransR有以下缺点:
- 对于某个 r r r , 所有的实体共用一个投影矩阵 M r \mathbf{M_{r}} Mr , 但头实体和尾实体通常不是一个类型的实体.
- 投影矩阵 M r \mathbf{M_{r}} Mr 只取决于 r r r , 但应该由实体和关系共同决定.
- 每个 r r r 对应一个投影矩阵, 关系多时参数过于庞大.
1. 主要思想
每个实体和关系都用2个向量来表示, 一个向量表示其含义, 另一个向量决定其投影方向.
2. TransR
对于 ( h , r , t ) (h,r,t) (h,r,t), 有向量 h \mathbf{h} h, h p \mathbf{h}_{p} hp, r \mathbf{r} r, r p \mathbf{r}_{p} rp, t \mathbf{t} t, t p \mathbf{t}_{p} tp
其中 h , h p , t , t p ∈ R n \mathbf{h}, \mathbf{h}_{p}, \mathbf{t}, \mathbf{t}_{p} \in \mathbb{R}^{n} h,hp,t,tp∈Rn 而 r \mathbf{r} r, r p ∈ R m \mathbf{r}_{p} \in \mathbb{R}^{m} rp∈Rm
对每个
(
h
,
r
,
t
)
(h,r,t)
(h,r,t), 有2个投影矩阵:
M
r
h
=
r
p
h
p
⊤
+
I
m
×
n
M
r
t
=
r
p
t
p
⊤
+
I
m
×
n
\begin{aligned} \mathbf{M}_{r h} &=\mathbf{r}_{p} \mathbf{h}_{p}^{\top}+\mathbf{I}^{m \times n} \\ \mathbf{M}_{r t} &=\mathbf{r}_{p} \mathbf{t}_{p}^{\top}+\mathbf{I}^{m \times n} \end{aligned}
MrhMrt=rphp⊤+Im×n=rptp⊤+Im×n
其中
I
m
×
n
\mathbf{I}^{m \times n}
Im×n 表示单位矩阵.
3. TransD和其他Trans模型的联系
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的一个特例
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. TransR
TransR为每个 r r r 都分配了一个矩阵, 而TransD为每个实体和关系分配一个向量, 以向量的乘积代替矩阵, 有效减少了模型的参数量.
5420

被折叠的 条评论
为什么被折叠?



