知识图谱(knowledge graph)的概念是谷歌在2012年正式提出的,主要用于提升搜索引擎性能。随着大数据时代的到来,知识图谱规模得到了快速的增长,各种大规模知识图谱相继出现(如Freebase[1]、WordNet[2]、NULL[3]等)。当前知识图谱已在数据挖掘、人工智能等领域具有至关重要的作用,促进了人工智能及其应用的发展,如智能问答[4]、个性化旅游推荐等。
虽然现有知识图谱的规模已经相当大,但其仍是不完整的,如Freebase中75%的人不存在国籍信息,71%的人没有准确的出身地信息[5],因此有必要对现有知识图谱进行自动补全。这是当前知识图谱研究中最主要的任务和挑战之一。近年来,将知识图谱中实体与关系嵌入到向量空间进行知识图谱补全的方法显示出强大的可行性与鲁棒性。但是知识图谱嵌入的研究仍然面临着一个共同的问题,即在现有知识图谱嵌入模型训练时,是通过删除正例三元组(h, r, t)中的h(或t),然后从实体集中随机选择一个实体对删除h(或t)不完整的三元组进行填充来生成负例三元组,致使获得的大量负例三元组都是低质量的。低质量的负例三元组将导致知识图谱嵌入模型训练时无法对实体向量与关系向量进行有效的更新,从而影响知识图谱的有效嵌入。
针对这一不足提出了一种通用的解决方法,基于实体相似性负采样的负例三元组生成方法来提高知识图谱嵌入的质量。该方法能够在训练中生成一个高质量的负例三元组,从而实现知识图谱嵌入模型的改进。我们将相似性负采样与TransE模型[6]相结合得到TransE-SNS模型,并且在4个通用数据集(FB15K、FB13、WN11和WN18)上进行了实验,在链接预测与三元组分类任务中均获得了有效的提升。
1 相关研究知识图谱嵌入(knowledge graph embedding)旨在将知识图谱中的实体与关系嵌入到连续的、稠密的、低维的和实值的向量空间,将其表示为稠密低维实值向量。然后可以通过向量之间的欧氏距离、曼哈顿距离或马氏距离计算实现对知识图谱中对象间的相似度计算。
在各类知识图谱嵌入模型中,基于翻译的表示学习[7]模型实现了先进的性能。其中典型的翻译模型是由Bordes等[6]于2013年提出的TransE模型。TransE模型将三元组(h, r, t)中的关系视为向量空间中头实体到尾实体的翻译操作。如果三元组(h, r, t)成立,则头实体向量
在本节中,将从两个角度对实体的相似性进行描述:1) 知识图谱中实体局部结构的相似性;2) 知识图谱通过 TransE 等翻译模型嵌入到向量空间中实体向量的相似性。
知识图谱中的每个实体间都存在着一定的联系,包括直接联系与间接联系。直接联系是2个实体之间存在直接关系。间接联系是2个实体之间存在的关系路径。例如,给定一个简单的知识图谱,如图1所示。其中,实体e1与实体e3之间存在着直接关系(r8)和关系路径(r6, r4);实体e2与实体e3之间存在着直接关系(r8)和关系路径(r6, r4)、(r6, r3, r7)等。本文将一个实体与其他实体的直接联系形成的结构称为该实体的局部结构,如图2所示。对于任意2个实体,如果它们的局部结构越相似,那么这2个实体也越相似。例如,e1与e2的局部结构中分别含有6个关系,并且这些关系均相同,其中存在4个关系构成了相似的三元组(
Download:
|
|
Download:
|
|
当利用TransE模型将知识图谱嵌入到向量空间中时,对于知识图谱中的每一个三元组(h, r, t)应当满足
现有知识图谱嵌入模型都是采用随机抽样来生成一个负例三元组,即采用相同概率从实体集中抽取一个实体替换正例三元组中的头实体(或尾实体)。然而,通过该方式生成负例三元组会存在一个问题:可能会在训练中生成大量的低质量负例三元组。导致上述问题的关键在于随机抽样忽略了实体之间的相似性。抽取的替换实体与被替换实体之间相似性可能是很低的,如图1中的实体e1与e3。一个低质量的负例三元组相对于正例三元组来说是极易区分的,这样的负例三元组对于学习知识图谱的有效嵌入是没有作用的。为了深入理解高质量的负例三元组与低质量负例三元组的区别,通过一个具体的例子进行阐述。
假设在知识图谱中有一个正例三元组(广西,省会,南宁),根据随机抽样原则,选择替换尾实体南宁来生成负例三元组。首先,通过移除南宁会得到一个不完整的三元组(广西,省会,?)。然后,以相同的概率从实体集中抽取一个实体进行尾实体填充,假设抽取到一个Person类型实体马云,我们就会得到一个奇怪的负例三元组(广西,省会,马云),这样的负例三元组就是一个低质量的负例三元组。与此相反,如果抽取到一个City类型实体桂林,将会得到一个高质量的负例三元组(广西,省会,桂林)。由于南宁与桂林的相似度远高于南宁与马云的相似度。南宁与桂林拥有许多相同或者相似的属性或者关系类型,比如,它们均属于广西,都拥有城市属性,地理位置相近,气候类型相同,地形地貌相似,历史文化也相似。与此相反,南宁与马云,一个是城市,一个是人,他们几乎没有相同的属性或者关系类型,因此他们的相似度是极低的。
在知识图谱嵌入模型中,如TransE模型使用基于边界的损失函数作为训练目标。训练过程中,当在使用相似性低的实体进行替换来生成负例三元组时,得到的是一个低质量的负例三元组,这将导致生成的负例三元组与正例三元组的得分之差大于边界值,使得损失值为0。在损失值为0时,模型将不会对实体向量与关系向量进行更新,也就是说本次训练对于实体向量与关系向量的学习无益,无法获得更多的样本特征。为了得到高质量的负例三元组,促进实体向量与关系向量的有效更新,实现知识图谱中实体与关系的有效嵌入,应该使用与被替换实体具有一定程度相似性的替换实体。因此,针对此问题我们提出了解决方案−相似性负采样。
2.3 相似性负采样一个高质量的负例三元组可以帮助知识图谱嵌入,而得到一个高质量的负例三元组的关键是获取一个与被替换实体相似的实体。将知识图谱嵌入到向量空间中时,实体的局部结构相似性转化为2个实体向量的相似性。2个实体向量之间的距离越小,它们就越相似,反之亦然。这促使我们萌发出对实体进行聚类后获得相似实体。于是使用简单有效的K-Means算法[16-18]对实体进行聚类,然后使得替换实体与被替换实体属于同一个簇。上述实体抽样过程,称为相似性负采样(similarity nagetive sampling, SNS)。
对于一个给定的知识图谱G = (E, R, S),其中E = {e1, e2,
$\arg \min \sum\limits_{i = 1}^K {\sum\limits_{e \in {C_i}} {{{\left\| {{{e}} - {{{c}}_i}} \right\|}_{{L_2}}}}} $ | (1) |
式中:K表示聚类中心的数量;
知识图谱中实体的相似性负采样详细过程:首先通过TransE模型训练50个epoch获取实体集E与关系集R的向量表示,然后利用K-Means聚类将实体集划分为K个簇{E1, E2,
在本节中,详述了将实体相似性负采样与TransE模型结合得到TransE-SNS,同时给出了TransE-SNS模型完整代码的训练过程,即算法1。
TransE-SNS采用
${f_r}( h, t) = {\left\| {{{h}} + {{r}} - {{t}}} \right\|_{{L_2}}}$ | (2) |
式中:
在TransE-SNS中,采用了基于边界的损失函数作为训练目标,基于边界的损失函数为
$L = \sum\limits_{({ h},{ r},{ t})} \in S {\sum\limits_{{\rm Ne}{g_{({ h},{ r},{ t})}}} \in { S}'} {\nabla {{[{f_r}({ h},{ t}) + \gamma - {f_r}({ h}',{ t}')]}_ +}} $ | (3) |
式中:S是正例三元组集合;S'
= {(h'
, r, t) | h'
∈Eh;(h'
, r, t)
算法1给出了TransE-SNS模型的完整训练过程。在训练过程中,前50个epoch采用的是随机抽样来生成负例三元组进行训练,然后对实体向量进行第一次聚类。之后每完成训练50个epoch,就对训练得到的实体向量重新进行一次聚类。
算法1 Learning TransE-SNS
输入 训练集S ={(h, r, t)}和负例三元组集S'
={(h'
, r, t) | h'
∈Eh, (h'
, r, t)
输出 实体向量与关系向量
1)初始化:
2)
3)
4)
4)
5) loop
6) Sbatch ← sample (S, b) //从S中抽取一个大小为b的mini-batch
7)Tbatch← Ø // 初始化正负例三元组对的集合
8) for (h, r, t)∈Sbatch do
9) Neg(h,r,
11) end for
12) 更新实体向量与关系向量
13) if epoch % 50 == 0 then
14) 更新Ei,// K-Means聚类
15) end if
16) end loop
3 实验与分析为了评估方法的性能,在4个公开数据集上进行实验,通过链接预测和三元组分类任务进行评价。
3.1 数据设置我们使用的数据集是来自于2个被广泛使用的知识图谱WordNet和Freebase。WordNet是一个大型的英语词汇知识图谱。在WordNet中,将代表某一基本词汇概念的同义词集合作为实体,并在这些同义词集合之间建立各种语义关系。在本文中,使用WordNet中的2个子集:WN18[20]和WN11[21]。Freebase是一个大型的人类知识的知识图谱,存储了真实世界中的一般事实。本文也使用了Freebase中的2个子集:FB15K[20]和FB13[21]。在表1中给出了这4种数据统计数据。
链接预测旨在预测一个三元组(h, r, t)中缺失的h(或t)。在这项任务中,将测试三元组(h, r, t)缺失的h(或t)称为正确实体,除正确实体以外的其他实体均被视为候选实体。首先,利用候选实体替换测试三元组(h, r, t)中的h(或t)以获得候选三元组。然后,计算候选三元组与测试三元组的得分。最后,根据实体对应的三元组得分从低到高对候选实体与正确实体进行升序排列。在2个数据集WN18和FB15K上进行链接预测任务,使用2项常用的评价标准作为实验中的评价指标[6]:正确实体排名前10的比例(Hits@10)和正确实体的平均排名(Mean Rank)。显然,对于一个好的预测应该有一个高的Hits@10和低的Mean Rank。
值得注意的是,在候选三元组集合中有一部分候选三元组可能存在于训练集、验证集和测试集中。虽然这些候选三元组不是当前测试的正确三元组,但它们应该被认为是正确的,并且它们的得分很可能比当前正确三元组的得分更低,从而影响正确实体的排名。我们将已经在训练集、验证集和测试集中出现过的候选三元组滤除。因此,在测试过程中设置了一个过滤器,并将2项评价指标中经过滤器滤除的称之为“Filt”,反之,将其称之为“Raw”。
在这项任务中,为了得到模型的最佳参数设置,尽可能多地尝试了参数的各种设置,参数主要从以下设置中选择:模型训练周期epoch∈{1 000,2 000,3 000},学习率α∈{0.01,0.001,0.000 1},边界值γ∈{1,2,2.5,3,3.5,4,4.5,5,5.5,6},嵌入维度n∈{25,50,100,200},批处理大小B∈{100,200,500,1 000},聚类中心数K∈{16,32,64},聚类迭代次数i∈{10,20,50},三元组得分与聚类相似度均采用L2第二范数进行计算。在2个数据集上,都获得了关于平均排名和排名前10的比例的最佳参数设置,如表2所示。
在WN18和FB15K上的链路预测任务实验结果,如表3所示。表中对比模型的实验结果来自于原文献,加粗的结果为表中最优结果。从表中可以看出,本文方法在大多数情况下都达到了最先进的效果。在WN18中,本文方法在Hits@10 (raw, bern)中性能略低于TranSparse-DT。在FB15K中,本文方法在Mean Rank (bern)和Hits@10 (raw, bern)未能获得所有模型中的最佳性能。我们认为TransE-SNS未能在所有的情况下达到最佳性能有以下2个原因:1)FB15K数据比较稀疏,连接的多个相同关系的实体较少,即每个实体本身对应的相似实体较少,这导致聚类后每个簇中依旧包含一定数量的相似性较低的实体。2)聚类中心K值选择比较困难,并且K值选择被限制在几个固定值中。因此,K-Means聚类不能很好地对实体进行聚类。
图3是在数据集FB15K中1 345个关系,按照4种不同的关系类别分布情况,其中1-to-1的简单关系占比为24%, 1-to-N、N-to-1和N-to-N的复杂关系分别占比23%、29%和24%。
Download:
|
|
表4显示了4种不同关系类别下Hits@10的链接预测结果。值得注意的是,TransE-SNS模型在大多数情况下都优于其他模型。特别是,头部和尾部的预测在N-to-N关系中实现了最先进的性能。本文方法在N-to-1关系中略显不足。总体来说,本文方法在处理复杂关系方面具有显著的优势。
三元组分类任务旨在判断一个给定的三元组(h, r, t)是否正确。在本文中,使用3个数据集(即WN11、FB13和FB15k)来验证方法在不同数据集上的有效性。Socher等[20]提供了2个数据集(即WN11和FB13)。在WN11和FB13中,已经包含正例三元组和负例三元组。其中,每一个负例三元组都是通过破坏正例三元组来获得的。在FB15K中只存在正例三元组,于是使用与Socher等[20]相同的原理构造负例三元组。
在实验中,为每个关系r都设置了一个阈值δr。在验证集上,通过最大化分类准确度来获取每一个关系所对应的δr。对于给定三元组(h, r, t),如果其得分函数的得分低于δr,则将其归类为正例,否则为负例。使用与链接预测相同的方式来获得此任务的最佳参数设置,并得到了3个数据集上的最佳参数设置,如表5所示。
表6所示是WN11、FB13和FB15K三元组分类任务的实验结果。从表6中可知,TransE-SNS在所有数据集上的分类性能都优于TransE和TransH。在FB13上,TransE-SNS更是取得了所有模型中的最佳性能。相对于TranSparse-DT和GTans-SW,TransE-SNS在WN11与FB15K上的性能略显不足。总体来说,尽管TransE-SNS并未在所有数据集上实现最佳性能,但TransE-SNS与大多数模型相比,仍具有较大优势。
本文针对知识图谱嵌入模型中采用随机抽样无法很好地获取高质量的负例三元组,提出了一种相似性负采样方法用于提高负例三元组的质量。与随机抽样相比,相似性负采样在很大程度上提高了替换实体与被替换实体间的相似性,从而提高了负例三元组的质量。在训练时,相似性负采样生成的高质量负例三元组促进了模型对实体与关系特征的学习。通过将相似性负采样与TransE模型结合得到TransE-SNS模型。我们的方法能够通过高质量的负例三元组充分获取实体有效特征,同时忽略了低质量的负例三元组。实验结果表明,TransE-SNS模型在链路预测与三元组分类任务中均取得了较优的性能。特别是,相较于基础模型TransE,引入相似性负采样后对模型性能具有较大提升。并且,TransE-SNS模型与TransE一样简单且有效,具有较强的可行性与鲁棒性。但是由于K-Means聚类算法本身在K值选择以及对数据具有一定要求,造成相似性负采样对于较为稀疏的大规模知识图谱较难实现相似实体的聚类与采样,从而影响模型的整体效果。在以后将进一步探索不同聚类算法和知识图嵌入模型的组合,得到一个更加有效的知识图谱嵌入模型。
[1] | BOLLACKER K, EVANS C, PARITOSH P, et al. Freebase: a collaboratively created graph database for structuring human knowledge[C]//Proceedings of 2008 ACM SIGMOD International Conference on Management of Data. Vancouver, Canada, 2008: 1247–1250. (0) |
[2] | MILLER G A. WordNet: a lexical database for English[J]. Communications of the ACM, 1995, 38(11): 39-41. DOI:10.1145/219717.219748 (0) |
[3] | CARLSON A, BETTERIDGE J, KISIEL B, et al. Toward an architecture for never-ending language learning[C]//Proceedings of the 24th AAAI Conference on Artificial Intelligence. Atlanta, USA, 2010: 1306–1313. (0) |
[4] | BORDES A, WESTON J, USUNIER N. Open question answering with weakly supervised embedding models[C]//Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Nancy, France, 2014: 165–180. (0) |
[5] | DONG Xin, GABRILOVICH E, HEITZ G, et al. Knowledge vault: a web-scale approach to probabilistic knowledge fusion[C]//Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York, USA, 2014: 601–610. (0) |
[6] | BORDES A, USUNIER N, GARCIA-DURÁN A, et al. Translating embeddings for modeling multi-relational data[C]//International Conference on Neural Information Processing Systems. South Lake Tahoe, USA, 2013: 2787–2795. (0) |
[7] |
刘知远, 孙茂松, 林衍凯, 等. 知识表示学习研究进展[J]. 计算机研究与发展, 2016, 53(2): 247-261. LIU Zhiyuan, SUN Maosong, LIN Yankai, et al. Knowledge representation learning: a review[J]. Journal of computer research and development, 2016, 53(2): 247-261. DOI:10.7544/issn1000-1239.2016.20160020 (0) |
[8] | WANG Zhen, ZHANG Jianwen, FENG Jianlin, et al. Knowledge graph embedding by translating on hyperplanes[C]//Proceedings of the 28th AAAI Conference on Artificial Intelligence. Québec City, Canada, 2014: 1112–1119. (0) |
[9] | LIN Yankai, LIU Zhiyuan, SUN Maosong, et al. Learning entity and relation embeddings for knowledge graph completion[C]//Proceedings of the 29th AAAI Conference on Artificial Intelligence. Austin, USA, 2015: 2181–2187. (0) |
[10] | JI Guoliang, HE Shizhu, XU Liheng, et al. Knowledge graph embedding via dynamic mapping matrix[C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing. Beijing, China, 2015: 687–696. (0) |
[11] | JI Guoliang, LIU Kang, HE Shizhu, et al. Knowledge graph completion with adaptive sparse transfer matrix[C]//Proceedings of the 30th AAAI Conference on Artificial Intelligence. Phoenix, USA, 2016: 985–991. (0) |
[12] | FENG Jun, HUANG Minlie, WANG Mingdong, et al. Knowledge graph embedding by flexible translation[C]//Proceedings of the 15th International Conference on Principles of Knowledge Representation and Reasoning. Cape Town, South Africa, 2016: 557–560. (0) |
[13] | CHANG Liang, ZHU Manli, GU Tianlong, et al. Knowledge graph embedding by dynamic translation[J]. IEEE access, 2017, 5: 20898-20907. DOI:10.1109/ACCESS.2017.2759139 (0) |
[14] | TAN Zhen, ZHAO Xiang, FANG Yang, et al. GTrans: generic knowledge graph embedding via multi-state entities and dynamic relation spaces[J]. IEEE access, 2018: 8232-8244. (0) |
[15] | WANG Peifeng, LI Shuangyin, PAN Rong. Incorporating GAN for negative sampling in knowledge representation learning[C]//Proceedings of the 32nd AAAI Conference on Artificial Intelligence. New Orleans, USA, 2018: 2005–2012. (0) |
[16] | HARTIGAN J A, WONG M A. Algorithm AS 136: a K-Means clustering algorithm[J]. Journal of the royal statistical society, 1979, 28(1): 100-108. (0) |
[17] | HAMERLY G, ELKAN C. Alternatives to the K-Means algorithm that find better clusterings[C]//Proceedings of the 11th International Conference on Information and Knowledge Management. McLean, USA, 2002: 600–607. (0) |
[18] | CELEBI M E, KINGRAVI H A, VELA P A. A comparative study of efficient initialization methods for the k-means clustering algorithm[J]. Expert systems with applications, 2013, 40(1): 200-210. DOI:10.1016/j.eswa.2012.07.021 (0) |
[19] | DUCHI J, HAZAN E, SINGER Y. Dearly adaptive subgradient methods for online learning and stochastic optimization[J]. Journal of machine learning research, 2011, 12(7): 257-269. (0) |
[20] | BORDES A, GLOROT X, WESTON J, et al. A semantic matching energy function for learning with multi-relational data: application to word-sense disambiguation[J]. Machine learning, 2014, 94(2): 233-259. DOI:10.1007/s10994-013-5363-6 (0) |
[21] | SOCHER R, CHEN Danqi, MANNING C D, et al. Reasoning with neural tensor networks for knowledge base completion[C]//Proceedings of the 26th International Conference on Neural Information Processing Systems. Lake Tahoe, USA, 2013: 926–934. (0) |