本文作者:kaifamei

一种异构知识资源智能融合方法与流程

更新时间:2025-12-11 03:41:47 0条评论

一种异构知识资源智能融合方法与流程



1.本发明属于计算机软件技术领域,涉及异构知识资源的融合方法,尤其涉及一种使用有向图作为异构资源统一知识表示的方法。


背景技术:

2.现有知识资源的格式多样,包括非结构化的自然语言文本等、半结构化的html文档等及结构化的xml文档、关系型数据库等。这些知识资源虽然在形式上存在较大差异,但其中设计的知识内容可能存在较高的关联性,是对于同一现实世界实体的描述或与特定问题相关。为了获得完整的知识描述或得到问题的解决方案,则需要对于异构知识资源进行融合,提取出其中相关联的知识内容,并进行整序组织,形成统一的描述结构,构建知识体系。
3.本发明主要关注异构结构化数据之间的智能融合方法,这一方面需要解决的问题有:(1)异构知识资源的实体合并问题。同一知识对象在不同的知识资源中可能有不同的表达方式,而在异构资源中则可能存在相异的描述格式,异构知识资源的融合需要可以识别出不同原始资源中的相同实体,并对于不同的描述格式进行合并;(2)异构知识资源的语义合并问题。不同实体在不同资源中可能会有不同的表现形式,同时在原始资源中通常会存在对于这些实体的语义信息表达,在进行原始资源融合的同时,需要抽取出这些知识内容,并进行知识融合。


技术实现要素:

4.针对现有技术中存在的问题,本发明的目的在于提供一种异构知识资源智能融合方法。
5.本发明的技术方案为:
6.一种异构知识资源智能融合方法,其步骤包括:
7.1)将待融合的各知识资源分别转化为一对应的有向图;
8.2)生成所述有向图中的每一节点的语义嵌入向量,根据节点的语义嵌入向量计算节点间的语义相似度;如果两节点之间的语义相似度大于设定联系阈值,则在对应两节点之间建立无向边进行连接;如果两节点之间的语义相似度大于设定合并阈值,则将对应两节点进行合并;
9.3)对步骤2)处理后的各有向图进行图聚类,得到多个类团;
10.4)根据各所述类团中包含的节点,生成对应类团的语义主题并构建语义有向图;
11.5)将所述语义有向图转化为owl本体,得到融合后的知识资源。
12.进一步的,所述知识资源包括具有嵌套等级结构的结构化数据和不具有嵌套等级结构的结构化数据;所述具有嵌套等级结构的结构化数据包括xml格式数据及非xml格式数据;其中,
13.a)将xml格式的知识资源转化为有向图的方法为:
14.11)将xsd文档中用于描述实体的元素转化为实体节点ve;将该待处理xsd文档中描述实体属性的元素转化为属性节点vp;
15.12)对于该待处理xsd文档中的嵌套关系n(a,b),a为父元素,b为子元素;根据n(a,b)生成元素a对应节点指向元素b所对应节点的有向边,并将该有向边命名为“has”+b;如果元素b满足条件(1)~(3)中任一条件,则元素a对应节点与元素b所对应节点之间的边称为类边;其中条件(1)~(3)为:(1)元素b所对应节点为ve之下的节点;(2)元素b在该待处理xsd中有具体的约束条件进行限制;(3)元素b为该待处理xsd中的命名节点,即元素b为实际业务对象;
16.b)将具有嵌套等级关系的非xml格式的知识资源转化为有向图的方法为:
17.21)将知识资源文档中用于描述实体的元素转化为实体节点ve;将描述实体的元素的属性作为对应实体节点ve的属性节点vp;
18.22)根据实体节点ve与属性节点vp的对应关系生成有向边《ve,vp》;
19.c)将不具有嵌套等级结构的知识资源转化为有向图的方法为:将知识资源中对于每一类实体的描述单位作为一个实体节点ve;将实体的描述单位所包含的每一属性单元作为一属性节点vp;根据实体节点ve与属性节点vp的对应关系生成有向边《ve,vp》。
20.进一步的,所述不具有嵌套等级结构的知识资源为关系型数据库,所述描述单位为关系型数据库中的一张表,所述属性单元为关系型数据库中的一个字段;或者所述不具有嵌套等级结构的知识资源为电子表格,所述描述单位为电子表格中的若干个列,所述属性单元为电子表格中的列。
21.进一步的,将对应两节点进行合并的方法为:保留两节点中属性较多的节点,并将属性较少节点的属性添加至所保留节点的属性中。
22.进一步的,将对应两节点进行合并的方法为:由人工决定两节点中所需保留的节点,并对所保留节点进行重命名、属性添加或更新。
23.进一步的,使用hdbscan算法对步骤2)处理后的各有向图进行图聚类。
24.进一步的,生成对应类团的语义主题并构建语义有向图的方法为:
25.41)对类团中每个实体节点ve,将该实体节点ve在知识资源中的文本描述与该实体节点ve所连各个属性节点vp对应的文本进行拼接,作为实体节点ve的描述信息;
26.42)根据实体节点ve的描述信息生成对应实体节点ve的语义向量vs;
27.43)对实体节点ve的描述信息进行主题提取,将得到的各个主题前k个主题词使用word2vec算法进行语义嵌入,并将所得语义嵌入表示与各个主题类别编号进行拼接,得到实体节点ve的主题向量vt;
28.44)根据语义向量vs与主题向量vt生成实体节点ve的完整向量vc;
29.45)使用聚类算法对于得到的各完整向量进行聚类,根据聚类结果生成每一聚类团的主题词;将各聚类团的主题词集合作为该类团的主题,并创建一新的节点vec,作为该类团的核心节点,将该类团中其他实体节点ve与该节点vec之间建立有向边《vec,ve》。
30.进一步的,将所述语义有向图转化为owl本体的方法为:对于每个聚类团的节点vec及实体节点ve,将其直接转化为owl语言中的类;对于有向边《vec,ve》及《ve,ve》,将其转化为owl语言中的对象属性,并将有向边中的源节点转化为对象属性的定义域、将目标节点转化为对象属性的值域,有向边的名称转化为对象属性的命名;对于边《ve,vp》及属性顶
点vp,将vp的名称转化为owl语言中数据属性的命名,将通过边《ve,vp》与vp连接的ve转化为数据属性的定义域,将vp在知识资源中对应的元素的数据类型转化为数据属性的值域。
31.一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上述方法中各步骤的指令。
32.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法的步骤。
33.与现有技术相比,本发明的积极效果为:
34.1.以有向图作为异构知识资源的统一表示形式。使用图中节点及边的定义,对于原始知识资源中的三元组形式的知识内容进行描述,无需考虑这些知识内容的原有存在形式,关注于知识内容本身。
35.2.实现了异构知识资源的实体合并。对于不同知识资源中相同或相似的知识实体,提取原有表达方式的语义信息,并根据语义相似度进行联系或合并,同时对于联系后的实体进行进一步类划分,提高组织化程度。
36.3.实现了异构知识资源的知识合并。使用原有知识资源对于知识实体文本描述中蕴含的丰富语义信息,对于分散在异构知识资源中的知识内容进行整合组织,与原有的实体关系、属性信息相结合,更有助于构建完整的知识体系。
附图说明
37.图1是本发明方法流程图。
具体实施方式
38.下面结合附图对本发明进行进一步详细描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
39.考虑到不同知识资源中的知识内容语义均可以表达为三元组《s,p,o》的形式,其中s为主语,即所描述的实体;o为宾语,可以为另一个实体或实体所具有的属性;p为谓语,既可以表达实体之间的关联关系,也可以表示实体与属性的对应关系。而owl语言则提供了一种本体表达的方式,其中定义类(owl:class)作为对于实体的描述,数据属性(owl:dataproperty)作为对于实体所具有的属性的描述,对象属性(owl:objectproperty)作为对于实体之间关系的描述。使用owl语言可以揭示并显性化原有知识资源中具有的语义信息,并且也提供了一种统一的表达形式,可以作为异构知识资源融合的目标。
40.然而若将不同的知识资源直接转化为owl语言描述,则仍然面对不同owl之间的关联问题,且不同原始资源中的知识内容并未得到整合,仍然以分散的形式存在于不同的owl本体之中。针对这一问题,本文使用有向图结构作为异构知识资源融合的统一表达形式,一个有向图定义为g=(v,e),其中v为顶点集合,包括实体(ve)与属性(vp);e为边的集合,每一条边包含两个顶点,从一个顶点指向另一个顶点,包括《ve,ve》与《ve,vp》两种形式。
41.异构知识资源智能融合方法的具体流程为:
42.step1:将待融合的各知识资源分别转化为一对应的有向图;原始结构化知识资源主要具有两种类型,第一种为xml及与xml类似的具有嵌套等级关系的数据格式,第二种为
不具有嵌套等级结构的结构化数据。对于第一种资源,其中xml资源至有向图的转化方法为step11~step12,而对于与xml类似的具有嵌套等级关系的数据格式,如json等,则只需要step11~step12的流程,抽取出每一级嵌套结构元素之间的嵌套关系即可,这些元素本身将作为顶点集中的实体节点ve,而元素具有的属性则作为顶点集中的属性节点vp,实体与属性的对应关系作为有向边《ve,vp》。
43.step11:有向图节点的确定。确定一个有向图首先需要确定其中xsd文档作为对于xml文档逻辑结构的规范说明,其中定义的复杂元素通常可以包含其他元素或具有较多的属性,并且多用于描述现实生活中的一类实体,因此将xsd文档中的复杂元素均转化为节点。其次,xsd文档中还会定义一些对应xml文档中使用的自定义元素类型,这些元素类型通常为描述特定现实实体而定义,蕴含着解决相应问题所需的知识内容,因此同样转化为节点。但为了进行区分,将由复杂元素转化得到的节点作为实体节点ve,对应owl中的类(owl:class),其他元素转化得到的节点作为属性节点vp,对应owl中的数据属性(owl:dataproperty)。
44.step12:有向图边的确定。在得到节点之后,需要确定节点之间的链接关系也即节点而当边。在xsd文档中元素之间具有嵌套等级关系,因此需要转化为有向图,通过有向边的形式保留原有的等级信息。这里的有向图生成不同于对于xsd结构树的遍历,而是关注于嵌套关系本身,将原先树结构按照嵌套关系进行重新整合,是对于xsd结构树的进一步处理,最终得到的有向图中会存在环。在具体转化时,对于嵌套关系n(a,b),a为父元素,b为子元素,转化为由a指向b的有向边,命名为“has”+b的名称,对应于owl中的对象属性(owl:objectproperty)。与节点类似,为了区分不同xml元素所具有的知识内容及知识功能,对于上述边也进行区分,将a与满足下列条件的b之间的边称为类边《ve,ve》。b具体需要具备的条件为:(1)为ve之下的节点;(2)在xsd中有具体的约束条件进行限制,即存在《restriction》元素进行限制,这说明了这些元素具有一定的实际意义,这些约束条件便是这些实际意义的形式化表达;(3)为命名节点。xml文档中节点元素可以不具有名称,这些节点可能只起到提供嵌套等级结构的作用,但不具有实际意义,几乎不含有知识内容,而命名子节点的命名则通常反映了这一元素对应的实际业务对象,需要与其他节点进行区分。
45.step2:对于不具有嵌套等级结构的结构化数据,如关系型数据库、电子表格等,将对于每一类实体的描述单位,如关系型数据库中的一张表,电子表格中的一张表单或人工指定的某几列的整体,作为节点集中一个的实体节点ve,并根据实际意义赋予名称。对于关系型数据库中的各个字段,电子表格中的各个列,作为顶点集中的属性节点vp。实体与属性的对应关系,即人工指定的作为ve的整体与其中字段或列的包含关系,同样作为有向边《ve,vp》。
46.step3:实体与知识合并。经过上述两部操作,异构知识资源均可以使用有向图的统一结构进行表达,此时需要进行实体合并与知识合并。首先需要对于节点进行语义嵌入,可以使用graphsage等算法学习,得到节点的向量表示,这之后便可以计算顶点之间的语义相似度,并由人工设定联系阈值与合并阈值,其中联系阈值小于合并阈值。在相似度大于联系阈值的两顶点之间建立无向边的连接,并对相似度大于合并阈值的两顶点进行顶点本身及两顶点属性的合并。这里既可以由机器自动选择保留其中属性较多的顶点,并将另一顶点的属性添加至这一顶点之上,也可以由人工决定所需保留的顶点,并对于顶点进行重命
名、属性添加或更新等。之后在得到的扩展有向图之上使用hdbscan算法进行图聚类,得到的类团中包含来自不同原始资源的顶点。
47.step4:为了更清晰得到各类团的语义主题,需要在各个类团内部做进一步处理:
48.1)对于原始知识资源中对于每个顶点ve的文本描述,将顶点ve的文本描述与顶点ve所连接的各个属性vp文本进行拼接;
49.2)使用bert算法学习拼接后结果的语义嵌入信息,得到每个顶点的语义向量vs;
50.3)使用lda算法对于1)中拼接得到的每个顶点的文本描述进行主题提取,将得到的各个主题前10个主题词使用word2vec算法进行语义嵌入,并与各个主题类别编号进行拼接,得到每个顶点的主题向量vt;
51.4)将vs与vt进行拼接,人工设定参数λ用于调整语义向量与主题向量的权重,得到每个顶点的完整向量vc;
52.5)使用聚类算法对于得到的完整向量进行聚类,并根据聚类结果由人工赋予主题词或自动根据顶点的语义描述生成聚类团的主题词,各个子类团的主题词整体集合作为该类团的主题,并创建一个新的顶点vec,作为该类团的核心顶点,与类团中其他顶点ve之间建立《vec,ve》有向边。
53.在这一步骤结束之后,相当于完成了对于异构知识资源的融合及进一步的知识内容提取,之后为了更为清晰地表达融合结果中的语义内容,将图结构使用owl语言进行描述,得到知识融合本体。
54.step5:按照表1定义的映射规则,将step4中得到的语义有向图转化为owl本体。
55.表1为有向图至owl的映射规则
56.有向图元素owl元素vec,veowl:class《vec,ve》,《ve,ve》owl:objectproperty domain:vec或第一个ve range:第二个ve《ve,vp》,vpowl:dataproperty domain:ve range:vp的数据类型
57.对于每个聚类团的核心顶点vec及实体顶点ve,直接转化为owl语言中的类(owl:class)。对于边《vec,ve》及《ve,ve》,转化为owl语言中的对象属性(owl:objectproperty)。由于类边均为有向边,将有向边的源节点(source)转化为对象属性的定义域(domain),将目标节点(target)转化为值域(target),有向边的名称转化为对象属性的命名。对于边《ve,vp》,及属性顶点vp,将vp的名称转化为owl语言中数据属性(owl:dataproperty)的命名,将通过边《ve,vp》与vp连接的ve转化为数据属性的定义域(domain),vp顶点对应的原始文档中的元素的数据类型转化为值域(range)。
58.尽管为说明目的公开了本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。


文章投稿或转载声明

本文链接:http://www.wtabcd.cn/zhuanli/patent-10-1042-0.html

来源:专利查询检索下载-实用文体写作网版权所有,转载请保留出处。本站文章发布于 2022-11-27 21:24:39

发表评论

验证码:
用户名: 密码: 匿名发表
评论列表 (有 条评论
2人围观
参与讨论