CN111680162A - 基于张量分解的知识图谱嵌入方法、系统及设备 - Google Patents

基于张量分解的知识图谱嵌入方法、系统及设备 Download PDF

Info

Publication number
CN111680162A
CN111680162A CN202010306913.1A CN202010306913A CN111680162A CN 111680162 A CN111680162 A CN 111680162A CN 202010306913 A CN202010306913 A CN 202010306913A CN 111680162 A CN111680162 A CN 111680162A
Authority
CN
China
Prior art keywords
tensor
embedding
decomposition
knowledge graph
decomposed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010306913.1A
Other languages
English (en)
Other versions
CN111680162B (zh
Inventor
李勇
金德鹏
刘宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN202010306913.1A priority Critical patent/CN111680162B/zh
Publication of CN111680162A publication Critical patent/CN111680162A/zh
Application granted granted Critical
Publication of CN111680162B publication Critical patent/CN111680162B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

本发明实施例涉及知识图谱技术领域,公开了基于张量分解的知识图谱嵌入方法、系统及设备。本发明实施例先获取当前知识图谱对应的张量;对张量进行Tucker分解,以得到分解后的张量;确定与分解后的张量对应的事实得分;根据事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行当前知识图谱的嵌入操作。明显地,本发明实施例提供了一种较好的面向N元知识图谱的嵌入方式,具体地,将在知识图谱嵌入操作上结合进张量分解操作,最终可提高嵌入操作的准确性;同时,还大大降低了参数复杂度,提高了运行效率。而且,本实施例可基于Tucker和张量环式进行联合分解。

Description

基于张量分解的知识图谱嵌入方法、系统及设备
技术领域
本发明涉及知识图谱技术领域,尤其涉及基于张量分解的知识图谱嵌入方法、系统及设备。
背景技术
知识图谱(Knowledge Graph)是一种将现实世界中的事实以图谱的形式结构化表示和存储的数据格式,其中,事实包含的事物和概念对应着知识图谱中的实体,实体间的关系对应着知识图谱中的边。
目前,广泛研究的知识图谱集以2元关系为多,即将事实以三元组(r,h,t)进行描述,其中,h和t分别表示头实体和尾实体,r表示具体的2元关系。
然而,现实世界中实际上存在的更多的是多元关系,即多于2元的关系,例如,一个N元关系将对应着一个事实与N个实体之间的交互。
因此,N元关系对应的事实构成了更常见的知识表示和存储结构,即N元知识图谱(N-ary Knowledge Graph)。
但是,由于N元知识图谱并不完备,往往会存在着大量的事实缺失,需要根据现有的N元知识图谱信息推断缺失的实体间关系,即,需要进行N元知识图谱的补全操作。
就N元知识图谱的补全操作而言,目前已有的针对N元知识图谱的补全方式存在着诸多缺陷,比如,N元知识图谱中的关系属性表征较弱,且对于建模过程中出现的N元关系存在着较强的假设条件,只能表征一部分的N元关系,不适用于多样性的N元知识图谱的补全操作;同时,大部分的数据操作均局限于2元知识图谱这一维度,难以拓展到N元,普适性差,不能发掘出多元关系中的内在属性和规律。
可见,并不存在一类知识图谱的补全方式可以较好地适用于面向N元知识图谱的补全操作。
发明内容
为了解决上述技术问题,本发明实施例提供基于张量分解的知识图谱嵌入方法、系统及设备。
第一方面,本发明实施例提供一种基于张量分解的知识图谱嵌入方法,包括:
获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
对所述张量进行Tucker分解,以得到分解后的张量;
确定与分解后的张量对应的事实得分;
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
优选地,所述获取当前知识图谱对应的张量之后,所述基于张量分解的知识图谱嵌入方法还包括:
确定作为正样本集的所述张量中的目标正样本;
将所述目标正样本中的预设元实体替换为实体集中的实体样本,以得到负样本;
相应地,所述对所述张量进行Tucker分解,以得到分解后的张量,具体包括:
对所述正样本集与由所述负样本构成的负样本集进行Tucker分解,以得到分解后的张量。
优选地,所述对所述张量进行Tucker分解,以得到分解后的张量之前,所述基于张量分解的知识图谱嵌入方法还包括:
获取初始核张量;
对所述初始核张量进行变形,以得到当前变形核张量;
对所述当前变形核张量进行张量环式分解,以得到目标环式分解张量;
对所述目标环式分解张量进行张量环式逆分解,以恢复出目标变形核变量;
对所述目标变形核变量进行逆变形,以得到待使用核张量;
相应地,所述对所述张量进行Tucker分解,以得到分解后的张量,具体包括:
基于所述待使用核张量对所述张量进行Tucker分解,以得到分解后的张量。
优选地,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作,具体包括:
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新;
通过更新后的嵌入向量与所述目标环式分解张量进行所述当前知识图谱的嵌入操作。
优选地,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新,具体包括:
通过预设损失函数处理所述事实得分,以得到指标值;
以所述指标值为基准采用梯度下降算法对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新。
优选地,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作,具体包括:
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新;
若累计的更新次数大于等于预设迭代次数,则通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
优选地,所述分解后的张量包括核张量、与关系对应的嵌入向量矩阵及与实体对应的嵌入向量矩阵。
第二方面,本发明实施例提供一种基于张量分解的知识图谱嵌入系统,包括:
张量获取模块,用于获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
张量分解模块,用于对所述张量进行Tucker分解,以得到分解后的张量;
计分模块,用于确定与分解后的张量对应的事实得分;
图谱嵌入模块,用于根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明第一方面提供的一种基于张量分解的知识图谱嵌入方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明第一方面提供的一种基于张量分解的知识图谱嵌入方法的步骤。
本发明实施例提供的基于张量分解的知识图谱嵌入方法、系统及设备,先获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;对所述张量进行Tucker分解,以得到分解后的张量;确定与分解后的张量对应的事实得分;根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。明显地,本发明实施例提供了一种较好的面向N元知识图谱的嵌入方式,具体地,将在知识图谱嵌入操作上结合进张量分解操作,最终可提高嵌入操作的准确性;同时,还大大降低了参数复杂度,提高了运行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于张量分解的知识图谱嵌入方法的流程图;
图2为本发明又一实施例提供的一种基于张量分解的知识图谱嵌入方法的流程图;
图3为本发明再一实施例提供的一种基于张量分解的知识图谱嵌入方法的流程图;
图4为本发明实施例提供的一种基于张量分解的知识图谱嵌入系统的结构示意图;
图5为本发明实施例提供的一种电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种基于张量分解的知识图谱嵌入方法的流程图,如图1所示,该方法包括:
S1,获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数。
目前已有的针对N元知识图谱的补全方式存在诸多缺陷,比如,N元知识图谱中的关系属性表征较弱,且对于建模过程中出现的N元关系存在着较强的假设条件,只能表征一部分的N元关系,不适用于多样性的N元知识图谱的补全操作;同时,大部分的数据操作均局限于2元知识图谱这一维度,难以拓展到N元,普适性差,不能发掘出多元关系中的内在属性和规律;同时,现有模型的时间复杂度较高,训练过程不易控制,故而,收敛性不能保证,难以适用于大规模的N元知识图谱。
但是,本实施例将提供一类新的N元知识图谱的补全方式,也可称为嵌入方式,可较好地规避上述缺陷,且还可提高嵌入操作的准确性,同时,还大大降低了参数复杂度,提高了运行效率。
在具体实现中,知识图谱嵌入(Knowledge Graph Embedding)操作是一类用于知识图谱补全的操作,具体地,将把知识图谱中的实体和关系投影到连续的低维向量空间中,通过在投影空间中设计相应的评分函数以判断实体之间是否存在着关系缺失,以达到对缺失部分的嵌入操作,最终,达成了知识图谱的补全效果。
其中,N元知识图谱可为3元知识图谱,此仅为举例表示,但本实施例并不限制元数,比如,N元知识图谱还可为2、4及5元等。可见,本实施例并不局限于2元知识图谱。
应当理解的是,本实施例不仅将使用到上文提及的知识图谱嵌入操作,还将在知识图谱嵌入操作上结合进张量分解操作,最终可提高嵌入操作的准确性。
S2,对所述张量进行Tucker分解,以得到分解后的张量。
可以理解的是,为了进行张量分解,可将N元知识图谱中的所有实体和关系组成的事实,看作是一个N+1阶张量,该N+1阶张量可记作
Figure BDA0002456104930000071
其中,nr、ne分别为N元知识图谱的关系数量和实体数量。
其中,
Figure BDA0002456104930000072
的第1阶表示关系、第2阶表示N元关系事实中的第1个位置的实体,以此类推,第N+1阶代表N元关系事实中的第N个位置的实体。
接着,可对该张量进行Tucker分解。
具体地,就Tucker分解而言,Tucker分解可将N+1阶张量
Figure BDA0002456104930000075
分解为,N+1个因子矩阵和一个尺寸远小于原始张量的N+1阶核张量
Figure BDA0002456104930000076
之间的张量积运算,可表示为,
Figure BDA0002456104930000073
其中,R表示N元知识图谱中关系的嵌入向量矩阵,E表示实体的嵌入向量矩阵。
可见,分解后的张量可包括核张量、与关系对应的嵌入向量矩阵及与实体对应的嵌入向量矩阵。
若给定关系和实体的嵌入向量矩阵的维度分别为dr、de时,R的尺寸为nr×dr,E的尺寸为ne×de
Figure BDA0002456104930000074
的尺寸为dr×de×de×…×de,由于嵌入向量矩阵的维度远小于N元知识图谱中实体和关系数量,进而大大降低了参数复杂度,提高了运行效率。
可以理解的是,分解后的张量即是指Tucker分解后的张量积运算的因子。
S3,确定与分解后的张量对应的事实得分。
接着,可获得一个与分解后的张量对应的事实得分以判断实体之间是否存在着关系缺失。
具体地,以一个N元事实
Figure BDA0002456104930000081
即分解后的张量为例,经过Tucker分解后的张量的事实评分为,
Figure BDA0002456104930000082
其中,
Figure BDA0002456104930000083
为核张量,
Figure BDA0002456104930000084
对应着第ir个关系的嵌入向量,
Figure BDA0002456104930000085
对应着第ik个实体的嵌入向量,k为序号。
其中,×N+1表示一种张量运算,具体为,张量与矩阵的模积(mode-n product)。比如,×1表示将张量沿模1展开,以与矩阵进行乘法运算。
当然,本实施例也可应用至2元知识图谱。具体地,表征2元知识图谱的张量
Figure BDA0002456104930000086
将为3阶,分别对应关系r、头实体h和尾实体t;初始化的核张量
Figure BDA0002456104930000087
为3阶。给定的3元组事实可从关系和实体的嵌入向量矩阵中选择对应的嵌入向量,接着,可与核张量进行张量积运算,以最终得到对应的事实评分。
S4,根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
应当理解的是,在得到与分解后的张量对应的事实得分后,可基于该事实得分更新与预设知识图谱嵌入模型对应的嵌入向量。最终,可基于更新后的嵌入向量识别缺失部分。
其中,嵌入向量可具体指嵌入向量矩阵R与嵌入向量矩阵E。
进一步地,本实施例还可对缺失部分进行嵌入操作。
其中,本实施例使用的用于实施嵌入操作的知识图谱嵌入模型,具体为,基于张量分解的预设知识图谱嵌入模型。
本发明实施例提供的基于张量分解的知识图谱嵌入方法,先获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;对所述张量进行Tucker分解,以得到分解后的张量;确定与分解后的张量对应的事实得分;根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。明显地,本发明实施例提供了一种较好的面向N元知识图谱的嵌入方式,具体地,将在知识图谱嵌入操作上结合进张量分解操作,最终可提高嵌入操作的准确性;同时,还大大降低了参数复杂度,提高了运行效率。
图2为本发明又一实施例提供的一种基于张量分解的知识图谱嵌入方法的流程图,本发明又一实施例基于上述图1所示的实施例。
本实施例中,所述获取当前知识图谱对应的张量之后,所述基于张量分解的知识图谱嵌入方法还包括:
确定作为正样本集的所述张量中的目标正样本;
将所述目标正样本中的预设元实体替换为实体集中的实体样本,以得到负样本;
相应地,所述对所述张量进行Tucker分解,以得到分解后的张量,具体包括:
对所述正样本集与由所述负样本构成的负样本集进行Tucker分解,以得到分解后的张量。
可以理解的是,考虑到给定的N元知识图谱仅能反应现实世界中成立的事实,即正样本,在训练时还可引入负样本,负样本指的是在现实中不成立的事实。所以,下文可提及一类负样本集的构造方法。
就负样本集的构造方法而言,例如,就正样本集中的一个N元事实而言,即就一个正样本而言,可将该正样本记为
Figure BDA0002456104930000091
基于局部闭世界假设,可先认为所有未观测到的事实均不成立,实体集则为额外引入的实体样本构成的集合。
接着,可将该正样本集中的某个正样本即目标正样本中的某个预设元实体替换为一个实体样本。其中,实体集可记为ε,表示所有实体的集合。
其中,预设元实体可为第1元实体、第2元实体等。
比如,对于每一个正样本即每一个N元事实,可将其中一元的实体替换为实体集中的其他实体,得到了若干个负样本。
实验过程中,可将第1元实体替换得到x-1个负样本,其中,x表示实体集包含的实体数量;可将第2元实体替换得到x-1个负样本,以此类推,可将第N元实体替换得到x-1个负样本。
因此,针对一个正样本,一共可构造出N*(x-1)个负样本。
最后,在Tucker分解时,可将负样本集和正样本集一起用一个张量表示。
具体地,可将该正样本中的
Figure BDA0002456104930000101
替换为ε中的某个实体,比如,可构成第一组负样本集
Figure BDA0002456104930000102
其中,
Figure BDA0002456104930000103
Figure BDA0002456104930000104
同理,可构造出第二组负样本集
Figure BDA0002456104930000105
直到构建出第N组负样本集
Figure BDA0002456104930000106
其中,
Figure BDA0002456104930000107
Figure BDA0002456104930000108
因此,正样本集
Figure BDA0002456104930000109
对应的负样本集可有多个,具体为:
Figure BDA0002456104930000111
应当理解的是,后续的张量分解操作不仅可面向正样本集,还可面向负样本集;同样地,分解出的张量包括正样本集对应的分解出的张量,也包括负样本集对应的分解出的张量。同理,事实得分也包括与这两者分别对应的事实得分。
更进一步地,在获得事实得分后,还设置与事实得分对应的分数阈值。若事实得分大于等于分数阈值,则认为给定元组可构成N元知识图谱中的链接。其中,事实得分与事实成立的可能性呈正相关。
更进一步地,可见,N元知识图谱的补全问题还可简化链接预测问题,具体表示为如下形式:已知一个有缺失的N元知识图谱,包含的实体集可记为ε,关系集合可记为
Figure BDA0002456104930000112
其中,已知的N元关系事实可表示为多个N+1元组的集合
Figure BDA0002456104930000113
其中i表示第i条事实,
Figure BDA0002456104930000114
至于链接预测问题,链接预测任务将根据观测到的事实推断N元知识图谱中缺失的事实,比如,预测
Figure BDA0002456104930000115
中缺失的第1个实体。
可见,本实施例通过对输入N元知识图谱蕴含信息的学习,获取实体和关系的嵌入表征,提高了链接预测准确度,进而完成针对整个N元知识图谱的补全操作。
本发明实施例提供的基于张量分解的知识图谱嵌入方法,通过提供一类负样本集的构造方法,在进行知识图谱的嵌入时可根据正负样本同时进行训练。
更进一步地,就Tucker分解操作而言,至于
Figure BDA0002456104930000121
是否成立,可依据
Figure BDA0002456104930000122
中第(ir,i1,i2,…,iN)个元素的值即
Figure BDA0002456104930000123
来判定。
更进一步地,至于N元知识图谱的补全问题也可视为,在已知一个N+1阶张量中的部分元素值(即,观测到的事实)的前提下如何补全张量缺失的元素(即,未观测到的事实)。
在上述实施例的基础上,优选地,所述S2之前,所述基于张量分解的知识图谱嵌入方法还包括:
S21,获取初始核张量。
S22,对所述初始核张量进行变形,以得到当前变形核张量。
在具体实现中,可初始化k个3阶张量,通过环式逆分解和变形得到外层Tucker分解需要的核张量。其中,k个3阶张量可记为初始核张量,最终得到的核张量可记为待使用核张量。
在具体实现中,为了获得Tucker分解后的N+1阶张量中的待使用核张量
Figure BDA0002456104930000124
可利用张量环式分解带来的参数数量优越性,本实施例可先将初始核张量变形为更高阶的k阶变形核张量
Figure BDA0002456104930000125
也可称为当前变形核张量,其尺寸为n1×n2×…×nk并且满足
Figure BDA0002456104930000126
S23,对所述当前变形核张量进行张量环式分解,以得到目标环式分解张量。
接着,可采用张量环式分解将当前变形核张量
Figure BDA0002456104930000127
分解为k个3阶张量,即,目标环式分解张量,表达式具体为,
Figure BDA0002456104930000128
Figure BDA0002456104930000129
其中,TR()表示张量环式分解操作,
Figure BDA00024561049300001210
则是TR张量组;trace{}表示矩阵求迹操作,
Figure BDA00024561049300001211
表示张量
Figure BDA00024561049300001212
沿着第2阶维度的第ij个切平面,尺寸为rj×rj+1,[r1,r2,…,rk+1]则为张量环式分解的张量秩。
S24,对所述目标环式分解张量进行张量环式逆分解,以恢复出目标变形核变量。
可以理解的是,可对k个TR张量组中的3阶张量即目标环式分解张量进行张量环式逆分解,以恢复为一个k阶变形核张量,即目标变形核变量。
S25,对所述目标变形核变量进行逆变形,以得到待使用核张量。
相应地,所述S2,具体包括:
S26,基于所述待使用核张量对所述张量进行Tucker分解,以得到分解后的张量。
最终,可通过逆变形操作得到一个新的N+1阶核张量,新的核张量作为分解后的张量中的一部分将进行后续的事实得分的确定操作。
比如,在得到新的核张量即待使用核张量后,可再次基于待使用核张量对所述张量进行Tucker分解,以得到分解后的张量。接着,确定与分解后的张量对应的事实得分。
可见,待使用核张量可与实体、关系嵌入向量共同完成Tucker分解,以最终计算对应N元关系的事实得分。
明显地,本实施例可基于Tucker和张量环式进行联合分解,从而大大提高了运算效率。
本发明实施例提供的基于张量分解的知识图谱嵌入方法,给出了一种Tucker分解后的张量中的核张量这一因子的确定方式。
图3为本发明再一实施例提供的一种基于张量分解的知识图谱嵌入方法的流程图,本发明再一实施例基于上述图2所示的实施例。
本实施例中,所述S4,具体包括:
S41,根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新。
S42,通过更新后的嵌入向量与所述目标环式分解张量进行所述当前知识图谱的嵌入操作。
可以理解的是,图1对应的本发明实施例、图2对应的本发明又一实施例,通过将实体和关系嵌入到低维连续向量空间,可在预设知识图谱嵌入模型的外层通过Tucker分解刻画出实体和关系之间的交互作用。
基于上述技术内容,图3对应的本实施例为了更进一步地降低Tucker分解出的内部核心张量的指数级别的参数复杂度,可在预设知识图谱嵌入模型的内层采用张量环式分解(TR Decomposition,Tensor Ring Decomposition)将核心张量用若干个3阶张量运算替代,进而极大地降低了参数复杂度。
其中,核心张量即为核张量。
应当理解的是,仅基于Tucker分解的N元知识图谱嵌入操作的参数复杂度会受到核张量
Figure BDA0002456104930000141
的限制,由上文可知,N元知识图谱的嵌入向量维度可记为de、dr,核张量
Figure BDA0002456104930000142
的参数复杂度可记为
Figure BDA0002456104930000143
明显地,这与知识图谱元数呈指数关系,在实际应用中难以满足。但是,本实施例可较好地应对这一状况,本实施例极大地降低了参数复杂度。
最终,在进行嵌入操作时,不仅将基于嵌入向量,还基于该目标环式分解张量。
本发明实施例提供的基于张量分解的知识图谱嵌入方法,可在预设知识图谱嵌入模型的内层采用张量环式分解将核张量用若干个3阶张量运算替代,进而极大地降低了参数复杂度。
在上述实施例的基础上,优选地,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作,具体包括:
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新;
若累计的更新次数大于等于预设迭代次数,则通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
可以理解的是,本实施例可进行多次迭代更新,以达成对于预设知识图谱嵌入模型的训练。
进一步地,若累计的更新次数大于等于预设迭代次数,则可返回执行所述对所述张量进行Tucker分解,以得到分解后的张量的步骤。
在上述实施例的基础上,优选地,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新,具体包括:
通过预设损失函数处理所述事实得分,以得到指标值;
以所述指标值为基准采用梯度下降算法对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新。
在具体实现中,在获得样本集对应的事实得分后,比如,可将一样本集
Figure BDA0002456104930000151
的事实得分记为
Figure BDA0002456104930000152
接着,使用预设损失函数进行处理,预设损失函数的表达式如下:
Figure BDA0002456104930000153
此外,考虑到一个N元关系可能缺失的实体位于N个位置,因此对应的预设损失函数可由N部分组成。
其中,
Figure BDA0002456104930000161
表示第m个位置的实体缺失时的损失函数值,损失函数值即为指标值。
接着,可以指标值为基准采用梯度下降算法对与预设知识图谱嵌入模型对应的嵌入向量与目标环式分解张量进行更新。
其中,此时的目标环式分解张量即为TR张量组。
为了理解上述实施例所反应的技术内容,此处可提供多个涉及到具体数据处理的实施方式。
实施方式一,如下:
可在JF7K和WikiPeople上通过对比进行实验验证。这两个公开的N元知识图谱数据集,分别由Freebase和Wikidata中的关系事实构成。所有的训练集由训练集、验证集和测试集组成。
具体的每个数据集分为3元和4元两个子数据集,即3元知识图谱数据集JF17K-3、WikiPeople-3和4元知识图谱数据集JF17K-4、WikiPeople-4。如下表1给出了数据集的统计信息。
表1.JF17K和WikiPeople数据集的统计信息
Figure BDA0002456104930000162
下面以JF17K-3为例介绍实施方式一学习N元知识图谱嵌入并完成链接预测的过程,具体步骤下:
(1)先对输入的3元知识图谱进行初始化,即针对数据集中的11541个实体分别随机生成一个低维向量,长度为de;104个关系分别随机生成一个低维向量,长度为dr。根据初始输入的相关参数,对TR张量组初始化,随机生成k个3阶张量,每个张量的尺寸由输入的张量秩[r1,r2,…,rk+1]确定。
(2)将训练集
Figure BDA0002456104930000171
中的27635条记录等分为若干批,每小批数据记为
Figure BDA0002456104930000172
按顺序取1小批数据用于训练。
(3)针对
Figure BDA0002456104930000173
中的每个4元组数据构造负样本,替换掉其中第1个位置的实体构造相应的负样本集合
Figure BDA0002456104930000174
Figure BDA0002456104930000175
Figure BDA0002456104930000176
替换掉其中第2个位置的实体构造负样本集合
Figure BDA0002456104930000177
Figure BDA0002456104930000178
Figure BDA00024561049300001718
替换掉其中第3个位置的实体构造负样本集合
Figure BDA0002456104930000179
Figure BDA00024561049300001710
Figure BDA00024561049300001711
(4)同时,对于初始化的TR张量组
Figure BDA00024561049300001712
根据下式进行张量环式逆分解,得到k阶变形核张量,
Figure BDA00024561049300001713
(5)为了将变形核张量用于外层的Tucker计算评分,通过变形操作将其变为4阶核张量
Figure BDA00024561049300001714
(6)结合嵌入向量和恢复的核张量
Figure BDA00024561049300001719
对于样本计算其事实得分,表达式如下,
Figure BDA00024561049300001716
基于上式对
Figure BDA00024561049300001717
中所有样本计算事实得分。
(7)根据
Figure BDA0002456104930000181
中样本的得分计算如下式的损失函数,并采用梯度下降算法对嵌入向量和TR张量组进行参数更新,
Figure BDA0002456104930000182
(8)重复(2)-(7)步骤,完成在整个训练集上的1次迭代,在验证集完成链接预测任务,计算平均倒数排名(MRR,Mean Reciprocal Rank)。
即,针对验证集中的每一条事实
Figure BDA0002456104930000183
在预测第1个位置缺失实体时,计算
Figure BDA0002456104930000184
中所有事实的得分并降序排列,相当于计算了ne条事实的得分,查找
Figure BDA0002456104930000185
对应的得分位置Rank,则该条事实的倒数排名为1/Rank。
通过对每个位置缺失实体计算倒数排名,最终得到整个验证集的MRR,MRR越大表明正确缺失实体排名越靠前,链接预测准确性越高。特别地,在计算MRR指标时,可过滤掉数据中除测试事实外已观测到的正样本,即filter MRR。
(9)如果验证集上的MRR指标连续给定次迭代不上升或总迭代次数达到给定限制,则停止训练。否则,重复(2)-(8)步骤。
(10)模型训练完毕后,在测试集上完成链接预测任务,具体操作与(8)一致。
可以理解的是,本实验可与目前效果最好的神经网络方法NaLP、基于平移距离方法RAE、简单的基于CP分解的张量分解方法n-CP以及基于Tucker分解的张量分解方法n-TuckER进行比较。
具体比较指标为MRR、前10命中率(Hits@10)、前3命中率(Hits@3)及前1命中率(Hits@1)。其中,前10命中率是计算所有测试样本的得分在与其他实体组成的样本评分排序中位于前10位的比例,相应地,前3命中率和前1命中率分别代表位于前3位和前1位的比例。
从表2和表3可以发现,本实验即实施方式一提出的基于张量分解的N元知识图谱嵌入方法相比于基线方法有明显优势。
表2.JF17K数据集链接预测结果比较
Figure BDA0002456104930000191
表3.WikiPeople数据集链接预测结果比较
Figure BDA0002456104930000192
图4为本发明实施例提供的一种基于张量分解的知识图谱嵌入系统的结构示意图,如图4所示,该系统包括:张量获取模块301、张量分解模块302、计分模块303及图谱嵌入模块304
张量获取模块301,用于获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
张量分解模块302,用于对所述张量进行Tucker分解,以得到分解后的张量;
计分模块303,用于确定与分解后的张量对应的事实得分;
图谱嵌入模块304,用于根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
本发明实施例提供的基于张量分解的知识图谱嵌入系统,先获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;对所述张量进行Tucker分解,以得到分解后的张量;确定与分解后的张量对应的事实得分;根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。明显地,本发明实施例提供了一种较好的面向N元知识图谱的嵌入方式,具体地,将在知识图谱嵌入操作上结合进张量分解操作,最终可提高嵌入操作的准确性;同时,还大大降低了参数复杂度,提高了运行效率。
本发明实施例提供的系统实施例是为了实现上述各方法实施例的,具体流程和详细内容请参照上述方法实施例,此处不再赘述。
图5为本发明实施例提供的一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和总线404,其中,处理器401,通信接口402,存储器403通过总线404完成相互间的通信。通信接口402可以用于电子设备的信息传输。处理器401可以调用存储器403中的逻辑指令,以执行包括如下的方法:
获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
对所述张量进行Tucker分解,以得到分解后的张量;
确定与分解后的张量对应的事实得分;
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明上述各方法实施例的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:
获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
对所述张量进行Tucker分解,以得到分解后的张量;
确定与分解后的张量对应的事实得分;
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种基于张量分解的知识图谱嵌入方法,其特征在于,包括:
获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
对所述张量进行Tucker分解,以得到分解后的张量;
确定与分解后的张量对应的事实得分;
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
2.根据权利要求1所述的基于张量分解的知识图谱嵌入方法,其特征在于,所述获取当前知识图谱对应的张量之后,所述基于张量分解的知识图谱嵌入方法还包括:
确定作为正样本集的所述张量中的目标正样本;
将所述目标正样本中的预设元实体替换为实体集中的实体样本,以得到负样本;
相应地,所述对所述张量进行Tucker分解,以得到分解后的张量,具体包括:
对所述正样本集与由所述负样本构成的负样本集进行Tucker分解,以得到分解后的张量。
3.根据权利要求1所述的基于张量分解的知识图谱嵌入方法,其特征在于,所述对所述张量进行Tucker分解,以得到分解后的张量之前,所述基于张量分解的知识图谱嵌入方法还包括:
获取初始核张量;
对所述初始核张量进行变形,以得到当前变形核张量;
对所述当前变形核张量进行张量环式分解,以得到目标环式分解张量;
对所述目标环式分解张量进行张量环式逆分解,以恢复出目标变形核变量;
对所述目标变形核变量进行逆变形,以得到待使用核张量;
相应地,所述对所述张量进行Tucker分解,以得到分解后的张量,具体包括:
基于所述待使用核张量对所述张量进行Tucker分解,以得到分解后的张量。
4.根据权利要求3所述的基于张量分解的知识图谱嵌入方法,其特征在于,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作,具体包括:
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新;
通过更新后的嵌入向量与所述目标环式分解张量进行所述当前知识图谱的嵌入操作。
5.根据权利要求4所述的基于张量分解的知识图谱嵌入方法,其特征在于,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新,具体包括:
通过预设损失函数处理所述事实得分,以得到指标值;
以所述指标值为基准采用梯度下降算法对与预设知识图谱嵌入模型对应的嵌入向量与所述目标环式分解张量进行更新。
6.根据权利要求1所述的基于张量分解的知识图谱嵌入方法,其特征在于,所述根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作,具体包括:
根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新;
若累计的更新次数大于等于预设迭代次数,则通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
7.根据权利要求1至6中任一项所述的基于张量分解的知识图谱嵌入方法,其特征在于,所述分解后的张量包括核张量、与关系对应的嵌入向量矩阵及与实体对应的嵌入向量矩阵。
8.一种基于张量分解的知识图谱嵌入系统,其特征在于,包括:
张量获取模块,用于获取当前知识图谱对应的张量,其中,所述当前知识图谱为N元知识图谱,N为大于等于2的整数;
张量分解模块,用于对所述张量进行Tucker分解,以得到分解后的张量;
计分模块,用于确定与分解后的张量对应的事实得分;
图谱嵌入模块,用于根据所述事实得分对与预设知识图谱嵌入模型对应的嵌入向量进行更新,通过更新后的嵌入向量进行所述当前知识图谱的嵌入操作。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7中任一项所述基于张量分解的知识图谱嵌入方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述基于张量分解的知识图谱嵌入方法的步骤。
CN202010306913.1A 2020-04-17 2020-04-17 基于张量分解的知识图谱嵌入方法、系统及设备 Active CN111680162B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010306913.1A CN111680162B (zh) 2020-04-17 2020-04-17 基于张量分解的知识图谱嵌入方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010306913.1A CN111680162B (zh) 2020-04-17 2020-04-17 基于张量分解的知识图谱嵌入方法、系统及设备

Publications (2)

Publication Number Publication Date
CN111680162A true CN111680162A (zh) 2020-09-18
CN111680162B CN111680162B (zh) 2023-10-03

Family

ID=72451658

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010306913.1A Active CN111680162B (zh) 2020-04-17 2020-04-17 基于张量分解的知识图谱嵌入方法、系统及设备

Country Status (1)

Country Link
CN (1) CN111680162B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148891A (zh) * 2020-09-25 2020-12-29 天津大学 一种基于图感知张量分解的知识图谱补全方法
CN112671792A (zh) * 2020-12-29 2021-04-16 西安电子科技大学 一种基于张量分解与知识图谱的网络事件提取方法及系统
US11797507B2 (en) 2022-03-16 2023-10-24 Huazhong University Of Science And Technology Relation-enhancement knowledge graph embedding method and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528610A (zh) * 2016-09-28 2017-03-22 厦门理工学院 一种基于路径张量分解的知识图谱表示学习方法
US20170168991A1 (en) * 2015-12-10 2017-06-15 Significs And Elements, Llc Systems and methods for selective expansive recursive tensor analysis
EP3573012A1 (en) * 2018-05-22 2019-11-27 Siemens Aktiengesellschaft Platform for selection of items used for the configuration of an industrial system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170168991A1 (en) * 2015-12-10 2017-06-15 Significs And Elements, Llc Systems and methods for selective expansive recursive tensor analysis
CN106528610A (zh) * 2016-09-28 2017-03-22 厦门理工学院 一种基于路径张量分解的知识图谱表示学习方法
EP3573012A1 (en) * 2018-05-22 2019-11-27 Siemens Aktiengesellschaft Platform for selection of items used for the configuration of an industrial system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
官赛萍 等: "面向知识图谱的知识推理研究进展" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148891A (zh) * 2020-09-25 2020-12-29 天津大学 一种基于图感知张量分解的知识图谱补全方法
CN112671792A (zh) * 2020-12-29 2021-04-16 西安电子科技大学 一种基于张量分解与知识图谱的网络事件提取方法及系统
CN112671792B (zh) * 2020-12-29 2022-08-23 西安电子科技大学 一种基于张量分解与知识图谱的网络事件提取方法及系统
US11797507B2 (en) 2022-03-16 2023-10-24 Huazhong University Of Science And Technology Relation-enhancement knowledge graph embedding method and system

Also Published As

Publication number Publication date
CN111680162B (zh) 2023-10-03

Similar Documents

Publication Publication Date Title
CN112567355B (zh) 用于知识库补全的端到端的结构感知卷积网络
CN111680162A (zh) 基于张量分解的知识图谱嵌入方法、系统及设备
CN106934042B (zh) 一种知识图谱表示系统及其实施方法
CN110442516B (zh) 信息处理方法、设备及计算机可读存储介质
CN112434169B (zh) 一种知识图谱的构建方法及其系统和计算机设备
CN111563192B (zh) 实体对齐方法、装置、电子设备及存储介质
CN109739995B (zh) 一种信息处理方法及装置
US11520756B2 (en) Data reduction in multi-dimensional computing systems including information systems
CN113239168B (zh) 一种基于知识图谱嵌入预测模型的可解释性方法和系统
US20160098437A1 (en) Information retrieval method and apparatus
CN115423037B (zh) 一种基于大数据的用户分类方法及系统
CN116166812A (zh) 知识图谱补全方法、装置、电子设备和存储介质
CN116010226A (zh) 软件系统可靠性仿真评估方法、装置和计算机设备
CN116090522A (zh) 一种基于因果反馈的缺失数据集因果关系发现方法及系统
CN114417161B (zh) 基于异构图的虚拟物品时序推荐方法、装置、介质及设备
CN114996490A (zh) 电影推荐方法、系统、存储介质及设备
CN116258923A (zh) 图像识别模型训练方法、装置、计算机设备和存储介质
CN116108189A (zh) 一种基于四元数的知识图谱嵌入方法及系统
CN110210691B (zh) 资源推荐方法、装置、存储介质及设备
US20220027722A1 (en) Deep Relational Factorization Machine Techniques for Content Usage Prediction via Multiple Interaction Types
CN110032445B (zh) 大数据聚集计算方法及装置
CN114020923A (zh) 基于无监督类型约束的上下文感知知识补全方法及系统
CN108805290B (zh) 一种实体类别的确定方法及装置
CN113505838B (zh) 一种图像聚类方法、装置、电子设备及存储介质
CN111783711B (zh) 基于身体部件层面的骨架行为识别方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant