一种知识图谱构建方法及装置与流程

文档序号:25857545发布日期:2021-07-13 16:11阅读:79来源:国知局
一种知识图谱构建方法及装置与流程

本申请涉及人工智能技术领域,特别涉及一种知识图谱构建方法及装置、计算设备及计算机可读存储介质。



背景技术:

数据库架构(schema)作为规定知识图谱的结构及数据类型的表述,贯穿知识图谱的整个生命周期,是图谱构建和应用遵守的共同准则。现有的数据库架构(schema)表示方法包括:三元组表示方法、图表示法、树状图框架等方法。同时,现有的人工设计的数据库架构(schema),大多为使用文本或代码编辑器进行手动输入,在现有的知识图谱数据库架构(schema)表示方法中,三元组方法需要将节点间关系、节点与属性关系分别表达,会产生繁琐且不便处理的问题;图表示法能够直观表示图谱结构,但无法方便供其他应用端有效获取数据库信息;树状图框架法利用多层级图谱结构表示,但是对于节点和关系的属性及数据结构和其他约束无法提供有效表示方法。

利用以上方法构建图谱数据库架构的过程,主要以编辑器进行人工输入,然而现有的编辑器存在表述不严谨、错误隐患大、编辑和修改效率低下等问题。



技术实现要素:

有鉴于此,本申请实施例提供了一种知识图谱构建方法及装置、计算设备及计算机可读存储介质,以解决现有技术中存在的技术缺陷。

根据本说明书实施例的第一方面,提供了一种知识图谱构建方法,包括:

创建图谱编辑器对应的交互控件,通过所述交互控件接收图谱编辑信息;

通过所述图谱编辑器将所述图谱编辑信息转化为与当前数据库架构对应的结构化数据;

基于所述结构化数据生成所述图谱编辑信息对应的知识图谱。

可选地,创建图谱编辑器对应的交互控件,通过所述交互控件接收图谱编辑信息,包括:

创建所述图谱编辑器进行图谱生成所需的第一类别信息和第二类别信息对应的交互控件,并将所述交互控件嵌入至所述图谱编辑器;

通过所述交互控件接收所述第一类别信息和/或第二类别信息,将所述第一类别信息和/或第二类别信息以字符串的形式传入所述图谱编辑器。

可选地,通过所述图谱编辑器将所述图谱编辑信息转化为与当前数据库架构对应的结构化数据,包括:

将所述第一类别信息转化为当前数据库架构对应的固定数据结构的结构化数据;和/或

将所述第二类别信息转化为当前数据库架构对应的扩展数据结构的结构化数据;

其中,所述扩展数据结构内嵌于所述固定数据结构中。

可选地,还包括:

为每个节点类别信息和关系类别信息设置对应的基本约束条件;

根据所述基本约束条件对所述第一类别信息和第二类别信息进行校验,并且未通过校验的情况下进行报错。

可选地,基于所述结构化数据生成所述图谱编辑信息对应的知识图谱,包括:

根据所述当前数据库架构对应的固定数据结构的结构化数据,构建多个知识三元组,并为所述知识图谱三元组中的节点和关系添加对应的属性;

根据所述当前数据库架构对应的扩展数据结构的结构化数据,构建所述多个知识三元组中每个所述知识三元组对应的辅助说明信息;

对所述多个知识三元组以及每个所述知识三元组对应的辅助说明信息进行模式化表示,形成知识图谱结构。

根据本说明书实施例的第二方面,提供了一种知识图谱构建装置,包括:

交互控件模块,被配置为创建图谱编辑器对应的交互控件,通过所述交互控件接收图谱编辑信息;

编辑器模块,被配置为通过所述图谱编辑器将所述图谱编辑信息转化为与当前数据库架构对应的结构化数据;

图谱构建模块,被配置为基于所述结构化数据生成所述图谱编辑信息对应的知识图谱。

可选地,所述交互控件模块包括:

控件创建单元,被配置为创建所述图谱编辑器进行图谱生成所需的第一类别信息和第二类别信息对应的交互控件,并将所述交互控件嵌入至所述图谱编辑器;

信息接收单元,被配置为通过所述交互控件接收所述第一类别信息和/或第二类别信息,将所述第一类别信息和/或第二类别信息以字符串的形式传入所述图谱编辑器。

可选地,所述编辑器模块包括:

第一信息表示单元,被配置为将所述第一类别信息转化为当前数据库架构对应的固定数据结构的结构化数据;和/或

第二信息表示单元,被配置为将所述第二类别信息转化为当前数据库架构对应的扩展数据结构的结构化数据;

其中,所述扩展数据结构内嵌于所述固定数据结构中。

可选地,还包括修正校验模块,被配置为:

为每个节点类别信息和关系类别信息设置对应的基本约束条件;

根据所述基本约束条件对所述第一类别信息和第二类别信息进行校验,并且未通过校验的情况下进行报错。

可选地,所述图谱构建模块包括:

三元组构建单元,被配置根据所述当前数据库架构对应的固定数据结构的结构化数据,构建多个知识三元组,并为所述知识图谱三元组中的节点和关系添加对应的属性;

辅助配置单元,被配置为根据所述当前数据库架构对应的扩展数据结构的结构化数据,构建所述多个知识三元组中每个所述知识三元组对应的辅助说明信息;

图谱展示单元,被配置为对所述多个知识三元组以及每个所述知识三元组对应的辅助说明信息进行模式化表示,形成知识图谱结构。

根据本说明书实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述知识图谱构建方法的步骤。

根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述知识图谱构建方法的步骤。

本申请基于数据库架构进行知识图谱的构建,数据库架构的构建过程也就是图谱结构的构建过程,本申请的数据库架构的采用层级结构进行表述,能够保证数据库架构拥有稳定的结构,从而保证知识图谱的整个构建流程能够便捷的获取关系型数据库中的结构化信息。同时,在本申请的数据库架构中预留足够的扩展数据结构,形成固定数据结构下的自由设定空间,能够满足特定的类别信息对数据库架构设计的需要。

此外,本申请的图谱编辑器能够按照数据库架构设计的需要,提供高效、便捷的构建方式,用户只需要通过点选和简单输入就能够保证实现正确规范的提供图谱编辑信息以供图谱构建使用。

附图说明

图1是本申请实施例提供的计算设备的结构框图;

图2是本申请实施例提供的第一种知识图谱构建方法的流程图;

图3是本申请实施例提供的知识图谱构建方法应用于人工智能系统的交互示意图;

图4是本申请实施例提供的第二种知识图谱构建方法的流程图;

图5是本申请实施例提供的知识图谱构建方法的示意图;

图6是本申请实施例提供的第三种知识图谱构建方法的流程图;

图7是本申请实施例提供的第四种知识图谱构建方法的流程图;

图8是本申请实施例提供的第五种知识图谱构建方法的流程图;

图9是本申请实施例提供的第六种知识图谱构建方法的流程图;

图10是本申请实施例提供的知识图谱构建装置的结构示意图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。

首先,对本发明一个或多个实施例涉及的名词术语进行解释。

知识图谱:知识图谱(knowledgegraph,kg)是一种语义网络,旨在描述客观世界的概念实体及其之间的关系,是结构化的语义知识库(knowledgebase),用于以符号形式描述物理世界中的概念及其相互关系,其基本组成单位是三元组,以及实体及其相关属性和属性值,实体间通过关系相互联结,构成网状的知识结构。

三元组:知识图谱的一种表示方法,常见形式包括(实体1,关系,实体2)或者(实体,属性,属性值)和(关系,关系属性,关系属性值)等,例如(姚明,效力于,nba)、(姚明,身高,2.29m)和(效力于,是否现任,否)

实体:实体(entity)是知识图谱中的节点(node),实体是知识图谱的基本单元,也是文本中承载信息的重要语言单位;一般指的是文本中具有特定意义或者指代性强的实体,通常包括人名、地名、组织机构名、日期时间、专有名词等。

属性:属性(property)是实体或关系的固有特性,例如张三的年龄是二十四,其中“年龄”就是属性。

关系:关系(relation)是用于描述本体(类,概念)之间的关系,即关系是实体与实体之间关系的抽象,为两个或多个实体之间的某种联系;例如张三的父亲是张二,其中“父亲”就是关系。

数据库架构:数据库架构(schema)是规定知识图谱的结构及数据类型的表述,其定义了知识图谱的数据模型以及用以描述物理世界的词汇体系,规范结构化数据的表达。可见,数据库架构就是数据库对象的集合,这个集合包含了各种对象如:表、视图、存储过程、索引等。

json:即javascriptobjectnotation,是一种轻量级的数据交换格式。它基于ecmascript的一个子集,json采用完全独立于语言的文本格式,但是也使用了类似于c语言家族的习惯。这些特性使json成为理想的数据交换语言,易于阅读和编写,同时也易于机器解析和生成。

mysql:mysql是一个关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性,mysql所使用的sql语言是用于访问数据库的最常用标准化语言。

在本申请中,提供了一种知识图谱构建方法及装置、计算设备及计算机可读存储介质,在下面的实施例中逐一进行详细说明。

图1示出了根据本说明书一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。

计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。

在本说明书的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。

计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备100还可以是移动式或静止式的服务器。

其中,处理器120可以执行图2所示方法中的步骤。图2是示出了根据本申请一实施例的知识图谱构建方法的示意性流程图,包括步骤202至步骤206。

步骤202:创建图谱编辑器对应的交互控件,通过所述交互控件接收图谱编辑信息。

具体而言,与知识图谱构建方法对应的交互示意图如图3所示,该知识图谱构建方法应用于人工智能系统,该人工智能系统包括终端310和服务端320。终端310和服务端320通过网络连接。终端310具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器320可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

需要说明的是,人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

基于此,终端310在接收到创建请求后,将创建图谱编辑器对应的交互控件,同时会通过交互控件接收用户上传的图谱编辑信息,之后通过图谱编辑器将图谱编辑信息转换为与当前数据库架构对应的结构化数据,最后根据结构化数据即可生成所述图谱编辑信息对应的知识图谱。此外,在完成转换处理得到结构化数据后,终端310还可以将结构化数据上传到服务端320,由服务端完成知识图谱的创建。

在本申请的实施例中,如图4所示,所述步骤202具体包括步骤402至步骤404。

步骤402:创建所述图谱编辑器进行图谱生成所需的第一类别信息和第二类别信息对应的交互控件,并将所述交互控件嵌入至所述图谱编辑器。

步骤404:通过所述交互控件接收所述第一类别信息和/或第二类别信息,将所述第一类别信息和/或第二类别信息以字符串的形式传入所述图谱编辑器。

具体而言,所述图谱编辑器具体是指向用户提供知识图谱编辑功能的应用程序,用户可以在所述图谱编辑中输入创建知识图谱的相关信息(如节点信息和关系信息等)以完成知识图谱的创建;相应的,所述交互控件具体是指所述图谱编辑器中可以接收用户指令的控件,即用户可以通过不同的交互控件输入不同的用于创建知识图谱的信息。而为了能够满足不同场景下知识图谱的创建需求,可以在所述图谱编辑器中根据图谱创建需求设置不同的交互控件,以支持用户使用所述图谱编辑器可以创建出满足需求的知识图谱,也就是说,用户可以通过交互控件输入编辑知识图谱的相关元素,如节点信息(包括节点类型,节点说明等)和属性信息(属性名称,属性说明,属性类型等)。需要说明的是,所述交互控件可以是不同形式的控件,如选择型交互控件或输入型交互控件等,只要能够支持与用户进行交互即可,本实施例在此不作任何限定。

进一步的,当开发人员创建图谱编辑器对应的交互控件后,使用图谱编辑器的用户即可根据需求,通过图谱编辑器上的交互控件完成图谱基本信息的输入,例如:触控的输入方式等,以方便后续创建出满足用户需求的知识图谱,参见图5中(a)和(b)所示,用户可以在节点栏中输入节点类型{per};说明{人物};同时在属性栏中可以输入属性说明,选择属性类型,默认值,简称,是否可修改等选项,而针对知识图谱的数据约束也可以通过图谱编辑器提供的功能实现,以保证知识图谱可以创建成功。

更进一步的,由于不同领域的知识图谱的创建可能存在不同的差异,为了能够充分的满足用户的图谱创建需求,用户可以通过表单填写和候选项选择等方式进行图谱编辑信息的录入。其中,所述图谱编辑信息可以根据数据库架构的设定,划分为固定数据结构对应的第一类别信息和扩展数据结构对应的第二类别信息,并且所述第二类别信息不是数据库架构里的必要字段,使得图谱构建过程更加灵活。

其中,所述固定数据结构具体是指针对知识图谱创建时必须录入的数据所对应的架构,包括但不限于{node/rel}(分类表示节点和关系的信息);{name:node/rel}(节点/关系名称);{node/rel->property}(节点或关系下属性);{node/rel->property-->name&type}(节点或关系下属性的名称和数据结构类型);{rel->start_node/end_node}(关系起始节点/终止节点)等;以用于录入图谱编辑信息时作为创建知识图谱的基础必要元素。相应的,所述扩展数据结构具体是指针对知识图谱创建时非必须录入的数据所对应的架构,但可以应用于辅助知识图谱的创建,或增加知识图谱的辅助信息等,包括但不限于{node/rel->visual}(供前端显示名称);{node/rel->property->is_update}(图谱字段是否运行进行更新);{node/rel->constraint}(属性数据的二次约束,用于图谱数据构建过程的检查)等,以用于录入图谱编辑信息时作为创建知识图谱的基础辅助元素,用于提高知识图谱创建后的表达能力。

基于此,所述第一类别信息即为用户在使用图谱编辑器时通过交互控件录入的对应所述固定数据结构的相关信息,相应的,所述第二类别信息即为用户在使用图谱编辑器时通过交互控件录入的对应扩展数据结构的相关信息,以用于后续以字符串的形式传入所述图谱编辑器,实现知识图谱的创建。

举例说明,对于知识图谱中的节点和关系,用户需要创建人物(per)—>出生于(born)—>地点(location)的知识图谱,用户通过点击图谱编辑器上的交互控件,分别输入了起始节点-甲;说明-人物;属性名称-name;属性类型-字符串;关系属性-出生;结束节点-a城市;根据上述输入内容生成该图谱编辑器中的固定数据结构对应的第一类别信息。同时用户为了能够提高知识图谱的表征能力,还通过点击交互控件,输入了约束信息,约束信息包括地址唯一和姓名唯一;同时为了能够使得后续创建出的知识图谱方便用户使用,用户还可以通过交互控件输入扩展信息,扩展信息包括属性修改-false,前端展示-visual,之后根据上述输入内容生成该图谱编辑器中的扩展数据结构对应的第二类别信息,最后将用户录入的图谱编辑信息用于创建满足用户需求的知识图谱即可。

实际应用中,知识图谱的创建不仅限于一个节点和一个关系,本实施例为了方便描述以一个节点和一个关系为例进行说明,其他节点和关系的设定均可参见本实施例相应的描述内容,在此不作任何限定。

本申请的图谱编辑器能够按照数据库架构设计的需要,提供高效、便捷、直观且低学习成本的构建方式,用户只需要通过点选和简单输入就能够保证实现正确规范的提供图谱编辑信息以供图谱构建使用。

步骤204:通过所述图谱编辑器将所述图谱编辑信息转化为与当前数据库架构对应的结构化数据。

本申请的数据库架构定义了知识图谱的数据模型以及知识图谱的表达方法,因此,数据库架构的构建过程也即是知识图谱结构的构建过程。本申请的数据库架构采用json形式,可以在具体节点或关系以及属性下增加额外的字段,在该字段中包含有交互控件中预设的各种辅助说明信息。

在本申请的实施例中,如图6所示,所述步骤204具体包括步骤602至步骤604。

步骤602:将所述第一类别信息转化为当前数据库架构对应的固定数据结构的结构化数据。

其中,所述第一类别信息包括节点类别信息、关系类别信息、节点名称信息、关系名称信息、节点属性信息、关系属性信息、关系起始节点信息和/或关系终止节点信息。

步骤604:将所述第二类别信息转化为当前数据库架构下对应扩展数据结构的结构化数据。

其中,所述第二类别信息包括前端名称信息、属性说明信息、页面显示信息、字段更新信息和/或二次约束信息。

具体而言,本申请的数据库架构以json的表述形式为主,采用扁平化的层级结构进行对固定数据结构的表述,例如,在所述第一类别信息中,所述节点类别信息可以表示为“node”、关系类别信息可以表示为“rel”、节点名称信息可以表示为“name:node”、关系名称信息可以表示为“name:rel”、节点属性信息可以表示为“node->property”、关系属性信息可以表示为“rel->property”、关系起始节点信息可以表示为“rel->start_node”、关系终止节点信息可以表示为“rel->end_node”等等。

同时,所述扩展数据结构内嵌于所述固定数据结构中,具体是指在代码层面扩展数据结构对应的代码表达可以嵌入所述固定数据结构的代码表达,以实现将扩展数据结构对应的信息和固定数据结构对应的信息可以整合,从而创建出满足用户需求的知识图谱,例如固定数据结构对应的代码表达{name:date_leave,type:“time”}之后可以添加扩展数据结构对应的代码表达{is_update:false},用于限定图谱字段是否运行进行更新,从而实现扩展数据结构可以与固定数据结构充分结合,方便后续进行知识图谱的创建。

此外,本申请允许用户通过交互控件对扩展数据结构进行设定,例如,前端名称信息可以表示为“visual”用以供线段显示名称、属性说明信息可以表示为“info”用于在交互控件的交互界面向用户返回第一类别信息的说明信息、页面显示信息可以表示为“abbr”、字段更新信息可以表示为“update”用以判断图谱字段是否运行进行更新或为自动监控功能用于确定第一类别信息是否可以自动修改、二次约束信息可以表示为“constraint”用以图谱数据构建过程的检查。

应当注意的是,所述扩展数据结构中的数据为自定义字段,是用于供上层(交互控件)应用使用的必要信息,因此,在数据结构上采用层级结构进行表述,例如,节点类别或关系类别对应的前端名称信息可以表示为“node/rel->visual”,节点类别或关系类别中的图谱字段是否运行进行更新可以表示为“node/rel->is_update”,节点类别或关系类别对应的二次约束信息可以表示为“node/rel->constraint”。

在本申请的数据库架构中预留足够的扩展数据结构,形成固定数据结构下的自由设定空间,能够满足特定的类别信息对数据库架构设计的需要。

在本申请的另一个实施例中,如图7所示,本申请的方法还包括步骤702至步骤704。

步骤702:为每个节点类别信息和关系类别信息设置对应的基本约束条件。

步骤704:根据所述基本约束条件对所述第一类别信息和第二类别信息进行校验,并且未通过校验的情况下进行报错。

具体而言,本申请在图谱编辑器中还预设有节点类别信息和关系类别信息设置对应的基本约束条件,例如,对于节点“人物”,其基本约束条件为“人名不能为空”;对于节点“地点”,其基本约束条件为“地名必须唯一”;对于关系“出生于”,其基本约束条件为“出生日期必须早于离开出生地日期”。

具体地约束条件在数据库架构中的数据结构如前文中的“二次约束信息”部分所述,本申请在此不进行赘述。

步骤206:基于所述结构化数据生成所述图谱编辑信息对应的知识图谱。

本申请基于数据库架构进行知识图谱的构建,数据库架构的构建过程也就是图谱结构的构建过程,本申请的数据库架构的采用层级结构进行表述,能够保证数据库架构拥有稳定的结构,从而保证知识图谱的整个构建流程能够便捷的获取关系型数据库中的结构化信息。

在本申请的实施例中,如图8所示,所述步骤206具体包括步骤802至步骤806。

步骤802:根据所述当前数据库架构对应的固定数据结构的结构化数据,构建多个知识三元组,并为所述知识三元组中的节点和关系添加对应的属性。

在上述实施例中,本申请的图谱编辑器根据所述第一类别信息中的节点类别信息、关系类别信息以及关系起始节点信息和/或关系终止节点信息,构建多个知识三元组,并根据所述节点属性信息和关系属性信息,为所述知识图谱三元组中的节点和关系添加对应的属性。

步骤804:根据所述当前数据库架构对应的扩展数据结构的结构化数据,构建所述多个知识三元组中每个所述知识三元组对应的辅助说明信息。

在上述实施例中,本申请的图谱编辑器进一步根据扩展数据结构中的结构化数据,生成每个所述知识三元组对应的辅助说明信息,例如,知识三元组中的节点或属性的说明信息。

步骤806:对所述多个知识三元组以及每个所述知识三元组对应的辅助说明信息进行模式化表示,形成知识图谱结构根据数据库架构中设定的平级化结构对所述多个知识三元组中的节点、关系和属性进行模式化表示,形成知识图谱结构。

具体的,由于所述知识图谱中的每个知识三元组都是由用户编辑的,而为了保证知识图谱的表征更加准确,用户可以在输入图谱编辑信息时,针对每个知识三元组输入对应的辅助说明信息,用于对每个三元组的属性或关系进行说明,从而方便其他用户使用或者对已经编辑好的知识图谱进行更新或修改;即所述辅助说明信息具体是指针对每个知识三元组进行辅助表达其含义的信息,如三元组{甲-出生-a城市},用户可以针对该三元组录入辅助说明信息“地名必须唯一”的约束,从而实现生成的知识图谱具有“地名必须唯一”标注,方便后续进行知识图谱的更新和修改时,可以提醒用户关注“地名必须唯一”的标注,提高知识图谱更新和修改的准确性。

此外,为了能够方便后续对已经创建好的知识图谱进行修改、更新或增加新的知识三元组,本实施例提供的图谱编辑器还可以向用户提供知识图谱读取功能,即用户可以通过点击图谱编辑器上的读取功能对应的交互控件获得知识图谱各种形式的表达,可以是图表达,字表达或者代码表达,以方便用户根据需求对知识图谱进行调整。同时还会针对已经创建好的知识图谱配置唯一标识,并对其进行存储,方便根据唯一标识获取需要修改/更新的知识图谱,以作出相应的处理。

本申请能够根据数据库架构的设计结构,动态生成知识图谱数据库架构的图结构,使得用户能够直观了解数据库架构的设计结构并及对数据库架构的设计结构进行调整;同时,本申请还提供完善的保存和读取功能,便于用户对数据库架构不断优化和更新。

图9示出了本说明书一实施例的知识图谱构建方法,该知识图谱构建方法以对(人物,出生于,地点)知识三元组为例进行描述,包括步骤902至步骤906。

步骤902:通过交互控件分别接收人物、出生于和地点对应的图谱编辑信息。

步骤904:将人物、出生于和地点对应的图谱编辑信息在图谱编辑器中以json的形式进行表述。

将人物和地点作为节点,将出生于作为关系,通过json的形式对其本体、属性以及添加的是否需要进行更新和二次约束进行表示,并通过图谱编辑器对表示后的内容进行校验和修正。

步骤906:通过图谱编辑器在预设的数据库架构下生成人物、出生于和地点对应的图谱编辑信息的知识图谱的关系结构。

本申请基于数据库架构进行知识图谱的构建,数据库架构的构建过程也就是图谱结构的构建过程,本申请的数据库架构的采用层级结构进行表述,能够保证数据库架构拥有稳定的结构,通过固定数据结构与扩展数据结构设计出一种灵活性高、适用性强且规则合理的数据库架构,从而保证知识图谱的整个构建流程能够便捷的获取关系型数据库中的结构化信息。同时,在本申请的证数据库架构中预留足够的自由设定空间,能够满足每个单独模块对数据库架构设计的需要。

此外,本申请的图谱编辑器能够按照数据库架构设计的需要,提供高效、便捷、直观且低学习成本的构建方式,用户只需要通过点选和简单输入就能够保证实现正确规范的提供图谱编辑信息以供图谱构建使用。

与上述方法实施例相对应,本说明书还提供了知识图谱构建装置实施例,图10示出了本说明书一个实施例的知识图谱构建装置的结构示意图。如图10所示,该装置包括:

交互控件模块1001,被配置为创建图谱编辑器对应的交互控件,通过所述交互控件接收图谱编辑信息;

编辑器模块1002,被配置为通过所述图谱编辑器将所述图谱编辑信息转化为与当前数据库架构对应的结构化数据;

图谱构建模块1003,被配置为基于所述结构化数据生成所述图谱编辑信息对应的知识图谱。

一个可选的实施例中,所述交互控件模块1001包括:

控件创建单元,被配置为创建所述图谱编辑器进行图谱生成所需的第一类别信息和第二类别信息对应的交互控件,并将所述交互控件嵌入至所述图谱编辑器;

信息接收单元,被配置为通过所述交互控件接收所述第一类别信息和/或第二类别信息,将所述第一类别信息和/或第二类别信息以字符串的形式传入所述图谱编辑器。

一个可选的实施例中,所述编辑器模块1002包括:

第一信息表示单元,被配置为将所述第一类别信息转化为当前数据库架构对应的固定数据结构的结构化数据;和/或

第二信息表示单元,被配置为将所述第二类别信息转化为当前数据库架构对应的扩展数据结构的结构化数据;

其中,所述扩展数据结构内嵌于所述固定数据结构中。

一个可选的实施例中,还包括修正校验模块,被配置为:

为每个节点类别信息和关系类别信息设置对应的基本约束条件;

根据所述基本约束条件对所述第一类别信息和第二类别信息进行校验,并且未通过校验的情况下进行报错。

一个可选的实施例中,所述图谱构建模块1003包括:

三元组构建单元,被配置根据所述当前数据库架构对应的固定数据结构的结构化数据,构建多个知识三元组,并为所述知识图谱三元组中的节点和关系添加对应的属性;

辅助配置单元,被配置为根据所述当前数据库架构对应的扩展数据结构的结构化数据,构建所述多个知识三元组中每个所述知识三元组对应的辅助说明信息;

图谱展示单元,被配置为对所述多个知识三元组以及每个所述知识三元组对应的辅助说明信息进行模式化表示,形成知识图谱结构。

需要说明的是,装置权利要求中的各组成部分应当理解为实现该程序流程各步骤或该方法各步骤所必须建立的功能模块,各个功能模块并非实际的功能分割或者分离限定。由这样一组功能模块限定的装置权利要求应当理解为主要通过说明书记载的计算机程序实现该解决方案的功能模块构架,而不应当理解为主要通过硬件方式实现该解决方案的实体装置。

本申请一实施例还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现以下步骤:

创建图谱编辑器对应的交互控件,通过所述交互控件接收图谱编辑信息;

通过所述图谱编辑器将所述图谱编辑信息转化为与当前数据库架构对应的结构化数据;

基于所述结构化数据生成所述图谱编辑信息对应的知识图谱。

本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述知识图谱构建方法的步骤。

上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该计算机可读存储介质的技术方案与上述的知识图谱构建方法的技术方案属于同一构思,计算机可读存储介质的技术方案未详细描述的细节内容,均可以参见上述知识图谱构建方法的技术方案的描述。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1