用于存储数据的方法和装置与流程

文档序号:14426593阅读:219来源:国知局

本申请实施例涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及用于存储数据的方法和装置。



背景技术:

知识图谱(knowledgegraph)又称为科学知识图谱,是一种基于图的数据结构,由节点(point)和边(edge)组成。在知识图谱里,每个节点表示现实世界中存在的“实体”,每条边为实体与实体之间的“关系”。

目前,知识图谱广泛应用于搜索、人工智能、深度学习等领域。为搜索中的内容推荐、语义理解、问题回答等提供支持。知识图谱有助于提供更有深度的信息,可以帮助用户找出更加准确、系统的信息。



技术实现要素:

本申请实施例提出了用于存储数据的方法和装置。

第一方面,本申请实施例提供了一种用于存储数据的方法,该方法包括:提取目标数据所包括的实体与关系,其中,目标数据包括至少两个词汇,实体是目标数据中的词汇,关系是目标数据中的、不同于实体的词汇;确定实体的上位词;基于实体与上位词,确定第一实体集合;将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合;关联存储关系与第二实体集合中的每个实体。

在一些实施例中,将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合,包括:获取预定的知识条目集合,其中,知识条目包括实体与关系;将第一实体集合中的每个实体与目标数据中的关系组成为待验证知识条目,得到待验证知识条目集合;确定待验证知识条目集合中的每个待验证知识条目在预定的知识条目集合中出现的次数,将大于预定数值的次数所对应的待验证知识条目所包括的实体的集合确定为第二实体集合。

在一些实施例中,关联存储关系与第二实体集合中的每个实体,包括:确定目标数据中的关系在目标数据或预定的知识条目集合中的重要程度值;响应于确定出重要程度值属于预定范围,关联存储目标数据中的关系与第二实体集合中的每个实体。

在一些实施例中,上述重要程度值是词频-反转文件频率。

在一些实施例中,目标数据是包括词汇序列的非结构化数据;以及提取目标数据所包括的实体与关系,包括:对目标数据进行分词处理,生成词汇序列;确定词汇序列中的各个词汇之间的依存关系;确定各个词汇的词性;提取词汇序列中的实体与关系。

在一些实施例中,预设条件包括预定模板集合中存在与词汇序列所包含的词汇的数量、各个词汇之间的依存关系、各个词汇的词性相匹配的模板,其中,模板用于规定数据所包含的词汇的数量、数据所包含的各个词汇之间的依存关系、数据所包含的各个词汇的词性。

在一些实施例中,预设条件还包括所提取的实体不属于针对目标数据中的关系预先确定的第三实体集合。

第二方面,本申请实施例提供了一种用于存储数据的装置,该装置包括:提取单元,配置用于提取目标数据所包括的实体与关系,其中,目标数据包括至少两个词汇,实体是目标数据中的词汇,关系是目标数据中的、不同于实体的词汇;第一确定单元,配置用于确定实体的上位词;第二确定单元,配置用于基于实体与上位词,确定第一实体集合;第三确定单元,配置用于将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合;存储单元,配置用于关联存储关系与第二实体集合中的每个实体。

在一些实施例中,第三确定单元包括:获取模块,配置用于获取预定的知识条目集合,其中,知识条目包括实体与关系;组成模块,配置用于将第一实体集合中的每个实体与目标数据中的关系组成为待验证知识条目,得到待验证知识条目集合;第一确定模块,配置用于确定待验证知识条目集合中的每个待验证知识条目在预定的知识条目集合中出现的次数,将大于预定数值的次数所对应的待验证知识条目所包括的实体的集合确定为第二实体集合。

在一些实施例中,存储单元包括:第二确定模块,配置用于确定目标数据中的关系在目标数据或预定的知识条目集合中的重要程度值;存储模块,配置用于响应于确定出重要程度值属于预定范围,关联存储目标数据中的关系与第二实体集合中的每个实体。

在一些实施例中,重要程度值是词频-反转文件频率。

在一些实施例中,目标数据是包括词汇序列的非结构化数据;以及提取单元包括:生成模块,配置用于对目标数据进行分词处理,生成词汇序列;第三确定模块,配置用于确定词汇序列中的各个词汇之间的依存关系;第四确定模块,配置用于确定各个词汇的词性;提取模块,配置用于提取词汇序列中的实体与关系。

在一些实施例中,预设条件包括预定模板集合中存在与词汇序列所包含的词汇的数量、各个词汇之间的依存关系、各个词汇的词性相匹配的模板,其中,模板用于规定数据所包含的词汇的数量、数据所包含的各个词汇之间的依存关系、数据所包含的各个词汇的词性。

在一些实施例中,预设条件还包括所提取的实体不属于针对目标数据中的关系预先确定的第三实体集合。

第三方面,本申请实施例提供了一种用于存储数据的设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行,使得该一个或多个处理器实现如上述用于存储数据的方法中任一实施例的方法。

第四方面,本申请实施例提供了一种用于存储数据的计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述用于存储数据的方法中任一实施例的方法。

本申请实施例提供的用于存储数据的方法和装置,通过提取目标数据所包括的实体与关系,而后确定实体的上位词,再基于实体与上位词,确定第一实体集合,之后将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合,最后关联存储关系与第二实体集合中的每个实体,从而丰富了知识图谱的构建方式,有助于提高知识图谱实体与关系提取的准确度,有助于提高数据存储的灵活性。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请可以应用于其中的示例性系统架构图;

图2是根据本申请的用于存储数据的方法的一个实施例的流程图;

图3a是根据本申请的用于存储数据的方法的一个应用场景的示意图;

图3b是根据本申请的用于存储数据的方法的依存关系的一个示意图;

图4是根据本申请的用于存储数据的方法的又一个实施例的流程图;

图5是根据本申请的用于存储数据的装置的一个实施例的结构示意图;

图6是适于用来实现本申请实施例的服务器的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了可以应用本申请的用于存储数据的方法或用于存储数据的装置的实施例的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、搜索类应用、即时通信工具、社交平台软件等。

终端设备101、102、103可以是具有显示屏并且支持数据接收与发送的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的数据提供支持的后台数据处理服务器。后台数据处理服务器可以对接收到的数据进行分析等处理。

需要说明的是,本申请实施例所提供的用于存储数据的方法一般由服务器105执行,相应地,用于存储数据的装置一般设置于服务器105中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

继续参考图2,示出了根据本申请的用于存储数据的方法的一个实施例的流程200。该用于存储数据的方法,包括以下步骤:

步骤201,提取目标数据所包括的实体与关系。

在本实施例中,用于存储数据的方法运行于其上的电子设备(例如图1所示的服务器)可以提取目标数据所包括的实体与关系。

其中,目标数据包括至少两个词汇。目标数据可以包括以下任意一项:包括至少两个词汇的结构化数据、包括至少两个词汇的非结构化数据。结构化数据是一种可以用二维表结构表示的数据。例如,结构化数据可以是“{"id":"xxx","source":"baike","s":"华硕n43xi48jf-sl","kv":{"屏幕尺寸":["14.0英寸"],"硬盘容量":["500gb"],"中文名":["华硕n43xi48jf-sl"],"内存容量":["2gb"]}}”等具有json(javascriptobjectnotation,js对象标记)结构的数据。在实践中,可以从维基百科、百度百科等百科类内容平台,通过爬虫等技术,提取出结构化数据。非结构化数据可以是一段文本。例如,m12螺钉半径等等。实体是目标数据中的词汇。现实世界中的实体可以是个人、图书、学校、建筑楼、空间位置,也可以是某种品牌等等;对计算机而言,实体则是指上述现实世界中的实体所对应的词汇。关系是目标数据中的、不同于实体的词汇。关系可以指与实体具有各种联系(例如关系可以是实体的属性等)的词汇。

在本实施例的一些可选的实现方式中,可以采用如下方法提取上述目标数据所包括的实体与关系:基于机器学习的实体关系抽取方法,基于迭代方法的命名实体关系抽取方法等等。

需要说明的是,上述提取结构化数据或非结构化数据中的实体与关系的技术,是目前本领域的技术人员广泛研究和公知的技术,在此不再赘述。

请参考图3a,在图3a中,服务器(即上述电子设备)中预先存储了大量与现实世界中物体所对应的词汇以及每个词汇的大量的属性词汇。技术人可以预先设定规则:如果目标数据中所包括的词汇与服务器中所存储的、现实世界中物体所对应的词汇一致,则将该词汇作为实体;如果目标数据中所包括含的词汇是实体的属性,则将该词汇作为上述实体的关系。基于此,服务器提取出了目标数据“手机的内存”所包括的实体“手机”与关系“内存”。

步骤202,确定实体的上位词。

在本实施例中,基于步骤201中所提取的实体,上述电子设备可以确定出实体的上位词。其中,上位词是实体的概念上外延更广的词汇。示例性的,“花”可以是“鲜花”的上位词,“植物”可以是“花”的上位词,“植物”可以是“鲜花”的上位词。

在本实施例的一些可选的实现方式中,上述实体的上位词可以是一个,也可以是多个。

在本实施例的一些可选的实现方式中,上述电子设备中可以预先存储有大量的实体以及实体的上位词的序列表。该序列表可以是技术人员通过大量的统计而存储到上述电子设备中的。

请继续参考图3a,其中,服务器确定出了实体(即手机)的上位词“移动终端设备”。

步骤203,基于实体与上位词,确定第一实体集合。

在本实施例中,基于步骤201中所提取的实体以及步骤202中所确定的上位词,上述电子设备可以确定出第一实体集合。其中,上述第一实体集合可以只包括所提取出的实体,也可以只包括上位词(此时将上位词作为第一实体集合中的实体),还可以包括实体和上位词。可以理解,当步骤202所确定出的上位词有多个时,可以将所确定出的上位词中的部分上位词作为上述第一实体集合中的实体。

请继续参考图3a,其中,服务器将所提取出的实体以及所确定出的上位词均作为第一实体集合中的实体,由此,确定出第一实体集合为:手机、移动终端设备。

步骤204,将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合。

在本实施例中,上述电子设备可以将步骤203所确定的第一实体集合中符合预设条件的实体的集合,确定为第二实体集合。其中,上述预设条件可以是技术人员预先设置的条件。示例性的,上述预设条件可以是实体所对应的物理实体均具有所提取的关系所对应的属性。例如,当上述目标数据为“人造卫星的研制单位”时,上述电子设备所提取的实体可以是“人造卫星”,关系可以是“研制单位”。上述电子设备所确定的实体“人造卫星”的上位词可以是“卫星”。然后,上述电子设备所确定的第一实体集合可以是“人造卫星,卫星”。基于上述预设条件,上述电子设备可以按照如下步骤,确定第二实体集合:

首先,依次确定第一实体集合中每个实体是否符合上述预设条件。即:先确定人造卫星是否均具有研制单位;之后,确定卫星是否均具有研制单位。由于人造卫星均具有研制单位,而卫星(例如天然卫星)并非均具有研制单位。由此可以确定人造卫星符合上述预设条件,而卫星不符合上述预设条件。

然后,将符合上述预设条件的实体的集合,确定为第二实体集合。基于上述步骤,可以确定第二实体集合中只包括一个实体,即人造卫星。

在实践中,技术人员可以预先进行统计,以整理出不具有某一个或多个关系的实体(即不具有关系所对应的属性的物理实体所对应的实体词汇)。并将统计结果存储于上述电子设备中,当上述电子设备所确定出的第一实体集合中的实体不具有针对该实体预先设定的关系时,将该实体进行过滤,由此生成第二实体集合。

请继续参考图3a,基于上述步骤204的示例中所记载的预设条件,由于手机与移动终端设备均具有内存,因此,服务器确定出第二实体集合中的实体为手机、移动终端设备。

步骤205,关联存储关系与第二实体集合中的每个实体。

在本实施例中,上述电子设备还可以关联存储关系与第二实体集合中的每个实体。

在本实施例的一些可选的实现方式中,上述电子设备可以以键(key)值(value)对的形式关联存储关系与第二实体集合中的每个实体。例如,将第二实体中的每个实体依次作为键,将上述关系作为值,依次存储每个实体与关系。

在本实施例的一些可选的实现方式中,上述电子设备还可以按照如下步骤进行关联存储:首先,可以在上述电子设备中的存储器中指定一个存储区域,该存储区域用于存储数组,其中,该数组的第一个元素为上述关系,该数组的第二个元素至最后一个元素用于存储上述第二实体集合中的各个实体。

可以理解,上述关联存储关系与第二实体集合中的每个实体的具体方式,本申请实施例不作限制,只要通过上述关联存储的方式可以确定出与上述关系所关联存储的实体,或可以确定出与所存储的某个实体所关联存储的关系即可。

本申请的上述实施例提供的方法通过确定实体的上位词,并基于实体以及上位词确定与所提取的关系关联存储的实体,从而丰富了知识图谱的构建方式。

进一步参考图4,其示出了用于存储数据的方法的又一个实施例的流程400。该用于存储数据的方法的流程400,包括以下步骤:

步骤401,提取目标数据所包括的实体与关系。

在本实施例中,步骤401与图2对应实施例中的步骤201基本一致,这里不再赘述。

步骤402,确定实体的上位词。

在本实施例中,步骤402与图2对应实施例中的步骤202基本一致,这里不再赘述。

步骤403,基于实体与上位词,确定第一实体集合。

在本实施例中,步骤403与图2对应实施例中的步骤203基本一致,这里不再赘述。

步骤404,获取预定的知识条目集合,其中,知识条目包括实体与关系。

在本实施例中,上述电子设备可以获取预定的知识条目集合。其中,知识条目集合可以是技术人员基于大量的统计,所得到的包含大量的实体,以及该大量的实体中的每个实体的关系的知识条目集合。知识条目集合中的每个知识条目所包含的关系是该知识条目所包含的实体的关系。知识条目集合还可以是在提取出大量目标数据的实体与关系的基础上,将对应的实体与关系(即来自于同一目标数据的实体与关系)组合为知识条目,由此可以得到大量知识条目,然后,技术人员又基于大量的统计,对上述大量知识条目进行扩展与补充而得到的知识条目集合。

步骤405,将第一实体集合中的每个实体与目标数据中的关系组成为待验证知识条目,得到待验证知识条目集合。

在本实施例中,上述电子设备可以将第一实体集合中的每个实体与目标数据中的关系组成为待验证知识条目,得到待验证知识条目集合。其中,待验证知识条目可以是用于验证的知识条目。可以理解,通过对待验证知识条目的验证(即筛选)可以确定出一些知识条目所包括的实体与关系相对于其他知识条目所包括的实体与关系而言,具有更多联系(例如实体与关系搭配出现的频次更高可以代表该实体与关系具有更多联系)的实体与关系。

示例性的,第一实体集合中包括两个实体:人造卫星以及卫星,目标数据中的关系为研制单位,则所得到的待验证知识条目集合所包含的待验证知识条目可以是“人造卫星研制单位”;“卫星研制单位”。

步骤406,确定待验证知识条目集合中的每个待验证知识条目在预定的知识条目集合中出现的次数,将大于预定数值的次数所对应的待验证知识条目所包括的实体的集合确定为第二实体集合。

在本实施例中,上述电子设备可以确定待验证知识条目集合中的每个待验证知识条目在预定的知识条目集合中出现的次数,将大于预定数值的次数所对应的待验证知识条目所包括的实体的集合确定为第二实体集合。其中,预设数值可以是技术人员根据需求确定的数值。在实践中,可以根据待验证知识条目集合中的每个待验证知识条目的数目等因素设定该预定数值。示例性的,预定数值可以是100、99等等。可以理解,该预设数值越大表明大于预定数值的次数所对应的待验证知识条目所包括的实体与关系被搭配使用的频率或其间的联系程度(例如实体与关系一起出现的频次)越高,则表明由该实体与该关系所构建的知识图谱的准确程度越高。

示例性的,如果待验证知识条目集合为“人造卫星研制单位”;“卫星研制单位”,知识条目集合为“人造卫星研制单位”;“人造卫星研制单位”;“火箭研制单位”。则上述电子设备可以确定出“人造卫星研制单位”在知识条目集合中出现的次数为2,“卫星研制单位”在知识条目集合中出现的次数为0。如果预定数值为1,则可以确定出第二实体集合中只包括实体“人造卫星”。

步骤407,确定目标数据中的关系在目标数据或预定的知识条目集合中的重要程度值。

在本实施例中,上述电子设备还可以确定目标数据中的关系在目标数据或预定的知识条目集合中的重要程度值。

在本实施例的一些可选的实现方式中,重要程度值可以是目标数据中的关系在目标数据或预定的知识条目集合中所出现的次数。

在本实施例的一些可选的实现方式中,重要程度值可以是词频-反转文件频率。示例性的,可以由预定的知识条目集合中的总词汇次数除以该关系在目标数据中所出现的次数,再将得到的商取对数得到上述词频-反转文件频率(即重要程度值)。

步骤408,响应于确定出重要程度值属于预定范围,关联存储目标数据中的关系与第二实体集合中的每个实体。

在本实施例中,基于步骤407得到的重要程度值,响应于确定出重要程度值属于预定范围,上述电子设备可以关联存储目标数据中的关系与第二实体集合中的每个实体。其中,预定范围可以是技术人员预先确定的范围,例如,大于5的范围。上述关联存储的步骤与图2对应实施例中的步骤205基本一致,这里不再赘述。

在本实施例的一些可选的实现方式中,目标数据可以是包括词汇序列的非结构化数据;以及提取目标数据所包括的实体与关系,包括:对目标数据进行分词处理,生成词汇序列;确定词汇序列中的各个词汇之间的依存关系;确定各个词汇的词性;提取词汇序列中的实体与关系。其中,上述分词处理方法可以是词义分词法、统计分词法、字符串匹配的分词方法等等。上述依存分析可以使语义依存分析、句法依存分析等等。可以基于隐马尔可夫模型hiddenmarkovmodel,hmm)或者基于自然语言处理工具包(naturallanguagetoolkit,nltk)确定词汇的词性。

示例性的,如果目标数据是非结构化数据“m12螺钉外径”,则上述步骤可以如下进行:

首先,上述电子设备可以对目标数据进行分词处理,生成词汇序列“m12,螺钉,外径”。

然后,上述电子设备可以确定各个词汇之间的依存关系。请参考图3b,其示出了根据本申请的用于存储数据的方法的依存关系的一个示意图,该示意图所示出的依存关系即为上述电子设备所确定出的各个词汇之间的依存关系。其中,核心(hed,head)为一种依存关系;定中关系(att,attribute)为另一种依存关系。需要说明的是,上述确定各个词汇之间的依存关系的技术是本领域的技术人员广泛研究的公知技术,在此不再赘述。

之后,上述电子设备可以确定出各个词汇的词性:m12n(名词);螺钉n(名词);外径n(名词)。

最后,上述电子设备可以提取词汇序列中的实体“螺钉”与关系“外径”。

在本实施例的一些可选的实现方式中,预设条件可以包括预定模板集合中存在与词汇序列所包含的词汇的数量、各个词汇之间的依存关系、各个词汇的词性相匹配的模板。其中,模板用于规定数据所包含的词汇的数量、数据所包含的各个词汇之间的依存关系、数据所包含的各个词汇的词性。

示例性的,上述模板可以规定数据所包含的词汇的数量(例如3)、数据所包含的各个词汇之间的依存关系(例如,1号词汇为核心,即hed;2号词汇与1号词汇的依存关系为att;3号词汇与2号词汇的依存关系为att)、数据所包含的各个词汇的词性(例如,3个词汇都是名词)。需要说明的是,上述预定模板集合,可以是技术人员基于大量的自然语言统计出的,用于规定数据所包含的词汇的数量、数据所包含的各个词汇之间的依存关系、数据所包含的各个词汇的词性的,并且在所统计的自然语言中上述数据所包含的词汇的数量、数据所包含的各个词汇之间的依存关系、数据所包含的各个词汇的词性所出现的频次高于预定阈值的模板的集合。

可以理解,当上述电子设备所确定出的各个词汇之间的依存关系、各个词汇的词性,以及所提取的实体与关系与上述预定模板集合中的某一个模板相匹配(例如完全一致,或除词汇顺序外的其他规定两者相一致等等)时,上述电子设备可以确定出预定模板集合中存在与词汇序列所包含的词汇的数量、各个词汇之间的依存关系、各个词汇的词性相匹配的模板。

在本实施例的一些可选的实现方式中,预设条件还可以包括所提取的实体不属于针对目标数据中的关系预先确定的第三实体集合。其中,上述第三实体集合可以是技术人员针对大量的关系中的每个关系预先确定的实体的集合。示例性的,如果关系为“研制单位”,则第三实体集合可以包括“卫星”等词汇。之后,上述电子设备可以通过确定所提取的实体是否是“卫星”,确定是否将所提取的实体确定为第二实体集合中的实体。

从图4中可以看出,与图2对应的实施例相比,本实施例中的用于存储数据的方法的流程400突出了对待关联存储的实体与关系进行筛选的步骤。由此,本实施例描述的方案可以引入更多的筛选方案,从而实现更多样性的知识图谱的构建方式,进一步提高知识图谱实体与关系提取的准确度。

进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于存储数据的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图5所示,本实施例的用于存储数据的装置500包括:提取单元501、第一确定单元502、第二确定单元503、第三确定单元504和存储单元505。其中,提取单元501配置用于提取目标数据所包括的实体与关系,其中,目标数据包括至少两个词汇,实体是目标数据中的词汇,关系是目标数据中的、不同于实体的词汇;第一确定单元502配置用于确定实体的上位词;第二确定单元503配置用于基于实体与上位词,确定第一实体集合;第三确定单元504配置用于将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合;存储单元505配置用于关联存储关系与第二实体集合中的每个实体。

在本实施例中,用于存储数据的装置500的提取单元501可以提取目标数据所包括的实体与关系。其中,目标数据包括至少两个词汇。目标数据可以包括以下任意一项:包括至少两个词汇的结构化数据、包括至少两个词汇的非结构化数据。结构化数据是一种可以用二维表结构表示的数据

在本实施例中,上述第一确定单元502可以确定出实体的上位词。其中,上位词是词汇的概念上外延更广的词汇。示例性的,“花”可以是“鲜花”的上位词,“植物”可以是“花”的上位词。

在本实施例中,上述第二确定单元503可以确定出第一实体集合。其中,上述第一实体集合可以只包括所提取出的实体,也可以只包括上位词(此时将上位词作为第一实体集合中的实体),还可以包括实体和上位词。可以理解,当上述第一确定单元502所确定出的上位词有多个时,可以将所确定出的上位词中的部分上位词作为上述第一实体集合中的实体。

在本实施例中,上述第三确定单元504可以将上述第二确定单元503所确定的第一实体集合中符合预设条件的实体的集合,确定为第二实体集合。其中,上述预设条件可以是技术人员预先设置的条件。

在本实施例中,上述存储单元505可以关联存储关系与第二实体集合中的每个实体。

在本实施例的一些可选的实现方式中,上述存储单元505可以以键(key)值(value)对的形式关联存储关系与第二实体集合中的每个实体。例如,将第二实体中的每个实体依次作为键,将上述关系作为值,依次存储每个实体与关系。

在本实施例的一些可选的实现方式中,上述存储单元505还可以按照如下步骤进行关联存储:首先,可以在存储器中指定一个存储区域,该存储区域用于存储数组,其中,该数组的第一个元素为上述关系,该数组的第二个元素至最后一个元素用于存储上述第二实体集合中的各个实体。

在本实施例的一些可选的实现方式中,第三确定单元包括:获取模块,配置用于获取预定的知识条目集合,其中,知识条目包括实体与关系;组成模块,配置用于将第一实体集合中的每个实体与目标数据中的关系组成为待验证知识条目,得到待验证知识条目集合;第一确定模块,配置用于确定待验证知识条目集合中的每个待验证知识条目在预定的知识条目集合中出现的次数,将大于预定数值的次数所对应的待验证知识条目所包括的实体的集合确定为第二实体集合。

在本实施例的一些可选的实现方式中,存储单元包括:第二确定模块,配置用于确定目标数据中的关系在目标数据或预定的知识条目集合中的重要程度值;存储模块,配置用于响应于确定出重要程度值属于预定范围,关联存储目标数据中的关系与第二实体集合中的每个实体。

在本实施例的一些可选的实现方式中,重要程度值是词频-反转文件频率。

在本实施例的一些可选的实现方式中,目标数据是包括词汇序列的非结构化数据;以及提取单元包括:生成模块,配置用于对目标数据进行分词处理,生成词汇序列;第三确定模块,配置用于确定词汇序列中的各个词汇之间的依存关系;第四确定模块,配置用于确定各个词汇的词性;提取模块,配置用于提取词汇序列中的实体与关系。

在本实施例的一些可选的实现方式中,预设条件包括预定模板集合中存在与词汇序列所包含的词汇的数量、各个词汇之间的依存关系、各个词汇的词性相匹配的模板,其中,模板用于规定数据所包含的词汇的数量、数据所包含的各个词汇之间的依存关系、数据所包含的各个词汇的词性。

在本实施例的一些可选的实现方式中,预设条件还包括所提取的实体不属于针对目标数据中的关系预先确定的第三实体集合。

本申请的上述实施例提供的装置,通过提取单元501提取目标数据所包括的实体与关系,而后第一确定单元502确定实体的上位词,再由第二确定单元503基于实体与上位词,确定第一实体集合,之后第三确定单元504将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合,最后存储单元505关联存储关系与第二实体集合中的每个实体,从而丰富了知识图谱的构建方式,有助于提高知识图谱实体与关系提取的准确度,有助于提高数据存储的灵活性。

下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机系统600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图6所示,计算机系统600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram603中,还存储有系统600操作所需的各种程序和数据。cpu601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。

以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(cpu)601执行时,执行本申请的方法中限定的上述功能。

需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括提取单元、第一确定单元、第二确定单元、第三确定单元和存储单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,提取单元还可以被描述为“提取目标数据所包括的实体与关系的单元”。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:提取目标数据所包括的实体与关系,其中,目标数据包括至少两个词汇,实体是目标数据中的词汇,关系是目标数据中的、不同于实体的词汇;确定实体的上位词;基于实体与上位词,确定第一实体集合;将第一实体集合中符合预设条件的实体的集合,确定为第二实体集合;关联存储关系与第二实体集合中的每个实体。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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