一种子图指标特征获得方法、装置、设备及存储介质与流程

文档序号:28533123发布日期:2022-01-19 13:33阅读:69来源:国知局
一种子图指标特征获得方法、装置、设备及存储介质与流程

1.本技术涉及计算机应用技术领域,特别是涉及一种子图指标特征获得方法、装置、设备及存储介质。


背景技术:

2.图,是一种被广泛应用的数据结构,适合用来描述具有内在关联性且联系紧密的数据。在许多应用领域中信息挖掘的问题都可以通过图的相关理论和相应技术来解决,而子图匹配技术作为实现图数据上的能够高效查询的基本操作,也被广泛的应用于各个领域和行业的实际问题中。例如社交网络中的数据分析、互联网中web链接的数据分析、生物数据的分析等等。
3.对于获取到的子图需要对其进行进一步分析,获取到更多可用于机器学习的指标特征,从已有的数据中挖掘出更有价值的东西。那么,如何有效利用获取到的子图获得指标特征,提高数据利用率,是目前本领域技术人员急需解决的技术问题。


技术实现要素:

4.本技术的目的是提供一种子图指标特征获得方法、装置、设备及存储介质,以有效利用获取到的子图获得指标特征,提高数据利用率。
5.为解决上述技术问题,本技术提供如下技术方案:
6.一种子图指标特征获得方法,包括:
7.获得用户构建的指标信息;
8.确定当前待处理的子图集合,所述子图集合包括一个或多个目标子图;
9.依次对所述子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与所述指标信息的匹配关系,获得每个目标子图的指标特征。
10.在本技术的一种具体实施方式中,所述依次对所述子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与所述指标信息的匹配关系,获得每个目标子图的指标特征,包括:
11.依次对所述子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与所述指标信息的匹配关系,确定每个目标子图中的待计算节点;
12.基于每个目标子图中的待计算节点的节点信息,确定每个目标子图的指标特征。
13.在本技术的一种具体实施方式中,目标子图为与预先构建的查询图匹配的子图,所述指标信息包括针对的查询点的标识和属性,所述根据各节点的节点信息与所述指标信息的匹配关系,确定每个目标子图中的待计算节点,包括:
14.针对每个目标子图内的每个节点,确定当前节点与所述查询图中匹配的查询点的标识与所述指标信息中针对的查询点的标识是否一致;
15.如果一致,则根据所述当前节点的属性,确定所述当前节点是否符合所述指标信息中属性的限制;
16.如果符合,则将所述当前节点确定为相应目标子图的待计算节点。
17.在本技术的一种具体实施方式中,目标子图为基于子图切分算法获得的子图,所述指标信息包括针对的本体中的实体点类型和属性,所述根据各节点的节点信息与所述指标信息的匹配关系,确定每个目标子图中的待计算节点,包括:
18.针对每个目标子图内的每个节点,确定当前节点的类型是否与所述指标信息中针对的本体中的实体点类型一致;
19.如果一致,则根据所述当前节点的属性,确定所述当前节点是否符合所述指标信息中属性的限制;
20.如果符合,则将所述当前节点确定为相应目标子图的待计算节点。
21.在本技术的一种具体实施方式中,在所述确定当前待处理的子图集合之后、所述依次对所述子图集合中每个目标子图内的各节点进行遍历之前,还包括:
22.确定所述指标信息中的属性;
23.在数据库中拉回所述子图集合中每个目标子图内的各节点与所述指标信息中的属性相关的属性。
24.在本技术的一种具体实施方式中,在所述依次对所述子图集合中每个目标子图内的各节点进行遍历之前,还包括:
25.对所述子图集合进行拆分,使得拆分得到的每个子集合包括的节点数量小于或等于预设的节点数量上限;
26.相应的,所述在数据库中拉回所述子图集合中每个目标子图内的各节点与所述指标信息中的属性相关的属性,包括:
27.在数据库中分别拉回每个子集合中每个目标子图内的各节点与所述指标信息中的属性相关的属性;
28.所述依次对所述子图集合中每个目标子图内的各节点进行遍历,包括:
29.分批依次对每个子集合中每个目标子图内的各节点进行遍历。
30.在本技术的一种具体实施方式中,目标子图为与预先构建的查询图匹配的子图,所述在数据库中分别拉回每个子集合中每个目标子图内的各节点与所述指标信息中的属性相关的属性,包括:
31.针对每个子集合,对当前子集合中每个目标子图内的节点进行去重处理;
32.在数据库中拉回所述当前子集合中节点与所述指标信息中的属性相关的属性;
33.相应的,所述分批依次对每个子集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与所述指标信息的匹配关系,获得每个目标子图的指标特征,包括:
34.通过遍历操作,分别获得每个子集合中每个目标子图内的各节点的节点信息与所述指标信息的匹配结果;
35.通过各节点记录的子图标识,将同一目标子图内的节点及相应的匹配结果进行合并,得到每个目标子图的指标特征。
36.一种子图指标特征获得装置,包括:
37.指标信息获得模块,用于获得用户构建的指标信息;
38.子图集合确定模块,用于确定当前待处理的子图集合,所述子图集合包括一个或多个目标子图;
39.指标特征获得模块,用于依次对所述子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与所述指标信息的匹配关系,获得每个目标子图的指标特征。
40.一种子图指标特征获得设备,包括:
41.存储器,用于存储计算机程序;
42.处理器,用于执行所述计算机程序时实现上述任一项所述的子图指标特征获得方法的步骤。
43.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的子图指标特征获得方法的步骤。
44.应用本技术实施例所提供的技术方案,获得用户构建的指标信息,并确定当前待处理的子图集合后,可以依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,获得每个目标子图的指标特征。可以有效利用获取到的子图获得指标特征,提高数据利用率。
附图说明
45.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1为本技术实施例中一种子图指标特征获得方法的实施流程图;
47.图2为本技术实施例中一种查询图的具体示例示意图;
48.图3为本技术实施例中一种实体指标的构建示意图;
49.图4为本技术实施例中一种本体的具体示例示意图;
50.图5为本技术实施例中另一种子图指标的构建示意图;
51.图6为本技术实施例中一种子图指标特征获得装置的结构示意图;
52.图7为本技术实施例中一种子图指标特征获得设备的结构示意图。
具体实施方式
53.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
54.参见图1所示,为本技术实施例所提供的一种子图指标特征获得方法的实施流程图,该方法可以包括以下步骤:
55.s110:获得用户构建的指标信息。
56.在实际应用中,可能会有多种指标特征获得需求,用户可以根据实际需求构建相应的指标。比如以下几个指标算子:
57.总数:即计算子图中节点符合总数指标查询点的数量,子图中的节点不仅要匹配上查询点的类型,还要匹配上总数指标设定时对于属性的限制,例如计算子图中匹配上消费者2这个规则点的总数,且匹配上消费者2的节点的性别需要是女,这种属性的限定数量
是不限的,可以对一个查询点进行多个属性的限定;若有多个属性,属性的限定关系可以是“且”,也可以是“或”,例如,消费者2的节点的性别为女且年龄大于25;或者是,消费者2的节点的性别为女或年龄大于25;
58.百分比:即计算子图中节点符合百分比指标查询点的数量占子图中所有节点数量的百分比,属性限制同上;
59.比值:即计算子图中符合分子和分母设置的节点数量比值,属性限制同上,可分别对分子和分母进行属性限制;
60.最大值:即计算子图中符合最大值指标查询节点的指定属性的最大值,该指标涉及子图中节点的属性计算,子图内的节点需要符合查询图或查询图中查询点的类型要求,且符合相应的属性限制,在满足类型和属性限制的前提下,进行对应属性的计算。例如指标为计算符合消费者2的节点中年龄的最大值,且这个节点的性别属性为女。即计算子图中匹配上消费者2的节点,且为女性的年龄最大值;
61.最小值:即计算子图中符合当前查询点的指定属性的最小值,涉及属性计算,属性限制同上;
62.方差:即计算子图中符合当前查询点的指定属性的方差,涉及属性计算,属性限制同上;
63.求和:即计算子图中符合当前查询点的指定属性的和,涉及属性计算,属性限制同上;
64.平均值:即计算子图中符合当前查询点的指定属性的平均值,涉及属性计算,属性限制同上。
65.在具体构建过程中,可以先构建查询图。具体的,可以根据预设的查询规则构建查询图,查询图为一层或多层树结构,包括多个查询点,每个查询点具有各自的节点类型,查询点之间的边表示查询点间关系。图2所示为构建的一种查询图示例,该查询图中包括消费者1、消费者2和省份三个查询点,表明消费者1和消费者2均在同一省份中。
66.构建查询图后,进一步可以构建实体指标,可以设定指标名称、中文名、算子、计算主体等。如图3所示,为一种实体指标的构建示意图,构建的该实体指标是选择的查询图中的某个查询点,如消费者2进行的构建,该实体指标是要计算子图中匹配上消费者2这个查询点的数量。
67.也就是说,指标信息是对应查询树中某一个查询点构建的。例如可以构建一个计数的指标,用于统计子图中符合某一查询点的数量;或是可以计算子图中符合某一查询点的某一属性的平均值。指标信息构建时不仅可以指定查询图中的某个查询点,还可以对这个查询点的属性进行限制,所以构建的指标信息记录了这个指标所对应查询点的标识、查询点类型,还有这个指标所涉及的属性字段的限制信息等。
68.子图指标的指标构建,还可以基于本体构建的,将表格数据转换为图数据。子图指标的指标计算,是基于子图切分算法得到的子图进行计算的。图4所示为构建的一种本体的具体示例示意图。基于本体,进一步可以构建子图指标,可以设定指标名称、中文名、算子、计算主体等。如图5所示,为一种子图指标的构建示意图,构建的该子图指标是要计算每个社区中消费者的平均年龄。一个社区对应一个子图。
69.在实际应用中,可以通过人机交互界面获得用户构建的指标信息。
70.s120:确定当前待处理的子图集合,子图集合包括一个或多个目标子图。
71.可以根据实际需求,确定当前待处理的子图集合。子图集合中包括一个或多个目标子图。可以根据查询图的各查询点类型和查询点间关系,对原始图进行点边过滤处理,获得目标图,再确定目标图中与查询图匹配的子图。即基于预先构建的查询图获得当前待处理的目标子图,可以是一个或多个,其构成的集合为子图集合。还可以基于社区切分获得目标子图,同样可以是一个或多个,其构成的集合为子图集合。
72.s130:依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,获得每个目标子图的指标特征。
73.获得用户构建的指标信息,并确定当前待处理的子图集合后,进一步可以依次对子图集合中每个目标子图内的各节点进行遍历,确定遍历到的各节点的节点信息与指标信息的匹配关系,根据该匹配关系,获得每个目标子图的指标特征。
74.在本技术的一种具体实施方式中,该步骤可以包括以下步骤:
75.步骤一:依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,确定每个目标子图中的待计算节点;
76.步骤二:基于每个目标子图中的待计算节点的节点信息,确定每个目标子图的指标特征。
77.为便于描述,将上述两个步骤结合起来进行说明。
78.在本技术实施例中,在确定当前待处理的子图集合后,可以依次对子图集合中每个目标子图内的各节点进行遍历,将各节点的节点信息与指标信息进行匹配,节点信息可以包括节点类型、节点标识、节点所匹配的查询点的标识、节点所在目标子图的标识、节点属性等等。
79.根据各节点的节点信息与指标信息的匹配关系,可以确定每个目标子图中的待计算节点。可以将具有与指标信息相匹配的节点信息的节点确定为待计算节点。
80.具体的,如果目标子图为与预先构建的查询图匹配的子图,指标信息包括针对的查询点的标识和属性,根据各节点的节点信息与指标信息的匹配关系,确定每个目标子图中的待计算节点,可以包括以下步骤:
81.第一个步骤:针对每个目标子图内的每个节点,确定当前节点与查询图中匹配的查询点的标识与指标信息中针对的查询点的标识是否一致;如果一致,则执行第二个步骤的操作;
82.第二个步骤:根据当前节点的属性,确定当前节点是否符合指标信息中属性的限制;如果符合,则执行第三个步骤的操作;
83.第三个步骤:将当前节点确定为相应目标子图的待计算节点。
84.目标子图可以是与预先构建的查询图匹配的子图,获得的用户构建的指标信息可以包括针对的查询点的标识和属性,如针对的查询点的标识为消费者2,属性为女。确定的当前待处理的子图集合中可以包括一个或多个目标子图。针对每个目标子图内的每个节点,可以确定当前节点与查询图中匹配的查询点的标识与指标信息中针对查询点的标识是否一致。如果一致,则认为当前节点对应于指标信息中包括的针对的查询点。如果不一致,则认为当前节点与指标信息中包括的针对的查询点并不对应,可以忽略当前节点,继续进行下一个节点的判定。
85.在当前节点与查询图中匹配的查询点的标识与指标信息中针对的查询点的标识一致的情况下,进一步可以确定当前节点的属性,根据当前节点的属性,确定当前节点是否符合指标信息中属性的限制,如当前节点的属性是否为女。
86.如果当前节点符合指标信息中属性的限制,则可以将当前节点确定为相应目标子图的待计算节点。如果不符合,则可以忽略当前节点,继续进行下一个节点的判定。
87.目标子图还可以为基于社区切分获得的子图,指标信息包括针对的本体中的实体点类型和属性,根据各节点的节点信息与指标信息的匹配关系,确定每个目标子图中的待计算节点,可以包括以下步骤:
88.步骤一:针对每个目标子图内的每个节点,确定当前节点的类型是否与指标信息中针对的本体中的实体点类型一致;如果一致,则执行步骤二的操作;
89.步骤二:根据当前节点的属性,确定当前节点是否符合指标信息中属性的限制;如果符合,则执行步骤三的操作;
90.步骤三:将当前节点确定为相应目标子图的待计算节点。
91.在本技术实施例中,目标子图为基于社区切分获得的子图,指标信息包括针对的本体中的实体点类型和属性,实体点类型如消费者等,属性为平均年龄等。
92.确定出的当前待处理的子图集合包括一个或多个目标子图,可以依次对子图集合中每个目标子图内的各节点进行遍历,针对每个目标子图内的每个节点,可以先确定当前节点的类型是否与指标信息中针对的本体中的实体点类型一致。如果一致,则可以认为当前节点与指标信息中针对的本体中的实体点相对应,否则,认为二者不对应,可以忽略当前节点,继续进行下一个节点的判定。
93.在当前节点的类型与指标信息中针对的本体中的实体点类型一致的情况下,进一步可以确定当前节点的属性,根据当前节点的属性,确定当前节点是否符合指标信息中属性的限制。如果符合,则可以将当前节点确定为相应目标子图的待计算节点,否则,可以忽略当前节点,继续进行下一个节点的判定。
94.确定出待计算节点后,可以基于每个目标子图中的待计算节点的节点信息,可以确定每个目标子图的指标特征。
95.举例而言,用户构建的指标信息为计算目标子图中匹配上消费者2这个查询点的节点数目,根据目标子图中各节点的节点信息与指标信息的匹配关系,确定出待计算节点后,待计算节点的总数即为该目标子图的指标特征。
96.对各目标子图进行指标特征的获取,可以增加对指标信息所针对目标的描述纬度,针对目标可以是查询点或者本体。另外,使用子图切分算法得到的子图,子图内点有一定的相似性,通过指标计算,可以从子图切分算法得到子图内各个点的属性维度去描述个子图对应的社区的特征。子图切分算法包括社区切分算法、连通图算法等,本技术实施例依据子图切分算法中的社区切分算法还是连通图算法得到子图都不影响本技术实施例的实现,本技术实施例对此不作具体限定。获得每个目标子图的指标特征后,可以将其应用到机器学习中,用于对用户的行为或者可能出现的问题进行预测,还可以将其应用到策略制定中,以更好地、有针对性地制定策略。
97.应用本技术实施例所提供的方法,获得用户构建的指标信息,并确定当前待处理的子图集合后,可以依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的
节点信息与指标信息的匹配关系,获得每个目标子图的指标特征。可以有效利用获取到的子图获得指标特征,提高数据利用率。
98.在本技术的一个实施例中,在确定当前待处理的子图集合之后、依次对子图集合中每个目标子图内的各节点进行遍历之前,该方法还可以包括以下步骤:
99.步骤一:确定指标信息中的属性;
100.步骤二:在数据库中拉回子图集合中每个目标子图内的各节点与指标信息中的属性相关的属性。
101.在本技术实施例中,获得的用户构建的指标信息可以包括属性等信息,在确定当前待处理的子图集合之后,子图集合包括的各目标子图内的节点可能仅记录了自己符合的查询点的标识以及所属的子图的标识,如果子图集合中包括的目标子图内的各节点缺少属性记录,则可以确定指标信息中的属性,在数据库中拉回子图集合中每个目标子图内的各节点与指标信息中的属性相关的属性。
102.数据库中可以记录大而全的节点信息。每个目标子图内的各节点可以仅记录必要的几个信息,在需要属性进行指标计算时,再在数据库中拉回相应属性,可以减少数据量。
103.在本技术的一个实施例中,在依次对子图集合中每个目标子图内的各节点进行遍历之前,还可以包括以下步骤:
104.对子图集合进行拆分,使得拆分得到的每个子集合包括的节点数量小于或等于预设的节点数量上限;
105.相应的,在数据库中拉回子图集合中每个目标子图内的各节点与指标信息中的属性相关的属性,包括:
106.在数据库中分别拉回每个子集合中每个目标子图内的各节点与指标信息中的属性相关的属性;
107.依次对子图集合中每个目标子图内的各节点进行遍历,包括:
108.分批依次对每个子集合中每个目标子图内的各节点进行遍历。
109.在本技术实施例中,在确定当前待处理的子图集合之后,可以对子图集合进行拆分,得到多个子集合,拆分得到的每个子集合包括的节点数量小于或等于预设的节点数量上限。节点数量上限可以根据实际情况进行设定和调整。
110.对子图集合进行拆分后,可以分批对各子集合进行处理。具体的,可以在数据库中分别拉回每个子集合中每个目标子图内的各节点与指标信息中的属性相关的属性,然后分批依次对每个子集合中每个目标子图内的各节点进行遍历。最后得到各目标子图的指标特征。
111.在本技术的一个实施例中,目标子图为与预先构建的查询图匹配的子图,在数据库中分别拉回每个子集合中每个目标子图内的各节点与指标信息中的属性相关的属性,可以包括以下步骤:
112.针对每个子集合,对当前子集合中每个目标子图内的节点进行去重处理;
113.在数据库中拉回当前子集合中节点与指标信息中的属性相关的属性;
114.相应的,分批依次对每个子集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,获得每个目标子图的指标特征,包括:
115.通过遍历操作,分别获得每个子集合中每个目标子图内的各节点的节点信息与指
标信息的匹配结果;
116.通过各节点记录的子图标识,将同一目标子图内的节点及相应的匹配结果进行合并,得到每个目标子图的指标特征。
117.在本技术实施例中,目标子图为与预先构建的查询图匹配的子图,对子图集合进行拆分,得到多个子集合后,同一节点可能出现在多个子图中,如果这种情况频发将会引发内存溢出。所以,针对每个子集合,可以对当前子集合中每个目标子图内的节点进行去重处理,后续都是针对于去重处理后的子集合进行的操作,如在数据库中拉回当前子集合中节点与指标信息中的属性相关的属性。
118.通过遍历操作,可以分别获得每个子集合中每个目标子图内的各节点的节点信息与指标信息的匹配结果,各节点中记录有子图标识,通过各节点记录的子图标识,可以将同一目标子图内的节点及相应的匹配结果进行合并,得到每个目标子图的指标特征。
119.总体来说,本技术实施例中涉及到属性拉回操作,由于同一个节点可以存在于多个目标子图中,所以拉回的属性所占的资源大小其实大于原本图中点属性的资源大小,如果直接对所有目标子图内的节点进行属性拉回,那么在有限的资源下极有可能产生内存溢出的问题。所以,本技术实施例做出以下几点优化:
120.一、只拉回部分在指标特征获得过程中需要使用到的属性,即与指标信息中包括的。
121.二、对子图集合进行拆分,分批进行目标子图的指标特征的获取。
122.三、同一批子集合中目标子图内的节点去重后,先计算节点对应的指标特征再做聚合操作计算目标子图对应的指标特征。
123.指标特征获取操作涉及到的属性可以包括指标本身涉及的属性和指标限定条件涉及到的属性。指标本身涉及到的属性的算子有最大值、最小值、平均值、求和、方差等需要计算特定属性值的算子;指标限定条件涉及到的属性是指目标子图中的节点匹配上查询点后,还需要满足一些属性的限制才进行计算。在获得指标信息后,可以将涉及到的属性记录下来,在节点属性拉回时,只拉回这部分需要计算的属性,其余属性都不拉回,这样可以减小属性拉回占用的资源。
124.分批计算就是在进行指标特征获取前,先设定一个节点数量上限,这个节点数量上限限定了同一批计算最多能计算多少个点,通过节点数量上限将子图集合拆分成多份,一份份的进行指标特征的获取并输出。
125.为了防止分批后同一节点出现在这一批多个目标子图中的情况频发继而引发内存溢出问题,本技术实施例将本批计算的所有节点集中起来进行去重处理,得到一个不重复的节点集合,节点集合内的节点记录了这个节点匹配上了哪些查询点,然后对这个节点集合进行属性拉回,再根据节点上记录的查询点的标识确定是否与指标信息中涉及到的查询点的标识相同,如果相同,再用节点的属性去计算涉及到的指标特征,最终这些不重复的节点记录了所属的子图的标识、所匹配上的指标信息的标识、以及指标特征,此时因为属性已经被计算过,所以不再需要属性。完成以上步骤后,通过所属的子图的标识,可以将同一目标子图内的节点以及这些节点对应的指标特征进行合并,得到对应目标子图的指标特征。
126.相应于上面的方法实施例,本技术实施例还提供了一种子图指标特征获得装置,
下文描述的子图指标特征获得装置与上文描述的子图指标特征获得方法可相互对应参照。
127.参见图6所示,该装置可以包括以下模块:
128.指标信息获得模块610,用于获得用户构建的指标信息;
129.子图集合确定模块620,用于确定当前待处理的子图集合,子图集合包括一个或多个目标子图;
130.指标特征获得模块630,用于依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,获得每个目标子图的指标特征。
131.应用本技术实施例所提供的装置,获得用户构建的指标信息,并确定当前待处理的子图集合后,可以依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,获得每个目标子图的指标特征。可以有效利用获取到的子图获得指标特征,提高数据利用率。
132.在本技术的一种具体实施方式中,指标特征获得模块630,用于:
133.依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,确定每个目标子图中的待计算节点;
134.基于每个目标子图中的待计算节点的节点信息,确定每个目标子图的指标特征。
135.在本技术的一种具体实施方式中,目标子图为与预先构建的查询图匹配的子图,指标信息包括针对的查询点的标识和属性,指标特征获得模块630,用于:
136.针对每个目标子图内的每个节点,确定当前节点与查询图中匹配的查询点的标识与指标信息中针对的查询点的标识是否一致;
137.如果一致,则根据当前节点的属性,确定当前节点是否符合指标信息中属性的限制;
138.如果符合,则将当前节点确定为相应目标子图的待计算节点。
139.在本技术的一种具体实施方式中,目标子图为基于社区切分获得的子图,指标信息包括针对的本体中的实体点类型和属性,指标特征获得模块630,用于:
140.针对每个目标子图内的每个节点,确定当前节点的类型是否与指标信息中针对的本体中的实体点类型一致;
141.如果一致,则根据当前节点的属性,确定当前节点是否符合指标信息中属性的限制;
142.如果符合,则将当前节点确定为相应目标子图的待计算节点。
143.在本技术的一种具体实施方式中,还包括属性拉回模块,用于:
144.在确定当前待处理的子图集合之后、依次对子图集合中每个目标子图内的各节点进行遍历之前,确定指标信息中的属性;
145.在数据库中拉回子图集合中每个目标子图内的各节点与指标信息中的属性相关的属性。
146.在本技术的一种具体实施方式中,还包括拆分模块,用于:
147.在依次对子图集合中每个目标子图内的各节点进行遍历之前,对子图集合进行拆分,使得拆分得到的每个子集合包括的节点数量小于或等于预设的节点数量上限;
148.相应的,属性拉回模块,用于:
149.在数据库中分别拉回每个子集合中每个目标子图内的各节点与指标信息中的属
性相关的属性;
150.指标特征获得模块630,用于:
151.分批依次对每个子集合中每个目标子图内的各节点进行遍历。
152.在本技术的一种具体实施方式中,目标子图为与预先构建的查询图匹配的子图,属性拉回模块,用于:
153.针对每个子集合,对当前子集合中每个目标子图内的节点进行去重处理;
154.在数据库中拉回当前子集合中节点与指标信息中的属性相关的属性;
155.相应的,指标特征获得模块630,用于:
156.通过遍历操作,分别获得每个子集合中每个目标子图内的各节点的节点信息与指标信息的匹配结果;
157.通过各节点记录的子图标识,将同一目标子图内的节点及相应的匹配结果进行合并,得到每个目标子图的指标特征。
158.相应于上面的方法实施例,本技术实施例还提供了一种子图指标特征获得设备,包括:
159.存储器,用于存储计算机程序;
160.处理器,用于执行计算机程序时实现上述子图指标特征获得方法的步骤。
161.如图7所示,为子图指标特征获得设备的组成结构示意图,子图指标特征获得设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
162.在本技术实施例中,处理器10可以为中央处理器(central processing unit,cpu)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
163.处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行子图指标特征获得方法的实施例中的操作。
164.存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本技术实施例中,存储器11中至少存储有用于实现以下功能的程序:
165.获得用户构建的指标信息;
166.确定当前待处理的子图集合,子图集合包括一个或多个目标子图;
167.依次对子图集合中每个目标子图内的各节点进行遍历,根据各节点的节点信息与指标信息的匹配关系,获得每个目标子图的指标特征。
168.在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能(比如信息对比功能、指标计算功能)所需的应用程序等;存储数据区可存储使用过程中所创建的数据,如子图节点数据、指标信息数据等。
169.此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
170.通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
171.当然,需要说明的是,图7所示的结构并不构成对本技术实施例中子图指标特征获
得设备的限定,在实际应用中子图指标特征获得设备可以包括比图7所示的更多或更少的部件,或者组合某些部件。
172.相应于上面的方法实施例,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述子图指标特征获得方法的步骤。
173.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
174.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
175.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
176.本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1