RotatE: Knowledge Graph Embedding by Relational Rotation in Complex Space

RotatE: Knowledge Graph Embedding by Relational Rotation in Complex Space

Zhiqing Sun, etc.

RotatE: Relational Rotation in Complex Vector Space

在KG中最重要的三个关系模式。

Modeling And Inferring Relation Patterns

KG中的link prediction关键是推断connection pattern。三种常见的是symmetry,inversion,和composition。

  1. 一个关系是symmetric,当且仅当$$r(x,y) => r(y,x)$$
  2. 两个关系是inverse,当且仅当$$r_2(x,y) => r_1(y,x)$$
  3. 三个关系是composed,当且仅当$$r_2(x,y) \wedge r_3(y,z) => r_1(x,z)$$

Modeling Relations as Rotations in Complex Vector Space

从Euler's identity出发,我们将head和tail entity映射到complex embeddings。然后将每一个relation代表的functional mapping定义为从head到tail的element-wise rotation。

$$t = h \circ r$$, where $$|r_i| = 1$$

其中$$\circ$$代表的是element-wise product。具体的,对于embedding中的每一个element,我们有$$ti = h_i r_i$$,且$$|r_i| = 1$$。通过这么做,我们可以有$$r_i$$ 的形式为 $$e^{i\theta{r,i}}$$,对应于从complex plan的中心进行一个你是正旋转 $$\theta_{r,i}$$ 弧度。我们将这个称为RotatE。而distance function定义为

$$d_r(h,t) = | h \circ r - t |$$

正是这么定义,我们可用它来表示三种relation pattern。证明在appendix。

Optimization

使用negative sampling loss

$$ L = -\log \sigma (\gamma - dr(h,t)) = \sum{i=1}^n \frac{1}{k} \log \sigma (d_r(h_i', t_i') - \gamma)

$$

其中$$\gamma$$是固定的margin,$$(h_t', r, t_i')$$是第i个negative triplet。

但这里negative triplet是由随机均匀取出的。有一个问题就是有些samples/triplets是明显的false。因此提出新的negative sampling方法,叫self-adversarial negative sampling,是根据当前的embedding model进行采样。具体地说,是根据以下分布

$$ p(h_j', r, t_j' | {( f_i,r_i,t_i )}) = \frac{\exp{\alpha f_r(h_j', t_j')}}{\sum_i \exp \alpha f_r(h_i', t_i')}

$$

$$\alpha$$是一个参数,temperature of sampling。另外,由于sampling的过程会比较昂贵,我们将上述的probability当作是negative sample的权重。因此有

$$ L = -\log \sigma (\gamma - dr(h,t)) = \sum{i=1}^n p(h_i', r, t_i') \log \sigma (d_r(h_i', t_i') - \gamma)

$$

results matching ""

    No results matching ""