APP下载

一种精细表示多值属性的知识图谱嵌入模型*

2020-06-09俞耀维

计算机与数字工程 2020年3期
关键词:超平面三元组向量

吕 燕 俞耀维

(河海大学计算机与信息学院 南京 211100)

1 引言

知识图谱(knowledge graph,KG)[1~2]是一个多关系图,它用节点表示实体或概念,用边表示实体间关系或实体的属性。Freebase[3]和 DBpedia[4]等许多KG 已被广泛地应用于关系抽取[5]、知识库问答[6]等基于知识的应用中。

知识图谱嵌入[1~2]是将KG 的元素(实体、关系等)在连续的低维向量空间中进行适当表示,以便于链接预测、三元组分类、关系抽取、知识库问答等下游任务的执行。近年来,很多知识图谱嵌入模型被提出,它们主要分为两大类[1~2]:1)翻译距离模型(translational distance models),典型的有 TransE[7]、TransH[8]、TransR[9]、TransD[10]、KR-EAR[11];2)语义匹配模型(semantic matching models),典型的有RESCAL[12]和 DistMult[13]。

KR-EAR[11]是一个著名的 KG 嵌入模型,它区分KG中两类关系:实体间的联系和实体的属性,并在两个向量空间中分别表示它们。众所周知,实体可以有多值属性(multivalued attributes)——这种属性可以具有与同一个实体相关联的多个值。例如,一个人(实体类型Person)会讲多种自然语言(如:汉语、英语、法语等),因此,该实体的属性languageSpoken 就是一个多值属性。多值属性在实际中和知识图谱中普遍存在,例如,KR-EAR 的论文[11]使用的实验数据集(知识图谱)FB24k 中共有314 个属性,其中含有140 个多值属性(占44.6%)。然而,KR-EAR 未能精细地表示多值属性,从而影响下游任务的准确度(accuracy),其根本原因是该模型用实体及其属性值的嵌入(向量)来定义相应的属性三元组的评分函数(scoring function),导致为多值属性的不同属性值学得的嵌入很相似。

为了解决上述问题,本文通过改进KR-EAR模型的属性三元组表示来提出一种精细表示多值属性的知识图谱嵌入模型(称为KGE-EAV)。在KGE-EAV 的属性值空间中,每个实体都对应一个超平面,该实体的每个属性值嵌入都在该超平面上形成一个投影向量;KGE-EAV 用这样的投影向量(而不是属性值嵌入)来定义属性三元组的评分函数,从而可以为多值属性的不同属性值学得不同的嵌入,即KGE-EAV 模型精细地表示了实体的多值属性。

2 KGE-EAV模型

2.1 KGE-EAV模型的基本思想

如同 KR-EAR,KGE-EAV 也将 KG 中的关系区分为实体间的联系和实体的属性,并分别在关系空间和属性值空间中表示它们;两个模型的不同之处在于属性三元组的评分函数定义不同。

图1示意了KGE-EAV 模型的基本思想。关系空间中表示了实体e1,…,e5之间联系的嵌入(向量r1,…,r4);属性空间中表示了这些实体的属性值的嵌入(V1和V2分别是属性a1(单值属性)和a2(多值属性)的值域。在属性值空间中,KGE-EAV 为每个实体(如e∈{e1,…,e5})创建一个超平面(其法向量是we),该超平面包含通过属性特定的单层神经网络(single-layer neural network)将实体嵌入(如向量e∈{e1,…,e5})从关系空间转换到属性值空间后得到的向量(如向量e')。在表示属性三元组时,KGE-EAV先将每个实体的每个属性的每个属性值∈Vi的嵌入(如向量v)都投影到为该实体创建的超平面上,得到各个属性值的投影向量(如向量v⊥),然后利用投影向量为相应的属性三元组定义评分函数。

图1 KGE-EAV模型的基本思想

2.2 三元组表示

表1给出了描述KGE-EAV 模型用到的数学符号,其中前9个符号是文献[11]中引入的。

表1 数学符号及其含义

2.2.1 关系三元组的表示

KGE-EAV 与 KR-EAR 一样,采用TransE[7]和TransR[9]来表示关系三元组(relational triple)(h,r,t),其评分函数分别用式(1)和(2)定义:

其中,b1是偏置常数(bias constant),Mr是关系r的投影矩阵。

2.2.2 属性三元组的表示

KGE-EAV使用下列三个步骤来定义属性三元组(attribute triple)(e,a,v)的评分函数。

第一步,给定实体e∈E(其在关系空间中的嵌入为e)及其属性a∈A(其在属性值空间中的嵌入为a),为该实体创建一个超平面,它包含通过属性特定的单层神经网络把e从关系空间转换到属性值空间后得到的向量e',它用式(3)定义:

其中,单层神经网络f()是一个非线性函数,如双曲函数tanh。

第二步,将每个实体e∈E的每个属性的每个属性值嵌入v都投影到为该实体创建的超平面(设其法向量是we)上,得到属性值嵌入的投影向量v⊥,它用式(4)定义:

第三步,用v⊥为每个属性三元组(e,a,v)∈Y定义评分函数h(e,a,v),其用式(5)定义:

其中b2是偏置常数。

另外,与 KR-EAR 的做法一样,KGE-EAV 也考虑实体的多个属性之间的相关性(attribute correlations,AC)[11]。具体来说,对一个实体e和它的属性三元组(e,a,v),KG 中该实体除此属性三元组外的所有已知的属性三元组表示为属性相关性的评分函数用式(6)[11]来定义:

其中,(a,v) 是属性-值对,是Y(e) 中的属性-值对;表示在给定的情况下(a,v)的条件概率,表示两个属性-值对之间的相关性;是向量a和的点积,表示属性a和aˉ之间的相关性。

2.3 模型训练

给定知识图谱G,我们的目标是学得G中实体、关系、属性的嵌入X。令S和Y分别表示G中所有关系三元组和属性三元组,并假设S和Y是条件独立的,P(S|X)表示S的条件概率,P(Y|X)表示Y的条件概率。与KR-EAR 的做法一样,KGE-EAV 通过最大化给定X情况下S和Y的联合概率P(S,Y|X)来定义目标函数,即用式(7)[11]来定义目标函数:

其中,P((h,r,t)|X)是关系三元组 (h,r,t)的条件概率,P((e,a,v)|X)是属性三元组 (e,a,v)的条件概率,它们分别用式(8)[14]和(9)[11]来定义:

进一步地,与KR-EAR的做法一样,KGE-EAV也采用负采样(negative sampling)[15]来近似上述式(8)和(9)中的条件概率。例如,P(h|r,t,X)用式(10)[11]来近似:

其中,σ(x)=1/(1+exp(-x)) 是一个 sigmoid 函数,是无效的(invalid)关系三元组的集合,P(S-)是用来从S-中随机抽样的函数,g()是前文已定义的关系三元组的评分函数。

同KR-EAR 的做法,KGE-EAV 将优化函数O(X)定义为目标函数的对数似然(log-likelihood)函数,即优化函数用式(11)[11]来定义:

其中,γ是一个超参数,用于对正则化因子C(X)加权。C(X)用式(12)来定义:

其中,[x]+=max(0,x)是指取0和x之间的最大数;最后一个求和项中的f(eWi+bi)表示通过属性特定的单层神经网络把实体嵌入e从关系空间转换到属性值空间后得到的向量e'(参见式(3)定义),于是,最后一个求和项是一个约束条件,用于保证e' 位于为实体e创建的超平面上,实验中设置ε=0.1。

为了得到最优结果,本文使用随机梯度下降(SGD)方法来最小化式(11)定义的优化函数。

3 实验

3.1 实验设计

3.1.1 实验任务

我们在两种典型的下游任务即实体预测(预测三元组中缺失的头/尾实体)和属性预测(预测三元组中缺失的属性值)上对KGE-EAV、KR-EAR以及三个基线模型(TransE[7]、TransH[8]、TransR[9])进行预测准确度的实验对比。

3.1.2 模型实现

KR-EAR 直接用论文[11]公布的C++代码(网址:https://github.com/thunlp/KR-EAR)。KGE-EAV的代码是通过修改KR-EAR 的C++代码而成的,主要修改了两个部分:属性三元组的评分函数计算和模型训练中正则化因子C(X)的计算。由于采用了与文献[11]中完全相同的实验数据集和参数设置,按照本领域中惯例,三个基线模型的实验结果直接取自文献[11]中给出的相关实验结果。

3.1.3 参数设置

我们的实验完全按照文献[11]中给出的最佳配置来设置KR-EAR 的参数。KGE-EAV 模型的参数设置如下:SGD 的学习率λ取值于{0.1,0.01,0.001},权重γ取值于{0.1,0.01,0.001},向量空间维度n和m均取值于{20,50,80,100},所有偏置常数b1,b2,c1,c2在-10~10 中取值。我们通过网格搜索(grid search)来确定KGE-EAV 的如下最佳配 置 :λ=0.001 、γ=0.1 、n=100 、m=100 、b1=10、b2=-7、c1=10、c2=1,使用L1范数。同文献[11]的做法,模型训练的迭代次数为1000。

3.1.4 数据集

我们使用与文献[11]中相同的数据集(即FB24k)及其划分、交叉验证方式来进行实验评价。FB24k 是文献[11]通过从大型知识图谱Freebase[3]中抽取三元组构建的数据集,低频率的(即在少于30个三元组中出现的)实体和关系以及逆(reverse)关系被过滤掉,数据集中三元组被划分为“relations”和“attributes”两个部分。该数据集被随机地划分为训练集和测试集,通过训练集上的5 折交叉验证来调试模型[11]。

3.1.5 评价指标

我们使用两个评价指标Mean Rank(正确实体的平均排名)和Hits@N(排名前N 位的实体中正确实体的比例)来评估模型的性能。与论文[11]中做法相同,这些指标值的计算过程如下:对于实体预测任务,首先用实体集E中所有实体逐个替换测试集中每个关系三元组的头实体和尾实体,获得两个损坏的(corrupted)三元组;然后用式(1)和式(2)定义的评分函数来计算损坏的三元组的排名分数;最后将E中实体按排名分数的升序进行排列后得到正确实体的排名,并籍此计算上述两个评价指标值。对于属性预测任务,两个指标值的计算过程与上述计算过程类似,但不同的是用属性值集V中所有属性值逐个替换测试集中每个属性三元组中的属性值,获得一个损坏的三元组,然后用式(5)和(6)定义的评分函数来计算损坏的三元组的排名分数。

值得指出的是,上述替换后得到的损坏的三元组也有可能存在于知识图谱中,因此该三元组应该被判定为正确的(positive)三元组。与现有工作[7~11]一样,我们的实验也采用“Raw”和“Filter”两种常用评价设置:“Raw”指不过滤掉损坏但正确的三元组,而“Filter”指过滤掉损坏但正确的三元组。

3.2 实体预测

表2列出了各个实验对比模型在数据集FB24k上执行实体预测任务的实验结果(Mean Rank 与Hits@10 指标值),其中,Head 列中的数据表示预测头实体的结果,Tail 列中的数据表示预测尾实体的结果,Total 列中的数据是预测头实体结果、预测尾实体结果的算术平均值。观察这些实验结果,我们有如下发现:

1)在两个性能指标上,KGE-EAV 略优于KR-EAR,并明显优于三个基线模型。

2)从Total列的数据中可看出,在Hits@10指标上,“Filter”设置下 KGE-EAV(TransE)比 KR-EAR(TransE)提 高 了 0.5% ,KGE-EAV(TransR)比KR-EAR(TransR)提高了0.9%。

3)从Total列的数据中可看出,在Hits@10指标上,“Filter”设置下KGE-EAV(TransR)的指标值高于KGE-EAV(TransE)的指标值(3.2%),这说明在表示关系三元组时,KGE-EAV 模型使用TransR 更佳。

表2 实体预测的实验结果

根据上述发现可得出结论:由于KGE-EAV 能更合理地表示实体嵌入,其实体预测的性能优于KR-EAR和三个基线模型。

3.3 属性预测

在属性预测时,正如前文所述,KR-EAR 和KGE-EAV都可考虑实体的多个属性之间的相关性(AC)。在下文给出实验结果时,将考虑了AC 的模型用模型名称+AC来标识。

表3 列出了各个模型在数据集FB24k 上执行属性预测任务的实验结果(Mean Rank 与Hits@1 指标值)。观察这些实验结果,有如下发现:

表3 属性预测的实验结果

1)在两个评价指标上,KGE-EAV 略优于KR-EAR,并明显优于基线模型。

2)在 Hits@1 指 标 上 ,“Filter”设 置 下 ,KGE-EAV(TransE)比 KR-EAR(TransE)提高了1.2%,KGE-EAV(TransR)比KR-EAR(TransR)提高了0.6%。

3)在 Hits@1 指 标 上 ,“Filter”设 置 下 ,KGE-EAV(TransE)+AC 比KR-EAR(TransE)+AC提高了0.7%,KGE-EAV(TransR)+AC 比KR-EAR(TransR)+AC提高了0.7%。

4)在 Hits@1 指标上,“Filter”设置下,考虑了实体的多个属性之间的相关性(AC)后,KGE-EAV(TransE)+AC 比KGE-EAV(TransE)提高了0.9%,KGE-EAV(TransR)+AC 比KGE-EAV(TransR)提高了1.1%,这说明考虑属性之间的相关性更有利于提高属性预测的准确度。这与文献[11]中KR-EAR(TransE)+AC 和KR-EAR(TransR)+AC的性能提高情况类似。

根据上述发现可得出结论:由于KGE-EAV 能更合理地表示多值属性的属性值嵌入,其属性预测的性能优于KR-EAR和三个基线模型。

4 结语

本文通过改进KR-EAR 的属性三元组表示来提出一种精细表示多值属性的知识图谱嵌入模型KGE-EAV。在KGE-EAV 的属性值空间中,为每个实体创建一个超平面,该实体的每个属性值嵌入都在该超平面上形成一个投影向量,KGE-EAV 使用这样的投影向量来定义属性三元组的评分函数。实验表明,在实体预测和属性预测两项任务上,KGE-EAV 的准确度均优于KR-EAR 和三个基线模型(TransE、TransH和TransR)。

猜你喜欢

超平面三元组向量
TransP:一种基于WordNet中PartOf关系的知识图谱嵌入方法
一种改进的多分类孪生支持向量机
向量的分解
时序知识图谱的增量构建
基于非线性核的SVM模型可视化策略
有限维Banach空间中完备集的构造
基于卷积神经网络的知识图谱补全方法研究
聚焦“向量与三角”创新题
基于多特征语义匹配的知识库问答系统
Gianluca Capannolo