CN102073708A - 面向大规模不确定图数据库的子图查询方法 - Google Patents

面向大规模不确定图数据库的子图查询方法 Download PDF

Info

Publication number
CN102073708A
CN102073708A CN2010106166036A CN201010616603A CN102073708A CN 102073708 A CN102073708 A CN 102073708A CN 2010106166036 A CN2010106166036 A CN 2010106166036A CN 201010616603 A CN201010616603 A CN 201010616603A CN 102073708 A CN102073708 A CN 102073708A
Authority
CN
China
Prior art keywords
uncertain
probability
subgraph
query
inquiry
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.)
Pending
Application number
CN2010106166036A
Other languages
English (en)
Inventor
王国仁
王斌
袁野
信俊昌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northeastern University China
Original Assignee
Northeastern University China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Northeastern University China filed Critical Northeastern University China
Priority to CN2010106166036A priority Critical patent/CN102073708A/zh
Publication of CN102073708A publication Critical patent/CN102073708A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种面向大规模不确定图数据库的子图查询方法,其特征在于对于一个不确定图数据库

Description

面向大规模不确定图数据库的子图查询方法 
技术领域
本发明属于数据库领域,特别涉及面向大规模不确定图数据库的子图查询处理技术。 
背景技术
在过去的几十年里,传统的确定数据管理(certain data management)技术得到了极大的发展,造就了一个几百亿的数据库产业,数据库技术和系统已经成为建设信息化社会基础设施的重要支撑。近年来,随着传感器网络、Web服务和RFID技术等的快速发展,在这些应用中不确定数据(uncertain data)无所不在,而且数据特征纷繁复杂。因此传统的数据库管理计算已经无法满足这样一种数据库管理的需求。 
另外现有的数据管理技术的范围逐渐延伸到科学与工程领域,如:计算化学、生物信息学等。而这些领域的数据具有结构化的特征,通常用图结构描述此类数据,因为图可以很好的表示存在多种关联的数据以及内部具有一定结构的数据。例如,在化学领域中,可以采用无向标号图表示化合物的拓扑结构,图中的节点表示化合物的原子,节点的标号表示不同的原子类型,图中的边表示化合物的内部化合键,边的标号表示不同化合键的类型。在生物信息学中,可以采用图结构描述各种网络,如蛋白质交互网络、基因相关网络等。因此如何高效地管理图数据,特别是子图查询已得到国内外的广泛关注。目前一些图数据的原型系统相继被开发出来,例如华盛顿州立大学开发的suBDuE系统(http://allab.wsu.edu/subdu),卢布尔雅那大学的P ajek系统(http://Pajek.ilr)以及意大利卡塔尼亚大学和纽约大学联合开发的GraPhGrep系统等等。 
然而这些图数据本身具有不确定性。例如,由于实验仪器的错误和不准确性,获取蛋白质交互网络(PPI)的实验可使图数据含有噪声。结果图数据可能包含实际中不存在的交互,同时也可能丢失真实存在的交互。因此可使用不确定图(uncertain graph)来表示一个PPI网络,其中顶点代表蛋白质,每边赋予一概率表示蛋白质间存在交互的可能性。STRING数据库(http://string-db.org)是一个公共的存储带不确定边的PPI数据源。在分析未知蛋白质结构时,生物学家通常要把它们的PPI网络与已知的PPI网络进行比较,以确定未知蛋白质的所属类别和特性。这个方法即是子图查询:用未知的子图结构(未知PPI网络)去查询已知图数据结构(已知PPI)网络,以判断子图结构所属的图数据。而传统对确定图(certain graph)数据的子图查询技术不能处理不确定图数据,从而对未知蛋白质归类时造成不准确。为此如何高效地处理不确定图数据子图查询是一个亟待解决的问题。 
发明内容
针对现有技术存在的问题,本发明提供一种面向大规模不确定图数据库的子图查询方法。 
本发明采用的技术方案是:对于一个不确定图数据库D={g1,Λgn}和一个查询图q,处理概率子图查询时,首先对不确定数据库D进行结构化过滤,然后对结构化过滤剩下的不确定图数据库进行概率过滤,最后验证候选集,得出最终查询结果。 
本发明主要包括以下步骤: 
步骤一:结构化过滤 
定义1(不确定图)设gc=(V,E,∑,L)是一个无向确定图,其中,V是顶点集,E是边集,∑是标签集,L:VYE →∑是为顶点和边分配标签的函数。一个不确定图定义为g=(gc,PV,PE),其中PV:V→[0,1]是为V中顶点分配概率的函数,PE:E →[0,1]是为E中的边分配概率的函数。在蛋白质交互(PPI)网络中,一个顶点表示一个蛋白质元素,一条边表示元素之间的作用,标签表示蛋白质元素的类别,概率表示元素存在的可能性。 
定理1:对于g∈D,设gc表示g移除所有不确定信息后相应的确定图,如果 
Figure BDA0000041883780000021
则 
Figure BDA0000041883780000022
基于定理1,首先输入查询图q、不确定图数据库D和查询阈值ε,去掉不确定图数据库D中的每一个图g的概率分布,使用现有的对确定图数据库 子图查询过滤的方法,判断结果图是否包含查询图q,如果结果图包含查询图q,则该不确定图g即被过滤掉,如果结果图不包含查询图q,则该不确定图g输入下一步进行概率过滤。设结构化过滤后剩余确定图集合为 
Figure BDA0000041883780000024
其相应的不确定图集合 
Figure BDA0000041883780000025
即下一步概率过滤的输入。 
步骤二:概率过滤 
输入经过结构化过滤剩下的不确定图数据库SCq,应用算法1从SCq中选取最优特征子图,步骤为:输入一个概率矩阵M,首先选择包含非零元最多的行,然后,移除该行和所有它覆盖的列。重复这个过程直到所有列都被覆盖。 
Figure BDA0000041883780000026
Figure BDA0000041883780000031
对于一特征(子图) 假设已得到 
Figure BDA0000041883780000033
的下界LowerB(f)和上界UpperB(f),有概率过滤规则如下: 
过滤规则1:给出查询图q,阈值ε和特征f,如果 
Figure BDA0000041883780000034
并且 
Figure BDA0000041883780000035
和UpperB(f)<ε,那么g可以从SCq中被过滤掉。 
过滤规则2:给出查询图q,阈值ε和特征f,如果 
Figure BDA0000041883780000036
并且 和LowerB(f)≥ε,那么g是最终的查询结果,即g∈Aq,其中Aq是查询结果集。 
首先考虑第一个条件 对于 
Figure BDA0000041883780000039
f应该越小越好,这样f更容易被q包含。同时它的上界也应该很小,因为一个小的UpperB(f)对UpperB(f)<ε会有很好的过滤能力。然而,f的尺寸和UpperB(f)的值没有必然联系。在一些情况下,很小尺寸的f会产生一个大的UpperB(f),从而不满足UpperB(f)<ε。例如,对图2中只有一条边的特征图f4和图1中的不确定图002,f4在002中的上界是0.879。这个值很大以至于对ε没有很好的过滤能力。在这种情况下,f的尺寸不能太小,它的尺寸应该适中以保证f满足 
Figure BDA00000418837800000310
和UpperB(f)<ε。考虑另一种情况,一个小尺寸的f得到一个较小的上界。例如,考虑图2中的一个小尺寸特征图f2和图1中的不确定图002。f2在002中的上界为0.491,对于过滤能力,该上界值是合理的。在此种情况下,小尺寸的f有较好的过滤能力。总结起来,对于第一个过滤条件,较小的和适中尺寸的f都可能有好的过滤能力。基于对第一个过滤条件同样的分析,对于第二个过滤条件,较大的和适中尺寸的f都可能有好的过滤能力。 
根据以上的分析,应该索引任何尺寸的子图特征以保证对任何查询都有较好的过滤能力,从而使概率索引(PIndex)有好的过滤能力。然而对大规模不确定图数据库,存在数以十万或百万的特征,索引所有特征是不现实的。因此,我们的目标是用最小数目的特征实现PIndex最大的过滤能力,通过查询日志离线选择子图特征,由此提出一个优化的选择机制以排除无用的特征使PIndex实现最大的过滤能力。 
给出一个查询图q和初始特征集F0,那么查询时间可归结为: 
T certain + Σ f ∈ F T ( f , q ) + Σ g ∈ C q T ( g , q ) - - - ( 1 )
其中Tcertain是结构过滤的时间,T(f,q)是在PIndex上判断f是q的子图或者超图(一个同构测试)的时间,T(g,q)是在概率过滤后剩余候选集Cq中计算g的SIP是否不小于ε的时间。对于Tcertain,我们采用现有对确定图过滤的方法。因此这里重点考虑∑f∈FT(f,q)和 
Figure BDA0000041883780000041
它的值近似和特征总数与不确定图个数的和成比例: 
|F|+|Cq|                                       (2) 
对于一个初始特征集合F0={f1,f2,K fm},欲选择一个子集 使概率过滤能力最大化。F0采用GASTON算法从不确定图相应的确定图中挖掘得到。 
如果对SCq进行顺序扫描,然后计算每个g的SIP也可得到查询结果。但该方法是非常低效的。为此我们定义一个计算获益模型:在采用PIndex后,计算时间比顺序扫描的时间少,对于一个查询q,可得收益, 
J=|SCq|-|Cq|-|F|=|Yq=CND{g|g∈SCq}-|F|      (3) 
其中 
Figure BDA0000041883780000043
为获得更有效的特征,我们使用查询集合{q1,q2,K qr}代替查询日志中Γ的单一查询。在这种情况下,一个优化索引应该最大化总体收益, 
J total = Σ l = 1 r | Y q = CND { g | g ∈ SC ql } | - r | F | - - - ( 4 )
式(4)是对(3)单个查询收益的求和。 
根据式(4),索引满足CND的特征图,f至少要覆盖一个不确定图并且不覆盖其他特征(如果f∈gc,一个特征覆盖一个不确定图g)。Jtotal的优化可以归结为一个整数规划问题: 
Maximize Σ j = 1 n Σ l = 1 r z jl - r Σ i = 1 m x i
满足 j=1,K,n且l=1,K,r,xi∈{0,1},i=1,K,m,(5) 
zjl∈{0,1},j=1,K,n且l=1,K,r. 
其中 
Figure BDA0000041883780000047
和 
Figure BDA0000041883780000048
是互相排斥的布尔变量,都表示查询图q1是否满足CND。zjl表示查询图ql是否能被不确定图gj剪枝掉。对公式(5)的优化可转化成集合覆盖问题,下面给出转化过程: 
首先建立一个特征矩阵来记录特征与不确定图之间的关系,其中(i,j)元给出第i个特征在第j个不确定图的{LowerB(f),UpperB(f)}。如果不确定图不包含此特征,则其值为0。然后引入概率矩阵,其源于特征图矩阵。对于给定的查询q,如果f不满足CND,则特征矩阵(i,j)元被设为0。例如,对于图1中的不确定图,图5中给出图2中f1、f2、f3的特征图矩阵。图6给出3个查询图和它们对于3个特征和2个不确定图所对应的概率矩阵。 
对于每个查询图ql,可以构建一个m×n阶的概率矩阵Ml,其中m是初始特征集F0包含的特征图的个数,n是不确定图{g|g∈SCq}的个数。对于所有的查询图,把它们的Ml整合成一个全局的m×nr矩阵M,其中r是Γ中查询图的个数。有了M,便可把式(5)的整数规划问题转变为最大覆盖问题。 
定义2(最大覆盖)给出一集合S={S1,K,Sm},每个Si都是集合U={1,2,K,n}的一个子集。对任何Si∈S,关联一个代价系数η,找出S一个子集T,使得 最大的问题称为最大覆盖问题。 
对于一个概率矩阵M,U对应于M的列索引,S对应于M中每列中的非零元,T对应于选定的行索引,η对应于查询的个数r。以图6中的矩阵为例:U={1,2,3,4,5,6},因为在矩阵中有6列;S={{1,2,4},{1,2,3,4,5,6},{6}},也就是,{1,2,4}对应于矩阵中的第一列;η=3,因为有3个查询图。有了这样的映射,公式(5)中的整数规划问题就转化成代价最大覆盖问题。为此有如下定理: 
定理2:代价最大覆盖是一个NP完全问题。 
定义2的证明是通过找到代价最大覆盖和集合覆盖之间的联系,而集合覆盖问题是已知的NP完全问题。因此可使用解决集合覆盖的近似算法来解决代价最大覆盖问题。具体的,在每次迭代中,选择矩阵M中非零元个数最多的一行。 
定理3给出此贪婪算法的近似比。 
定理3:算法1能以1-1/e近似比得到最优索引。 
下面分析算法1的时间复杂度。对于每一列i,非零元的数目wi是的上界是|F0|。由于一共有|SCq||Г|个列,整个算法对所有wi的开销为O(|F0||SCq||Г|)。在第3行,选择wi最多的一行需要O(|F0|)时间。每次迭代至少删除一列,所有重新选择的开销最多是O(|F0||SCq||Г|)。因此总计的时间复杂度是O(|F0||SCq||Г|)。 
对概率索引PIndex进行查询时,前面的算法是查询图q和概率索引PIndex中每个f进行同构测试,然后应用两个过滤规则,这个方法等同于在F上顺序执行同构测试,为避免顺序 查找,为概率索引PIndex构造一个前缀树结构Swift-Index。首先,对于每个特征f∈F构建一个序列SEQf,该序列是一个包含f结构信息的字符串。然后,根据特征字符串,构建一个前缀树,其中每条从根节点到叶子节点的路径代表一个特征的字符串。每个特征的倒排链表Df都关联到对应的叶子节点上。图7给出一个前缀树结构。 
基于前缀树,有剪枝条件:如果f的前缀 不能匹配查询图q的 那么f的SEQf不能匹配查询图q的SEQq。这个性质允许尽可能早的过滤掉一些特征。给出一个查询图q和一个前缀树,查找前缀树中包含于q中的特征的过程是在前缀树上执行自顶向下的深度遍历。在访问前缀树的一个节点ni时,从根节点到该结点的路径代表所有以 
Figure BDA0000041883780000063
为前缀的特征。如果 
Figure BDA0000041883780000064
不子图同构与q,那么就没有必要进一步检查前缀树中ni以下的子树。 
前缀剪枝能够节省很多子图同构测试。考虑过滤规则1: 
Figure BDA0000041883780000065
其中操作UpperB(f)<ε的开销远小于操作 
Figure BDA0000041883780000066
根据前缀剪枝条件,不难看出对于 
Figure BDA0000041883780000067
它比顺序扫描节省更多开销。综上,前缀剪枝对于过滤规则1可以节省很多成本。考虑过滤规则2: 
Figure BDA0000041883780000068
由于条件 
Figure BDA0000041883780000069
在遍历到前缀树的叶子节点之前不能过滤查询。然而,对于一个查询q,过滤规则2仅返回一个最终结果集,其大小远小于剪枝条件过滤的图集。因此,给定一个查询q,大多数操作用于过滤规则1。因此,前缀树结构比顺序索引结构有更强的剪枝能力。 
前面提出的索引算法更适合于静态情况。当频繁的更新发生或查询分布偏离了查询日志的记录时,我们使用以下策略:保持相同的选择特征集和相同的前缀树结构。每当D发生更新时,可简单更新所有包含的特征和它们对应的倒排链表。如果不确定图数据库和查询日志没有显著偏离原始值,此更新策略能很好的维护原始索引能。否则,定期从D和Γ中采样得到Ds和Гs,从Ds中挖掘一个频繁子图集Fs,并且基于三元组(Fs,Ds,Гs)计算一个新的索引。挖掘过程可以避免,因为频繁子图模式基本是稳定的。抽样比率可以根据D和Γ的更新率进行调整。 
上述策略涉及到对查询日志的统计信息。这里使用全局概率矩阵M收集统计信息。在M中,我们记录了每个特征的非零元的个数,以便能为初始特征集F0建立一个柱状图。最优特征集是根据M的非零元选择的。因此,柱状图给出查询日志正确的统计信息。在本发明中,针对有效地监控查询日志的偏离,以便能灵活的维护PIndex,采用对图数据流查询的方法监控查询图。在不确定图数据应用中,查询日志更新的速率图数据流的更新率慢很多。因此,这个监控方法能很有效的管理查询日志。 
定义3(可能世界图)一个可能世界图g′=(V′,E′,∑′,L′)是不确定图g=((V,E,∑,L),PrV,PrE)的 一个实例,其中 
Figure BDA0000041883780000073
把g′和g的关系表示为 
Figure BDA0000041883780000074
并且用PWG(g)表示g的可能世界图的集合。 
根据实际应用的需求,规定不确定图中不同边或者不同顶点的存在是相互独立的。那么,一个可能世界图g的概率如下: 
Pr ( g ⇒ g ′ ) = Π v ∈ V ′ P V ( v ) Π v ∈ V \ V ′ ( 1 - P V ( v ) ) Π e = ( u , v ) ∈ E ′ P E ( e | u , v ) Π e = ( u , v ) ∈ EI ( V ′ × V ′ ) \ E ′ ( 1 - P E ( e | u , v ) ) - - - ( 6 )
根据(6)易知,对于任何可能世界图g′,有 
Figure BDA0000041883780000076
和 
Figure BDA0000041883780000077
定义4(子图同构)对于确定图g1=(V1,E1,∑1,L1)和g2=(V2,E2,∑2,L2),g1子图同构于g2(表示为 
Figure BDA0000041883780000078
)当且仅当存在一个映射f:V1→V2,满足①对于任意(u,v)∈E1,有(f(u),f(v))∈E2;②对任意u∈V1,有L1(u)=L2(f(u));③对任意(u,v)∈E1,有L1(u,v)=L2(f(u),f(v))。g2的子图(V3,E3)满足V3={f(v)|v∈V1}和E3={(f(u),f(v))}|(u,v)∈E1称为g1在g2中的一个嵌入。在PPI网络中,子图同构表示g1和g2所属同一类别,结构特性相似。当g1子图同构于g2时,常称g1是g2的一个子图,或者称g2是g1的一个超图。 
定义5(子图同构概率).对于查询图q和一个不确定图g,定义它们的子图同构概率为 
Pr ( q ⊆ g ) = Σ g ′ ∈ SI ( q , g ) Pr ( g ⇒ g ′ ) - - - ( 7 )
其中SI(q,g)是q子图同构于g的可能世界图集合,即 
对PPI网络而言,子图同构概率表示两个PPI网络所属同一类别的可能性。 
定义6(概率子图查询)给出一个不确定图集D={g1,Λgn},一个查询图q和一个概率阈值ε(0<ε≤1),一个子图查询返回一个不确定图集 
Figure BDA00000418837800000711
对PPI网络而言,该查询是在已知的不确定PPI网络数据库D中找到所有能与未知PPI网络q相似的已知PPI网络结构。 
从定义6知,为高效处理概率子图查询,必须能够快速地计算出子图同构概率(SIP),其计算方法在定理5中给出。 
定理4:计算子图同构概率是一个#P完全问题。 
对于一特征(子图) 
Figure BDA00000418837800000712
Figure BDA00000418837800000713
的下界LowerB(f)和上界UpperB(f)与 
Figure BDA00000418837800000714
密切相关。 
定理5:设Eq={q1,Λ,q|Eq|}是确定图gc中q的所有嵌入的集合,Bqj(1≤j≤|Eq|)是一个布 尔变量,并且Pr(Bqj)为g中嵌入qj的存在概率。 
Figure BDA0000041883780000081
定理5是计算子图同构概率的方法。根据公式(8),q成为g的子图的概率等于g中至少包括一个q的嵌入的概率。例如,假设附图2中的f1查询图1中的002是不确定图,它包括3个f1的嵌入,由图3列出。根据定理3,有 
Figure BDA0000041883780000082
下面计算上界和下界: 
由式(8)可得, 
Figure BDA0000041883780000083
布尔变量Bfi(1≤i≤|Ef|)之间可能含有公共部分,因此 
Figure BDA0000041883780000084
是不独立的,这意味着 
Figure BDA0000041883780000085
然而,布尔变量满足不等式: 
那么式(9)又可写为, 
Pr ( f ⊆ g ) ≤ 1 - Π i = 1 | Ef | Pr ( Bf i ‾ ) = 1 - Π i = 1 | Ef | ( 1 - Pr ( Bf i ) ) = UpperB ( f ) - - - ( 10 )
定理6: Pr ( Bf i ) = Π v ∈ f i P V ( v ) Π e = ( u , v ) ∈ f i P E ( e | u , v ) - - - ( 11 )
由(10)和(11)可计算上界。例如,从不确定图数据库STRING中挖掘出子图特征,并计算出子图同构概率(SIP)的上界。选取的不确定图平均有330个顶点和584条边,并且每条边的存在概率为0.376。图4(a)给出结果,同时图4(b)给出计算的时间。从结果易见,上界十分接近真实的SIP概率,并且计算时间远小于计算真实概率的时间。 
Figure BDA0000041883780000089
是由于布尔变量Bfi(1≤i≤|Ef|)不独立。如果从|Ef|布尔变量中选择一个子集,并且它们相应的嵌入没有交叠,那么子集中的的布尔变量是相互独立的。例如,对图1中的不确定图002和图2中的特征图f1,图3给出f1在002中的3个嵌入,其中EM3与EM1和EM2没有公共部分,因此EM3的布尔变量与EM1和EM2的布尔变量是独立的。 
设Bfi(1≤j≤IN≤|Ef|)为IN的独立的布尔变量。因为 
Figure BDA00000418837800000810
那么便能够得到一个下界, 
Figure BDA00000418837800000811
在所有的|Ef|布尔变量中,包含许多独立布尔变量子集,这会产生不同的下界。然而,通常会 选取最紧(值最大)的下界使下界有最强的过滤能力。可以用如下方法获取最紧的下界: 
首先构造一无向图bG,其中每个顶点代表一个布尔变量Bfi,1≤i≤|Ef|,两个顶点间有一边当且仅当连接两个布尔变量(节点)是独立的。在bG中,一个团是一个图,其任意两顶点都有边相连。团的尺寸是其结点个数,最大团是bG中所有团中尺寸最大的团。根据公式(12),分配给每个节点一个权重,为-ln(1-Pr(Bfi)),团的权重为该团所有节点权重之和。对于bG中一个权重为v的团, 
Figure BDA0000041883780000091
的下界为1-e-v。因此,团的权重越大,下界越紧。为获得最紧的下界,要求出权重最大的团,这是最大权重团问题。最大团是一个特殊的最大权重团,其每个节点的权重值为1。而求解最大团问题是一个NP完全问题,因此计算最大权重团问题也是一个NP完全问题。幸运的是,权重最小节点着色问题为最大权重团的权重返回很紧的上界,z。而且有一个高效的近似算法能够解决权重最小节点着色问题。因此可使用该近似算法返回 的下界1-e-z。 
例如,针对图1中不确定图002和图2中的特征图f1,图3给出f1在002中的3个嵌入,其中EM3与EM1或者EM2没有公共部分。基于以上的方法,为3个嵌入构建bG,结果如图3所示,有两个最大团,EM1和EM3,EM2和EM3。从两个最大团可分别得下界0.272和0.275,选择较大的值0.275作为f1在002中的下界。图4(a)和(b)给出下界的大小和计算时间,同上界一样,下界和真实SIP概率非常接近且计算时间远小于计算真实概率的时间。 
根据概率过滤规则1和概率过滤规则2判断以计算出的上界和下界,如果满足概率过滤规则1或2,则该不确定图g从SCq中被过滤掉,如果不满足,则该不确定图g输入下一步骤验证候选集。 
步骤三:验证候选集 
输入经过概率过滤剩余的不确定图集合Cq,对不确定图集合Cq中的每一个不确定图g,求出查询图q在不确定图g中的所有嵌入,求出每个嵌入的存在概率并对所有存在概率求和,如果查询图q在不确定图g中的嵌入个数为奇数并且存在概率的和小于查询阈值ε,则该不确定图g从Cq中被过滤掉,如果不是,则g是最终查询结果;如果查询图q在不确定图g中的嵌入个数为偶数并且存在概率的和大于或等于查询阈值ε,则该不确定图g从Cq中被过滤掉,否则g是最终查询结果。最终确定结果集 也就是确定最终能和q归为一类的已知PPI网络。 
定理5已给出计算SIP的公式。简化该式可得, 
Figure BDA0000041883780000094
计算式(13)的精确值需要指数级计算量。因此,使用阈值信息以尽早停止计算。 
定理7:设 其中J是一个嵌入子集, 
Figure BDA0000041883780000102
和|J|=i。对 有, 
Pr ( q ⊆ g ) = ≤ ( - 1 ) i - 1 Σ w = 1 i S w ifissodd ≥ ( - 1 ) i - 1 Σ w = 1 i S w ifisseven
其中1≤i≤|Eq|,1≤w≤i。 
为了取得 
Figure BDA0000041883780000105
的以S1,K,S2为参数最紧的边界,用线性规划方法重构目标函数。可得 
Figure BDA0000041883780000106
的最小值和最大值: 
Σ w = 1 i x w S w ≤ Pr ( q ⊆ g ) ≤ Σ w = 1 i y w S w - - - ( 14 )
其中x=(x1,K,xm)T和y=(y1,K,ym)T分别为规划函数最小化和最大化问题的最优双解。 
有了最优的界限,便可应用定理8确定最终的查询结果。 
定理8:当i是奇数,如果 则g可被过滤;当i是偶数,如果 
Figure BDA0000041883780000109
则g是最终答案。 
为了应用定理8,可按顺序计算S1,S2,K,然后一旦产生一个Si,就将 
Figure BDA00000418837800001010
和ε比较来确定最终结果。 
本发明的有益效果: 
主要通过实验测试本发明提出的方法在不确定图子图查询过程中的应用效果。实验中SFiltering表示结构化过滤,PFiltering表示概率过滤,E-Bound表示用定理7计算SIP的方法;作为比较,SCAN表示直接顺序扫描求解查询的方法,E-BC表示直接用式(13)计算SIP的方法。下面分别给出在真实不确定图数据和合成不确定图数据的评价结果。 
(1)基于真实不确定图数据集的评价 
使用STRING数据库的真实不确定图集。验证候选集步骤的检验:首先对数据执行结构过滤和概率过滤算法以生成候选集,然后验证候选集,使用本发明提出的算法计算SIP,图8显示试验结果。从中易知,在所有参数下E-Bound是高效的,而E-BC的曲线以指数增长。平均来看,E-Bound的运行效率比E-BC的运行效率高20多倍,因为E-Bound能够在SIP界限达到非常紧的时候终止计算。 
图9给出了总的查询时间和对大小不同的查询图进行概率过滤后得到候选集的数目。PIndex代表整个查询时间,即SFiltering、PFiltering和E-Bound的组合。所有曲线随着查询规模的增大而减小,因为大的查询图与gc的子图同构概率很小。从图9(a)的结果中,可见 PIndex运行时间很短,而SCAN花费很多时间且在q100时已超过了100秒。概率剪枝后的候选集大小由图10(b)给出,其中Non-PF表示索引全部特征集,Non-PF和PFilteing都能产生一个很小候选集,因此它有很好的过滤能力。同样的结论在图10(a)中也被证实,其中Non-PF索引相当大的特征集,而PFiltering索引很小的特征集,PFiltering几乎有与图9(b)中候选不确定图的个数相同。此结果表明选定的最优特征有很强的过滤能力。图10(b)给出了Non-PF和PFiltering对于不同标签的查询时间,图中,Non-PF花费相当长的查询时间,因为每个查询图对于它的候选特征集都要进行同构测试。PFiltering有高效的剪枝时间,其查询时间平均低于0.1秒。 
(2)基于合成不确定数据集的评价 
本部分给出在AIDS数据集上的测试结果,但AIDS是确定数据集,因此按高斯分布合成概率信息添加到数据中。重要测试参数如查询图的大小,概率阈值和不同标签的个数已在真实数据集上测试。这里重点测试对不同数据库规模以及数据不确定性的变化对算法的影响。 
图11给出对不同数据库规模的实验结果。在图11(c)中,比较两条曲线:一条曲线表示每次独立为每个数据库建立索引(DirectBuilt),而另一条是原始为2K大小的数据库且使用本发明提出的更新技术建立的索引(Update)。两曲线展示出概率的过滤能力。可见两曲线开始于同一点,并且所有更新的数据库与DirectBuilt非常的接近。这个结果说明本发明给出的索引维护技术的可行性。图11(a)和11(b)给出了对于概率和结构过滤的查询处理时间和相应索引构造时间。从图中可看出,在这两项指标下,所有曲线有很好的可扩展性。如图11(b)所示,PFiltering的构造时间有些长,是由于初始特征集F0与查询日志之间的包含关系的操作的开销有些大。然而,图11(a)表明选出一个很小并且有很强过滤能力的特征集。 
图12给出关于高斯分布中μ选取0.3-0.7时对算法效率的影响,其中图12(a)显示μ选取0.3-0.7时对特征个数的影响,图12(b)显示μ选取0.3-0.7时对索引大小的影响。μ的变化导致节点和边的平均存在概率的变化。SFiltering的曲线都没有改变,因为它的剪枝没有考虑不确定性。从关于PFiltering的结果中,可发现特征的数量和索引尺寸都在增长,因为μ的增长导致查询满足CND的可能性变大。从结果也可看出,PFiltering有一个很小的特征集,即使当μ=0.7时最大值仍然小于120。 
附图说明
图1本发明的一种实施例:不确定图和查询子图; 
图2本发明的一种实施例:不确定图的频繁子图特征; 
图3本发明的一种实施例:查询图对应的特征和其构成的最大团; 
图4(a)子图同构概率真实值和其上下界大小的比较; 
图4(b)子图同构概率真实值和其上下界计算时间的比较; 
图5本发明的一种实施例:特征图矩阵; 
图6本发明的一种实施例:不确定图和查询图对应的概率矩阵,上面分别为查询图q1、q2和q3,下面为对应的概率矩阵; 
图7本发明的一种实施例:概率索引的前缀树结构; 
图8(a)不同查询图下子图同构概率计算时间的比较; 
图8(b)不同概率阈值下子图同构概率计算时间的比较; 
图9(a)不同查询图下总查询时间的比较; 
图9(b)不同查询图下概率过滤后候选集的大小; 
图10(a)不同标签下概率索引特征子图的个数; 
图10(b)不同标签下概率过滤时间的比较; 
图11(a)不同数据规模下各步骤的查询时间; 
图11(b)不同数据规模下结构和概率索引的构建时间; 
图11(c)不同数据规模下过滤能力的比较; 
图12图数据本身不确定性变化时对算法的影响 
图13对未知PPI网络的匹配概率 
图14步骤一的流程图 
图15步骤二的流程图 
图16步骤三的流程图 
具体实施方式
下面通过两个实验来比较本发明的方法和传统方法对蛋白质新结构的归类效果。 
表1第一组实验的PPI网络参数 
Table1 Parameters of PPI networks in the first experiment 
Figure BDA0000041883780000121
在传统方法中,首先从未知蛋白质PPI网络中挖掘出频繁子图作为该PPI网络的特征,然后用特征与已知的PPI网络数据库做子图同构测试。最后把输出的已知PPI网络作为未知 结构的所属类别。应用本发明的方法时,步骤与传统的方法一致,只是已知的PPI网络数据库是不确定的数据库。在挖掘未知结构的特征时,结果可能包含较多特征,实验中取前5个最频繁的子图作为特征,输出的已知PPI网络系包含这些特征。实验数据依然使用STRING的不确定PPI网络。为了应用于传统确定的方法,实验时将概率信息过滤掉,以作为确定的图数据库。 
第一组实验的数据由表1给出,其包含6个PPI网络。分别把Rat和Fruit fly当作未知结构,挖掘出5个特征和表1中的数据库作子图同构查询。对于Rat,确定方法除Fission yeast以外的全部5个PPI网络。此结果非常的不准确,难以区别真正属于哪一类别。而不确定的子图匹配返回的结果如下:(Fruit fly,0.314),(House mouse,0.528),(Rat,0.899),(Thale cress,0.227),(Worm,0.398)。从结果易看出,只有Rat和House mouse的匹配概率超过0.5,而Rat的0.899已经是很高的置信度。对于Fruit fly,确定方法返回Fruit fly和Thale cress。不确定方法返回:(Fruit fly,0.848),(Thale cress,0.205)。可以排除掉Thale cress,因为其匹配概率很小,没有实际意义。这样就可以非常准确地确定未知结果属于Fruit fly了。两个查询结果都说明本发明提供的不确定子图匹配方法具有很高的准确率。 
第二组实验时从STRING数据库中抽取1.5K个PPI网络。从中随机产生200、400、600、800和1000个网络作为未知结构,然后分别去子图查询1.5k的数据库。针对不确定查询,采用生物中常用的70%作查询阈值。本实验测试平均的匹配成功率,成功率被定义为:“真实的网络个数占查询返回的网络个数”。图13给出实验结果,其中Exact表示传统确定方法,Uncertain表示本发明提出的不确定方法。从结果可见,随着未知PPI网络个数的增长,Exact逐渐下降,而Uncertain比较稳定。Exact的成功率很低,几乎都是在20%以下,而Uncertain的成功率高于Exact,有的可达90%以上。主要原因是Uncertain在Exact基础上继续排除了大量的假阳性PPI网络。同时实验表明Uncertain具有相当高的运行效率。 
以上两组实验的结果表明,本发明提供的不确定图子图查询方法对未知生物蛋白质结构的预测具有实际的应用价值。 
本发明具体实施方式采用的硬件平台和软件平台如下: 
硬件平台:CPU:Intel(R)Core(TM)2Quad CPU Q82002.33GHz 
          内存:三星DDR28002G 
          硬盘:Hitachi 240G 
软件平台:操作系统:Linux Redhat5服务器版 
          开发平台:KDeveloper 
         调试平台:KDBG 
         编程语言:C语言。 

Claims (1)

1.一种面向大规模不确定图数据库的子图查询方法,其特征在于对于一个不确定图数据库                                                
Figure 2010106166036100001DEST_PATH_IMAGE001
和一个查询图q,处理概率子图查询主要包括以下步骤:
步骤一:结构化过滤
按如下步骤进行:
(1)输入查询图q、不确定图数据库D和查询阈值
Figure 50316DEST_PATH_IMAGE002
(2)去掉不确定图数据库D中的每一个图g的概率分布;
(3)判断结果图是否包含查询图q,如果结果图包含查询图q,则该不确定图g即被过滤掉,如果结果图不包含查询图q,则该不确定图g输入下一步骤进行概率过滤;
步骤二:概率过滤
按如下步骤进行:
(1)输入经过结构化过滤剩下的不确定图数据库
Figure 2010106166036100001DEST_PATH_IMAGE003
(2)应用算法1从
Figure 153139DEST_PATH_IMAGE003
中选取最优特征子图;
(3)将选取的每个特征子图序列化为字符串;
(4)将所有字符串构建成前缀树,即概率索引PIndex;
(5)计算特征子图在不确定图中的上界和下界,根据概率过滤规则1和概率过滤规则2进行判断,如果满足概率过滤规则1或2,则该不确定图g
Figure 169637DEST_PATH_IMAGE003
中被过滤掉,如果不满足,则该不确定图g输入下一步骤验证候选集;
步骤三:验证候选集
按如下步骤进行:
(1)输入经过概率过滤剩余的不确定图集合
Figure 605298DEST_PATH_IMAGE004
(2)对不确定图集合
Figure 813163DEST_PATH_IMAGE004
中的每一个不确定图g,求出查询图q在不确定图g中的所有嵌入,求出每个嵌入的存在概率并对所有存在概率求和;
(3)如果查询图q在不确定图g中的嵌入个数为奇数并且存在概率的和小于查询阈值
Figure 701484DEST_PATH_IMAGE002
,则该不确定图g中被过滤掉,如果不是,则g是最终查询结果;如果查询图q在不确定图g中的嵌入个数为偶数并且存在概率的和大于或等于查询阈值,则该不确定图g中被过滤掉,否则g是最终查询结果。
CN2010106166036A 2010-12-30 2010-12-30 面向大规模不确定图数据库的子图查询方法 Pending CN102073708A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010106166036A CN102073708A (zh) 2010-12-30 2010-12-30 面向大规模不确定图数据库的子图查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010106166036A CN102073708A (zh) 2010-12-30 2010-12-30 面向大规模不确定图数据库的子图查询方法

Publications (1)

Publication Number Publication Date
CN102073708A true CN102073708A (zh) 2011-05-25

Family

ID=44032247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010106166036A Pending CN102073708A (zh) 2010-12-30 2010-12-30 面向大规模不确定图数据库的子图查询方法

Country Status (1)

Country Link
CN (1) CN102073708A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521332A (zh) * 2011-12-06 2012-06-27 北京航空航天大学 基于强模拟的图模式匹配方法、装置及系统
CN102662974A (zh) * 2012-03-12 2012-09-12 浙江大学 一种基于邻接节点树的网络图索引方法
CN103927360A (zh) * 2014-04-18 2014-07-16 北京大学 基于图模型的软件项目语义信息表示及检索方法
CN104392010A (zh) * 2014-12-23 2015-03-04 北京理工大学 一种子图匹配的查询方法
CN104573730A (zh) * 2015-01-29 2015-04-29 中国科学院深圳先进技术研究院 一种基于决定路径权重的不确定图分割方法及系统
CN104850646A (zh) * 2015-05-28 2015-08-19 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘方法
CN104866588A (zh) * 2015-05-29 2015-08-26 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘方法
CN104899283A (zh) * 2015-06-02 2015-09-09 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘与优化方法
CN104899885A (zh) * 2015-06-03 2015-09-09 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘与优化方法
CN105260465A (zh) * 2015-10-16 2016-01-20 晶赞广告(上海)有限公司 一种图数据处理服务的方法、装置
CN106503473A (zh) * 2016-11-15 2017-03-15 成都信息工程大学 基于动态优化模糊模式算法的医疗数据不确定性分析方法
CN106991195A (zh) * 2017-04-28 2017-07-28 南京大学 一种分布式的子图枚举方法
CN107590178A (zh) * 2017-07-31 2018-01-16 杭州大搜车汽车服务有限公司 一种基于vin码的车型匹配方法、电子设备、存储介质
CN112990332A (zh) * 2021-03-26 2021-06-18 杭州海康威视数字技术股份有限公司 一种子图规模预测和分布式训练方法、装置及电子设备

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521332A (zh) * 2011-12-06 2012-06-27 北京航空航天大学 基于强模拟的图模式匹配方法、装置及系统
CN102521332B (zh) * 2011-12-06 2013-09-18 北京航空航天大学 基于强模拟的图模式匹配方法、装置及系统
CN102662974A (zh) * 2012-03-12 2012-09-12 浙江大学 一种基于邻接节点树的网络图索引方法
CN102662974B (zh) * 2012-03-12 2014-02-26 浙江大学 一种基于邻接节点树的网络图索引方法
CN103927360A (zh) * 2014-04-18 2014-07-16 北京大学 基于图模型的软件项目语义信息表示及检索方法
CN104392010A (zh) * 2014-12-23 2015-03-04 北京理工大学 一种子图匹配的查询方法
CN104392010B (zh) * 2014-12-23 2017-07-11 北京理工大学 一种子图匹配的查询方法
CN104573730A (zh) * 2015-01-29 2015-04-29 中国科学院深圳先进技术研究院 一种基于决定路径权重的不确定图分割方法及系统
CN104850646A (zh) * 2015-05-28 2015-08-19 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘方法
CN104850646B (zh) * 2015-05-28 2018-08-07 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘方法
CN104866588A (zh) * 2015-05-29 2015-08-26 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘方法
CN104866588B (zh) * 2015-05-29 2018-08-07 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘方法
CN104899283A (zh) * 2015-06-02 2015-09-09 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘与优化方法
CN104899885A (zh) * 2015-06-03 2015-09-09 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘与优化方法
CN104899885B (zh) * 2015-06-03 2017-12-05 中国人民解放军国防科学技术大学 一种针对单个不确定图的频繁子图挖掘与优化方法
CN105260465A (zh) * 2015-10-16 2016-01-20 晶赞广告(上海)有限公司 一种图数据处理服务的方法、装置
CN105260465B (zh) * 2015-10-16 2018-10-30 晶赞广告(上海)有限公司 一种图数据处理服务的方法、装置
CN106503473A (zh) * 2016-11-15 2017-03-15 成都信息工程大学 基于动态优化模糊模式算法的医疗数据不确定性分析方法
CN106991195A (zh) * 2017-04-28 2017-07-28 南京大学 一种分布式的子图枚举方法
CN106991195B (zh) * 2017-04-28 2020-08-11 南京大学 一种分布式的子图枚举方法
CN107590178A (zh) * 2017-07-31 2018-01-16 杭州大搜车汽车服务有限公司 一种基于vin码的车型匹配方法、电子设备、存储介质
CN112990332A (zh) * 2021-03-26 2021-06-18 杭州海康威视数字技术股份有限公司 一种子图规模预测和分布式训练方法、装置及电子设备
CN112990332B (zh) * 2021-03-26 2023-06-02 杭州海康威视数字技术股份有限公司 一种子图规模预测和分布式训练方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN102073708A (zh) 面向大规模不确定图数据库的子图查询方法
Xue et al. Semantic enrichment of building and city information models: A ten-year review
Zou et al. Finding top-k maximal cliques in an uncertain graph
Harman et al. A theoretical and empirical study of search-based testing: Local, global, and hybrid search
Soibelman et al. Management and analysis of unstructured construction data types
CN110597735A (zh) 一种面向开源软件缺陷特征深度学习的软件缺陷预测方法
CN105912666B (zh) 一种面向云平台的混合结构数据高性能存储、查询方法
Huang et al. A multi-agent evolutionary algorithm for software module clustering problems
CN109409561B (zh) 多时间尺度时间序列协同预测模型的构建方法
JP7432801B2 (ja) デプスマップマッチングに基づく医療データエレメント自動化分類方法及びシステム
Mohammed et al. An innovative synthesis of optmization techniques (FDIRE-GSK) for generation electrical renewable energy from natural resources
Pan et al. Clustering of designers based on building information modeling event logs
CN114730618A (zh) 用于设计期望有机分子的有机合成途径的系统和方法
US7308392B2 (en) Processes and systems for predicting biological species invasions
CN115794803B (zh) 一种基于大数据ai技术的工程审计问题监测方法与系统
Huang et al. A study of quality and accuracy trade-offs in process mining
Rabbi et al. An Approximation For Monitoring The Efficiency Of Cooperative Across Diverse Network Aspects
Chao et al. Estimation of species richness and shared species richness
Aghimien et al. A review of the application of data mining for sustainable construction in Nigeria
Ramkumar et al. A survey on mining multiple data sources
CN114897085A (zh) 一种基于封闭子图链路预测的聚类方法及计算机设备
Rajbahadur et al. Pitfalls analyzer: quality control for model-driven data science pipelines
Shen et al. Parallel multi-objective evolutionary optimization based dynamic community detection in software ecosystem
CN110309948A (zh) 整车物流订单预测方法及装置、物流系统以及计算机可读介质
Ibrahim et al. Using qualitative probability in reverse-engineering gene regulatory networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110525