知识图谱摘要的生成方法及系统与流程

专利2022-06-29  96


本发明实施例涉及计算机技术领域,尤其涉及一种知识图谱摘要的生成方法、系统、计算机设备及存储介质。



背景技术:

规模庞大的知识图谱具有数亿个顶点和数亿个边。对于这样一个大规模的图结构数据网络,内存不能直接加载并处理。现有的大多数算法对于这类庞大的图结构数据网络也不能有效的处理,尤其是涉及到图的流实时分析决策时,无法将决策后的用户需要的信息及时反馈。大规模知识图谱的这些特点使得用户难以直接管理,给数据网络分析和数据挖掘带来了挑战。

故,本方案旨在解决无法对大规模的知识图谱实现有效管理、分析和挖掘的问题。



技术实现要素:

有鉴于此,本发明实施例提供了一种知识图谱摘要的生成方法、系统、计算机设备及计算机可读存储介质,能够在保持知识图谱性质不变的基础上,挖掘出知识图谱中实体间隐藏的复杂关系,并将具有相似性的实体进行合并,以消除它们之间的连接关系,从而减少知识图谱占用的存储空间。存储空间减少后的知识图谱可以更快地加载到内存中,从而提高对知识图谱的管理和分析的效率。

本发明实施例是通过下述技术方案来解决上述技术问题:

一种知识图谱摘要的生成方法,包括:

获取知识图谱、所述知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和所述知识图谱摘要的预设节点结构相似度权重,其中,所述知识图谱包括多个节点、所述多个节点的属性值、所述多个节点在所述知识图谱中的结构和所述多个节点间的连接关系,所述多个节点包括第一类型节点和第二类型节点;

根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点,其中,所述每一对节点指的是具有所述连接关系的两个节点;

将所述至少两个节点合并成一个所述第二类型节点,并将所述知识图谱进行更新以得到目标知识图谱;

统计所述目标知识图谱的节点数量,并将所述节点数量与所述预设节点数量进行比较;

当所述节点数量小于所述预设节点数量时,则确定所述目标知识图谱为所述知识图谱摘要。

进一步地,所述将所述节点数量与所述预设节点数量进行比较之后,还包括:

当所述节点数量不小于所述预设节点数量时,则继续根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点。

进一步地,所述根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,包括:

判断所述每一对节点中的两个节点的节点类型;

当所述两个节点皆为第一类型节点时,则将所述两个节点的结构关系按照公式进行计算,以得到所述两个节点的结构相似度,其中,vi表示第一类型节点i,vj表示第一类型节点j,simst(vi,vj)表示vi和vj的结构相似度值,w表示所述知识图谱的邻接矩阵,ifw[i][j]=0表示所述第一类型节点i与所述第一类型节点j不具有连接关系,ifw[i][j]=1表示所述第一类型节点i与所述第一类型节点j具有连接关系;

将所述两个节点的属性值按照公式进行计算,以得到所述两个节点的属性相似度,其中,αh表示所述两个节点的第h个属性,αh为单值或多值,ch表示αh的重要性程度,c表示所述节点属性重要性权值向量,c={c1,c2,…,ch,…ck},simsi(vi,vj,αh)表示所述两个节点基于αh的属性相似度值,0≤ch≤1,且

将所述两个节点的结构相似度和所述两个节点的属性相似度按照公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)进行计算,以得到所述两个节点的相似度,其中,sim(vi,vj)表示所述两个节点的相似度值,α表示所述知识图谱摘要的预设节点结构相似度权重。

进一步地,所述将所述两个节点的属性值按照公式进行计算,包括:

将所述两个节点的属性值按照公式进行计算,以得到所述属性相似度值,其中,val(vi,αh)表示节点vi的第h个属性的值,val(vj,αh)表示节点vj的第h个属性的值,|vals(vi,αh)∩vals(vj,αh)|表示所述节点vi与所述节点vj属性值的交集,|vals(vi,αh)∪vals(vj,αh)|表示所述节点vi与所述节点vj属性值的并集。

进一步地,所述判断所述每一对节点中的两个节点的节点类型之后,还包括:

当判断所述两个节点分别为第一类型节点和第二类型节点时,则将所述两个节点的结构关系按照公式进行计算,以得到所述结构相似度,其中,vi表示第二类型节点i,vj表示第一类型节点j,simst(vi,vj)表示第二类型节点vi和第一类型节点vj的结构相似度值,u∈vi表示所述第二类型节点vi中的第一类型节点u,(u,vj)∈e表示所述第一类型节点u和所述第一类型节点vj具有连接关系,|{u|u∈viand(u,vj)∈e}|表示所述第二类型节点vi中与所述第一类型节点vj具有连接关系的第一类型节点的个数,|vi|表示所述第二类型节点vi中第一类型节点的个数;

将所述两个节点的属性值按照公式进行计算,以得到所述属性相似度,其中,simsi(vi,vj,αh)表示所述第二类型节点vi和所述第一类型节点vj基于属性αh的相似度值;

将所述结构相似度和所述属性相似度按照公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)进行计算,以得到所述相似度,其中,sim(vi,vj)表示所述第二类型节点vi和所述第一类型节点vj的相似度值。

进一步地,所述将所述两个节点的属性值按照公式进行计算,包括:

将所述第二类型节点vi和所述第一类型节点vj的属性值按照公式进行计算,以得到所述第二类型节点vi和所述第一类型节点vj基于属性αh的属性相似度值,其中,val(u,αh)=val(vj,αh)表示所述第一类型节点u的αh属性值和所述第一类型节点vj的αh属性值相同,|{u|u∈viandval(u,αh)=val(vj,αh)}|表示所述第二类型节点vi中αh属性值和所述第一类型节点vj的αh属性值相同的第一类型节点个数。

进一步地,所述判断所述每一对节点中的两个节点的节点类型之后,还包括:

当判断所述两个节点皆为第二类型节点时,则将所述两个节点的结构关系和属性值按照公式进行计算,以得到所述两个节点的相似度,其中,vp表示第二类型节点p,vq表示第二类型节点q,sim(vp,vq)表示第二类型节点vp和第二类型节点vq的相似度值,|vq|表示所述第二类型节点q中第一类型节点的个数,v∈vq表示所述第二类型节点q中的第一类型节点v,sim(vp,v)表示所述第二类型节点vp和所述第一类型节点v的相似度。

进一步地,所述将所述至少两个节点合并成一个第二类型节点,包括:

删除所述至少两个节点之间的连接关系,并将所述至少两个节点合并成一个所述第二类型节点。

为了实现上述目的,本发明实施例还提供一种知识图谱摘要的生成系统,包括:

获取模块,用于获取知识图谱、所述知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和所述知识图谱摘要的预设节点结构相似度权重,其中,所述知识图谱包括多个节点、所述多个节点的标签和所述多个节点间的连接关系,所述多个节点包括第一类型节点和第二类型节点;

计算模块,用于根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点,其中,所述每一对节点指的是具有所述连接关系的两个节点;

合并模块,用于将所述至少两个节点合并成一个所述第二类型节点,并将所述知识图谱进行更新以得到目标知识图谱;

统计模块,用于统计所述目标知识图谱的节点数量,并将所述节点数量与所述预设节点数量进行比较;

确定模块,用于当所述节点数量小于所述预设节点数量时,确定所述目标知识图谱为所述知识图谱摘要。

为了实现上述目的,本发明实施例还提供一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述知识图谱摘要的生成方法的步骤。

为了实现上述目的,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的知识图谱摘要的生成方法的步骤。

本发明实施例提供的知识图谱摘要的生成方法、系统、计算机设备及计算机可读存储介质,通过将原始知识图谱中具有相似性的节点进行合并,以得出一组简洁的知识图谱摘要,用来阐明原始知识图谱的主要结构信息或变化趋势,代替原始知识图谱进行数据分析。本发明实施例不仅揭示了原始知识图谱中的实体之间隐藏的复杂关系,还保持了原始知识图谱的性质,从而减少知识图谱的存储空间,提高知识图谱的管理和分析效率。

以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。

附图说明

图1为本发明实施例一之知识图谱摘要的生成方法的步骤流程图;

图2为本发明实施例二之知识图谱摘要的生成系统的程序模块示意图;

图3为本发明实施例三之计算机设备的硬件结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

实施例一

请参阅图1,示出了本发明实施例一之知识图谱摘要的生成方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。下面以计算机设备为执行主体进行示例性描述,具体如下:

步骤s100,获取知识图谱、所述知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和所述知识图谱摘要的预设节点结构相似度权重,其中,所述知识图谱包括多个节点、所述多个节点的属性值、所述多个节点在所述知识图谱中的结构和所述多个节点间的连接关系,所述多个节点包括第一类型节点和第二类型节点。

具体的,知识图谱g是一个有向的带标签的图(v,e,l),其中v是一组节点,e∈v×v是一组边。每个节点v∈v表示一个带有标签l(v)的实体,标签l(v)可以包含实体的类型、名称和属性值的内容。每条边e∈e表示两个实体之间的关系l(e)。

所述知识图谱的节点属性重要性权值向量c指的是由所述实体的每个属性的重要性程度组成的向量,c={c1,c2,…,ch,…ck},其中,ck指的是实体的第k个属性的重要性程度值。所述知识图谱摘要p是知识图谱的一个图摘要,p是一个有向的连通图(vp,ep,lp),vp是图摘要节点,ep∈vp×vp为图摘要的边。每个节点u∈vp有标签lp(u),每条边e∈ep有标签lp(e)。g的知识图谱摘要p,表示为gp,是g的一个子图,可以通过如下操作生成:对某些点u∈vp,e∈ep,生成并集和并集

所述预设节点数量k指的期望的知识图谱摘要中的节点数量;所述结构相似度权重α指的是知识图谱摘要节点间的连接关系的权重。

需要说明的是,所述节点包括单节点和超节点,所述单节点指的是由一个实体及其标签组成的节点,例如上例所述的v∈v;所述超节点指的是由至少两个实体及其标签组成的节点,例如上例所述的u∈vp,其中,所述单节点即所述第一类型节点,所述超节点即所述第二类型节点。

步骤s102,根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点,其中,所述每一对节点指的是具有所述连接关系的两个节点。

具体的,在初始的知识图谱中,每一个节点都是单节点,将相似度最高的单节点合并之后,就会存在超节点。而单节点与单节点、单节点与超节点和超节点与超节点之间相似度计算的方法各不相同,因此需要先判断节点的类型,再根据不同的节点类型采用不同的计算方式。

在一较佳实施例中,当所述两个节点皆为单节点时,按照以下方式计算两个节点的相似度。根据公式计算所述两个节点的结构相似度,其中,vi表示单节点i,vj表示单节点j,simst(vi,vj)表示vi和vj的结构相似度值,w表示所述知识图谱的邻接矩阵,ifw[i][j]=0表示i与j不具有连接关系,ifw[i][j]=1表示i与j具有连接关系。

根据公式计算所述两个节点的属性相似度,其中,αh表示所述两个节点的第h个属性,αh为单值或多值。例如,社交网络中的一个节点表示一个人,其属性有“性别”和“语言”等,前者是一个单值属性(男或女,只有一个值),后者是一个多值属性(汉语、英语、西班牙语、…)。ch表示αh的重要性程度,c表示所述节点属性重要性权值向量,c={c1,c2,…,ch,…ck},simsi(vi,vj,αh)表示所述两个节点基于αh的属性相似度值,0≤ch≤1,且所述两个节点基于αh的属性相似度值则通过公式计算得到,其中,val(vi,αh)表示节点vi的第h个属性的值,val(vj,αh)表示节点vj的第h个属性的值,|vals(vi,αh)∩vals(vj,αh)|表示当αh为多值时节点vi与vj属性值的交集,|vals(vi,αh)∪vals(vj,αh)|表示当αh为多值时节点vi与vj属性值的并集。示例性的,αh为多值属性,在节点vi和vj上的值分别{a,b}和{b,c},则有val(vi,αh)={a,b},val(vj,αh)={b,c},两个节点基于属性αh的相似度为

计算出两个节点的结构相似度和属性相似度后,则将所述两个节点的结构相似度和属性相似度按照公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)进行计算,以得到所述两个节点的相似度,其中,sim(vi,vj)表示所述两个节点的相似度值,α表示所述知识图谱摘要的预设节点结构相似度权重。

在一较佳实施例中,当所述两个节点分别为单节点和超节点时,则根据公式计算所述两个节点的结构相似度,其中,vi表示超节点i,vj表示单节点j,simst(vi,vj)表示vi和vj的结构相似度值,u∈vi表示超节点vi中的单节点,(u,vj)∈e表示u和vj具有连接关系,|{u|u∈viand(u,vj)∈e}|表示超节点vi中与vj具有连接关系的单节点的个数,|vi|表示超节点vi中单节点的个数。

根据公式计算所述两个节点的属性相似度,其中simsi(vi,vj,αh)表示超节点vi和单节点vj基于属性αh的相似度值。而超节点vi和单节点vj基于属性αh的相似度值则通过公式计算得到,其中,val(u,αh)=val(vj,αh)表示单节点u的αh属性值和单节点vj的αh属性值相同,|{u|u∈viandval(u,αh)=val(vj,αh)}|表示超节点vi中αh属性值和单节点vj的αh属性值相同的单节点个数。

最后根据公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)计算vi和vj的相似度,其中,sim(vi,vj)表示vi和vj的相似度值。

在另一较佳实施例中,当判断所述两个节点皆为超节点时,则根据公式计算所述两个节点的相似度。其中,vp表示超节点p,vq表示超节点q,sim(vp,vq)表示vp和vq的相似度值,|vq|表示超节点q中单节点的个数,v∈vq表示超节点q中的单节点v,sim(vp,v)表示vp和v的相似度。需要说明的是,计算两个超节点的相似度时,因为sim(vp,v)的计算已经包含了结构相似度的计算,因此无需再单独进行结构相似度的计算,只需计算一个超节点与另一个超节点中的单节点的相似度即可。

步骤s104,将所述至少两个节点合并成一个所述第二类型节点,并将所述知识图谱进行更新以得到目标知识图谱。

具体的,计算得到相似度最大的两个或两个以上的节点后,则将这些相似度最大的节点合并成一个超节点,并对知识图谱进行更新。需要说明的是,合并就是节点之间的边消去,将所有节点的实体放到一个超节点中去;单节点和单节点可以合并成一个超节点,单节点和超节点可以成一个超节点,超节点和超节点也可以合并成一个超节点。

步骤s106,统计所述目标知识图谱的节点数量,并将所述节点数量与所述预设节点数量进行比较。

具体的,统计知识图谱中单节点和超节点的数量之和n,并将其与所述预设节点数量k进行比较。

步骤s108,当所述节点数量小于所述预设节点数量时,则确定所述目标知识图谱为所述知识图谱摘要。

如果n<k,则将当前的知识图谱确认为知识图谱摘要;如果n>k,则继续计算每一对节点的相似度以将知识图谱中相似度最大的节点进行合并,直至知识图谱的n<k。

本发明实施例通过将原始知识图谱中具有相似性的节点进行合并,以得出一组简洁的知识图谱摘要,用来阐明原始知识图谱的主要结构信息或变化趋势,代替原始知识图谱进行数据分析;不仅揭示了原始知识图谱中的实体之间隐藏的复杂关系,还保持了原始知识图谱的性质,减少知识图谱中图形的存储空间,提高知识图谱的管理和分析的效率。

实施例二

请参阅图2,示出了本发明实施例二之知识图谱摘要的生成系统的程序模块示意图。所述知识图谱摘要的生成系统可以应用于计算机设备中。在本实施例中,知识图谱摘要的生成系统20可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述知识图谱摘要的生成方法。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述知识图谱摘要的生成系统20在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:

获取模块200,用于获取知识图谱、所述知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和所述知识图谱摘要的预设节点结构相似度权重,其中,所述知识图谱包括多个节点、所述多个节点的标签和所述多个节点间的连接关系,所述多个节点包括第一类型节点和第二类型节点。

具体的,知识图谱g是一个有向的带标签的图(v,e,l),其中v是一组节点,e∈v×v是一组边。每个节点v∈v表示一个带有标签l(v)的实体,标签l(v)可以包含实体的类型、名称和属性值的内容。每条边e∈e表示两个实体之间的关系l(e)。

所述知识图谱的节点属性重要性权值向量c指的是由所述实体的每个属性的重要性程度组成的向量,c={c1,c2,…,ch,…ck},其中,ck指的是实体的第k个属性的重要性程度值。所述知识图谱摘要p是知识图谱的一个图摘要,p是一个有向的连通图(vp,ep,lp),vp是图摘要节点,ep∈vp×vp为图摘要的边。每个节点u∈vp有标签lp(u),每条边e∈ep有标签lp(e)。g的知识图谱摘要p,表示为gp,是g的一个子图,可以通过如下操作生成:对某些点u∈vp,e∈ep,生成并集和并集

所述预设节点数量k指的期望的知识图谱摘要中的节点数量;所述结构相似度权重α指的是知识图谱摘要节点间的连接关系的权重。

需要说明的是,所述节点包括单节点和超节点,所述单节点指的是由一个实体及其标签组成的节点,例如上例所述的v∈v,所述超节点指的是由至少两个实体及其标签组成的节点,例如上例所述的u∈vp,其中,所述单节点即所述第一类型节点,所述超节点即所述第二类型节点。

计算模块202,用于根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点,其中,所述每一对节点指的是具有所述连接关系的两个节点。

具体的,在初始的知识图谱中,每一个节点都是单节点,将相似度最高的单节点合并之后,就会存在超节点;而单节点与单节点、单节点与超节点和超节点与超节点之间相似度计算的方法各不相同,因此所述计算模块202需要先判断节点的类型,再根据不同的节点类型采用不同的计算方式。

在一较佳实施例中,当所述两个节点皆为单节点时,所述计算模块202按照以下方式计算两个节点的相似度。按照公式计算所述两个节点的结构相似度,其中,vi表示单节点i,vj表示单节点j,simst(vi,vj)表示vi和vj的结构相似度值,w表示所述知识图谱的邻接矩阵,ifw[i][j]=0表示i与j不具有连接关系,ifw[i][j]=1表示i与j具有连接关系。

根据公式计算所述两个节点的属性相似度,其中,αh表示所述两个节点的第h个属性,αh为单值或多值。例如,社交网络中的一个节点表示一个人,其属性有“性别”和“语言”等,前者是一个单值属性(男或女,只有一个值),后者是一个多值属性(汉语、英语、西班牙语、…);ch表示αh的重要性程度,c表示所述节点属性重要性权值向量,c={c1,c2,…,ch,…ck};simsi(vi,vj,αh)表示所述两个节点基于αh的属性相似度值,0≤ch≤1,且所述两个节点基于αh的属性相似度值则通过公式计算得到,其中,val(vi,αh)表示节点vi的第h个属性的值,val(vj,αh)表示节点vj的第h个属性的值,|vals(vi,αh)∩vals(vj,αh)|表示当αh为多值时节点vi与vj属性值的交集,|vals(vi,αh)∪vals(vj,αh)|表示当αh为多值时节点vi与vj属性值的并集。示例性的,αh为多值属性,在节点vi和vj上的值分别{a,b}和{b,c},则有val(vi,αh)={a,b},val(vj,αh)={b,c},两个节点基于属性αh的相似度为

计算出两个节点的结构相似度和属性相似度后,所述计算模块202则将所述两个节点的结构相似度和属性相似度按照公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)进行计算,以得到所述两个节点的相似度,其中,sim(vi,vj)表示所述两个节点的相似度值,α表示所述知识图谱摘要的预设节点结构相似度权重。

在一较佳实施例中,当所述两个节点分别为单节点和超节点时,所述计算模块202则根据公式计算所述两个节点的结构相似度,其中,vi表示超节点i,vj表示单节点j,simst(vi,vj)表示vi和vj的结构相似度值,u∈vi表示超节点vi中的单节点,(u,vj)∈e表示u和vj具有连接关系,|{u|u∈viand(u,vj)∈e}|表示超节点vi中与vj具有连接关系的单节点的个数,|vi|表示超节点vi中单节点的个数。

根据公式计算所述两个节点的属性相似度,其中simsi(vi,vj,αh)表示超节点vi和单节点vj基于属性αh的相似度值。而超节点vi和单节点vj基于属性αh的相似度值则通过公式计算得到,其中,val(u,αh)=val(vj,αh)表示单节点u的αh属性值和单节点vj的αh属性值相同,|{u|u∈viandval(u,αh)=val(vj,αh)}|表示超节点vi中αh属性值和单节点vj的αh属性值相同的单节点个数。

最后所述计算模块202根据公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)计算vi和vj的相似度,其中,sim(vi,vj)表示vi和vj的相似度值。

在另一较佳实施例中,当判断所述两个节点皆为超节点时,所述计算模块202则根据公式计算所述两个节点的相似度。其中,vp表示超节点p,vq表示超节点q,sim(vp,vq)表示vp和vq的相似度值,|vq|表示超节点q中单节点的个数,v∈vq表示超节点q中的单节点v,sim(vp,v)表示vp和v的相似度。需要说明的是,计算两个超节点的相似度时,因为sim(vp,v)的计算已经包含了结构相似度的计算,因此无需再单独进行结构相似度的计算,只需计算一个超节点与另一个超节点中的单节点的相似度即可。

合并模块204,用于将所述至少两个节点合并成一个所述第二类型节点,并将所述知识图谱进行更新以得到目标知识图谱。

具体的,计算得到相似度最大的两个或两个以上的节点后,所述合并模块204则将这些相似度最大的节点合并成一个超节点,并对知识图谱进行更新。需要说明的是,合并就是节点之间的边消去,将所有节点的实体放到一个超节点中去;单节点和单节点可以合并成一个超节点,单节点和超节点可以成一个超节点,超节点和超节点也可以合并成一个超节点。

统计模块206,用于统计所述目标知识图谱的节点数量,并将所述节点数量与所述预设节点数量进行比较。

具体的,所述统计模块206统计知识图谱中单节点和超节点的数量之和n,并将其与所述预设节点数量k进行比较。

确定模块208,用于当所述节点数量小于所述预设节点数量时,确定所述目标知识图谱为所述知识图谱摘要。

如果n<k,则所述确定模块208将当前的知识图谱确认为知识图谱摘要;如果n>k,则继续计算每一对节点的相似度以将知识图谱中相似度最大的节点进行合并,直至知识图谱的n<k。

本发明实施例通过将原始知识图谱中具有相似性的节点进行合并,以得出一组简洁的知识图谱摘要,用来阐明原始知识图谱的主要结构信息或变化趋势,代替原始知识图谱进行数据分析,不仅揭示了原始知识图谱中的实体之间隐藏的复杂关系,还保持了原始知识图谱的性质,减少知识图谱中图形的存储空间,从而提高知识图谱的管理和分析效率。

实施例三

参阅图3,是本发明实施例三之计算机设备的硬件架构示意图。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。该计算机设备2可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图3所示,所述计算机设备2至少包括,但不限于,可通过系统总线相互通信连接存储器21、处理器22、网络接口23、以及知识图谱摘要的生成系统20。其中:

本实施例中,存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如实施例二的知识图谱摘要的生成系统20的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。

处理器22在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备2的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行知识图谱摘要的生成系统20,以实现实施例一的知识图谱摘要的生成方法。

所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述计算机设备2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(globalsystemofmobilecommunication,gsm)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。

需要指出的是,图3仅示出了具有部件20-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。

在本实施例中,存储于存储器21中的所述知识图谱摘要的生成系统20还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。

例如,图2示出了所述知识图谱摘要的生成系统20的程序模块示意图,该实施例中,所述知识图谱摘要的生成系统20可以被划分为获取模块200、计算模块202、合并模块204、统计模块206和确定模块208。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述知识图谱摘要的生成系统20在所述计算机设备2中的执行过程。所述程序模块200-208的具体功能在实施例二中已有详细描述,在此不再赘述。

实施例四

本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储知识图谱摘要的生成系统20,被处理器执行时实现实施例一的知识图谱摘要的生成方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。


技术特征:

1.一种知识图谱摘要的生成方法,其特征在于,包括:

获取知识图谱、所述知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和所述知识图谱摘要的预设节点结构相似度权重,其中,所述知识图谱包括多个节点、所述多个节点的属性值、所述多个节点在所述知识图谱中的结构和所述多个节点间的连接关系,所述多个节点包括第一类型节点和第二类型节点;

根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点,其中,所述每一对节点指的是具有所述连接关系的两个节点;

将所述至少两个节点合并成一个所述第二类型节点,并将所述知识图谱进行更新以得到目标知识图谱;

统计所述目标知识图谱的节点数量,并将所述节点数量与所述预设节点数量进行比较;

当所述节点数量小于所述预设节点数量时,则确定所述目标知识图谱为所述知识图谱摘要。

2.根据权利要求1所述的知识图谱摘要的生成方法,其特征在于,所述将所述节点数量与所述预设节点数量进行比较之后,还包括:

当所述节点数量不小于所述预设节点数量时,则继续根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点。

3.根据权利要求1所述的知识图谱摘要的生成方法,其特征在于,所述根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,包括:

判断所述每一对节点中的两个节点的节点类型;

当所述两个节点皆为第一类型节点时,则将所述两个节点的结构关系按照公式进行计算,以得到所述两个节点的结构相似度,其中,vi表示第一类型节点i,vj表示第一类型节点j,simst(vi,vj)表示所述第一类型节点i和所述第一类型节点j的结构相似度值,w表示所述知识图谱的邻接矩阵,ifw[i][j]=0表示所述第一类型节点i与所述第一类型节点j不具有连接关系,ifw[i][j]=1表示所述第一类型节点i与所述第一类型节点j具有连接关系;

将所述两个节点的属性值按照公式进行计算,以得到所述两个节点的属性相似度,其中,αh表示所述两个节点的第h个属性,αh为单值或多值,ch表示αh的重要性程度,c表示所述节点属性重要性权值向量,c={c1,c2,…,ch,…ck},simsi(vi,vj,αh)表示所述两个节点基于αh的属性相似度值,0≤ch≤1,且

将所述两个节点的结构相似度和所述两个节点的属性相似度按照公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)进行计算,以得到所述两个节点的相似度,其中,sim(vi,vj)表示所述两个节点的相似度值,α表示所述知识图谱摘要的预设节点结构相似度权重。

4.根据权利要求3所述的知识图谱摘要的生成方法,其特征在于,所述将所述两个节点的属性值按照公式进行计算,包括:

将所述两个节点的属性值按照公式进行计算,以得到所述属性相似度值,其中,val(vi,αh)表示节点vi的第h个属性的值,val(vj,αh)表示节点vj的第h个属性的值,|vals(vi,αh)∩vals(vj,αh)|表示所述节点vi与所述节点vj属性值的交集,|vals(vi,αh)∪vals(vj,αh)|表示所述节点vi与所述节点vj属性值的并集。

5.根据权利要求3所述的知识图谱摘要的生成方法,其特征在于,所述判断所述每一对节点中的两个节点的节点类型之后,还包括:

当判断所述两个节点分别为第一类型节点和第二类型节点时,则将所述两个节点的结构关系按照公式进行计算,以得到所述结构相似度,其中,vi表示第二类型节点i,vj表示第一类型节点j,simst(vi,vj)表示第二类型节点vi和第一类型节点vj的结构相似度值,u∈vi表示所述第二类型节点vi中的第一类型节点u,(u,vj)∈e表示所述第一类型节点u和所述第一类型节点vj具有连接关系,|{u|u∈viand(u,vj)∈e}|表示所述第二类型节点vi中与所述第一类型节点vj具有连接关系的第一类型节点的个数,|vi|表示所述第二类型节点vi中第一类型节点的个数;

将所述两个节点的属性值按照公式进行计算,以得到所述属性相似度,其中,simsi(vi,vj,αh)表示所述第二类型节点vi和所述第一类型节点vj基于属性αh的相似度值;

将所述结构相似度和所述属性相似度按照公式sim(vi,vj)=α×simst(vi,vj) (1-α)simsi(vi,vj)进行计算,以得到所述相似度,其中,sim(vi,vj)表示所述第二类型节点vi和所述第一类型节点vj的相似度值。

6.根据权利要求5所述的知识图谱摘要的生成方法,其特征在于,所述将所述两个节点的属性值按照公式进行计算,包括:

将所述第二类型节点vi和所述第一类型节点vj的属性值按照公式进行计算,以得到所述第二类型节点vi和所述第一类型节点vj基于属性αh的属性相似度值,其中,val(u,αh)=val(vj,αh)表示所述第一类型节点u的αh属性值和所述第一类型节点vj的αh属性值相同,|{u|u∈viandval(u,αh)=val(vj,αh)}|表示所述第二类型节点vi中αh属性值和所述第一类型节点vj的αh属性值相同的第一类型节点个数。

7.根据权利要求3所述的知识图谱摘要的生成方法,其特征在于,所述判断所述每一对节点中的两个节点的节点类型之后,还包括:

当判断所述两个节点皆为第二类型节点时,则将所述两个节点的结构关系和属性值按照公式进行计算,以得到所述两个节点的相似度,其中,vp表示第二类型节点p,vq表示第二类型节点q,sim(vp,vq)表示第二类型节点vp和第二类型节点vq的相似度值,|vq|表示所述第二类型节点q中第一类型节点的个数,v∈vq表示所述第二类型节点q中的第一类型节点v,sim(vp,v)表示所述第二类型节点vp和所述第一类型节点v的相似度。

8.根据权利要求1所述的知识图谱摘要的生成方法,其特征在于,所述将所述至少两个节点合并成一个第二类型节点,包括:

删除所述至少两个节点之间的连接关系,并将所述至少两个节点合并成一个所述第二类型节点。

9.一种知识图谱摘要的生成系统,其特征在于,包括:

获取模块,用于获取知识图谱、所述知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和所述知识图谱摘要的预设节点结构相似度权重,其中,所述知识图谱包括多个节点、所述多个节点的标签和所述多个节点间的连接关系,所述多个节点包括第一类型节点和第二类型节点;

计算模块,用于根据所述节点属性重要性权值向量和所述节点结构相似度权重计算所述知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点,其中,所述每一对节点指的是具有所述连接关系的两个节点;

合并模块,用于将所述至少两个节点合并成一个所述第二类型节点,并将所述知识图谱进行更新以得到目标知识图谱;

统计模块,用于统计所述目标知识图谱的节点数量,并将所述节点数量与所述预设节点数量进行比较;

确定模块,用于当所述节点数量小于所述预设节点数量时,确定所述目标知识图谱为所述知识图谱摘要。

10.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征于,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的知识图谱摘要的生成方法的步骤。

技术总结
本发明实施例提供一种知识图谱摘要的生成方法,包括步骤:获取知识图谱、知识图谱的节点属性重要性权值向量、知识图谱摘要的预设节点数量和知识图谱摘要的预设节点结构相似度权重;根据节点属性重要性权值向量和节点结构相似度权重计算知识图谱中每一对节点的相似度,以得到相似度最大的至少两个节点;将所述至少两个节点合并成一个第二类型节点,并将知识图谱进行更新以得到目标知识图谱;统计所述目标知识图谱的节点数量,并将节点数量与预设节点数量进行比较;当节点数量小于预设节点数量时,则确定所述目标知识图谱为所述知识图谱摘要。通过本发明实施例,能够减少知识图谱中图形的存储空间,提高知识图谱的管理和分析效率。

技术研发人员:刘利
受保护的技术使用者:平安科技(深圳)有限公司
技术研发日:2020.01.17
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-24578.html

最新回复(0)