一种基于知识视图的知识图谱数据处理方法和系统与流程

文档序号:28219607发布日期:2021-12-28 23:54阅读:307来源:国知局
一种基于知识视图的知识图谱数据处理方法和系统与流程

1.本说明书涉及数据处理技术领域,特别涉及一种基于知识视图的知识图谱数据处理方法和系统。


背景技术:

2.知识图谱是一种结构化的数据表达方式,能够高效的呈现数据所蕴含的知识信息。在一些应用场景中,不同计算任务可能会共享同一个知识图谱,而在同一知识图谱基础上进行知识应用出现了新的技术问题。
3.因此,有必要提出一种基于知识视图的知识图谱数据处理方法和系统,以更好地实现基于知识图谱的知识应用。


技术实现要素:

4.本说明书实施例的一个方面提供一种基于知识视图的知识图谱数据处理方法。该方法包括:获取知识视图的定义数据,所述知识视图的定义数据至少用于从基础知识图谱中指定目标知识以及对至少部分目标知识的加工方法。基于所述加工方法对所述至少部分目标知识进行知识加工,获得图谱增量数据并进行增量存储,进而获得知识视图元数据,以便数据使用方基于其获取知识视图并加以使用;其中,所述知识视图包括目标知识以及所述图谱增量数据,所述知识视图元数据包括目标知识的存储位置信息,以及所述图谱增量数据的存储位置信息。
5.本说明书实施例的另一个方面提供一种基于知识视图的知识图谱数据处理系统。该系统包括:数据获取模块,可以用于获取知识视图的定义数据,所述知识视图的定义数据至少用于从基础知识图谱中指定目标知识以及对至少部分目标知识的加工方法。知识加工模块,可以用于基于所述加工方法对所述至少部分目标知识进行知识加工,获得图谱增量数据并进行增量存储,进而获得知识视图元数据,以便数据使用方基于其获取知识视图并加以使用;其中,所述知识视图包括目标知识以及所述图谱增量数据,所述知识视图元数据包括目标知识的存储位置信息,以及所述图谱增量数据的存储位置信息。
6.本说明书实施例的另一个方面提供一种基于知识视图的知识图谱数据处理方法,该方法包括:获取知识视图的定义数据,所述知识视图的定义数据至少用于从基础知识图谱中指定目标知识;所述基础知识图谱存储于第一存储区域。确定知识视图元数据,以便数据使用方基于其获取知识视图并加以使用;其中,所述知识视图包括所述目标知识,所述知识视图元数据包括目标知识在第一存储区域的位置信息。
7.本说明书实施例的另一个方面提供一种基于知识视图的知识图谱数据处理装置包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现基于知识视图的知识图谱数据处理方法。
8.本说明书实施例的另一个方面提供一种计算机可读存储介质,所述存储介质存储
计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行基于知识视图的知识图谱数据处理方法。
附图说明
9.本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
10.图1是根据本说明书一些实施例所示的基于知识视图的知识图谱数据处理方法的示例性流程图;
11.图2是根据本说明书一些实施例所示的知识视图的存储关系与应用的示例性示意图;
12.图3是根据本说明书又一些实施例所示的基于知识视图的知识图谱数据处理方法的示例性流程图;
13.图4是根据本说明书一些实施例所示的基于知识视图的知识图谱数据处理系统的示例性模块图;
14.图5是根据本说明书一些实施例所示的知识视图的示例性示意图。
具体实施方式
15.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
16.应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
17.如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
18.本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
19.本说明书所披露的基于知识视图的知识图谱数据处理方法可以应用于多平台或多业务领域数据处理的相关场景中,例如,可以应用于基于安全、保险、支付、财富、智能资金等多个业务领域的数据进行业务任务(如确定某个自然人的资金风险、智慧推理等)计算的场景。
20.对于不同平台、不同业务领域,其分别拥有各自的数据,其可以基于各自的数据在
同一个知识图谱平台上建立多个知识图谱项目,并逐步累积沉淀下海量的知识数据。
21.知识图谱是一种结构化的数据表达方式,能够高效的呈现数据所蕴含的知识信息。在一些应用场景中,知识图谱可以作为一份基础存储支持多个不同场景的下游知识应用。例如,不同平台或不同业务领域别拥有各自的数据,可以基于各自的数据构建一个大而全面的基础知识图谱,打通各业务领域的数据,沉淀海量的知识数据,以供不同业务领域的下游知识应用。下游应用在使用知识图谱时,常常需要基于业务需求对图谱进行筛选,仅使用其中相关的实体或关系进行计算。在一些实施例中,为了更好满足下游应有的需要,还需要对从基础知识图谱筛选出来的目标知识进行加工,使其包含更多的知识信息。如果直接在基础知识图谱上修改,会导致基础存储的知识图谱失去原有的信息,其他下游应用无法使用。为此,本说明书一些实施例提出基于知识视图的图谱数据处理方法,能够保持基础存储的知识图谱不变,而在此基础上根据需要生成满足不同业务需要的知识视图,知识视图可以看作从知识图谱抽取的部分知识或子图。
22.通过生成不同的知识视图以支撑不同的下游应用的同时,如果将大量的知识视图全面存储,则会耗费较多存储资源。为了尽可能节省创建知识视图产生的存储开销,本说明书一些实施例进一步提出最小化加工的思想。即只对加工方法涉及的部分知识进行加工,将加工生成的数据作为图谱增量数据存储,数据使用方在获取知识视图时,基于视图元数据分别从基础存储获取加工不涉及的知识,从增量存储中获取加工结果——图谱增量数据,进而避免了知识的大量重复存储,有效节省了存储开销。
23.以下通过对附图的描述详细阐述本说明书披露的技术方案。
24.图1是根据本说明书一些实施例所示的基于知识视图的知识图谱数据处理方法的示例性流程图。在一些实施例中,流程100可以由处理设备(如知识图谱平台的处理设备)执行。例如,流程100可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程100。流程100可以包括以下操作。
25.步骤102,获取知识视图的定义数据。在一些实施例中,步骤102可以由定义数据获取模块410实现。
26.知识视图不是知识图谱的本体,其更像是图谱的一个视窗,通过知识视图得以“窥见”知识图谱的部分信息,因此称之为视图。本质上讲,知识视图可以视为从知识图谱抽取的部分知识或子图。知识图谱(本说明书中又称为基础知识图谱)可以是指由一系列实体实例以及实体实例之间关系构成的知识库。在一些应用场景中,基础知识图谱包含大量的知识数据,可以供不同业务领域使用。其中,实体可以是对客观个体的广泛抽象,其可以指物理世界中的有形物体,如人、汽车、商户等,也可以指无形的对象,如话语、歌曲、电影、资金、程序代码等等。实体实例可以是实体的抽象概念下对应的实际存在的例子,如人可以具体是张三、李四、李明等,歌曲可以具体是《青花瓷》、《夜莺》、《天鹅湖》,商户具体可以是商户a、商户b、商户c等。实体实例之间可以具有关系,例如商户a与商户b有业务往来、商户c是商户a的子商户、张三是商户a的管理者等。在一些实施例中,实体实例之间的关系亦可看作是对应实体间的关系,例如,人与商户之间可以具有管理关系或雇佣关系等。在一些实施例中,基础知识图谱中的实体实例可以用节点表示,实体实例间关系可以用连接节点的边表示。在一些实施例中,基础知识图谱存储的区域称为第一存储区域,所述区域可以是指专门
用于存储数据的存储设备、某设备的存储介质或者某存储介质中的某一物理存储区域或逻辑存储区域等。
27.在一些实施例中,知识视图可以由一系列实体实例,以及实体实例之间的关系构成。知识视图中的实体实例可以用节点表示,实体实例间关系可以用连接节点的边表示。在一些实施例中,知识视图可以被可视化表示,示例性地,知识视图可以如图5的形式在展示界面(如系统、平台、应用程序等界面)上展示。需要说明的是,为了直观清楚呈现,图5展示的是知识视图中实体及关系的可视化表示,未示出实体以及关系对应的数据实例,图中的节点ydpersonv2、codecompany、codeperson、coderisk表示实体,实体间的连线isubo、shareholder、companyrisk表示实体间的关系。
28.知识图谱可以对应有对其包括的实体、实体间关系等本体进行定义的数据,用以表征知识图谱的本体的语义信息,该数据可以称为知识图谱的schema。在一些实施例中,基础知识图谱的schema可以包括用于定义实体的实体字段。实体字段可以理解为实体名称或实体表征,如实体字段可以是“公司”、“用户”等,实体字段的取值则可以是前述的实体实例,如xx公司,xx用户等。实体字段还可以对应有多个属性字段,属性字段可以是对实体描述信息的抽象,如属性字段可以是“职务”、“年龄”、“注册资本”等,属性字段的取值则可以是其对应实体实例的具体描述,如“技术员”、“28岁”、“500万”等。在一些实施例中,基础知识图谱的schema可以包括用于定义实体间关系的关系描述,关系描述可以是实体间关系类型的抽象概念,如“雇佣关系”、“子母公司关系”、“父子关系”等。在一些实施例中,关系描述可以进一步包括关系属性,关系属性用于对关系描述做进一步说明,如“雇佣关系”可以具体是“临时雇佣”或者“正式雇佣”,“子母公司关系”可以进一步包括“全资控股关系”、“部分控股关系”等。通过关系描述可以在构建知识视图时,确定两个实体实例之间是否具有边。
29.知识视图的定义数据可以是指通过代码语言编写的描述知识视图对应的实体、实体间关系的数据。在一些实施例中,用于描述知识视图的代码语言可以是kg view dsl。在一些实施例中,知识视图的定义数据可以被编译、执行,通过执行编译后的知识视图的定义数据,可以创建一个知识视图。为了便于说明,在本说明书中以kg view dsl语言对知识视图的定义数据进行了说明,但其仅出于示例的目的,也可以是其他语言,本说明书对此不作限定。
30.示例性地,在kg view dsl编写的知识视图的定义数据中可以包括多个部分,例如,算子声明部分、知识标识声明部分、过滤条件以及加工方法。算子也可称为图谱算子。图谱算子可以理解为图计算算法或方法,用于进行图谱或知识构建的数据处理操作或运算,可以用数据处理/运算单元、程序代码、机器学习模型等各种方式实现。在一些实施例中,可以对算子输入数据,算子可以进行相应的数据处理/运算,完成数据的转化,并输出转化后的数据。在一些实施例中,图谱算子可以看作是建立在知识视图的定义数据(包括实体定义与关系描述)上的算法或方法,亦可看作是定义数据的一部分。
31.示例性地,一个通过kg view dsl语言描述的知识视图的定义数据可以如下所示。
32.create fusionop companyequal{
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
script:"codecompany.uscc==ydcompanyv2.uccode
33.}
34.create kgview{
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
codecompany

[shareholder]

>codeperson,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
codecompany

[companyrisk]

>coderisk,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
ydpersonv2

[isubo]

>codecompany
[0035]
}
[0036]
where{
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
codecompany:"registered capital>10^6"
[0037]
}
[0038]
with kgoperator{
ꢀꢀꢀꢀ
companyequal(codecompany,ydcompanyv2)ascode company
[0039]
}
[0040]
其中,create fusionop companyequal表示算子声明部分,此处是声明了一个融合算子fusionop的实例companyequal。算子可以预先构建好,在知识视图的定义数据中声明需要用到哪些算子即可。
[0041]
create kgview表示知识标识声明部分。知识标识声明部分可以用于从基础知识图谱中指定目标知识。
[0042]
with kgoperator表示加工方法。通过执行加工方法部分的语句可以对目标知识进行加工,在一些实施例中,可以调用前述声明的算子对知识视图的实体和/或实体实例进行加工。
[0043]
在一些实施例中,还可以包括过滤条件,如where语句。需要说明的是,过滤条件为可选部分,为非必须。在一些实施例中,知识视图的定义数据还可以省去算子声明以及加工方法部分,此时,知识视图只用于从基础知识图谱中指定目标知识,而无需对目标知识做进一步加工。以上例子仅出于示例的目的,并不旨在对知识视图的定义数据的形式做任何限定。
[0044]
在一些实施例中,可以由下游应用方(可以视为知识图谱平台的用户)或其他用户编写知识视图的定义数据,进而创建其应用所需的知识视图。知识图谱平台可以提供知识视图创建、编译以及执行环境,通过执行用户编写的知识视图的定义数据,生成用户需要的知识视图。在一些实施例中,知识图谱平台还可以提供所述图谱算子,供用户调用,提高用户创建知识视图的效率。
[0045]
在一些实施例中,知识视图的定义数据至少可以用于从基础知识图谱中指定目标知识以及用于指定对至少部分目标知识的加工方法。其中,知识视图的定义数据中的知识标识声明部分可以从基础知识图谱中指定目标知识,知识加工可以用于对至少部分目标知识进行加工。目标知识可以是指需要从基础知识图谱中获取的实体实例以及这些实体实例间的关系。例如,知识视图的定义数据可以从知识图谱的schema层面从基础知识图谱中指定用户、公司实体,以及用户与公司的关系为雇佣关系。后续在进行知识加工时,可以基于指定的目标知识,从基础知识图谱的基础存储的数据中获取到该些实体对应的数据实例,并通过加工方法对其进行加工。加工方法可以用于调用算子,通过算子执行对部分目标知识的处理方法,对部分目标知识进行加工。加工方法可以调用的算子可以包括属性标化算子、融合算子、链指算子中的一种或多种,以实现对部分目标知识的属性标化、实体融合或建立链指。关于知识加工的更多细节可以参见步骤104中的相关描述,此处不再赘述。
[0046]
下文对知识标识声明部分,以及过滤条件进行详细说明。
[0047]
在一些实施例中,知识标识声明部分可以包括实体名和边名。例如,上文示例中的知识标识声明部分的语句codecompany

[shareholder]

>codeperson中,codecompany和codeperson表示实体名,短折号和箭头表示边,[shareholder]表示边的名称。知识标识声明部分可以用于通过实体标识和/或边标识从基础知识图谱中指定对应实体和/或边的数据实例,进而指定目标知识。在一些实施例中,实体标识和边标识可以对应是实体名和边名。指定可以理解为圈定、挑选或选择,为了最大限度的节省存储以及计算开销,本步骤并不会进行目标知识的加载。从基础知识图谱中指定对应实体和/或边的数据实例则可以理解为从基础知识图谱中挑选对应实体和/或边的数据实例。例如,挑选满足实体名为codecompany、codeperson,且节点间的边名为shareholder的数据实例。根据对应的实体名和/或边名,即可到基础知识图谱中找到对应的实体名或边名下的数据实例,得到目标知识。可以理解,边自动包含了点,因此在知识标识声明部分,在指定边之后,就可以实现对实体的指定,而无需单独对实体进行指定。在一些实施例中,知识标识声明部分也可以对实体进行单独声明或指定。
[0048]
在一些实施例中,知识视图的定义数据还可以包括过滤条件。过滤条件可以用于基于属性对所述知识标识声明部分指定的数据实例进行过滤,此时,目标知识为对前述指定的数据实例进行过滤后的数据实例。示例性地,在知识视图的定义数据中,可以添加where条件语句作为过滤条件,比如,将where语句添加在知识标识声明部分和加工方法之间。比如,添加语句where{codeperson:“age>30”}表示过滤条件,该过滤条件可以解读为过滤掉年龄不超过30岁的人,或者说,指定的目标知识中的codeperson对应的数据实例都是大于30岁的。可以理解,知识标识声明部分用于从基础知识图谱中挑选出较大范围内的数据实例,过滤条件则用于对知识标识声明部分挑选出来的数据实例做进一步地过滤,得到更加准确的符合数据使用方的使用需求的目标知识。
[0049]
步骤104,基于所述加工方法对所述至少部分目标知识进行知识加工,以获得图谱增量数据并存储。在一些实施例中,步骤104可以通过知识加工模块420实现。
[0050]
在一些实施例中,知识视图可以是直接从基础知识图谱挑选出来的部分知识,无需进一步知识加工(详见图3的相关说明)。在一些实施例中,还需要对从知识图谱挑选出来的部分知识中的部分或全部进行加工,进而得到应用所需的知识视图。在一些实施例中,处理设备可以通过知识视图的定义数据中的加工方法对指定的目标知识中的至少一部分进行加工。其中,加工可以是对目标知识中的相同实体进行融合、或者实体的属性进行标准化表达或者为实体建立新的关系。可以理解,通过知识加工,可以进一步丰富目标知识中的信息量,或者使其更适于后续数据应用。加工得到的数据称为图谱增量数据,这意味着加工得到的数据是相对基础知识图谱新增的信息。
[0051]
在一些实施例中,图谱增量数据需要另外存储,以免写回到基础知识图谱中引起基础数据的变更,干扰其他应用。或者说,对图谱增量数据进行增量存储,以避免改变原有的知识图谱的存储。例如,图谱增量数据可以存储在第二存储区域,而原有的知识图谱则完整的保留在第一存储区域。第二存储区域与第一存储区域隔离,隔离可以是指第二存储区域中的数据与第一存储区域中的数据不会产生交集或覆盖。在一些实施例中,第二存储区域的类型可以与第一存储区域的类型相同或不同。
[0052]
参见前述知识视图的定义数据的示例,其中的with kgoperator语句即是加工方法,其调用了实体融合算子,对选自基础知识图谱中的codecompany以及ydcompanyv2实体进行融合,并将融合后的实体统称为codecompany。
[0053]
在一些实施例中,知识图谱平台可以向用户提供多种图谱算子,包括但不限于属性标化算子、融合算子以及链指算子。用户在编写加工方法时可以调用这些算子以提高视图创建的效率。
[0054]
属性标化可以是指将实体实例的属性标准化。例如,时间属性、货币属性标准化等。如,两个实体实例的时间属性分别为13:00和pm2:00,可以将其属性标准化为13:00、14:00或pm1:00、pm2:00。又如,将不同的货币标化为同一种货币。属性标化算子可以输入实体或边的属性信息,并输出标准化后的属性表达。
[0055]
实体融合可以是指将语义相似或相同的实体实例进行融合。例如,由于来源不同,同一实体具有不同的表达形式,作为示例,飞利浦公司在有些时候被叫作飞利普公司,则可以对这些实体进行融合。在一些实施例中,实体融合可以是两个或两个以上的实体间的融合。具体的,融合算子可以获取待融合实体的属性以及边(如一跳子图信息),将各待融合实体的属性的并集或并集中的部分作为融合后实体的属性,将各待融合实体的边的并集作为融合后实体的边。而融合后实体的名称可以使用待融合实体中的任一个名称,如统一为飞利浦公司。
[0056]
建立链指可以是指基于实体的属性或者其他相关的背景信息,建立相应两个实体的关系描述。例如,实体“商品”对应有属性“商品类型”,实体“商户”对应有属性“主营范围”,则可以基于两者的属性建立“商品”和“商户”之间的关系描述为销售关系。链指算子的输入数据可以包括源实体、源实体的相关属性值(或者还包括相关上下文信息、背景信息等)、候选目标实体,输出数据为源实体

[关系类型或边名称]

目标实体。
[0057]
在一些实施例中,处理设备可以按照下文实施例所描述的方法,基于加工方法对至少部分目标知识进行加工,获得图谱增量数据。
[0058]
在一些实施例中,处理设备可以确定加工方法涉及的实体标识和/或边标识,作为待加工知识标识。处理设备可以从知识视图的定义数据中的加工方法的语句中确定涉及到的实体标识和/或边标识。例如,加工方法语句“companyequal(codecompany,ydcompanyv2)as codecompany”中,其中所涉及到的实体标识则可以确定包括codecompany、ydcompanyv2。
[0059]
处理设备可以基于待加工知识标识从基础知识图谱中获取对应实体和/边的数据实例。在一些实施例中,处理设备可以基于待加工标识从基础知识图谱对应的知识数据中查询得到对应实体和/或边的数据实例。
[0060]
处理设备可以基于加工方法对所述数据实例进行知识加工,以获得所述图谱增量数据。如上文所述,处理设备可以通过执行知识视图的定义数据中的知识加工部分的语句调用对应的图谱算子,调用图谱算子就能完成对数据实例的加工,得到图谱增量数据。
[0061]
在一些实施例中,处理设备可以通过调用算子的方式执行所述加工方法。加工方式具体可以是离线加工。基础知识图谱中往往会涉及到大量的实体实例、实体实例关系数据,采用离线计算的方式,可以更加适应知识加工任务的计算量,提高知识视图的创建效率。
[0062]
在一些实施例中,当知识视图的定义数据中涉及到过滤条件时,处理设备可以进一步确定加工方法涉及的实体标识和/或边标识是否具有过滤条件,当具有时,则将对应的过滤条件作为待加工过滤条件。进一步的,处理设备基于所述待加工过滤条件对基于所述待加工知识标识对应的数据实例进行过滤,得到过滤后的数据实例。过滤可以是指从数据实例中选择出一部分知识,如从codeperson对应的数据实例中选出年龄大于30岁的数据实例,之后再基于所述加工方法对所述过滤后的数据实例进行知识加工,以获得所述图谱增量数据。
[0063]
上述实施例中未详尽描述的部分可以参考上文关于知识加工的描述,此处不再赘述。
[0064]
本步骤只对加工方法涉及的数据实例进行加载、过滤以及处理,较大程度减少了数据处理的计算开销,避免重复数据存储,有效节约了存储资源。
[0065]
在执行完步骤104后,便可得到知识视图元数据,以便数据使用方基于其获取知识视图并加以使用。
[0066]
在一些实施例中,流程100还可以包括步骤106,确定知识视图元数据。
[0067]
知识视图元数据可以是指描述知识视图中的实体实例和实体实例间关系的存储位置的配置数据。知识视图的知识数据可以包括目标知识和图谱增量数据。知识视图包括的目标知识可以是知识标识声明部分从基础知识图谱中指定的目标知识的全部,也可以是其中的一部分,例如,可以是识标识声明部分从基础知识图谱中指定的目标知识中未参与加工的部分。其中,目标知识依然存储于基础知识图谱中,图谱增量数据的存储位置可以是另外确定的专门用于存储加工结果的位置。例如,如图2所示,基础知识图谱的知识数据的存储位置为第一存储区域,知识视图的图谱增量数据的存储位置为第二存储数据,根据知识视图的数据实例的存储位置,可以确定知识视图元数据,比如,对目标知识在第一存储区域和图谱增量数据在第二存储区域中的位置进行整理汇总,得到知识视图元数据。知识视图元数据可以包括目标知识在第一存储区域的位置信息和图谱增量数据在第二存储区域的位置信息。
[0068]
数据使用方,也即下游应用方,可以基于知识视图的元数据分别从第一存储区域和第二存储区域获取知识视图的实体实例及其关系数据。例如,数据使用方首先可以基于知识视图的元数据确定目标知识在第一存储区域中的位置和图谱增量知识在第二存储区域中的位置,然后分别从第一存储区域和第二存储区域中加载知识并加以使用。所述使用包括但不限于知识推理、样本生成、关联分析、表示学习等。
[0069]
在一些实施例中,数据使用方可以基于未加工知识标识从第一存储区域获取未加工的目标知识。可以理解,加工方法涉及的目标知识为待加工知识,其余目标知识则为不需要加工的知识。进一步,可以通过加工方法涉及的知识标识确定未加工知识标识。例如,上述示例中的知识标识声明部分指定了目标知识包括codecompany

[shareholder]

>codeperson,codecompany

[companyrisk]

>coderisk,ydpersonv2

[isubo]

>codecompany中的实体实例以及关系实例,其中,实体codeperson、coderisk以及上述三种边不被加工方法涉及,可以作为未加工知识标识。对于未加工知识标识,知识图谱平台不会从基础知识图谱中获取或加载其对应的实例数据而是在数据使用方加载知识视图时自行基于未加工知识标识从第一存储区域获取对应的数据实例,进而降低存储以及计算开销。
[0070]
在一些实施例中,知识视图的定义数据中还包括过滤条件,其中,加工方法不涉及的知识标识相关的过滤条件可以作为未加工过滤条件。知识图谱平台不会对不需要加工的数据实例进行过滤,而是数据使用方在加载未加工的目标知识时,基于未加工过滤条件对未加工知识标识对应的数据实例进行过滤,即,未加工知识标识以及所述未加工过滤条件用于在数据使用方从第一存储区域获取未加工的目标知识时作为对所述基础知识图谱的筛选条件。
[0071]
在本说明书实施例中,用户可以根据实际业务需求从基础知识图谱中灵活的选取目标知识,以及对部分目标知识进行加工,并对加工后得到的图谱增量数据进行增量存储,不会对原有的基础知识图谱的数据产生影响。知识视图在生成后,根据知识视图的知识数据的存储位置生成知识视图元数据,可以供多个不同类型的数据使用方重复使用,提高了知识视图的应用灵活性。同时,只对加工方法涉及的部分目标知识进行加工,将加工生成的数据作为图谱增量数据存储,未加工部分的目标知识仍存储于基础知识图谱的基础存储中,避免了将整个知识视图进行存储,大大节省了存储开销。
[0072]
在一些实施例中,流程200中的知识加工过程可以省去,为此本说明书还提供了另一种基于知识视图的知识图谱数据处理方法。
[0073]
图3是根据本说明书又一些实施例所示的基于知识视图的知识图谱数据处理方法的示例性流程图。在一些实施例中,流程300可以由处理设备,如知识图谱平台的处理设备,执行。例如,流程300可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程300。流程300可以包括以下操作。
[0074]
步骤302,获取知识视图的定义数据。
[0075]
在一些实施例中,所述知识视图的定义数据至少包括知识标识声明部分。所述知识标识声明部分可以用于通过实体标识和/或边标识从所述基础知识图谱中指定对应实体和/或边的数据实例,进而指定目标知识。所述基础知识图谱存储于第一存储区域。
[0076]
步骤304,确定知识视图元数据,以便数据使用方基于其获取知识视图并加以使用。
[0077]
知识视图包括目标知识。所述知识视图元数据包括目标知识在第一存储区域的位置信息,所述知识标识声明用于在数据使用方从第一存储区域获取未加工的目标知识时作为对基础知识图谱的筛选条件。
[0078]
在一些实施例中,知识视图的定义数据中还可以包括过滤条件。数据使用方在基于知识视图元数据获取目标知识时,可以基于过滤条件对基于知识标识声明指定的实体和/边的数据实例进一步筛选。本实施例中,用户可以通过知识图谱的定义数据对基础知识图谱中的知识进行选择及过滤,得到应用所需的知识视图,有效避免了不同应用共享一份知识图谱时产生的相互干扰,同时最大限度降低了存储与计算开销。
[0079]
关于图3的内容的更多说明,可以参见步骤图2中的相关描述,此处不再赘述。
[0080]
应当注意的是,上述有关各流程的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,对本说明书有关流程步骤的改变,如添加预处理步骤和存储步骤等。
[0081]
图4是根据本说明书一些实施例所示的基于知识视图的知识图谱数据处理系统的示例性模块图。如图4所示,系统400可以包括定义数据获取模块410和知识加工模块420。
[0082]
定义数据获取模块410可以用于获取知识视图的定义数据。
[0083]
所述知识视图的定义数据至少用于从基础知识图谱中指定目标知识以及用于指定对至少部分目标知识的加工方法。
[0084]
所述知识视图的定义数据包括知识标识声明部分;所述知识标识声明部分用于通过实体标识和/或边标识从所述基础知识图谱中指定对应实体和/或边的数据实例,进而指定目标知识。
[0085]
在一些实施例中,所述知识视图的定义数据还包括过滤条件,所述过滤条件用于基于属性对所述知识标识声明部分指定的数据实例进行过滤,目标知识为过滤后的数据实例。
[0086]
在一些实施例中,所述基础知识图谱存储于第一存储区域。
[0087]
在一些实施例中,可以由下游应用方(可以视为知识图谱平台的用户)或其他用户可以通过定义数据获取模块410编写获取得到知识视图的定义数据,进而创建其应用所需的知识视图。
[0088]
知识加工模块420可以用于基于所述加工方法对所述至少部分目标知识进行知识加工,获得图谱增量数据并进行增量存储,进而获得知识视图元数据,以便数据使用方基于其获取知识视图并加以使用。
[0089]
在一些实施例中,所述图谱增量数据存储于第二存储区域。
[0090]
在一些实施例中,知识加工模块420可以确定加工方法涉及的实体标识和/或边标识,作为待加工知识标识;基于所述待加工知识标识从所述基础知识图谱中获取对应实体和/边的数据实例;基于所述加工方法对所述数据实例进行知识加工,以获得所述图谱增量数据。所述加工方法用于调用以下算子中的一种或多种,进而实现属性标化、实体融合或建立链指:属性标化算子、融合算子、链指算子。
[0091]
在一些实施例中,加工方法不涉及的实体标识和/或边标识为未加工知识标识;所述未加工知识标识用于在数据使用方从第一存储区域获取未加工的目标知识时作为对所述基础知识图谱的筛选条件。
[0092]
在一些实施例中,知识加工模块420可以确定加工方法涉及的实体标识和/或边标识、以及过滤条件,将所述实体标识和/或边标识作为待加工知识标识,将所述过滤条件作为待加工过滤条件;基于所述待加工知识标识从所述基础知识图谱中获取对应实体和/边的数据实例;基于所述待加工过滤条件对所述数据实例进行过滤,得到过滤后的数据实例;基于所述加工方法对所述过滤后的数据实例进行知识加工,以获得所述图谱增量数据。
[0093]
在一些实施例中,加工方法不涉及的实体标识和/或边标识为未加工知识标识,加工方法不涉及的过滤条件为未加工过滤条件;所述未加工知识标识以及所述未加工过滤条件用于在数据使用方从第一存储区域获取未加工的目标知识时作为对所述基础知识图谱的筛选条件。
[0094]
所述知识视图包括未加工的目标知识以及所述图谱增量数据,所述知识视图元数据包括未加工的目标知识在第一存储区域的位置信息,以及所述图谱增量数据在第二存储区域的位置信息。
[0095]
关于以上所示的系统的各模块的具体描述,可以参考本说明书流程图部分,例如,图2至图3的相关说明。
[0096]
应当理解,图4所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd

rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
[0097]
需要注意的是,以上对于基于知识视图的知识图谱数据处理系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,定义数据获取模块410和知识加工模块420可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,数据获取模块410和知识加工模块420可以是两个模块,也可以是一个模块同时具有获取和知识加工功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
[0098]
本说明书实施例可能带来的有益效果包括但不限于:(1)建立知识视图时,不会对原基础知识图谱产生更改,可以保证其他下游应用基于基础知识图谱的应用;(2)建立的知识视图可以重复被下游应用使用:(3)只对加工方法涉及的部分知识进行加工,减少了知识加工的计算开销;(4)知识视图的数据的存储分为两部分,一部分为基础知识图谱原有的基础存储,一部分为加工的图谱增量数据的增量存储,极大地节省了存储开销。
[0099]
需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
[0100]
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
[0101]
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
[0102]
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或
对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
[0103]
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质,或任何上述介质的组合。
[0104]
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c++、c#、vb.net、python等,常规程序化编程语言如c语言、visual basic、fortran 2003、perl、cobol 2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(lan)或广域网(wan),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(saas)。
[0105]
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
[0106]
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
[0107]
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有
±
20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
[0108]
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、
书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
[0109]
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1