ICML 2019 Workshop短文 | TuckER:基于张量因式分解的知识图谱补全
由于知识库的不完备性,知识图谱补全(Knowledge Graph completion)成为众多学者的研究焦点,而链接预测(Link Prediction),即根据已有的事实预测缺失的事实,是度量知识图谱补全方法效果的有效评测方式。
本文作者提出一个基于二元张量塔克分解(Tucker decomposition of the binary tensor)的线性模型TuckER来进行链接预测。作者证明了所提出的TuckER是一个完全表达模型(fully expressive model),并且其获得完全表达能力所需要的参数下界比其他完全表达模型要小几个数量级,且一些当前最先进的线性模型(如,ComplEx,SimplE)均可视为TuckER的特例。在链接预测的评测任务上TuckER取得了很好的效果。
01
研究动机
知识图谱(Knowledge Graph ,KG)可以表示为一个三阶二元张量,每一个元素对应一条事实三元组(值为1表示真实事实,为0表示错误事实或缺失事实)。RESCAL,DistMult,ComplEx和SimplE都是对这个三阶二元张量运用不同的分解方法来解决链接预测问题的线性模型。一些非线性模型,如ConvE,HypER在链接预测上取得了当前最佳的效果,但模型并非透明,可理解性相比于有数学原理支持且广泛研究的张量分解模型稍显不足。
作者基于二元张量的塔克分解,提出了新的线性模型TuckER(E表示实体,R表示关系)来学习KG表示。Tucker分解,就是将张量分解为核心张量乘以每个模式的矩阵。在矩阵正交且核心张量为全正交的特殊情况下,可以认为它是高阶奇异值分解(HOSVD)的一种形式。TuckER中,将表示KG的三阶二元张量塔克分解为一个核心张量和三个矩阵,三个矩阵的每一行分别表示主体(subject entity)、关系和客体(object entity)的向量表示,而核心张量表征了它们之间的交互级别。
TuckER有如下优点:
①、模型具备完全表达能力。完全表达能力是指一个模型可以通过学习,将任意给定的正例三元组和负例完全区分开的能力。
②、模型是线性的。参数(核型张量)的规模只会随着embedding的维度线性变化。
③、模型可特例为一些当前最先进模型。一些当前较优的线性模型,如,RESCAL,DistMult,ComplEx和SimplE。
表1是一些先进模型的对比。
02
提出方法
预备知识:塔克分解(Tucker Decomposition)
塔克分解是Ledyard R. Tucker于1964年提出并在1966年得到完善的一个分解方式。在三阶的情况下
给定一个原始张量
塔克分解将展开为一个核心张量
和三个分部矩阵
:
其中
表示张量在第n个模式下的乘法
为向量内积,通常P,Q,R的数值要小于I,J,K,所以Z可以视为X的一个压缩。
塔克分解并不唯一,但可以通过对核心张量增加限制(如全正交性)来提高分解的唯一性。更详细的知识可以参看文献【1,2,3】。
模型设计:基于塔克分解的链接预测模型
将塔克分解运用在被定义为三阶二元张量的知识图谱上,作者令实体的embedding矩阵
等价于主体和客体的表示,即
关系的embedding矩阵
由此可以定义TuckER的得分函数为:
其中
分别为来自
的主、客体的向量表示
为来自
的关系表示。
为核心张量,也即模型参数。
得分将经过一个logistic sigmoid激活函数归一化为概率
表征事实的真实性。
图1为塔克分解的一个可视化。
模型训练方面,作者使用了同ConvE的训练目标Bernoulli negative log-likelihood loss function:
其中
为模型预测的概率
是标签,1表示正例,0表示负例。
除此之外,作者还在arXiv的长文中对模型的完全表达能力进行了证明,将TuckER和之前张量分解方法之间的联系进行阐释,以及解释了模型是如何能表示非对称性关系(Asymmetric Relations)的。感兴趣的可以阅读arXiv长文:https://arxiv.org/pdf/1901.09590.pdf
03
实验分析
作者在链接预测常用的数据集FB15K、FB15K-237、WN18和WN18RR上对模型进行了评测,评价指标为MRR和Hits@k,
Baseline方面,与张量分解方法(DistMult、ComplEx等)和当前流行的非线形方法(R-GCN、ConvE等)均进行了对比。
通过表2和表3的结果,可以看到TuckER在链接预测任务上有很好的效果。
作者将模型的有效性归结于:塔克分解利用相似关系之间的参数共享(经由核心张量),通过多任务学习的方式提高了预测能力。
一般表示学习的模型在训练数据充分的情况下,embedding的维度越大则表示能力越强。作者对比了ComplEx、SimplE和TuckER随着embedding的维度变化,链接预测结果的变化折线图,如图3所示。
可以看到由于TuckER获得完全表达能力所需的embedding维度下界要小于其他的线形模型,所以即使给定较小的维度(如20)TuckER也能取得很好的表示效果。
参考文献:
1. Tucker, L. R. The Extension of Factor Analysis to Three-Dimensional Matrices. Contributions to Mathematical Psychology, 110119, 1964.
2. Tucker, L. R. Some Mathematical Notes on Three-Mode Factor Analysis. Psychometrika, 31(3):279–311, 1966.
3. Kolda, T. G. and Bader, B. W. Tensor Decompositions and Applications. SIAM review, 51(3):455–500, 2009.
4 .Dettmers, T., Minervini, P., Stenetorp, P., and Riedel, S. Convolutional 2D Knowledge Graph Embeddings. In Association for the Advancement of Artificial Intelligence, 2018.
5. Kazemi, S. M. and Poole, D. SimplE Embedding for Link Prediction in Knowledge Graphs. In Advances in Neural Information Processing Systems, 2018.
6.Trouillon,T.,Dance,C.R.,Gaussier,E.,Welbl,J.,Riedel,S.,andBouchard,G.KnowledgeGraph Completion via Complex Tensor Factorization. The Journal of Machine Learning Research, 18(1):4735–4772, 2017.
7. Schlichtkrull, M., Kipf, T. N., Bloem, P., van den Berg, R., Titov, I., and Welling, M. Modeling Relational Data with Graph Convolutional Networks. In European Semantic Web Conference, 2018.
8. Nickel, M., Murphy, K., Tresp, V., and Gabrilovich, E. A Review of Relational Machine Learning for Knowledge Graphs. Proceedings of the IEEE, 104(1):11–33, 2016.
学术头条已建立微信交流群,想进群的同学请加学术君微信:AMiner308,记得备注:名字+单位/学校噢!
分享干货