一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种应用于频繁子图查询的频繁子图索引方法及装置与流程

2021-12-01 02:13:00 来源:中国专利 TAG:


1.本发明涉及数据挖掘技术领域,尤其涉及一种应用于频繁子图查询的频繁子图索引方法及装置。


背景技术:

2.频繁子图:从动态演绎图序列中找到一组子图序列,使得其满足:(1)这些子图在动态图序列中的出现是频繁的;(2)这些子图的图序列随时间变化的情况保持一致。
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.第四确定单元,用于基于所述第二最短路径与所述第三最短路径确定所述目标连接。
47.与现有技术相比,本发明包括以下优点:
48.本发明公开了一种应用于频繁子图查询的频繁子图索引方法及装置,确定频繁子
图集,将频繁子图集划范围各个图集块,为各个图集块建立外存索引;为频繁子图中的各个频繁子图建立内存索引,将各个内存索引存入内存中,将各个内存索引、外存索引和各个图集块存入外存中;在接收对目标图的查询请求的情况下,判断目标图是否为频繁子图;若是,在内存中确定所述目标图的目标内存索引,基于目标内存索引在外存中确定目标图所属目标图集块,获取目标图集块的目标外存索引;基于目标内存索引和目标外存索引为所述目标图建立目标连接。在对目标图进行查询过程中,基于内存索引和外存索引实现了对目标图的查询,不需要提取目标图的特征,提高了查询的速度。
49.当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
50.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
51.图1为本技术实施例公开的一种应用于频繁子图查询的频繁子图索引流程图;
52.图2为本技术实施例公开的一种应用于频繁子图查询的频繁子图索引装置结构框图。
具体实施方式
53.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
54.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
55.本发明公开了一种应用于频繁子图查询的频繁子图索引方法及装置,应用于频繁子图的查询过程中,目前,随着互联网的蓬勃发展,网络的规模在不断的扩大,在大型图数据处理过程中,传统的图模式挖掘算法随着支持度的减小,在时间或空间上代价逐渐增长,在一些特征提取方面也较为复杂,使得挖掘任务很难在合理的时间完成,由于图数据的频繁更新,若要每次更新后都重新进行计算,其代价是十分高的。而用于频繁子图的频繁子图索引(fg

index)方法能够有效的减少数据查询所使用的代价。本发明采用用于频繁子图的fg

index方法,解决了复杂的特征提取问题,有效降低了数据库的动态维护代价,提高了动态图数据上的查询性能,给出了快速实现能源电商用户数据查询的解决方案。所述方法的执行流程如图1所示,包括步骤:
56.s101、确定频繁子图集,将所述频繁子图集划分为各个图集块,为所述各个图集块建立外存索引;
57.本发明实施例中,选取预设数量的频繁子图构建频繁子图集,其中,所述预设数量和选取原则可以基于经验或者具体情况进行设核定,本发明实施例中不进行具体限定,进一步的,获取所述频繁子图集中各个频繁子图的属性特征,将属性特征相同或者相近的频繁子图划分为同一个图集块,优选的,为每个图几块分配外存索引,其中,所述外存索引的具体存在形式本发明实施例中不进行限定。
58.s102、为所述频繁子图中的各个频繁子图建立内存索引,将各个内存索引存入内存中,将所述外存索引和所述各个图集块存入外存中;
59.本发明实施例中,为每个频繁子图分配内存索引,其中,本发明实施例中对所述内存索引的具体存在形式不进行限定,进一步的,获取每个频繁子图的属性特征,将该属性特征与对应的内存索引建立关联,优选的,将各个内存索引存入内存中,将所述外存索引和所述各个图集块存入外存中,其中,基于图块集中包含的频繁子图,建立图块集的外存索引与图块集中各个频繁子图的多个内存索引的对应关系。
60.s103、在接收对目标图的查询请求的情况下,判断所述目标图是否为频繁子图;
61.本发明实施例中,所述目标图是用户发送的待查询图,在在接收对目标图的查询请求的情况下,首先判断所述目标图是否为频繁子图,具体的判断原则如下:
62.预先设置基准频繁子图,其中,所述基准频繁子图包括:基准点和基准边,所述基准点至少为一个,所述基准边至少为一个,首先,获取所述目标图中的各个点和各个边,然后,将所述各个点与预设基准频繁子图中的各个基准点进行比较,和,将所述各个边与所述预设基准频繁子图中的各个基准边进行比较,判断所述各个点与对应的各个基准点的相似度,将得到的相似度与预设的相似度阈值进行比较,判断所述各个边与对应的各个基准边的相似度,将得到的相似度与预设的相似度阈值进行比较,将相似度大于所述预设相似度阈值的点作为目标点,将相似度大于预设相似度阈值的边作为目标边,统计所述目标点和所述目标边的数量,当所述数量大于预设的数量阈值的情况下,判定所述目标图为频繁子图,反之,所述目标图为非频繁子图,其中,所述预设的相似度阈值和所述预设的数量阈值可以基于经验或者具体情况进行设定,本发明实施例中不进行具体限定。
63.s104、在所述内存中确定所述目标图的目标内存索引,基于所述目标内存索引在所述外存中确定所述目标图所属目标图集块,获取所述目标图集块的目标外存索引;
64.本发明实施例中,在所述目标图为频繁子图的情况下,遍历所述内存,查找与所述目标图相似的目标频繁子图,获取所述目标频繁子图的目标内存索引,基于内存索引与外存索引的对应关系,确定与所述目标内存索引对应的目标图集块和所述目标图集块的目标外存索引。
65.s105、基于所述目标内存索引和所述目标外存索引为所述目标图建立目标连接。
66.本发明实施例中,针对每个目标内存索引,采用dijkstra算法将索引内部顶点之间的最短路径计算并保存起来。当查询请求发送过来时,运用dijkstra算法检索索引内部需要访问的最短路径。其中,所述dijkstra算法指从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。该算法主要特点是从起始点开始,采用贪心算法的策略,每次遍历到始点距离最近且未访问过的顶点的邻接节点,直到扩展到终点为止。针对每个外存索引,采用dijkstra算法将索引外部顶点之间的最短路径计算并保存起来。当查询请求发送过来时,运用dijkstra算法检索索引内外部需要访问的最短路径。
67.因此,建立目标链接的过程如下:
68.s1、基于所述目标内存索引确定第一最短路径;
69.s2、基于所述目标外存索引确定第二最短路径;
70.s3、基于所述第一最短路径和所述第二最短路径确定所述目标链接。
71.本发明公开了一种应用于频繁子图查询的频繁子图索引方法,包括:确定频繁子图集,将频繁子图集划范围各个图集块,为各个图集块建立外存索引;为频繁子图中的各个频繁子图建立内存索引,将各个内存索引存入内存中,将各个内存索引、外存索引和各个图集块存入外存中;在接收对目标图的查询请求的情况下,判断目标图是否为频繁子图;若是,在内存中确定所述目标图的目标内存索引,基于目标内存索引在外存中确定目标图所属目标图集块,获取目标图集块的目标外存索引;基于目标内存索引和目标外存索引为所述目标图建立目标连接。在对目标图进行查询过程中,基于内存索引和外存索引实现了对目标图的查询,不需要提取目标图的特征,提高了查询的速度。
72.本发明实施例中还包括:在所述目标图为非频繁子图的情况下,首先在所述目标图在所述内存中建立内存索引,基于dijkstra算法算法确定所述内存索引对应的第三最短路径,获取所述第二最短路径,基于所述第二最短路径和所述第三最短路径确定所述目标连接。
73.本发明实施例中,通过采用用于频繁子图的fg

index方法对动态图上的最频繁变化子图进行数据挖掘处理,使用fg

index方法建立索引并对特殊的频繁子图划分块处理方式,有效的解决了数据库挖掘过程中需要对频繁子图进行复杂的特征提取以及对查询图的子图同构判定而导致效率降低的问题,从而降低了数据库的动态维护代价,有效提高了动态图数据上的查询性能。
74.本发明实施例中,所述方法主要包括:频繁子图fg

index方法部分以及用户最优查询部分,在开发的过程中,两部分起到了承上接下的作用,频繁子图fg

index方法部分对数据库建立索引,并进行了划分块处理,用户最优查询部分有效提高了查询效率,最终得到的查询结果即是最重要的部分。基于频繁子图fg

index方法部分以及用户最优查询部分的主要处理流程如下所示:
75.s1:首先对数据库引入一种特殊的频繁子图,并将其构成一个集合,对构成的集合进行划分块处理,使得任一划分块均为集合的子集。
76.s2:采用fg

index方法对频繁子图建立索引,并将索引存放在内存中,其余放置在外存中。
77.s3:当用户发送查询目标图时,首先根据图的同构判定所述目标图是否为频繁子图,若是,则进行s4,反之,则进行s5。
78.s4:将所述根据内存中的索引直接确定在某一个划分块中,再读取外存中的索引数据运用dijkstra算法进行最优连接。
79.s5:将所述目标图直接建立索引,运用dijkstra算法检索索引内部需要访问的最短路径,并与s4中索引外部的最短路径进行两条路径之间的最优化连接。
80.s6:完成图数据查询,返回查询结果。
81.进一步的,在频繁子图最优查询的fg

index方法中,采用fg

index方法对频繁子图建立索引进行划分块处理,可根据具体情况进行合理的优化调节。
82.本发明实施例中,在大规模的图上进行高效的查询和分析的需求一直都是一项重要的挑战,现有的子图挖掘方法需要复杂的特征提取过程以及重复的更新计算,以及繁杂的子图同构判定过程,导致现有的技术在数据处理时间层面较长,在处理的过程中所付出的空间上代价也较大,在庞大的数据库体系中的整体效率较低,而用于频繁子图的fg

index方法可以有效解决这些问题,简化了索引构建过程以及查询方式。
83.本发明克服了上述缺陷,通过引入特殊的频繁子图的fg

index方法,解决了数据更新后需要重新计算的问题以及降低了无需进行复杂的特征提取与同构判定的时间代价问题,划分块处理有效解决了数据库的空间问题,降低了数据库动态维护的代价,可在用户进行数据查询时直接返回需要的查询结果,有效提高了动态图数据的查询性能,使得在数据更新时能够以最小的代价获得最优的查询结果。正是因为采用了用于频繁子图的fg

index方法才能使得在索引的构建过程中不需要进行复杂的特征提取,使得数据更新后也不需要重构索引,有效降低了数据库的动态维护代价。用户在发送查询请求后,能够快速的返回正确的查询结果,在整体上有效提高了数据的查询性能。
84.基于上述的一种应用于频繁子图查询的频繁子图索引方法,本发明实施例还提供了一种应用于频繁子图查询的频繁子图索引装置,所述索引装置的结构框图如图2所示,包括:
85.划分和建立模块201、第一建立模块202、判断模块203、确定和获取模块204和第二建立模块205。
86.其中,
87.所述划分和建立模块201,用于确定频繁子图集,将所述频繁子图集划分为各个图集块,为所述各个图集块建立外存索引;
88.所述第一建立模块202,用于为所述频繁子图中的各个频繁子图建立内存索引,将各个内存索引存入内存中,将所述外存索引和所述各个图集块存入外存中;
89.所述判断模块203,用于在接收对目标图的查询请求的情况下,判断所述目标图是否为频繁子图;
90.所述确定和获取模块204,用于若是,在所述内存中确定所述目标图的目标内存索引,基于所述目标内存索引在所述外存中确定所述目标图所属目标图集块,获取所述目标图集块的目标外存索引;
91.所述第二建立模块205,用于基于所述目标内存索引和所述目标外存索引为所述目标图建立目标连接。
92.本发明公开了一种应用于频繁子图查询的频繁子图索引装置,确定频繁子图集,将频繁子图集划范围各个图集块,为各个图集块建立外存索引;为频繁子图中的各个频繁子图建立内存索引,将各个内存索引存入内存中,将各个内存索引、外存索引和各个图集块存入外存中;在接收对目标图的查询请求的情况下,判断目标图是否为频繁子图;若是,在内存中确定所述目标图的目标内存索引,基于目标内存索引在外存中确定目标图所属目标图集块,获取目标图集块的目标外存索引;基于目标内存索引和目标外存索引为所述目标图建立目标连接。在对目标图进行查询过程中,基于内存索引和外存索引实现了对目标图的查询,不需要提取目标图的特征,提高了查询的速度。
93.本发明实施例中,所述第一建立模块202包括:
94.第一获取单元206和分配和建立单元207。
95.其中,
96.所述第一获取单元206,用于获取每个频繁子图的属性特征;
97.所述分配和建立单元207,用于为每个频繁子图分配内存索引,将所述内存索引与对应的属性特征建立关联。
98.本发明实施例中,所述判断模块203包括:
99.第二获取单元208、比较单元209和判断单元210。
100.其中,
101.所述第二获取单元208,用于获取所述目标图中的各个点和各个边;
102.所述比较单元209,用于将所述各个点与预设基准频繁子图中的各个基准点进行比较,和,将所述各个边与所述预设基准频繁子图中的各个基准边进行比较;
103.所述判断单元210,用于判断所述各个点和所述各个边的比较结果是否满足预设的相似度阈值。
104.本发明实施例中,所述第二建立模块204包括:
105.第一确定单元211、第二确定单元212和第三确定单元213。
106.其中,
107.所述第一确定单元211,用于基于所述目标内存索引确定第一最短路径;
108.所述第二确定单元212,用于基于所述目标外存索引确定第二最短路径;
109.所述第三确定单元213,用于基于所述第一最短路径和所述第二最短路径确定所述目标链接。
110.本发明实施例中,所述第二建立模块204还包括:
111.建立单元214、检索单元215和第四确定单元216。
112.其中,
113.所述建立单元214,用于若否,为所述目标图在所述内存中建立内存索引,
114.所述检索单元215,用于检索所述内存索引在所述内存中的第三最短路径;
115.所述第四确定单元216,用于基于所述第二最短路径与所述第三最短路径确定所述目标连接。
116.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
117.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
118.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
119.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
120.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
121.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
122.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
123.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
124.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
125.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献