用于数据处理的系统以及数据处理的方法
【技术领域】
[0001]本发明涉及通信领域,更为具体而言,涉及用于数据处理的系统以及数据处理的方法。
【背景技术】
[0002]伴随着互联网的发展,智能化是一个重要的方向,在智能化的过程中,如何理解数据,进行知识计算,即对数据进行解析、清晰、结构化、融合、建边、关系挖掘以及特征挖掘等处理,以将数据转化为用于描述知识的数据,从而将数据从文本变成真实世界的知识,并基于知识进行智能和复杂的运算,是关键的基础技术。然而,在现有的用于知识计算的框架中存在数据筛选过程性能低,数据筛选的方式不灵活,和计算过程强绑定,并且不宜扩展的问题。
【发明内容】
[0003]为有效地解决上述技术问题,本发明提供了一种用于数据处理的系统以及数据处理的方法。
[0004]一方面,本发明的实施方式提供了一种用于数据处理的系统,所述系统包括:
[0005]知识库模块,用于存储计算机可识别的用于描述知识的数据;
[0006]检索模块,用于接收知识计算应用发送的检索语句,根据所述检索语句检索所述知识库模块中的数据,并且将所述检索的结果反馈至所述知识计算应用。
[0007]另一方面,本发明的实施方式还提供了一种数据处理方法,所述方法包括:
[0008]根据所要进行的知识计算生成检索语句;
[0009]根据所述生成的检索语句检索知识库中的数据;
[0010]根据所述检索的结果进行所述知识计算。
[0011]实施本发明提供的用于数据处理的系统以及数据处理的方法可以通过检索的方式将数据筛选抽象为对知识的查询检索,将计算过程和数据筛选过程解耦,从而简化和加快知识计算的过程。
【附图说明】
[0012]图1是根据本发明实施方式的一种用于数据处理的系统的结构示意图;
[0013]图2示出了图1所示的知识库模块100的一种实施方式;
[0014]图3是根据本发明实施方式的用于数据处理的系统的另一种实施方式;
[0015]图4示出了图3所示的检索模块220的一种实施方式;
[0016]图5是根据本发明实施方式的用于数据处理的系统的又一种实施方式;
[0017]图6是根据本发明实施方式的一种数据处理的方法的流程图;
[0018]图7示出了图6所示的处理S130的一种实施方式;
[0019]图8示出了图6所示的处理S120的一种实施方式。
【具体实施方式】
[0020]为使本发明的实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明作详细描述。
[0021]图1是根据本发明实施方式的一种用于数据处理的系统的结构示意图。参见图1,所述系统100包括:知识库模块110以及检索模块120,其中,
[0022]知识库模块110,用于存储计算机可识别的用于描述知识的数据;
[0023]其中,所述用于描述知识的数据例如包括:用于描述客观事物的数据、以及用于描述经验的数据,例如:专家经验、定理、常识以及与领域相关的理论知识等。并且,所述知识库模块中的数据包括:实体数据、关系数据以及关联数据。
[0024]检索模块120,用于接收知识计算应用(运行在本发明所提供的用于知识计算的系统上的应用程序,如知识计算算法实现)发送的检索语句,根据所述检索语句检索所述知识库模块110中的数据,并且将所述检索的结果反馈至所述知识计算应用。
[0025]在本发明的实施方式中,所述知识库模块110,还可以用于接收所述知识计算应用发送的访问请求,根据所述访问请求读取数据,并将所述读取的数据反馈至所述知识计算应用。
[0026]此外,所述知识库模块110,还用于接收并存储所述知识计算应用发送的根据所述检索的结果进行知识计算产生的计算结果。
[0027]如图2所示,所述知识库模块110例如包括:存储单元111、更新单元112以及访问单元113,其中,
[0028]存储单元111,用于存储所述知识库模块中的数据;
[0029]更新单元112,用于接收所述知识计算应用发送的计算结果,并根据所述知识库模块的数据结构,将所述计算结果存储至所述存储单元111 ;
[0030]访问单元113,用于接收所述知识计算应用发送的访问请求,根据所述访问请求从所述存储单元111中读取数据,并将所述读取的数据反馈至所述知识计算应用。
[0031]图3是根据本发明实施方式的用于数据处理的系统的另一种实施方式。如图3所示,该系统200包括:知识库模块210、检索模块220以及索引建立模块230,其中,
[0032]知识库模块210、检索模块220分别同上述的知识库模块110、检索模块120,在此不再赘述;
[0033]索引建立模块230,用于对所述知识库模块210中的数据建立用于检索所述知识库模块中的数据的索引。
[0034]其中,所述索引包括:属性索引、词索引以及图关系索引。
[0035]通过建立所述索引可以解决现有技术中极小的输入数据规模,也需要在庞大的知识库数据上进行全量的运算;数据定位过程漫长,需要进行多次、多维度的数据筛选过程;以及图关系数据的拼装技术过程复杂、计算量大等问题。
[0036]如图4所示,所述检索模块220例如包括:接收单元221、解析单元222、执行单元223以及发送单元224,其中,
[0037]接收单元221,用于接收所述知识计算应用发送的检索语句;
[0038]解析单元222,用于将所述接收单元221所接收的检索语句解析成检索原语组合,其中,所述检索原语映射对所述索引的查询操作;
[0039]执行单元223,用于根据所述解析单元222所解析出的检索原语组合,查询所述索引建立模块中的所述索引以执行对所述知识库模块中的数据的检索;
[0040]发送单元224,用于将所述执行单元223所执行的检索的结果发送至所述知识计算应用。
[0041]在本发明的实施方式中,所述索引例如可以采用分布式索引,对此,所述检索模块220还可以包括结果合并单元,用于将分布式索引的各节点的查询结果进行合并。
[0042]此外,在本发明的优选的实施方式中,为方便管理知识计算应用,简化知识计算应用的开发接口,提高知识计算应用的开发效率,该系统200还可以包括:计算容器,用于管理和调用所述知识计算应用的实现程序以执行所述知识计算应用,并且为所述知识计算应用提供用于调用所述检索模块以及所述知识库模块的接口。
[0043]以下结合具体例子对本发明的实施方式进行具体说明。图5是根据本发明实施方式的用于数据处理的系统的又一种实施方式,参见图5,该系统包括:知识库存储模块、知识检索模块、知识索引模块以及计算容器。
[0044]其中,知识库存储模块用于存储和管理知识库的数据,具体包括:物理存储介质、数据更新接口、数据访问接口以及知识库数据结构单元。
[0045]其中,物理存储介质用于持久化存储知识库中的数据;数据更新接口(上述更新单元的一种实施方式),用于接收外部系统(例如知识计算应用)对知识库中存储的数据进行更新的要求,将外部系统发送的数据(例如知识计算应用所产生的计算结果)根据知识库的数据结构的存储格式存储到所述物理存储介质中;数据访问接口,
用于接收外部系统(例如知识计算应用)访问知识库中的数据的要求,从物理存储介质中读取数据,并按照访问的要求返回数据结果;知识库数据结构单元用于定义知识库的数据结构,包括实体的schema(表)、实体关系、实体关联数据、实体数据状态等。实体的schema描述了实体、实体的标识符以及其属性信息。实体关系,描述了实体数据之间的关系,包括实体之间的边关系,实体集合关系,实体列表关系。实体关联数据,描述和管理与实体数据有关的相关数据。实体数据状态,维护了实体数据的更新、是否有效、操作时间、操作历史、所处计算阶段等状态。实体的schema是描述实体的核心数据结构,必须使用,实体关系、实体关联数据、实体数据状态三种数据结构会按照应用情况选择使用。
[0046]知识索引模块,用于在知识库中的数据上建立及维护知识检索所需要的索引(包括属性索引、词索引以及图关系索引)。知识索引模块具体包括:属性索引单元、词索引单元、图关系索引单元以及索引更新单元,其中,
[0047]索引更新单元用于将知识库里的实体数据、关系数据以及关联数据,转换成属性索引、词索引、图关系索引对应的数据格式,并且更新到相应索引中。
[0048]属性索引单元用于建立和维护知识库中的实体数据以及关联数据的结构化属性的倒排索引。其中,建立该索引的方法是将属性及值相同的实体标识符,构建到同一条索引倒排链,使用索引更新单元的更新数据,建立属性索引,并且,该属性索引单元还用于提供索引查询接口供知识检索模块调用以查询该属性索引。
[0049]词索引单元用于建立和维护知识库中的实体数据以及关联数据中的文本属性的切词的倒排索引。其中,建立该索引的方法是将文本属性进行切词,将属性及切词相同的实体标识符,构建到同一条索引倒排链,使用索引更新单元的更新数据,建立词索引,并且,该词索引单元还用于提供索引查询接口供知识检索模块调用以查询该词索引。
[0050]图关系索引单元用于建立和维护知识库中的实体之间的图关系索引。包括:实体之间的边关系、集合和列表关系。其中,建立该图关系索引的方法是将实体的相同类型的边关系,对应的实体标识符,构建到同一条索引链,以及将从属于同一集合和列表关系的实体标识符构建到统一索引链,使用索引更新单元的更新数据,建立图关系索引,并且,该图关系索引单元还用于提供索引查询接口供知识检索模块调用以查询该图关系索引。
[0051]知识检索模块用于根据知识计算应用发送的检索语句查询知识索引模块提供的属性索引、词索引、图关系索引以执行对所述知识库模块中的数据的检索。所述知识检索模块具体包括:检索语句解析单元、检索执行单元、结果合并单元以及检索结果反馈单元,其中,
[0052]检索语句解析单元用于接收知识计算应用发送的检索语句,并提供一套描述检索的语法规则,以及将所述检索语句,按照语法规则,解析成可以执行的检索原语组合。检索原语是对所述索引进行查询的基础语法,映射对所述索引的查询操作。
[0053]检索执行单元用于按照检索原语组合的要求,调用知识索引模块中相应的查询接口,并且管理和处理多次检索原语的中间数据结果,进行检索过程执行。
[0054]由于所述知识索引模块中的索引可以是分布式索引,因此,所述知识检索模块还包括用于将分布式索引的各节点的查询结果进行合并以得到全局的检索结果的结果合并单元。其中,对于结果合并的处理包括在所述检索的执行过程中以及在检索执行完成后。
[0055]检索结果反馈单元用于将所执行的检索的结果反馈至所述知识计算应用。
[0056]计算容器用于使用知识库存储模块和知识检索模块提供的基础功能,提供给知识计算应用一套执行容器,以完成知识计算过程,包括接口工具包以及执行容器,其中,
[0057]接口工具包封装了知识库存储模块和知识检索模块提供的基础功能,提供给知识计算应用一套可调用的接口。
[0058]执行容器对接知识库存储模块、知识检索模块的运行环境,管理和调用知识计算应用的实现程序,以完成知识计算应用的执行过程。
[0059]以下以实体融合为例,具体说明基于本发明的用于数据处理的系统的一种数据处理的方法。知识计算应用根据所要进行实体融合的新实体数据的一些关键属性(例如名称、来源地址以及关联的实体等)生成检索语句,并将所述生成的检索语句发送至所述知识检索模块;知识检索模块接收该检索语句并根据该检索语句检索所述知识库模块中的数据,从而检索出一组可能进行融合的候选实体,并且将该检索的结果发送至所述知识计算应用,所述知识计算应用接收所述检索的结果,并根据所述检索的结果进行所述实体融合。在本发明的实施方式中,知识检索模块可以只检索知识库存储模块中的数据的一部分数据字段,而数据的全部字段存储在知识库存储模块中。因此所述检索的结果可能不能满足知识计算的需求,该知识计算还需要获取该检索的结果的补充数据,即在知识库存储模块中,与该检索的结果对应的数据中除检索的结果中的数据字段以外的其他数据字段。因此,知识计算应用在接收检索的结果后,根据该检索的结果以及所要进行的实体融合,判断是否需要获取所述检索的结果的补充数据;若不需要,则所述知识计算应用根据所述检索的结果进行所述实体融合;若需要,则所述知识计算应用向所述知识库存储模块发送用于获取所述补充数据的访问请求;所述知识库存储模块根据所述访问请求读取数据,并将所述读取的数据反馈至所述知识计算应用,其中,所述读取的数据包括所述检索的结果以及所述检索的结果的补充数据;所述知识计算应用根据所述读取的数据进行所述实体融合,并将所述实体融合的计算结果发送至所述知识库存储模块;所述知识库存储模块接收并存储所述计算结果。其中,计算结果的存储是通过调用所述知识库存储模块的数据更新接口实现,并且同时调用知识索引模块的索引更新单元触发索引更新。
[0060]图6是根据本发明实施方式的一种数据处理方法的流程图。参见图6,该方法包括:
[0061]SllO:根据所要进行的知识计算生成检索语句;
[0062]S120:根据所述生成的检索语句检索知识库中的数据,其中,所述知识库用于存储计算机可识别的用于描述知识的数据;
[0063]在本发明的实施方式中,所述知识库中的数据包括:实体数据、关系数据以及关联数据。
[0064]S130:根据所述检索的结果进行所述知识计算。
[0065]在本发明的实施方式中,可以只检索知识库中的数据的一部分数据字段,而数据的全部字段存储在知识库中。因此,所述检索的结果可能不能满足知识计算的需求,该知识计算还需要获取该检索的结果的补充数据,即在知识库模块中,与该检索的结果对应的数据中除检索的结果中的数据字段以外的其他数据字段。因此,如图7所示,所述处理S130包括:
[0066]S131:根据所述检索的结果以及所述知识计算,判断是否需要获取所述检索的结果的补充数据,若否,则执行S132,若是,则执行S133 ;
[0067]S132:根据所述检索的结果进行所述知识计算;
[0068]S133:向所述知识库发送用于获取所述补充数据的访问请求,并且,根据所述知识库针对所述访问请求读取的数据,进行所述知识计算。其中,所述读取的数据包括所述检索的结果以及所述检索的结果的补充数据。
[0069]在本发明的实施方式中,还可以将所述知识计算的计算结果发送至所述知识库以使所述知识库接收并存储所述计算结果。
[0070]为解决现有技术中极小的
输入数据规模,也需要在庞大的知识库数据上进行全量的运算;数据定位过程漫长,需要进行多次、多维度的数据筛选过程;以及图关系数据的拼装技术过程复杂、计算量大等问题。还可以预先对所述知识库中的数据建立用于检索所述知识库中的数据的索引。其中,所述索引包括:属性索引、词索引以及图关系索引。
[0071]如图8所示,所述处理S120可以包括:
[0072]S121:将所述检索语句解析成检索原语组合,其中,所述检索原语映射对所述索引的查询操作;
[0073]S122:根据所述解析出的检索原语组合,查询所述索引以执行对所述知识库中的数据的检索。
[0074]在本发明的实施方式中,所述索引可以是分布式索引。对此,所述处理S120还可以包括:在执行该处理S122中的查询所述索引的处理的过程中,将所述分布式索引的节点的查询结果进行合并,或者,在执行该处理S122中的查询所述索引的处理后,将所述分布式索引的节点的查询结果进行合并。
[0075]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可全部借助软件实现,也可以借助软件结合硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对【背景技术】做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,智能手机或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0076]本发明说明书中使用的术语和措辞仅仅为了举例说明,并不意味构成限定。本领域技术人员应当理解,在不脱离所公开的实施方式的基本原理的前提下,对上述实施方式中的各细节可进行各种变化。因此,本发明的范围只由权利要求确定,在权利要求中,除非另有说明,所有的术语应按最宽泛合理的意思进行理解。
【主权项】
1.一种用于数据处理的系统,其特征在于,所述系统包括: 知识库模块,用于存储计算机可识别的用于描述知识的数据; 检索模块,用于接收知识计算应用发送的检索语句,根据所述检索语句检索所述知识库模块中的数据,并且将所述检索的结果反馈至所述知识计算应用。2.如权利要求1所述的系统,其特征在于, 所述知识库模块中的数据包括:实体数据、关系数据以及关联数据。3.如权利要求1所述的系统,其特征在于, 所述知识库模块,还用于接收所述知识计算应用发送的访问请求,根据所述访问请求读取数据,并将所述读取的数据反馈至所述知识计算应用。4.如权利要求3所述的系统,其特征在于, 所述知识库模块,还用于接收并存储所述知识计算应用发送的根据所述检索的结果进行知识计算产生的计算结果。5.如权利要求4所述的系统,其特征在于,所述知识库模块包括: 存储单元,用于存储所述知识库模块中的数据; 更新单元,用于接收所述知识计算应用发送的计算结果,并根据所述知识库模块的数据结构,将所述计算结果存储至所述存储单元; 访问单元,用于接收所述知识计算应用发送的访问请求,根据所述访问请求从所述存储单元中读取数据,并将所述读取的数据反馈至所述知识计算应用。6.如权利要求1至5中任一项所述的系统,其特征在于,所述系统还包括: 索引建立模块,用于对所述知识库模块中的数据建立用于检索所述知识库模块中的数据的索引。7.如权利要求6所述的系统,其特征在于, 所述索引包括:属性索引、词索引以及图关系索引。8.如权利要求6所述的系统,其特征在于,所述检索模块包括: 接收单元,用于接收所述知识计算应用发送的检索语句; 解析单元,用于将所述接收单元所接收的检索语句解析成检索原语组合,其中,所述检索原语映射对所述索引的查询操作; 执行单元,用于根据所述解析单元所解析出的检索原语组合,查询所述索引建立模块中的所述索引以执行对所述知识库模块中的数据的检索; 发送单元,用于将所述执行单元所执行的检索的结果发送至所述知识计算应用。9.如权利要求8所述的系统,其特征在于, 所述索引模块中的所述索引为分布式索引。10.如权利要求9所述的系统,其特征在于,所述检索模块还包括: 结果合并单元,用于将分布式索引的各节点的查询结果进行合并。11.如权利要求6所述的系统,其特征在于,所述系统还包括: 计算容器,用于管理和调用所述知识计算应用的实现程序以执行所述知识计算应用,并且为所述知识计算应用提供用于调用所述检索模块以及所述知识库模块的接口。12.一种数据处理的方法,其特征在于,所述方法包括: 根据所要进行的知识计算生成检索语句; 根据所述生成的检索语句检索知识库中的数据,其中,所述知识库用于存储计算机可识别的用于描述知识的数据; 根据所述检索的结果进行所述知识计算。13.如权利要求12所述的方法,其特征在于, 所述知识库中的数据包括:实体数据、关系数据以及关联数据。14.如权利要求12所述的方法,其特征在于,根据所述检索的结果进行所述知识计算包括: 根据所述检索的结果以及所述知识计算,判断是否需要获取所述检索的结果的补充数据; 若不需要,则根据所述检索的结果进行所述知识计算。15.权利要求14所述的方法,其特征在于,根据所述检索的结果进行所述知识计算还包括: 若需要,则向所述知识库发送用于获取所述补充数据的访问请求, 并且,根据所述知识库针对所述访问请求读取的数据,进行所述知识计算,其中,所述读取的数据包括所述检索的结果以及所述检索的结果的补充数据。16.如权利要求12所述的方法,其特征在于,所述方法还包括: 将所述知识计算的计算结果发送至所述知识库以使所述知识库接收并存储所述计算结果。17.如权利要求12至16中任一项所述的方法,其特征在于,所述方法还包括: 对所述知识库中的数据建立用于检索所述知识库中的数据的索引。18.如权利要求17所述的方法,其特征在于, 所述索引包括:属性索引、词索引以及图关系索引。19.如权利要求17所述的方法,其特征在于,根据所述检索语句检索知识库中的数据包括: 将所述检索语句解析成检索原语组合,其中,所述检索原语映射对所述索引的查询操作; 根据所述解析出的检索原语组合,查询所述索引以执行对所述知识库中的数据的检索。20.如权利要求19所述的方法,其特征在于, 所述索引为分布式索引。21.如权利要求20所述的方法,其特征在于,根据所述检索语句检索所述知识库模块中的数据还包括: 在执行所述查询所述索引的处理的过程中,将所述分布式索引的节点的查询结果进行合并; 或者,在执行所述查询所述索引的处理后,将所述分布式索引的节点的查询结果进行合并。
【专利摘要】本发明提供一种用于数据处理的系统以及数据处理的方法,所述系统包括知识库模块,用于存储计算机可识别的用于描述知识的数据;检索模块,用于接收知识计算应用发送的检索语句,根据所述检索语句检索所述知识库模块中的数据,并且将所述检索的结果反馈至所述知识计算应用。根据本发明提供的技术方案,可以通过检索的方式将数据筛选抽象为对知识的查询检索,将计算过程和数据筛选过程解耦,从而简化和加快知识计算的过程。
【IPC分类】G06F17/30
【公开号】CN104899279
【申请号】CN201510289949
【发明人】王浩, 朱勇, 施文祥, 黎江, 宋勋超, 刘晓波
【申请人】百度在线网络技术(北京)有限公司
【公开日】2015年9月9日
【申请日】2015年5月29日