Learning Entity and Relation Embeddings for Knowledge Graph Completion

Learning Entity and Relation Embeddings for Knowledge Graph Completion

0. 问题

  • TransE和TransH都假设Entity和Relation位于同一个语义空间中
  • 传统Trans模型都只是为每个Relation只建立一个特定的向量表示, 但关系通常是多样性的

1. 主要思想

  • 提出TransR构建Entity Space和Relation Space两种不同的语义空间, 并在Relation Space上实现翻译
  • 提出CTransR, 通过聚类的方法, 为每个关系建立多个不同的向量表示

2. TransR

实体嵌入: h , t ∈ R k \mathbf{h}, \mathbf{t} \in \mathbb{R}^{k} h,tRk

关系嵌入: r ∈ R d \mathbf{r} \in \mathbb{R}^{d} rRd

投影矩阵: M r ∈ R k × d \mathbf{M}_{r} \in \mathbb{R}^{k \times d} MrRk×d

投影向量:
h r = h M r , t r = t M r \mathbf{h}_{r}=\mathbf{h} \mathbf{M}_{r}, \quad \mathbf{t}_{r}=\mathbf{t} \mathbf{M}_{r} hr=hMr,tr=tMr
Score Fuction:
f r ( h , t ) = ∥ h r + r − t r ∥ 2 2 f_{r}(h, t)=\left\|\mathbf{h}_{r}+\mathbf{r}-\mathbf{t}_{r}\right\|_{2}^{2} fr(h,t)=hr+rtr22
正则化: ∥ h ∥ 2 ≤ 1 , ∥ r ∥ 2 ≤ 1 , ∥ t ∥ 2 ≤ 1 , ∥ h M r ∥ 2 ≤ 1 , ∥ t M r ∥ 2 ≤ 1 \|\mathbf{h}\|_{2} \leq 1,\|\mathbf{r}\|_{2} \leq 1,\|\mathbf{t}\|_{2} \leq 1,\left\|\mathbf{h M}_{\mathbf{r}}\right\|_{2} \leq 1,\left\|\mathbf{t M}_{\mathbf{r}}\right\|_{2} \leq 1 h21,r21,t21,hMr21,tMr21

3. CTransR

对于每个关系 r \mathbf{r} r所对应的三元组 ( h , t ) (\mathbf{h},\mathbf{t}) (h,t), 先通过TransE学习 h \mathbf{h} h t \mathbf{t} t, 然后依据 h − t \mathbf{h-t} ht 来进行聚类, 为每个聚类学习一个关系向量 r c \mathbf{r_{c}} rc.

投影向量:
h r , c = h M r , t r , c = t M r \mathbf{h}_{r,c}=\mathbf{h} \mathbf{M}_{r}, \quad \mathbf{t}_{r,c}=\mathbf{t} \mathbf{M}_{r} hr,c=hMr,tr,c=tMr
Score Fuction:
f r ( h , t ) = ∥ h r , c + r c − t r , c ∥ 2 2 + α ∥ r c − r ∥ 2 2 f_{r}(h, t)=\left\|\mathbf{h}_{r, c}+\mathbf{r}_{c}-\mathbf{t}_{r, c}\right\|_{2}^{2}+\alpha\left\|\mathbf{r}_{c}-\mathbf{r}\right\|_{2}^{2} fr(h,t)=hr,c+rctr,c22+αrcr22
其中正则项 ∥ r c − r ∥ 2 2 \left\|\mathbf{r}_{c}-\mathbf{r}\right\|_{2}^{2} rcr22 保证 r c \mathbf{r}_{c} rc r \mathbf{r} r 不会偏离太远.

4. Question

  • 每个关系 r \mathbf{r} r有多种表示,那么执行任务时应该如何选择?
    文中的Link Prediction任务直接给出具体的 r c \mathbf{r}_{c} rc h \mathbf{h} h(或 t \mathbf{t} t )来预测 t \mathbf{t} t (或 h \mathbf{h} h ), 但实际面对字符串表示的关系关系 r \mathbf{r} r, 应该用哪个 r c \mathbf{r_{c}} rc来表示?
    例如从文本中进行关系抽取时就会面临这个问题, 但本文似乎故意略过这一点, 只使用了TransR来执行这项任务, 而没有使用CTransR
  • 实体对之间不仅要满足 ∥ h + r − t ∥ 2 2 = 0 \left\|\mathbf{h}+\mathbf{r}-\mathbf{t}\right\|_{2}^{2}=0 h+rt22=0的关系, 还应该满足推理的关系. 例如 (goldfish, kind_of, fish) 和 (fish, kind_of, animal) 之间可以推断出 (goldfish, kind_of, animal). 如何使关系表示具备推理能力, 是一个值得思考的点.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>