CN104102699B - 一种聚簇图集合中的子图检索方法 - Google Patents
一种聚簇图集合中的子图检索方法 Download PDFInfo
- Publication number
- CN104102699B CN104102699B CN201410313170.5A CN201410313170A CN104102699B CN 104102699 B CN104102699 B CN 104102699B CN 201410313170 A CN201410313170 A CN 201410313170A CN 104102699 B CN104102699 B CN 104102699B
- Authority
- CN
- China
- Prior art keywords
- mrow
- node
- clusters
- msub
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种聚簇图集合中的子图检索方法,包括:索引建立步骤,根据聚簇图的结构信息和结点属性计算聚簇图集合中各聚簇图之间的相似性,根据各聚簇图之间的相似性采用层次聚类算法将相近的聚簇图聚类,直到剩下一个聚簇图;子图检索步骤;根据用户发起查询图的结构以及顶点属性,对聚簇图索引树采用树的自顶向下的方式进行查询图的同构匹配。本发明通过在数据集合中建立树形索引,尽早过滤不包含查询图的数据项,进行加快查询速度,提高查询效率。
Description
技术领域
本发明属于图形数据检索技术领域,更具体地,涉及一种聚簇图集合中的子图检索方法。
背景技术
图形数据被广泛作为社交应用的数学模型,为了防止恶意攻击者根据用户特有的好友关系还原用户并获取用户的敏感信息,科技工作者设计了各种各样的匿名方法。聚簇化是将属性和结构相近的用户组合到一起,对外呈现同一属性和结构的方式。聚簇化后,数据拥有者将数据发布到开放的数据共享平台以供科技工作者利用社交应用的数据进行相关的研究工作。但是,由于聚簇化后的图数据匹配中,结点之间存在一对多的映射关系,目前尚未存在有效子图检索技术用于解决该类型数据集合中的子图检索问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明的目的是提供一种聚簇图集合中的子图检索方法,其通过为聚簇图集合建立树形索引,尽早过滤掉不符合查询约束的聚簇图数据项,缩小查询空间,进而提高检索效率。
为实现上述目的,本发明提供了一种聚簇图集合中的子图检索方法,所述包括以下步骤:
(1)索引建立步骤:根据聚簇图的结构信息和结点属性计算聚簇图集合中各聚簇图之间的相似性,根据各聚簇图之间的相似性采用层次聚类算法将相近的聚簇图聚类,直到剩下一个聚簇图,从而将聚簇图集合转化成聚簇图索引树;
(2)子图检索步骤:根据用户发起查询图的结构以及顶点属性,对聚簇图索引树采用树的自顶向下的方式进行查询图的同构匹配;若某中间聚簇图不包含查询图,则其子孙节点代表的聚簇图不需要进行匹配,因此将该中间聚簇图及其子孙过滤掉;若某节点代表的聚簇图包含查询图,若该聚簇图不是数据图,则将其孩子节点表示的聚簇图加入待检测队列,若该聚簇图是数据图,则将其加入结果集;最终将结果集合返回给用户。
本发明的一个实施例中,所述步骤(1)中根据聚簇图的结构信息和结点属性计算聚簇图集合中各聚簇图之间的相似性具体根据下式计算:
任意两个聚簇图G1和G2之间的相似性为
其中:
公式用于计算顶点u发生的信息损失,用于计算属性信息损失,用于计算结构信息损失;ω为权重参数,用于调节信息损失中属性信息损失和结构信息损失之间的权重;L表示顶点属性的个数,表示顶点u所在结点的第l个属性的范围或等级,表示顶点u所在结点联合之后相应属性的范围;Pclo表示图形联合后,内部两个结点之间被连接的概率,Pori表示联合前的相应概率,用于表示联合后结点内的结构信息损失;deg(u)表示顶点u所在结点的好友个数,deg(VC)表示顶点u所在结点联合后相应结点的好友个数,用于计算联合时结点间的信息损失;联合一个结点时,结点内所有顶点的信息损失是相同的;
公式用于计算联合后得到的图闭包closure中结点VC的信息损失,|VC|表示联合后图中结点内包含的顶点个数,IL(u)表示联合后图结点内某顶点的信息损失,联合后的信息损失由联合前的所有顶点信息损失的平均值表示;
公式用于根据两个聚簇图联合时的结点信息损失计算两项图联合的信息损失,其中,GC是G1和G2的closure,GC=Closure(G1,G2),f是两个图进行联合时的映射,公式表示两项聚簇图联合时,结点联合的信息损失的最小值表示联合两项图的信息损失,取得该最小值的映射称为最优映射,该最小值可作为图集合聚类的度量。
本发明的一个实施例中,所述步骤(1)中根据各聚簇图之间的相似性采用层次聚类算法将相近的聚簇图聚类,直到剩下一个聚簇图,具体包括:
(2-1)选择相似性最大的两个聚簇图;
(2-2)根据计算两个聚簇图信息损失时得到的最优映射,联合两个聚簇图,泛化相应匹配结点的属性,组合结点内部的顶点数和边数,以及结点之间的边数;
(2-3)将步骤(2-2)中所得的联合后的聚簇图作为普通聚簇图,若该聚簇图并非只有一个聚簇图,则计算该聚簇图与其他聚簇图之间的相似性,跳到步骤(2-1);
(2-4)否则,将该聚簇图即为树形检索结构的根节点,该聚簇图即为检索入口,索引建立步骤结束。
本发明的一个实施例中,所述步骤(2)具体包括:
(4-1)初始化遍历队列,并将索引树的根节点加入队列;
(4-2)检测遍历队列是否为空;
(4-3)若为空,则跳转步骤(4-9);
(4-4)若不为空,取遍历队列的队首节点,检测其是否满足查询要求;
(4-5)若该节点不满足查询要求,则跳转步骤(4-2);
(4-6)检测该节点是否为数据集合中的数据图,
(4-7)若该节点不是数据集合中的数据图,则将其子孙节点加入遍历队列,跳转步骤(4-2);
(4-8)否则,将该节点加入结果集;
(4-9)返回结果集。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
(1)索引的可扩展性:可在理论上证明该索引树与数据集合的大小存在线性关系,便于数据集合的扩展;
(2)索引的高效性:理论上,索引树可以使得检测范围缩小到数据集合的对数级别,但是由于图形数据组合的复杂性,使其索引范围高于对数级别,平均可缩小50%;
(3)索引的可并行性:采用与R-tree检索类似的方式建立聚簇图集合中的树形索引,该索引具有天然的可并行性,可使其较为方便的移植到分布式环境下;
(4)解决图匹配中一对多的映射关系:不同于传统图匹配问题中查询图顶点与数据图节点之间一对一的映射关系,一个聚簇图数据结点可能包含多个查询顶点,本发明中的子图检索方法采用状态转移的策略解决了该问题。
附图说明
图1为本发明一实施例中属性泛化过程示意图,其中:
图1(a)为数值型属性泛化过程示意图;
图1(b)为字符型属性泛化过程示意图;
图2为本发明一实施例中原始图的聚簇化过程,其中:
图2(a)为原始图的数据形式;
图2(b)为图2(a)的聚类结果;
图3为本发明聚簇图中的子图检索的方法流程图;
图4为本发明方法中步骤(2)的细化流程图;
图5为本发明方法中步骤(4)的细化流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明是通过以下技术方案实现的,一种聚簇图集合中的子图检索方法,包括索引建立步骤和子图检索步骤,其中:
索引建立步骤:根据聚簇图的结构信息和结点属性计算数据集合中聚簇图之间的相似性,采用层次聚类算法将聚簇图聚类,使其对外呈现相同的属性与结构。根据给定的参数约束,重复该过程,直到剩下一个聚簇图,该聚簇图涵盖了数据集合中所有聚簇图的结构与属性。层次聚类使得聚簇图集合建立了一个树形的索引结构。
子图检索步骤:根据用户发起查询图的结构以及顶点属性,采用树的自顶向下的方式进行查询图的同构匹配;若某中间聚簇图不包含查询图,则其子孙节点代表的聚簇图不需要进行匹配,因此将该中间聚簇图及其子孙过滤掉;若某节点代表的聚簇图包含查询图,若该聚簇图不是数据图,则将其孩子节点表示的聚簇图加入待检测队列,若该聚簇图是数据图,则将其加入结果集;最终将结果集合返回给用户。
首先介绍由泛化引起的信息损失的概念,由泛化引起的信息损失包括属性信息损失和结构信息损失。
属性信息损失由属性数据泛化引起,结点的属性由于泛化而变得模糊,相比较原有数据,精确程度有一定损失,从而造成一定的信息损失;一般情况下,属性包括数值型属性和字符型属性。数值型属性包括薪水、年龄、邮编等;而字符型属性包括地址、疾病等。不同类型的属性,泛化过程不同。示例如图1所示。
数值型属性泛化过程如图1(a)所示,示例中,23岁和25岁被聚集到一起,以区间[23,25]表示,之后,该泛化结果再与28泛化,最终得到23、25、28的泛化的结果区间[23,28]。字符型属性泛化过程如图1(b)所示,示例中,地域Beijing和Shanghai被泛化为China,之后,China与India和Japan三者被泛化为Asia。
结构信息损失由图形数据的结构泛化引起,原始图的聚簇化过程如图2所示。图2(a)中为原始图的数据形式,通过一定的策略,图2(a)中的三角顶点和圆点顶点分别被聚类到一起形成一个超级结点,聚类结果如图2(b)所示。每一个超级结点由所包含的顶点的属性的泛化结果标识,同时,每一个超级结点标注所包含的顶点个数和边数,如图2(b)中标注矩形超级结点的(2,1)和椭圆超级结点的(3,2);超级结点之间的链接由分别处于两个被连接的超级结点中的顶点之间的边决定,如图2(b)中矩形结点和椭圆结点之间的边标注为3。由于上述的泛化过程,泛化后的结果无法如泛化前精确表示数据,如椭圆结点的(3,2)无法准确描述两条边如何存在于三个顶点之间;结点之间的边数3无法准确描述三条边如何存在于两个圆点顶点和三个三角顶点之间。这即为由于结构的泛化造成的信息损失,称为结构信息损失。
具体地,索引建立步骤,首先计算聚簇图数据项之间的相似性:两个图形数据进行联合时,计算各个结点之间进行映射的属性信息损失,利用匈牙利算法计算最优映射,根据最优映射计算两个聚簇图数据项联合时的结构信息损失;根据属性信息损失和结构信息损失计算两个聚簇图数据项之间的相似性;将相似性最大的两个聚簇图进行联合;重复上述步骤,直到数据集合中只存在一个聚簇图作为索引的根节点。信息损失计算公式如下所示:
公式(1)中IL(u)为顶点u发生的信息损失,IL为information loss的略写。ω为权重参数,用于调节信息损失中属性信息损失和结构信息损失之间的权重;L表示顶点属性的个数,表示顶点u所在结点的第l个属性的范围(对于数值型属性)或等级(对于字符型属性),表示顶点u所在结点联合之后形成的新结点VC的相应属性的范围,公式(1)前半部分计算属性信息损失,后半部分计算结构信息损失,Pclo表示图形联合后形成的聚簇图中,结点内两个顶点之间被连接的概率,Pori表示联合前的结点内两个顶点之间被连接的概率,用于表示联合后结点内的结构信息损失;deg(u)表示顶点u所在结点的邻居结点个数,deg(VC)表示顶点u所在结点联合后相应结点的邻居结点个数,用于计算联合时结点间的信息损失;联合一个结点时,结点内所有顶点的信息损失是相同的。公式(2)计算联合后得到的聚簇图中结点VC的信息损失,|VC|表示联合后图中结点内包含的顶点个数,IL(u)表示联合后图结点内某顶点的信息损失,联合后的信息损失由联合前的所有顶点信息损失的平均值表示。公式(3)根据两个聚簇图联合时的结点信息损失计算两项图联合的信息损失,其中,GC是G1和G2的聚簇化后的图形数据,GC=Closure(G1,G2),f是两个图进行联合时的映射。公式(3)表示两项聚簇图联合时,结点联合的信息损失的最小值表示联合两项图的信息损失,取得该最小值的映射称为最优映射,该最小值可作为图集合聚类的度量。公式(4)根据聚簇图联合的信息损失计算两项聚簇图的相似程度,IL(G1,G2)为G1和G2联合时的信息损失,加1是为了避免IL(G1,G2)为零时出现除数为零的情况。公式(4)表明两个聚簇图联合的信息损失越小,则其越相似。顶点表示最原始图中的点,每一个顶点表示一个个体;结点表示聚簇图中的点,每个结点可能包含多个个体;节点表示检索树中的点。
子图检索步骤中,根据用户发起的查询图以及索引树,采用自顶向下层次遍历的方式检索索引树。首先将根节点加入待检测队列,依次从遍历队列中取出队首节点,检测其是否满足用户查询约束,如不满足查询约束,则将该节点及其子孙节点过滤掉,如满足查询要求,则继续检测该节点是否为数据节点,若是,则将其加入结果集中,如不是数据节点,则将其加入遍历队列中;再次从遍历队列中取出队首节点,重复该过程,直到队列为空。最终,将结果集返回给用户。
子图匹配,由于聚簇图自身的特点,在子图匹配中存在着不同于传统一对一的映射关系,而是一对多的映射关系,即一个数据结点可能包含多个查询顶点。本发明中了实现数据图与查询图之间一对多的映射匹配。
算法中,首先计算数据图与查询图结点的属性兼容关系(数据结点的属性范围包含查询顶点的属性,表示属性兼容),如任一查询图的顶点在数据图中未找到与之兼容的数据结点,则匹配失败;否则利用状态转移的思想,根据当前已匹配的结点计算候选结点的匹配,将所有候选匹配加入候选集合,从候选集合中选择任一匹配,加入结果集,重复该计算过程直到得到映射结果,否则,回滚匹配集合至最近匹配状态,选择另一匹配,重复计算过程,直到匹配集合包含所有查询顶点,将匹配结果返回,或者回滚至初始化状态,即没有得到映射结果,则匹配失败。
如图3所示,本发明一种聚簇图数据的子图检索方法包括以下步骤:
(1)计算聚簇图集合中聚簇图数据项之间的相似性,相似性由聚簇图联合的信息损失决定,见公式(4);
(2)采用层次聚类算法将聚簇图集合中的数据项进行聚类,重复聚类直到剩下一个聚簇图;
在本步骤中,根据聚簇图的结构和结点属性信息计算聚簇图联合的信息损失,利用匈牙利算法计算最优映射,如图4所示,具体包括以下子步骤:
(2-1)选择相似性最大的两个聚簇图;
(2-2)根据计算两个聚簇图信息损失时得到的最优映射,联合两个聚簇图,泛化相应匹配结点的属性,组合结点内部的顶点数和边数,以及结点之间的边数;
(2-3)将步骤(2-2)中所得的联合后的聚簇图作为普通聚簇图,若该聚簇图并非只有一个聚簇图,则计算该聚簇图与其他聚簇图之间的相似性,跳到步骤(2-1);
(2-4)否则,将该聚簇图即为树形检索结构的根节点,该聚簇图即为检索入口,索引建立步骤结束;
(3)用户发起查询;
(4)采用树的层次遍历思想,根据用户查询图检索索引树,得到查询图的结果集,返回用户查询结果,如图5所示,具体包括以下子步骤:
(4-1)初始化遍历队列,并将索引树的根节点加入队列;
(4-2)检测遍历队列是否为空;
(4-3)若为空,则跳转步骤(4-9);
(4-4)若不为空,取遍历队列的队首节点,检测其是否满足查询要求;
(4-5)若该节点不满足查询要求,则跳转步骤(4-2);
(4-6)检测该节点是否为数据集合中的数据图,
(4-7)若该节点不是数据集合中的数据图,则将其子孙节点加入遍历队列,跳转步骤(4-2);
(4-8)否则,将该节点加入结果集;
(4-9)返回结果集。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种聚簇图集合中的子图检索方法,其特征在于,所述方法包括以下步骤:
(1)索引建立步骤:根据聚簇图的结构信息和结点属性计算聚簇图集合中各聚簇图之间的相似性,根据各聚簇图之间的相似性采用层次聚类算法将相近的聚簇图聚类,直到剩下一个聚簇图,从而将聚簇图集合转化成聚簇图索引树;
所述步骤(1)中根据聚簇图的结构信息和结点属性计算聚簇图集合中各聚簇图之间的相似性具体根据下式计算:
任意两个聚簇图G1和G2之间的相似性为
其中:
<mrow>
<mi>I</mi>
<mi>L</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>G</mi>
<mn>1</mn>
</msub>
<mo>,</mo>
<msub>
<mi>G</mi>
<mn>2</mn>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>min</mi>
<munder>
<mo>&Sigma;</mo>
<mrow>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
<mo>&Element;</mo>
<msub>
<mi>G</mi>
<mi>C</mi>
</msub>
</mrow>
</munder>
<mi>I</mi>
<mi>L</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
<mrow>
<mi>I</mi>
<mi>L</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mrow>
<mo>|</mo>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
<mo>|</mo>
</mrow>
</mfrac>
<munder>
<mo>&Sigma;</mo>
<mrow>
<mi>u</mi>
<mo>&Element;</mo>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
</mrow>
</munder>
<mi>I</mi>
<mi>L</mi>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
<mrow>
<mi>I</mi>
<mi>L</mi>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>&omega;</mi>
<mfrac>
<mn>1</mn>
<mi>L</mi>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>l</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>L</mi>
</munderover>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<mfrac>
<mrow>
<mo>|</mo>
<mover>
<mrow>
<msub>
<mi>R</mi>
<mi>u</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>l</mi>
<mo>)</mo>
</mrow>
</mrow>
<mo>&OverBar;</mo>
</mover>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<mover>
<mrow>
<msub>
<mi>R</mi>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
</msub>
<mrow>
<mo>(</mo>
<mi>l</mi>
<mo>)</mo>
</mrow>
</mrow>
<mo>&OverBar;</mo>
</mover>
<mo>|</mo>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<mi>&omega;</mi>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<mo>(</mo>
<mrow>
<mn>1</mn>
<mo>-</mo>
<mfrac>
<msub>
<mi>P</mi>
<mrow>
<mi>c</mi>
<mi>l</mi>
<mi>o</mi>
</mrow>
</msub>
<msub>
<mi>P</mi>
<mrow>
<mi>o</mi>
<mi>r</mi>
<mi>i</mi>
</mrow>
</msub>
</mfrac>
</mrow>
<mo>)</mo>
<mo>+</mo>
<mo>(</mo>
<mrow>
<mn>1</mn>
<mo>-</mo>
<mfrac>
<mrow>
<mi>deg</mi>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>deg</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>V</mi>
<mi>C</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
公式IL(u)用于计算顶点u发生的信息损失,用于计算属性信息损失,用于计算结构信息损失;ω为权重参数,用于调节信息损失中属性信息损失和结构信息损失之间的权重;L表示顶点属性的个数,表示顶点u所在结点的第l个属性的范围或等级,表示顶点u所在结点联合之后形成的新结点Vc的相应属性的范围;Pclo表示图形联合后,结点内部两个顶点之间被连接的概率,Pori表示联合前的结点内部两个顶点之间被连接的相应概率,用于表示联合后结点内的结构信息损失;deg(u)表示顶点u所在结点的邻居结点个数,deg(VC)表示顶点u所在结点联合后相应结点的邻居结点个数,用于计算联合时结点间的信息损失;联合一个结点时,结点内所有顶点的信息损失是相同的;
公式用于计算联合后得到的图闭包closure中结点VC的信息损失,|Vc|表示联合后图中结点内包含的顶点个数,IL(u)表示联合后图结点内某顶点的信息损失,联合后的信息损失由联合前的所有顶点信息损失的平均值表示;
公式用于根据两个聚簇图联合时的结点信息损失计算两项图联合的信息损失,其中,GC是G1和G2的closure,GC=Closure(G1,G2),f是两个图进行联合时的映射,公式表示两项聚簇图联合时,结点联合的信息损失的最小值表示联合两项图的信息损失,取得该最小值的映射称为最优映射,该最小值可作为图集合聚类的度量;
(2)子图检索步骤:根据用户发起查询图的结构以及顶点属性,对聚簇图索引树采用树的自顶向下的方式进行查询图的同构匹配;若某中间聚簇图不包含查询图,则其子孙节点代表的聚簇图不需要进行匹配,因此将该中间聚簇图及其子孙过滤掉;若某节点代表的聚簇图包含查询图,若该聚簇图不是数据图,则将其孩子节点表示的聚簇图加入待检测队列,若该聚簇图是数据图,则将其加入结果集;最终将结果集合返回给用户。
2.根据权利要求1所述方法,其特征在于,所述步骤(1)中根据各聚簇图之间的相似性采用层次聚类算法将相近的聚簇图聚类,直到剩下一个聚簇图,具体包括:
(2-1)选择相似性最大的两个聚簇图;
(2-2)根据计算两个聚簇图信息损失时得到的最优映射,联合两个聚簇图,泛化相应匹配结点的属性,组合结点内部的顶点数和边数,以及结点之间的边数;
(2-3)将步骤(2-2)中所得的联合后的聚簇图作为普通聚簇图,若该聚簇图并非只有一个聚簇图,则计算该聚簇图与其他聚簇图之间的相似性,跳到步骤(2-1);
(2-4)否则,将该聚簇图即为树形检索结构的根节点,该聚簇图即为检索入口,索引建立步骤结束。
3.根据权利要求1所述方法,其特征在于,所述步骤(2)具体包括:
(4-1)初始化遍历队列,并将索引树的根节点加入队列;
(4-2)检测遍历队列是否为空;
(4-3)若为空,则跳转步骤(4-9);
(4-4)若不为空,取遍历队列的队首节点,检测其是否满足查询要求;
(4-5)若该节点不满足查询要求,则跳转步骤(4-2);
(4-6)检测该节点是否为数据集合中的数据图,
(4-7)若该节点不是数据集合中的数据图,则将其子孙节点加入遍历队列,跳转步骤(4-2);
(4-8)否则,将该节点加入结果集;
(4-9)返回结果集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410313170.5A CN104102699B (zh) | 2014-07-01 | 2014-07-01 | 一种聚簇图集合中的子图检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410313170.5A CN104102699B (zh) | 2014-07-01 | 2014-07-01 | 一种聚簇图集合中的子图检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104102699A CN104102699A (zh) | 2014-10-15 |
CN104102699B true CN104102699B (zh) | 2018-01-26 |
Family
ID=51670853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410313170.5A Active CN104102699B (zh) | 2014-07-01 | 2014-07-01 | 一种聚簇图集合中的子图检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104102699B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107085594A (zh) * | 2017-03-14 | 2017-08-22 | 武汉大学 | 大图数据库中基于集合相似度的子图匹配方法 |
CN107103333B (zh) * | 2017-04-11 | 2020-06-30 | 深圳大学 | 一种结构聚类的生成方法及系统 |
CN110826582B (zh) * | 2018-08-10 | 2023-05-05 | 阿里巴巴集团控股有限公司 | 图像特征训练方法、装置和系统 |
CN109710314B (zh) * | 2018-12-20 | 2019-11-12 | 四川新网银行股份有限公司 | 一种基于图结构分布式并行模式构建图的方法 |
CN113626678A (zh) * | 2020-05-06 | 2021-11-09 | 北京大学 | 基于动态次优最小生成树的知识图谱数据挖掘与推荐方法 |
WO2023282890A1 (en) * | 2021-07-06 | 2023-01-12 | Google Llc | Real-time micro-profile generation using a dynamic tree structure |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231662A (zh) * | 2008-01-25 | 2008-07-30 | 华中科技大学 | 基于网格平台的分布式医学图像检索系统 |
CN102542014A (zh) * | 2011-12-16 | 2012-07-04 | 华中科技大学 | 基于内容的图像检索反馈方法 |
-
2014
- 2014-07-01 CN CN201410313170.5A patent/CN104102699B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231662A (zh) * | 2008-01-25 | 2008-07-30 | 华中科技大学 | 基于网格平台的分布式医学图像检索系统 |
CN102542014A (zh) * | 2011-12-16 | 2012-07-04 | 华中科技大学 | 基于内容的图像检索反馈方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104102699A (zh) | 2014-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104102699B (zh) | 一种聚簇图集合中的子图检索方法 | |
Rocha-Junior et al. | Top-k spatial keyword queries on road networks | |
CN104392010B (zh) | 一种子图匹配的查询方法 | |
CN103699678B (zh) | 一种基于多阶段分层采样的层次聚类方法和系统 | |
CN105718628B (zh) | 面向公差技术的装配体几何要素误差传递关系图表示和构建方法 | |
CN104462163B (zh) | 一种三维模型表征方法、检索方法及检索系统 | |
Gao et al. | Visible reverse k-nearest neighbor query processing in spatial databases | |
CN104346444B (zh) | 一种基于路网反空间关键字查询的最佳选址方法 | |
Zou et al. | Answering pattern match queries in large graph databases via graph embedding | |
CN107766406A (zh) | 一种采用时间优先搜索的轨迹相似性连接查询方法 | |
CN106503223A (zh) | 一种结合位置和关键词信息的在线房源搜索方法及装置 | |
CN110516004A (zh) | 兼顾信息全局特征和局部层次结构的可视化方法和系统 | |
CN107977393A (zh) | 一种面向5w问答的基于数据图谱、信息图谱、知识图谱和智慧图谱的推荐引擎设计方法 | |
CN107918664A (zh) | 基于不确定图的社会网络数据差分隐私保护方法 | |
CN112464107B (zh) | 一种基于多标签传播的社交网络重叠社区发现方法及装置 | |
CN108733803A (zh) | 一种道路网络下多用户空间关键词查询方法 | |
CN108765180A (zh) | 基于影响力与种子扩展的重叠社区发现方法 | |
CN109992593A (zh) | 一种基于子图匹配的大规模数据并行查询方法 | |
CN103500165B (zh) | 一种结合聚类和双key值的高维向量检索方法 | |
Cao et al. | Social space keyword query based on semantic trajectory | |
Liu et al. | Simga: A simple and effective heterophilous graph neural network with efficient global aggregation | |
CN108595624A (zh) | 一种大规模分布式函数依赖发现方法 | |
CN108470251A (zh) | 基于平均互信息的社区划分质量评价方法及系统 | |
CN108198084A (zh) | 一种复杂网络重叠社区发现方法 | |
CN107515918A (zh) | 一种基于网格索引的动态top‑k查询方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |