TuckER 论文笔记

Modeling Relation Paths for Representation Learning of Knowledge Bases

Ivana Balazevic, Carl Allen, Timothy M.Hospedales


- Introduction

TuckERuckER是一个相对简单但功能强大的线性模型,它基于知识图三元组二元张量表示的TuckER分解,证明了TuckER是一个完全表达模型,推导了其嵌入维数的充分边界,并证明了前面介绍的几个线性模型可以被视为TuckER的特例。
贡献如下:

  1. 提出了一种新的知识图链接预测线性模型TuckER,该模型简单,表达性强,在所有标准数据集上都能获得最先进的结果;
  2. 证明TuckER是充分表达的,并推导出充分表达的嵌入维度的界限;
  3. 展示了TuckER如何将几个先前提出的张量因子分解方法纳入链接预测。

- Background

尽管取得了非常好的性能,深层非线性模型的基本问题是,它们是不透明的,理解不足,与更有数学原则和被广泛研究的张量分解模型相反。
它可以被认为是高阶奇异值分解的一种形式(SVD)。在TrukER例子中,矩阵的行包含实体和关系嵌入,而核心张量的条目决定了它们之间的相互作用级别。假设头尾实体嵌入矩阵是等价的,即我们不区分实体的嵌入,取决于它是作为一个特定的三元组中的头实体还是尾实体出现。


- Algorithm

Truker是将一个张量分解成一组矩阵和一个核心张量,以三维张量为例:
在这里插入图片描述

因子矩阵A、B和C,当正交时,可以认为是每种模态的主成分。核心张量Z的元素显示了不同分量之间的相互作用水平。通常情况下,P, Q, R分别小于I, J, K,所以Z可以被认为是X的压缩版本。Tucker分解不是唯一的,即如果我们对A、B和C应用逆变换,我们可以在不影响拟合的情况下变换Z .
在这里插入图片描述
在这里插入图片描述

W的参数数量只取决于实体和关系嵌入维度,而不取决于实体或关系的数量。由于核心张量W,与DistMult、ComplEx和SimplE等更简单的模型不同,TuckER没有将所学的知识全部编码到嵌入中;一些存储在核心张量中,通过多任务学习在所有实体和关系之间共享。TuckER的核心张量不是学习不同的关系特定矩阵,而是可以被视为包含一个共享的“原型”关系矩阵池,这些矩阵根据每个关系嵌入中的参数进行线性组合。
使用数据增强,将三元(h,r,t)处理为(t,r-1,h)后进行训练,对(h,r)与(t,r-1)进行计算损失函数:
在这里插入图片描述
同时证明了RESCAL、DistMult、ComplEx、SimplE都是TuckER的特例。
目前对非对称关系的建模有两种:

  1. 将头实体与尾实体嵌入到不同的矩阵中
  2. 将头尾实体视为等价,嵌入到统一矩阵
    但TuckER通过关系矩阵向量解决了当前的问题,允许了非对称关系的属性,但有时在同一矩阵中。

- Experiment

训练集选择:
在这里插入图片描述

链接预测实验结果:
在这里插入图片描述

维度测试实验:
在这里插入图片描述


- Conclusion

基于已知事实二元张量的TuckER分解,引入了一种相对直接的知识图链接预测线性模型TuckER。
TuckER在标准链接预测数据集上取得了最先进的结果,部分原因在于它跨关系执行多任务学习的能力。在充分表达的同时,TuckER的参数数量与知识图中实体或关系的数量成线性增长。


- Code

https://github.com/ibalazevic/TuckER

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值