1.本发明涉及机器学习领域,尤其涉及一种基于图神经网络的时序知识图谱的补全方法及相关设备。
背景技术:2.随着互联网、物联网、云计算等信息技术的不断发展,数据的快速增长已经成为许多行业共同面对的严峻挑战和宝贵机遇,整个社会已经迈入了大数据时代。为了更好地利用知识,谷歌于2012年,在语义研究热潮中提出知识图谱的概念。与普通的关系数据库相比,知识图谱是一种描述真实世界客观存在的实体、概念及它们之间的关联关系的语义网络,用于以符号形式描述物理世界中的实体、概念及其相互关系。这些结构化的知识促进了人和计算机对知识的理解和利用,是人工智能应用实现的知识基础。
3.目前,大量研究工作针对静态知识图谱,但是现有的知识图谱中,不少图谱都具有时间标识,这样的知识图谱称为时序知识图谱。时间作为自然事物发展的一个重要特征,它能描述事件的发展和演化模式,因此时序知识图谱具有更大的使用价值。与静态知识图谱相似,时序知识图谱也并不是完备的,仍然需要对其进行不断地补充。目前相关技术中对时序知识图谱的研究较少,因此如何补全时序知识图谱成为研究的难点问题。
技术实现要素:4.有鉴于此,本技术的目的在于提出一种基于图神经网络的时序知识图谱的补全方法及相关设备。
5.基于上述目的,本技术提供一种基于图神经网络的时序知识图谱的补全方法,包括:
6.获取多个历史时刻的时序知识图谱和当前时刻的时序知识图谱,分别对每个所述时序知识图谱进行预处理;
7.将经过所述预处理的全部所述时序知识图谱输入至经过预训练的补全模型中,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量;
8.通过相似度计算模型从预先构建的候选集中选取与所述最终表示向量对应的节点的相似度最大的候选节点作为补全节点,并基于所述补全节点对当前时刻的所述时序知识图谱进行补全。
9.进一步的,所述预处理包括分别对所述时序知识图谱上的每个所述节点进行提取,以得到该节点对应的全部三元组。
10.进一步的,所述节点对应的全部三元组包括以所述节点为尾实体的所有入边三元组和以所述节点为头实体的所有出边三元组。
11.进一步的,所述将经过所述预处理的全部所述时序知识图谱输入至经过预训练的补全模型中,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量,包括:
12.将每一个所述时序知识图谱中的每个节点对应的全部所述入边三元组和所述出
边三元组进行嵌入,得到入边三元组的表示向量和出边三元组的表示向量;
13.基于所述入边三元组的表示向量和所述出边三元组的表示向量通过多头注意力机制计算得到当前时刻的所述时序知识图谱上每个节点的最终表示向量。
14.进一步的,所述基于所述入边三元组的表示向量和所述出边三元组的表示向量通过多头注意力机制计算得到当前时刻的所述时序知识图谱上每个节点的最终表示向量,包括:
15.通过softmax函数对全部所述节点的所有所述入边三元组和所述出边三元组进行归一化,得到每个所述节点的入边三元组注意力系数和出边三元组注意力系数;
16.基于所述入边三元组注意力系数和所述出边三元组注意力系数通过多头注意力机制进行计算,分别得到所述节点的入边三元组聚合空间信息表示向量和出边三元组聚合空间信息表示向量;
17.通过门限函数将所述入边三元组聚合空间信息表示向量和所述出边三元组聚合空间信息表示向量进行聚合,得到所述节点的空间信息表示向量;
18.通过时间衰减函数将所述节点的时间信息与所述空间信息表示向量相结合,计算该节点的每个历史时刻的空间信息表示向量与当前时刻的空间信息表示向量之间的相关度,并基于所述相关度计算出该节点的每个历史时刻的注意力值;
19.基于所述注意力值和所述节点的所述空间信息表示向量进行计算,得到所述所有节点的最终表示向量。
20.进一步的,所述预训练包括:
21.构建训练集;
22.通过所述训练集及预先构建的目标函数对所述补全模型进行迭代训练,对所述目标函数进行最小化以得到所述补全模型。
23.进一步的,所述候选集包括多个候选节点,构建所述候选集包括:
24.从所述当前时刻的时序知识图谱上选取与所述节点存在未知关系的邻居节点作为所述候选集中的所述候选节点。
25.基于同一发明构思,本技术还提供了一种基于图神经网络的时序知识图谱的补全装置,包括:
26.预处理模块,被配置为获取多个历史时刻的时序知识图谱和当前时刻的时序知识图谱,分别对每个所述时序知识图谱进行预处理;
27.生成最终表示向量模块,被配置为将经过所述预处理的全部所述时序知识图谱输入至经过预训练的补全模型中,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量;
28.补全模块,被配置为通过相似度计算模型从预先构建的候选集中选取与所述最终表示向量对应的节点的相似度最大的候选节点作为补全节点,并基于所述补全节点对当前时刻的所述时序知识图谱进行补全。
29.基于同一发明构思,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意所述的方法。
30.基于同一发明构思,本技术还提供了一种非暂态计算机可读存储介质,所述非暂
态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上任意所述的方法。
31.从上面所述可以看出,本技术提供的一种基于图神经网络的时序知识图谱的补全方法及相关设备,将获取的多个历史时刻的时序知识图谱和当前时刻的时序知识图谱输入至经过预训练的补全模型中,基于模型输出结果从构建的候选集中选取候选节点作为补全节点从而对时序知识图谱进行补全。通过结合多个历史时刻的已有三元组的空间信息和时间信息,通过图神经网络对当前时刻缺失的三元组进行补全,既考虑到了每个节点的时间的延续性,且通过图神经网络对空间信息进行了更全面的聚合,以提升对时序知识图谱补全的准确率。
附图说明
32.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1为本技术实施例的基于图神经网络的时序知识图谱的补全方法的流程示意图;
34.图2为本技术实施例的transe模型中的头尾实体关系的示意图;
35.图3为本技术实施例的当前时刻的时序知识图谱的结构示意图;
36.图4为本技术实施例的基于图神经网络的时序知识图谱的补全装置的结构示意图;
37.图5为本技术实施例的电子设备的结构示意图。
具体实施方式
38.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
39.需要说明的是,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
40.如背景技术所述,具有时间信息的知识图谱称为时序知识图谱。时序知识图谱中不仅包含实体之间的关系以及实体属性信息,还包含事件的发展和演化过程,一个三元组的成立具有时效性,在一定的时间内该三元组事实是成立的。与传统的知识图谱相比,时序知识图谱加入了时效性的考虑。虽然加入了时间信息,但是与静态知识图谱相似,时序知识图谱也并不是完备的,仍然需要对其进行不断地补充。基于时效性考虑对三元组进行补全的相关方法,与静态知识图谱补全方法类似,基于知识图谱现有的三元组数据预测真实存在的新三元组数据,由于三元组自带时间标签,因此一个事件的发展和演化结果可以通过一系列的三元组来进行表示。
41.有鉴于此,本技术所提出的基于图神经网络的时序知识图谱的补全方法dt-kgc(dynamic knowledge graph completion algorithm based on graph neural network)是将获取的多个历史时刻的时序知识图谱和当前时刻的时序知识图谱输入至经过预训练的补全模型中,基于模型输出结果从构建的候选集中选取候选节点作为补全节点从而对时序知识图谱进行补全。
42.以下结合附图来详细说明本技术的实施例。
43.本技术提供了一种基于图神经网络的时序知识图谱的补全方法,参考图1,具体包括以下步骤:
44.步骤s101、获取多个历史时刻的时序知识图谱和当前时刻的时序知识图谱,分别对每个所述时序知识图谱进行预处理。
45.具体的,获取一个时间序列{0,1,2
…
t}上每个时刻对应的时序知识图谱{g0,g1,
…gt
}。其中,t时刻为当前时刻,g
t
为当前时刻的时序知识图谱,0~t-1为历史时刻,g0,g1,
…gt-1
皆为每个历史时刻对应的时序知识图谱,0时刻对应的时序知识图谱为g0,以此类推,1时刻对应的时序知识图谱为g1…
t时刻对应的时序知识图谱为g
t
。所述预处理是提取所述时序知识图谱上每个节点的所有三元组。
46.步骤s102、将经过所述预处理的全部所述时序知识图谱输入至经过预训练的补全模型中,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量。
47.具体的,将步骤s101获取的每个所述时序知识图谱中的每个节点对应的全部三元组输入到经过预训练的补全模型中进行空间信息和时间信息的嵌入,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量。所述模型分为两部分,分别是空间信息嵌入部分和时间信息聚合部分。
48.步骤s103、通过相似度计算模型从预先构建的候选集中选取与所述最终表示向量对应的节点的相似度最大的候选节点作为补全节点,并基于所述补全节点对当前时刻的所述时序知识图谱进行补全。
49.具体的,所述相似度计算模型有很多种,常见的有transe模型、transh模型、transr模型、transd模型,根据具体情况进行选择。本实施例中采用transe模型中的距离函数计算所述模型输出的最终表示向量和候选集中候选节点的表示向量之间的距离。在transe模型中存在h+r=t的关系,图2示出了transe模型中头尾实体的关系。其中h为时序知识图谱中的头实体的表示向量,r为时序知识图谱中的关系的表示向量,t为时序知识图谱中的尾实体的表示向量。当所述最终表示向量与所述候选节点的表示向量距离最小时,则认为满足h+r≈t,则认为所述节点与所述候选节点存在关系,则将该候选节点作为当前时刻所述节点的补全节点,得到当前时刻所述节点的新三元组,从而达到对时序知识图谱的补全。
50.在一些实施例中,所述预处理包括分别对所述时序知识图谱上的每个所述节点进行提取,以得到该节点对应的全部三元组。
51.具体的,以所述时序知识图谱上的v节点为例,以u节点作为v节点的邻居节点,则提取到的v节点的其中一个三元组表示为(u,r,v)。对v节点的每个邻居节点逐一操作,提取v节点的全部三元组。
52.在一些实施例中,所述节点对应的全部三元组包括以所述节点为尾实体的所有入
边三元组和以所述节点为头实体的所有出边三元组。
53.具体的,以所述时序知识图谱上的v节点为例,以u节点作为v节点的邻居节点,则v节点的入边三元组表示为(u,r,v),v节点的出边三元组为(v,r,u)。对v节点的每个邻居节点逐一操作,提取v节点的全部入边三元组和出边三元组。
54.在一些实施例中,所述将经过所述预处理的全部所述时序知识图谱输入至经过预训练的补全模型中,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量,包括:
55.将每一个所述时序知识图谱中的每个节点对应的全部所述入边三元组和所述出边三元组进行嵌入,得到入边三元组的表示向量和出边三元组的表示向量;
56.基于所述入边三元组的表示向量和所述出边三元组的表示向量通过多头注意力机制计算得到当前时刻的所述时序知识图谱上每个节点的最终表示向量。
57.具体的,通过计算得到v节点的入边三元组(u,r,v)的表示向量,计算公式如下
[0058][0059]
其中,wv和wr分别为实体和关系的权重映射矩阵,权重映射矩阵随机初始化;为激活函数;为一个前馈神经网络,能够将拼接向量映射成实数;eu为v节点的邻居节点u节点的表示向量,er为u节点和v节点关系的表示向量,ev为v节点的表示向量。三个表示向量通过公式(1)拼接形成v节点入边三元组的表示向量。同理,根据公式(1)计算出v节点出边三元组的表示向量。
[0060]
然后根据v节点的入边三元组的表示向量和出边三元组的表示向量通过多头注意力机制计算得到当前时刻的v节点的最终表示向量。
[0061]
在一些实施例中,所述基于所述入边三元组的表示向量和所述出边三元组的表示向量通过多头注意力机制计算得到当前时刻的所述时序知识图谱上每个节点的最终表示向量,包括:
[0062]
通过softmax函数对全部所述节点的所有所述入边三元组和所述出边三元组进行归一化,得到每个所述节点的入边三元组注意力系数和出边三元组注意力系数;
[0063]
基于所述入边三元组注意力系数和所述出边三元组注意力系数通过多头注意力机制进行计算,分别得到所述节点的入边三元组聚合空间信息表示向量和出边三元组聚合空间信息表示向量;
[0064]
通过门限函数将所述入边三元组聚合空间信息表示向量和所述出边三元组聚合空间信息表示向量进行聚合,得到所述节点的空间信息表示向量;
[0065]
通过时间衰减函数将所述节点的时间信息与所述空间信息表示向量相结合,计算该节点的每个历史时刻的空间信息表示向量与当前时刻的空间信息表示向量之间的相关度,并基于所述相关度计算出该节点的每个历史时刻的注意力值;
[0066]
基于所述注意力值和所述节点的所述空间信息表示向量进行计算,得到所述所有节点的最终表示向量。
[0067]
具体的,对v节点的所有入边三元组通过softmax函数进行归一化得到入边三元组的注意力系数,公式如下
[0068]
[0069]
其中,为v节点的所有邻居节点的集合;z为v节点的邻居节点且z≠u;e
zrv
为v节点的以z节点作为头实体的入边三元组表示向量;α
urv
为入边三元组的注意力系数。同理,根据公式(2)计算出v节点的所有出边三元组的注意力系数。
[0070]
具体的,基于v节点的入边三元组的注意力系数通过多头注意力机制进行信息聚合,得到所述入边三元组的聚合空间信息表示向量,计算公式如下
[0071][0072]
其中,为向量拼接操作;k为注意力通道的数目;为不同注意力通道k下的v节点的入边三元组的注意力系数;*为对v节点的入边三元组(u,r,v)中的头实体和关系进行外积运算;σ(
·
)为非线性函数;l为图神经网络最后的输出层l层;为入边三元组的聚合空间信息表示向量。通过多头注意力机制对多个结果进行平均计算之后输出,使得输出结果稳定,提高了模型的稳定性。同理,根据公式(3)对v节点出边三元组进行信息聚合,得到所述出边三元组的聚合空间信息表示向量。
[0073]
具体的,对v节点的入边三元组和出边三元组的聚合空间信息表示向量通过门限函数进行聚合,得到v节点的空间信息表示向量,聚合过程的计算公式如下
[0074][0075][0076]
其中,w
λ
为门限网络的可学习权重参数;ξ为偏差参数;δ(
·
)为非线性激活函数;λ为聚合系数;为出边三元组的聚合空间信息表示向量,为入边三元组的聚合空间信息表示向量;为v节点的空间信息表示向量。
[0077]
每个时刻下v节点的空间信息表示向量,如下所示
[0078][0079]
其中,tq为q时刻的时间表示。
[0080]
具体的,v节点与邻居节点的关系在整个时刻序列上并不是保持不变的,其关系会随着时间的发展而变化,为了描述这种关系随时间的变化而变化的影响,将已发生的关系进行一个时间衰减。当v节点与其邻居节点之间在时间tq不存在关系时,应考虑上一次两者存在的关系对现在的影响,将tq之前的两者存在关系的时刻记为td,那么基于d时刻对q时刻的影响,q时刻的v节点的空间信息表示向量表示为
[0081][0082][0083]
其中,为衰减率,θ1和b1为可学习的参数,通常从一组随机值开始;exp(
·
)为时间衰减函数;max(
·
)为取最大值函数。
[0084]
具体的,根据公式(7)(8)分别表示出v节点的0-t时刻的空间信息表示向量e
v,t
和t时刻的空间信息表示向量e
v,t
,计算v节点0-t任一时刻对t时刻的相关度,相关度计算公式
如下
[0085][0086]
其中,α
t
(
·
)为向量映射函数,将向量映射为实数;w1、w2为可学习的参数;为0-t时刻中t时刻的嵌入表示;为t时刻的嵌入表示;t∈{0-t}。
[0087]
通过公式计算出v节点的t时刻对0-t时刻的注意力值,公式如下
[0088][0089]
其中,t∈{0-t};t
′
∈{0-t}且t
′
≠t。
[0090]
具体的,通过公式计算得到v节点的最终表示向量,公式如下
[0091][0092]
其中,w3为可学习参数;为t时刻的嵌入表示;e
v,t
为v节点的0-t时刻中t时刻的空间信息表示向量。
[0093]
在一些实施例中,所述预训练包括:
[0094]
构建训练集;
[0095]
通过所述训练集及预先构建的目标函数对所述补全模型进行迭代训练,对所述目标函数进行最小化得到所述补全模型。
[0096]
具体的,将获取的历史时序知识图谱划分为训练集和测试集,划分比例可以根据实际情况进行调整。例如训练集为数据总量的80%,测试集为数据总量的20%。训练集中又分为正样本和负样本。负样本的构建采用随机实体替换为三元组的头实体和尾实体。基于训练集对所述补全模型进行训练,通过测试集对经过训练的所述补全模型进行准确率的检测。
[0097]
具体的,构建一个目标函数l来训练所述补全模型,对所述目标函数进行最小化直至收敛,得到最终的补全模型。首先采用一个正负样本最大化的函数l1,公式如下
[0098][0099]
其中,u
′
和v
′
为替换头实体或尾实体的负采样三元组;d为距离函数;γ为间隔距离超参数。函数l1保证当v节点的三元组事实成立时,有u+r=v的等式成立,并通过正负例样本距离最大化来引导模型收敛。
[0100]
然后,v节点三元组的事实成立可以看成是头实体在图神经网络中通过关系变为尾实体,因此采用了一个最大化相似度的函数l2,公式如下
[0101][0102]
其中,w4和b3为图神经网络中线性投影层的权重和偏差;yv为在图神经网络中经过变换的头实体的表示向量;s为知识图谱中的节点个数。通过公式(13)最大化es与yv的相似度。最大化该相似度就是在保证了v节点的入边三元组公式(12)成立时,出边三元组的事实也能成立。
[0103]
最终,在对三元组的成立性进行约束之后,要保证v节点的入边三元组和其出边三
元组的事实是一致的,即出边三元组的加入不能给已有图谱加入新的事实,这里引入信息论中的信息熵来进行约束,事实一致性约束函数l3公式如下
[0104][0105]
其中,d(
·
)为判别网络;r-为反向关系;r
′
为负样本;n、m分别为正负采样图谱的节点个数;为负采样图谱;为正采样图谱;i为正采样图谱中的节点;j为负采样图谱中的节点。
[0106]
综上所述,目标函数l为
[0107]
l=l1+l2+l3ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)
[0108]
进一步的,对训练好的模型进行测试。将测试集中的数据输入至补全模型中,模型输出最终表示向量与测试集中包含的候选节点的表示向量之间的距离,公式如下
[0109]
l4=d(h+r-t)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(16)
[0110]
其中,d(
·
)为距离函数;h+r为补全模型输出的最终表示向量;t为候选节点的表示向量。
[0111]
当所计算出的距离最小时,则认为两向量满足h+r≈t的关系,若满足此关系则认为三元组(h,r,t)是一个正确的三元组,将此三元组作为补全的三元组,则模型测试通过,若不满足此关系则为错误的三元组,模型测试不通过。通过目标函数l对模型进行训练是为了提高模型的准确度,以使模型输出准确率较高的最终表示向量。
[0112]
在一些实施例中,所述候选集包括多个候选节点,构建所述候选集包括:
[0113]
从所述当前时刻的时序知识图谱上选取与所述节点存在未知关系的邻居节点作为所述候选集中的所述候选节点。
[0114]
具体的,图3示出了一个当前时刻的时序知识图谱。图上节点5和节点6为当前时刻未与其他节点存在关系的节点且二者为节点1的邻居节点,将节点5和节点6选做节点1的候选节点,构建候选集。通过本技术提出的方法补全节点1与节点5、节点6的关系。
[0115]
本技术采用mrr和h@i(i∈{1,10})两个评分指标对上述补全方法进行评分。
[0116]
为了评估所提出的方法的性能,采用时序知识图谱领域的三个基准数据集gdelt,icews14和icews05-15(icews数据集的子集)来进行实验,这三个数据集都是基于时间点更新时间,符合本方法设计中时间信息是时刻的前提。
[0117]
gdelt数据集:gdelt数据集中记载着从1969年开始,来自每个国家的新闻媒体中通过印刷、广播或者网页形式的新闻,这些信息被翻译为大概100多种语言记录在数据集中,而且这些信息每隔15分钟被更新一次。gdelt数据集中主要包含两大数据库,事件数据库和全球知识图谱,目前主要用于时序知识图谱补全领域的是其子集gdelt-500。
[0118]
icews数据集:icews数据库包含来自250多个国家和区域的100多个来源的政治事件。这些事件信息每天被更新一次。其两个数据子集icews14和icews05-15主要被用于时序知识图谱补全领域。
[0119]
为了更好的衡量所提所述方法的贡献,将dt-kgc算法与已有的静态知识图谱补全方法transe,distmult,complex和simplex,以及基于图神经网络的静态知识图谱补全方法rgcn进行实验对比,在静态知识图谱补全方法中,忽略所有输入的时间信息。然后将dt-kgc算法与已有的动态知识图谱补全算法进行对比,包括ttranse,tadistmult,hyte,temp。实验中,参数设置如下:图神经网络中隐藏网络层数l为2,gdelt中注意力通道数k为4,icews14和icews05-15注意力通道数k为8。为了确保结果的稳定性,每次实验重复10次,并取平均值作为最终结果。评分结果如表1所示。
[0120]
表1 dt-kgc实验结果对比表
[0121][0122]
通过表1的实验数据结果得到如下结论:
[0123]
与已有的静态知识图谱补全方法进行对比可以看到,dt-kgc算法在各方面的指标上均已超过已有方法的数据,这是因为时序知识图谱中三元组的事实并不是一成不变的,而静态知识图谱补全方法中忽略了时间的信息,导致前期存在而后面消失了的事实会对后期的三元组的预测产生极大地噪声,导致静态知识图谱补全方法在处理带有时间信息的动态数据的时候效果不理想。
[0124]
与基于图神经网络的静态知识图谱补全基准方法rgcn进行对比,可以发现rgcn与已有的transe等方法进行对比,其实验效果更好,这说明了图神经网络在处理知识图谱这种非欧图数据上的适用性。
[0125]
与已有的动态知识图谱补全方法相比,可以看到在transe以及dismult等非图神经模型上加上时间信息的动态补全方法的效果并不理想,各方面的指标都低于基于图神经网络的temp方法,进一步证明了图神经网络在该问题上的适用性。进一步,temp中完成对图谱信息的嵌入之后,分别通过gru和注意力机制建模时序信息得到整合了所有信息的嵌入表示,并将这两种方法进行了对比,在整体情况下基于gru的temp方法优于基于自注意力的temp,但是本文提出的dt-kgc在icews14数据集上是完全优于temp-gru,而在其它两个数据集上部分优于temp-gru,整体是完全优于temp-sa,这一方面是因为temp-sa中对时间信息的处理没有考虑到已发生事实的时间延续性,而temp-gru中的时序建模考虑到了上一个时刻中有联系的邻居节点到下一个时刻中对目标节点的影响,而dt-kgc不仅考虑到了这一点,还通过图注意力网络对图谱的空间信息进行了更全面的聚合,这使得dt-kgc在各方面的表现都比较均衡,能较好的实现补全任务。
[0126]
需要说明的是,本技术实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
[0127]
需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0128]
基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种基于图神经网络的时序知识图谱的补全装置。
[0129]
参考图4,基于图神经网络的时序知识图谱的补全装置,包括:
[0130]
预处理模块401,被配置为获取多个历史时刻的时序知识图谱和当前时刻的时序知识图谱,分别对每个所述时序知识图谱进行预处理;
[0131]
生成最终表示向量模块402,被配置为将经过所述预处理的全部所述时序知识图谱输入至经过预训练的补全模型中,得到当前时刻的所述时序知识图谱上每个节点的最终表示向量;
[0132]
补全模块403,被配置为通过相似度计算模型从预先构建的候选集中选取与所述最终表示向量对应的节点的相似度最大的候选节点作为补全节点,并基于所述补全节点对当前时刻的所述时序知识图谱进行补全。
[0133]
在一些实施例中,所述预处理模块401还被配置为分别对所述时序知识图谱上的每个所述节点进行提取,以得到该节点对应的全部三元组。
[0134]
在一些实施例中,所述节点对应的全部三元组包括以所述节点为尾实体的所有入边三元组和以所述节点为头实体的所有出边三元组。
[0135]
在一些实施例中,所述生成最终表示向量模块402还被配置为,将每一个所述时序知识图谱中的每个节点对应的全部所述入边三元组和所述出边三元组进行嵌入,得到入边三元组的表示向量和出边三元组的表示向量;基于所述入边三元组的表示向量和所述出边三元组的表示向量通过多头注意力机制计算得到当前时刻的所述时序知识图谱上每个节点的最终表示向量。
[0136]
在一些实施例中,所述生成最终表示向量模块402还被配置为,通过softmax函数对全部所述节点的所有所述入边三元组和所述出边三元组进行归一化,得到每个所述节点的入边三元组注意力系数和出边三元组注意力系数;基于所述入边三元组注意力系数和所述出边三元组注意力系数通过多头注意力机制进行计算,分别得到所述节点的入边三元组聚合空间信息表示向量和出边三元组聚合空间信息表示向量;通过门限函数将所述入边三元组聚合空间信息表示向量和所述出边三元组聚合空间信息表示向量进行聚合,得到所述节点的空间信息表示向量;通过时间衰减函数将所述节点的时间信息与所述空间信息表示向量相结合,计算该节点的每个历史时刻的空间信息表示向量与当前时刻的空间信息表示向量之间的相关度,并基于所述相关度计算出该节点的每个历史时刻的注意力值;基于所述注意力值和所述节点的所述空间信息表示向量进行计算,得到所述所有节点的最终表示
向量。
[0137]
在一些实施例中,所述预训练包括:
[0138]
构建训练集;
[0139]
通过所述训练集及预先构建的目标函数对所述补全模型进行迭代训练,对所述目标函数进行最小化以得到所述补全模型。
[0140]
在一些实施例中所述候选集包括多个候选节点,构建所述候选集包括:
[0141]
从所述当前时刻的时序知识图谱上选取与所述节点存在未知关系的邻居节点作为所述候选集中的所述候选节点。
[0142]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0143]
上述实施例的装置用于实现前述任一实施例中相应的基于图神经网络的时序知识图谱补全方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0144]
基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的基于图神经网络的时序知识图谱的补全方法。
[0145]
图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
[0146]
处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
[0147]
存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
[0148]
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
[0149]
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0150]
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
[0151]
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运
行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
[0152]
上述实施例的电子设备用于实现前述任一实施例中相应的基于图神经网络的时序知识图谱补全方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0153]
基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的基于图神经网络的时序知识图谱的补全方法。
[0154]
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0155]
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的基于图神经网络的时序知识图谱补全方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0156]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0157]
另外,为简化说明和讨论,并且为了不会使本技术实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术实施例。因此,这些描述应被认为是说明性的而不是限制性的。
[0158]
尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
[0159]
本技术实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。