【自然语言处理】【知识图谱】知识图谱表示学习(五):【PairRE】基于成对关系向量的知识图谱嵌入

原始论文:https://arxiv.org/pdf/2011.03798.pdf

一、简介

​ 基于距离的知识图谱嵌入方法在链接预测任务上效果显著。在链接预测任务中,存在两个被广泛研究的主题:(1) 处理复杂关系的能力,例如:N-to-1 \text{N-to-1}N-to-1、1-to-N \text{1-to-N}1-to-N和N-to-No \text{N-to-No}N-to-No;(2) 编码各种关系模式,例如对称(symmetry)/反对称(antisymmetry)。然而,现存的方法并不能同时解决这两个问题。因此,本文提出了一种基于成对关系向量的嵌入模型PairRE \text{PairRE}PairRE。这种成对的关系向量能够自动适应损失函数中的margin来拟合复杂关系,还能够编码三种重要的关系模式(symmetry/antisymmetry、inverse、composition)。此外,在关系表示向量上添加简单的约束后,PairRE \text{PairRE}PairRE能够进一步编码子关系(subrelation)。

二、符号与概念

​ 知识图谱是由一系列表示事实的三元组组成,而知识图谱嵌入方法通过定义评分函数来衡量这些三元组的合理性。

  • 本文使用( h , r , t ) (h,r,t)(h ,r ,t )表示三元组,其中h h h表示头实体,r r r表示关系,t t t表示尾实体;
  • 使用小写黑体字母来表示集合E \mathcal{E}E和R \mathcal{R}R中的实体和关系;
  • 使用T \mathcal{T}T表示真实世界中存在的三元组;
  • f r ( h , t ) f_r(h,t)f r ​(h ,t )表示评分函数;

​ 给定一个关系r r r,计算每个头实体的平均尾实体数(t p h r tphr t p h r)和每个尾实体的平均头实体数(h p t r hptr h p t r)。

  • 若t p h r < 1.5 tphr且h p t r < 1.5 hptr,则关系r r r为1-to-1 \text{1-to-1}1-to-1;
  • 若t p h r > 1.5 tphr>1.5 t p h r >1 .5且h p t r > 1.5 hptr>1.5 h p t r >1 .5,则关系r r r为N-to-N \text{N-to-N}N-to-N;
  • 若t p h r > 1.5 tphr>1.5 t p h r >1 .5且h p t r < 1.5 hptr,则关系r r r为1-to-N \text{1-to-N}1-to-N;

  • 对称/反对称(symmetry/antisymmetry)

  • 对于所有的e 1 , e 2 ∈ E e_1,e_2\in\mathcal{E}e 1 ​,e 2 ​∈E满足( e 1 , r , e 2 ) ∈ T ⇔ ( e 2 , r , e 1 ) ∈ T (e_1,r,e_2)\in\mathcal{T}\Leftrightarrow(e_2,r,e_1)\in\mathcal{T}(e 1 ​,r ,e 2 ​)∈T ⇔(e 2 ​,r ,e 1 ​)∈T,则关系r r r是对称关系(symmetry);
  • 对于所有的e 1 , e 2 ∈ E e_1,e_2\in\mathcal{E}e 1 ​,e 2 ​∈E满足( e 1 , r , e 2 ) ∈ T ⇒ ( e 2 , r , e 1 ) ∉ T (e_1,r,e_2)\in\mathcal{T}\Rightarrow(e_2,r,e_1)\notin\mathcal{T}(e 1 ​,r ,e 2 ​)∈T ⇒(e 2 ​,r ,e 1 ​)∈/​T,则称关系r r r是反对称关系(antisymmetry);
  • 相反(Inverse) 对所有e 1 , e 2 ∈ E e_1,e_2\in\mathcal{E}e 1 ​,e 2 ​∈E满足( e 1 , r 1 , e 2 ) ∈ T ⇔ ( e 2 , r 2 , e 1 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T}\Leftrightarrow(e_2,r_2,e_1)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T ⇔(e 2 ​,r 2 ​,e 1 ​)∈T,则称r 1 r_1 r 1 ​和r 2 r_2 r 2 ​是相反关系(inverse);
  • 组合(composition) 对所有e 1 , e 2 , e 3 ∈ E e_1,e_2,e_3\in\mathcal{E}e 1 ​,e 2 ​,e 3 ​∈E满足( e 1 , r 1 , e 2 ) ∈ T ∧ ( e 2 , r 2 , e 3 ) ∈ T ⇒ ( e 1 , r 3 , e 3 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T}\land(e_2,r_2,e_3)\in\mathcal{T}\Rightarrow (e_1,r_3,e_3)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T ∧(e 2 ​,r 2 ​,e 3 ​)∈T ⇒(e 1 ​,r 3 ​,e 3 ​)∈T,则关系r 3 r_3 r 3 ​可以看作是r 1 r_1 r 1 ​和r 2 r_2 r 2 ​的组合。
  • 子关系(subrelation) 对所有e 1 , e 2 ∈ E e_1,e_2\in\mathcal{E}e 1 ​,e 2 ​∈E满足( e 1 , r 1 , e 2 ) ∈ T ⇒ ( e 1 , r 2 , e 2 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T}\Rightarrow(e_1,r_2,e_2)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T ⇒(e 1 ​,r 2 ​,e 2 ​)∈T,那么r 2 r_2 r 2 ​可以看作是r 1 r_1 r 1 ​的子关系。

三、 PairRE \text{PairRE}PairRE

​ 为了克服1-to-N/N-to-1/N-to-N \text{1-to-N/N-to-1/N-to-N}1-to-N/N-to-1/N-to-N这种复杂关系的问题,论文提出了一种成对关系向量模型PairRE \text{PairRE}PairRE。给定一个三元组( h , r , t ) (h,r,t)(h ,r ,t ),PairRE \text{PairRE}PairRE会在实数空间中学习实体和关系的嵌入向量。具体来说,PairRE \text{PairRE}PairRE会将关系嵌入成两个向量,分别为[ r H , r T ] [\textbf{r}^H,\textbf{r}^T][r H ,r T ]。r H \textbf{r}^H r H和r T \textbf{r}^T r T分别用于将头实体h h h和尾实体t t t投影至欧式空间,投影的操作则采用Hadamard积。PairRE \text{PairRE}PairRE最终会计算投影后两个向量的距离,并作为该三元组是否合理的拼接。形式化的来说,对于真实存在的三元组( h , r , t ) (h,r,t)(h ,r ,t ),期望h ∘ r H ≈ t ∘ r T \textbf{h}\circ\textbf{r}^H\approx\textbf{t}\circ\textbf{r}^T h ∘r H ≈t ∘r T;否则,h ∘ r H \textbf{h}\circ\textbf{r}^H h ∘r H应远离t ∘ r T \textbf{t}\circ\textbf{r}^T t ∘r T。此外,为了消除缩放自由度,向实体嵌入向量添加范数为1的约束。

​ 最终,评分函数定义为
f r ( h , t ) = − ∥ h ∘ r H − t ∘ r T ∥ f_r(\textbf{h},\textbf{t})=-\parallel \textbf{h}\circ\textbf{r}^H-\textbf{t}\circ\textbf{r}^T \parallel f r ​(h ,t )=−∥h ∘r H −t ∘r T ∥
其中,h , r H , r T , t ∈ R d \textbf{h},\textbf{r}^H,\textbf{r}^T,\textbf{t}\in\mathbb{R}^d h ,r H ,r T ,t ∈R d并且∥ h ∥ 2 = ∥ t ∥ 2 = 1 \parallel\textbf{h}\parallel^2=\parallel\textbf{t}\parallel^2=1 ∥h ∥2 =∥t ∥2 =1。

此外,将所有的实体嵌入向量表示为{ e j } j = 1 E {\textbf{e}j}{j=1}^\mathcal{E}{e j ​}j =1 E ​,所有的关系嵌入向量表示为{ r j } j = 1 R {\textbf{r}j}{j=1}^\mathcal{R}{r j ​}j =1 R ​。

四、建模复杂关系

​ 相比于TransE/RotatE \text{TransE/RotatE}TransE/RotatE,PairRE \text{PairRE}PairRE能够对不同的关系获取不同的向量表示。此外,成对的关系向量能够自适应损失函数中的margin,从而减少建模复杂关系的问题。

​ 以1-to-N \text{1-to-N}1-to-N关系为例。为了更加的解释PairRE \text{PairRE}PairRE,不失一般性地,设嵌入向量的维度为1且没有对向量范数的约束。给定一个三元组( h , r , ? ) (h,r,?)(h ,r ,?),该三元组的正确尾实体位于集合S = { t 1 , t 2 , … , t N } S={t_1,t_2,\dots,t_N}S ={t 1 ​,t 2 ​,…,t N ​},那么PairRE \text{PairRE}PairRE通过下面的公式来预测真正的尾实体
∥ h ∘ r H − t i ∘ r T ∥ < γ \parallel \textbf{h}\circ\textbf{r}^H-\textbf{t}_i\circ\textbf{r}^T \parallel < \gamma ∥h ∘r H −t i ​∘r T ∥<γ
其中,γ \gamma γ是嵌入模型的margin并且t i ∈ S t_i\in S t i ​∈S。可以基于上式推断出t i t_i t i ​值位于下面的区间:

推导:
− γ < h ∘ r H − t i ∘ r T < γ − h ∘ r H − γ < − t i ∘ r T < γ − h ∘ r H h ∘ r H − γ < t i ∘ r T < h ∘ r H + γ -\gamma

t i ∈ { ( ( h ∘ r H − γ ) / r T , ( h ∘ r T + γ ) / r T ) , if r T > 0 ( ( h ∘ r H + γ ) / r T , ( h ∘ r T − γ ) / r T ) , if r T < 0 ( − ∞ , + ∞ ) , otherwise \textbf{t}_i\in \begin{cases} ((\textbf{h}\circ\textbf{r}^H-\gamma)/\textbf{r}^T,(\textbf{h}\circ\textbf{r}^T+\gamma)/\textbf{r}^T),\text{if}\;\textbf{r}^T>0 \ ((\textbf{h}\circ\textbf{r}^H+\gamma)/\textbf{r}^T,(\textbf{h}\circ\textbf{r}^T-\gamma)/\textbf{r}^T),\text{if}\;\textbf{r}^T

​ 从上面的分析可以看到PairRE \text{PairRE}PairRE可以通过调整r T \text{r}^T r T来调整t i \textbf{t}_i t i ​所处的区间,从而适应候选集S S S的大小。TransE \text{TransE}TransE或RotatE \text{RotatE}RotatE对于所有的复杂关系类型都只有固定的margin。当候选集S S S太大的话,这些模型很难拟合数据。

​ 同理,对于N-to-1 \text{N-to-1}N-to-1关系,可以通过r H \textbf{r}^H r H来进行调整。

五、建模关系模式

​ 若满足( e 1 , r 1 , e 2 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T且( e 2 , r 1 , e 1 ) ∈ T (e_2,r_1,e_1)\in\mathcal{T}(e 2 ​,r 1 ​,e 1 ​)∈T,有
e 1 ∘ r 1 H = e 2 ∘ r 1 T ∧ e 2 ∘ r 1 H = e 1 ∘ r 1 T ⇒ ( r 1 H ) 2 = ( r 1 T ) 2 \textbf{e}_1\circ\textbf{r}_1^H=\textbf{e}_2\circ\textbf{r}_1^T\land\textbf{e}_2\circ\textbf{r}_1^H=\textbf{e}_1\circ\textbf{r}_1^T \Rightarrow (\textbf{r}_1^H)^2=(\textbf{r}_1^T)^2 e 1 ​∘r 1 H ​=e 2 ​∘r 1 T ​∧e 2 ​∘r 1 H ​=e 1 ​∘r 1 T ​⇒(r 1 H ​)2 =(r 1 T ​)2
​ 类似地,若满足( e 1 , r 1 , e 2 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T且( e 2 , r 1 , e 1 ) ∉ T (e_2,r_1,e_1)\notin\mathcal{T}(e 2 ​,r 1 ​,e 1 ​)∈/​T,有
e 1 ∘ r 1 H = e 2 ∘ r 1 T ∧ e 2 ∘ r 1 H ≠ e 1 ∘ r 1 T ⇒ ( r 1 H ) 2 ≠ ( r 1 T ) 2 \textbf{e}_1\circ\textbf{r}_1^H=\textbf{e}_2\circ\textbf{r}_1^T\land\textbf{e}_2\circ\textbf{r}_1^H\neq\textbf{e}_1\circ\textbf{r}_1^T \Rightarrow (\textbf{r}_1^H)^2\neq(\textbf{r}_1^T)^2 e 1 ​∘r 1 H ​=e 2 ​∘r 1 T ​∧e 2 ​∘r 1 H ​​=e 1 ​∘r 1 T ​⇒(r 1 H ​)2 ​=(r 1 T ​)2

​ 若满足( e 1 , r 1 , e 2 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T且( e 2 , r 2 , e 1 ) ∈ T (e_2,r_2,e_1)\in\mathcal{T}(e 2 ​,r 2 ​,e 1 ​)∈T,有
e 1 ∘ r 1 H = e 2 ∘ r 1 T ∧ e 2 ∘ r 2 H = e 1 ∘ r 2 T ⇒ r 1 H ∘ r 2 H = r 1 T ∘ r 2 T \textbf{e}_1\circ\textbf{r}_1^H=\textbf{e}_2\circ\textbf{r}_1^T\land\textbf{e}_2\circ\textbf{r}_2^H=\textbf{e}_1\circ\textbf{r}_2^T\Rightarrow \textbf{r}_1^H\circ\textbf{r}_2^H=\textbf{r}_1^T\circ\textbf{r}_2^T e 1 ​∘r 1 H ​=e 2 ​∘r 1 T ​∧e 2 ​∘r 2 H ​=e 1 ​∘r 2 T ​⇒r 1 H ​∘r 2 H ​=r 1 T ​∘r 2 T ​

​ 若满足( e 1 , r 1 , e 2 ) ∈ T , ( e 2 , r 2 , e 3 ) ∈ T (e_1,r_1,e_2)\in\mathcal{T},(e_2,r_2,e_3)\in\mathcal{T}(e 1 ​,r 1 ​,e 2 ​)∈T ,(e 2 ​,r 2 ​,e 3 ​)∈T且( e 1 , r 3 , e 3 ) ∈ T (e_1,r_3,e_3)\in\mathcal{T}(e 1 ​,r 3 ​,e 3 ​)∈T,有
e 1 ∘ r 1 H = e 2 ∘ r 1 T ∧ e 2 ∘ r 2 H = e 3 ∘ r 2 T ∧ e 1 ∘ r 3 H = e 3 ∘ r 3 T ⇒ r 1 T ∘ r 2 T ∘ r 3 H = r 1 H ∘ r 2 H ∘ r 3 T \textbf{e}_1\circ\textbf{r}_1^H=\textbf{e}_2\circ\textbf{r}_1^T\land\textbf{e}_2\circ\textbf{r}_2^H=\textbf{e}_3\circ\textbf{r}_2^T\land\textbf{e}_1\circ\textbf{r}_3^H=\textbf{e}_3\circ\textbf{r}_3^T\Rightarrow\textbf{r}_1^T\circ\textbf{r}_2^T\circ\textbf{r}_3^H=\textbf{r}_1^H\circ\textbf{r}_2^H\circ\textbf{r}_3^T e 1 ​∘r 1 H ​=e 2 ​∘r 1 T ​∧e 2 ​∘r 2 H ​=e 3 ​∘r 2 T ​∧e 1 ​∘r 3 H ​=e 3 ​∘r 3 T ​⇒r 1 T ​∘r 2 T ​∘r 3 H ​=r 1 H ​∘r 2 H ​∘r 3 T ​

​ 对于子关系(subrelation),存在h , t ∈ E : ( h , r 1 , t ) → ( h , r 2 , t ) h,t\in\mathcal{E}:(h,r_1,t)\rightarrow(h,r_2,t)h ,t ∈E :(h ,r 1 ​,t )→(h ,r 2 ​,t )。该公式表示( h , r 2 , t ) (h,r_2,t)(h ,r 2 ​,t )总是比三元组( h , r 1 , t ) (h,r_1,t)(h ,r 1 ​,t )更可信。要编码这种类型的关系,PairRE \text{PairRE}PairRE需要能学习到f r 2 ( h , r 2 , t ) ≥ f r 1 ( h , r 1 , t ) f_{r_2}(h,r_2,t)\geq f_{r_1}(h,r_1,t)f r 2 ​​(h ,r 2 ​,t )≥f r 1 ​​(h ,r 1 ​,t )的能力。

​ 假设存在一个子关系对r 1 , r 2 r_1,r_2 r 1 ​,r 2 ​有∀ h , t ∈ E : ( h , r 1 , t ) → ( h , r 2 , t ) \forall h,t\in\mathcal{E}:(h,r_1,t)\rightarrow(h,r_2,t)∀h ,t ∈E :(h ,r 1 ​,t )→(h ,r 2 ​,t ),那么对成对关系向量施加下面的约束

假设一个子关系对r 1 r_1 r 1 ​和r 2 r_2 r 2 ​有∀ h , t ∈ E : ( h , r 1 , t ) → ( h , r 2 , t ) \forall h,t\in\mathcal{E}:(h,r_1,t)\rightarrow(h,r_2,t)∀h ,t ∈E :(h ,r 1 ​,t )→(h ,r 2 ​,t ),我们施加下面的约束
r 2 , i H r 1 , i H = r 2 , i T r 1 , i T = α i , ∣ α i ∣ ≤ 1 \frac{\textbf{r}{2,i}^H}{\textbf{r}{1,i}^H}=\frac{\textbf{r}{2,i}^T}{\textbf{r}{1,i}^T}=\alpha_i,|\alpha_i|\leq1 r 1 ,i H ​r 2 ,i H ​​=r 1 ,i T ​r 2 ,i T ​​=αi ​,∣αi ​∣≤1
其中,α ∈ R d \alpha\in\mathbb{R}^d α∈R d。

那么有
f r 2 ( h , t ) − f r 1 ( h , t ) = ∥ h ∘ r 1 H − t ∘ r 1 T ∥ − ∥ h ∘ r 2 H − t ∘ r 2 T ∥ = ∥ h ∘ r 1 H − t ∘ r 1 T ∥ − ∥ α ∘ ( h ∘ r 1 H − t ∘ r 1 T ) ∥ ≥ 0 \begin{aligned} f_{r_2}(h,t)-f_{r_1}(h,t) &=\parallel\textbf{h}\circ\textbf{r}1^H-\textbf{t}\circ\textbf{r}_1^T\parallel-\parallel\textbf{h}\circ\textbf{r}_2^H-\textbf{t}\circ\textbf{r}_2^T\parallel \ &=\parallel\textbf{h}\circ\textbf{r}_1^H-\textbf{t}\circ\textbf{r}_1^T\parallel-\parallel\alpha\circ(\textbf{h}\circ\textbf{r}_1^H-\textbf{t}\circ\textbf{r}_1^T)\parallel \geq 0 \end{aligned}f r 2 ​​(h ,t )−f r 1 ​​(h ,t )​=∥h ∘r 1 H ​−t ∘r 1 T ​∥−∥h ∘r 2 H ​−t ∘r 2 T ​∥=∥h ∘r 1 H ​−t ∘r 1 T ​∥−∥α∘(h ∘r 1 H ​−t ∘r 1 T ​)∥≥0 ​

f r 2 ( h , t ) ≥ f r 1 ( h , t ) f
{r_2}(h,t)\geq f_{r_1}(h,t)f r 2 ​​(h ,t )≥f r 1 ​​(h ,t )
因此,PairRE \text{PairRE}PairRE能够强制( h , r 2 , t ) (h,r_2,t)(h ,r 2 ​,t )比( h , r 1 , t ) (h,r_1,t)(h ,r 1 ​,t )更加合理。

六、模型优化

​ 为了优化模型,论文采用自对抗负采样损失函数来训练。
L = − l o g σ ( γ − f r ( h,t ) ) − ∑ i = 1 n p ( h i ′ , r , t i ′ ) l o g σ ( f r ( h i ′ , t i ′ ) − γ ) L=-log\;\sigma(\gamma-f_r(\textbf{h,t}))-\sum_{i=1}^np(h_i’,r,t_i’)log\;\sigma(f_r(\textbf{h}_i’,\textbf{t}_i’)-\gamma)L =−l o g σ(γ−f r ​(h,t ))−i =1 ∑n ​p (h i ′​,r ,t i ′​)l o g σ(f r ​(h i ′​,t i ′​)−γ)
其中,γ \gamma γ是固定的margin且σ \sigma σ是sigmoid函数。( h i ′ , r , t i ′ ) (h_i’,r,t_i’)(h i ′​,r ,t i ′​)是第i i i个负三元组,p ( h i ′ , r , t i ′ ) p(h_i’,r,t_i’)p (h i ′​,r ,t i ′​)表示这个负三元组的权重。

​ p ( h i ′ , r , t i ′ ) p(h_i’,r,t_i’)p (h i ′​,r ,t i ′​)的定义如下
p ( ( h i ′ , r , t i ′ ) ∣ ( h , r , t ) ) = exp f r ( h i ′ , t i ′ ) ∑ j exp f r ( h j ′ , t j ′ ) p((h_i’,r,t_i’)|(h,r,t))=\frac{\text{exp}\;f_r(h_i’,t_i’)}{\sum_j\text{exp}\;f_r(h_j’,t_j’)}p ((h i ′​,r ,t i ′​)∣(h ,r ,t ))=∑j ​exp f r ​(h j ′​,t j ′​)exp f r ​(h i ′​,t i ′​)​

Original: https://blog.csdn.net/bqw18744018044/article/details/123265630
Author: BQW_
Title: 【自然语言处理】【知识图谱】知识图谱表示学习(五):【PairRE】基于成对关系向量的知识图谱嵌入

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/556416/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球