知识图谱 ——距离变换模型

目录

一、模型基础

二、TransE模型

三、TransH模型

四、TransR模型

五、TransD模型


一、模型基础

L1范数(曼哈顿距离)与L2范数(欧氏距离):

L0范数是指向量中非0的元素的个数。(L0范数很难优化求解)

L1范数是指向量中各个元素绝对值之和

L2范数是指向量各元素的平方和然后求平方根

L1范数可以进行特征选择,即让特征的系数变为0.

L2范数可以防止过拟合,提升模型的泛化能力,有助于处理 condition number不好下的矩阵(数据变化很小矩阵求解后结果变化很大)

下降速度:最小化权值参数L1比L2变化的快

模型空间的限制:L1会产生稀疏 L2不会。

L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,这些特征都会接近于0。

L1计算公式:

\left | \left | X \right | \right |_{L1}=\sum_{i=1}^{n}\left | X_{i} \right |

L2计算公式:

\left | \left | X \right | \right |_{L2}=\sqrt{\sum_{i=1}^{n} X_{i}^{2}}

二、TransE模型

        TransE模型:将知识库中的关系看作实体间的某种平移向量。对于每个事实三元组(h,r,t),假设它们分别有向量表示h,r,t。TransE模型将实体和关系表示在同一空间中,把关系向量r看作头实体向量h和尾实体向量t之间的平移,即h+r≈t。

        例:h1+r≈t1,h2+r≈t2   =>   h1-t1 ≈ h2-t2

         由此,我们也可以将r看作从h到t的翻译,因此TransE模型也被称为翻译模型。它的打分函数可以定义为h+r与t距离的负,即 

f_{r}\left ( h,t \right ) = - \left | \left | h+r-t \right | \right |_{L1/L2}

        其中L1/L2为L1范数或L2范数。 

        理想情况下,一个正确的三元组的embedding之间会有h + r = t的关系,而错误的三元组之间不会有这个关系。 因此我们定义如下的势能函数,通过h和r之和与t之差的二范数来表示这个三元组的势能:

f\left ( h,r,t \right ) = \left | \left | h+r-t \right | \right |_{2}

        对于一个正确的三元组,需选取势能较低的结果,而对于一个错误的三元组,需选取势能较高的结果。以此得到目标函数: 

L = \sum_{\left ( h,r,t \right )\epsilon \Delta}\sum_{\left ( h',r',t' \right )\epsilon \Delta'}\left [ \left ( f_{r}\left ( h,t \right )+\gamma - f_{r'}\left ( h',t' \right )\right ) \right ]_{+}

        其中:∆表示正确的三元组集合,∆‘表示错误的三元组集合,γ表示正负样本之间的距离,是一个常数,通常取1,[x]+表示max(0,x) 

三、TransH模型

        虽然TransE模型简单高效,计算复杂度低,在大规模稀疏知识库上具有较好的性能与可扩展性,但是它不能解决多对一和一对多关系的问题。以多对一关系为例,固定r和t,TransE模型为了满足三角闭包关 系,训练出来的头节点的向量会很相似,但实体在涉及不同关系时应该具有不同的表示形式。

        TransH模型:为了解决TransE模型在处理一对多、多对一、多对多复杂关系时的局限性,TransH模型提出让一个实体在不同的关系下拥有不同的表示。对于关系r,TransH模型同时使用平移向量r和超平面的法向量wr来表示它。对于一个三元组(h,r,t),TransH模型先将头实体向量h和尾实体向量t投影到关系r对应的超平面上,分别得到h⊥和t⊥,再对投影用的TransE模型进行训练和学习。

因此,TransH模型的评分函数为:

f_{r}\left ( h,t \right ) = - \left | \left | h\perp +r-t\perp \right | \right |_{2}^{2}

 其中,h\perp =h-\omega _{r}^{T} h \omega _{r}。需要注意的是,关系r可能存在无限个超平面,TransH模型简单地令r与wr近似正交,来选取某一个超平面。TransH模型使不同的实体在不同的关系下拥有了不同的表示形式,但由于实体向量被投影到了关系的语义空间中,故它们具有相同的维度。所以,

f_{r}\left ( h,t \right ) = - \left | \left | h-\omega _{r}^{T} h \omega _{r} +r-t+\omega _{r}^{T} t \omega _{r} \right | \right |_{2}^{2}

由此,目标函数为:

L = \min \sum_{\left ( h,r,t \right )\epsilon S}\sum_{\left ( h',r',t' \right )\epsilon S'}\left [ \left ( f_{r}\left ( h,t \right )+\gamma - f_{r'}\left ( h',t' \right )\right ) \right ]_{+}

四、TransR模型

        TransR模型与TransH模型的思想类似,它引入的是关系特定的语义空间,而不是超平面。虽然TransH模型使每个实体在不同关系下拥有了不同的表示,但是它仍然假设实体和关系处于相同的语义空间中,这在 一定程度上限制了TransH模型的表示能力。TransR模型则将一个实体看作多种属性的综合体,不同的关系拥有不同的语义空间并关注实体的不同属性。

        具体而言,对于每一个关系r,TransR模型定义投影矩阵Mr,将实体向量h和t从实体空间投影到关系r对应的子空间:

h\perp =M_{r}h

t\perp =M_{r}t

        TransR模型利用和TransH模型相同的翻译关系 h\perp +r\approx t\perp 得到关于三元组的评分函数:

f_{r}\left ( h,t \right ) = - \left | \left | h\perp +r-t\perp \right | \right |_{2}^{2}

        目标函数为: 

L = \sum_{\left ( h,r,t \right )\epsilon S}\sum_{\left ( h',r',t' \right )\epsilon S'}\left [ \left ( f_{r}\left ( h,t \right )+\gamma - f_{r'}\left ( h',t' \right )\right ) \right ]_{+}

五、TransD模型

        虽然TransR模型较TransE模型和TransH模型有显著的改进,但它仍然有如下缺点:

        (1)在同一个关系下,头实体和尾实体共享相同的投影矩阵。然而,一个关系的头实体和尾实体的类型或属性可能差异巨大

        (2)从实体空间到关系空间的投影是实体和关系之间的交互过程,因此TransR模型让投影矩阵仅与关系有关是不合理的。

        (3)与TransE模型和TransH模型相比,TransR模型引入了空间投影,使得TransR模型的参数量急剧增加,计算复杂度大大提高。

 

        为了解决这些问题,TransD模型设置了两个分别将头实体h和尾实体t投影到关系空间的投影矩阵M_{rh}M_{rt}

h\perp =M_{rh}h ,t\perp =M_{rt}t​​​​。

        其中,M_{rh}由一个对应关系的向量\omega _{r}和一个对应头实体的向量\omega _{h}组成,M_{rt}则由\omega _{r}和一个对应尾实体的向量\omega _{t}组成:M_{rh}=\omega _{r}\omega _{h}^{T}+IM_{rt}=\omega _{r}\omega _{t}^{T}+I,这样投影矩阵就不仅和关系有关,还和被投影的实体有关系。另外,通过两个向量外积的定义方式,TransD模型可以使投影矩阵的参数变少,从而降低模型的复杂度。

 

如果能解决您的问题,记得收藏+关注呀!!!

创作时间:2022.12.22

文章编号YU.NO.7

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值