频繁子图挖掘算法
一种基于局部重构树的改进频繁子图挖掘算法
是一种高效的经典算 法 , 然而两遍数据库扫描不
能 适应 数据 流 的无 限性 和流 动性 的特 点 。为了克
服该局限性 , 需要设计一种有效的全局数据结构 , 通过一次扫描就能包含所有数据库信息。 笔 者提 出 了一种 新 的一 次 扫 描前 缀 树 结 构 , 称为局部重构 O P F 。该 结构是一种类 似于 F P—
根, 路径 上所 有能 与 O连通 的节 点或 者 能 与 O连 L t 通 的节 点 将 构 成 O条 件 图库 中 的一 个 图 。这 样 L 可 以剔 除 那 些 既 不 与 连 通 , 不 与 O连 通 的 又 l 点 。也 可 以避 免 同 时 考 虑 与 连 通 的边 和 与
含一个点的频繁图集 的标号顶点表 , 笔者 引入 了
为 [ I ]其中 t T t, 为第一个元素 , 为剩余元素 而
的表 , 递归调用 I e —re( I ,r ) n r t Te 函数实现 st e T e 将元 组对 应 的信 息加 入 到 Te r e中, 成 树 的 完
De 2 1 c. 01
文章编号 :0 7—14 2 1 )6— 8 4— 4 10 4 X( 0 1 0 06 0
文献标志码 : A
一
种 基 于局 部 重 构 树 的 改进 频 繁 子 图挖 掘算 法
蒋廷耀 , 廖 强
( 三峡大学 计算机与信息学 院, 湖北 宜昌 43 0 ) 4 0 2
关键词 : 频繁 子图 ; 图挖掘 ; s 表 ; P—t e Hah F r e
中 图分 类 号 :P 9 T 31 D I1 .93 ji n 10 O :0 3 6 /.s .07—14 2 1.6 O 4 s 4 X.0 10 .0
图数据处理中的图挖掘与关键节点识别技术研究
图数据处理中的图挖掘与关键节点识别技术研究图数据处理是指对图结构的数据进行分析、挖掘和可视化的过程,其中图挖掘和关键节点识别是图数据处理中的重要技术。
一、图挖掘技术图挖掘是指从图数据中发现潜在的模式、规律和知识的过程。
图挖掘技术可以分为图模式挖掘和图分类挖掘两个方面。
1. 图模式挖掘图模式挖掘主要是从图数据中发现频繁出现的子图结构,如图中的子图、路径、圈等。
这些子图结构可能代表了一些重要的模式或特征,在社交网络分析、生物信息学、计算机视觉等领域有广泛的应用。
常用的图模式挖掘算法包括Apriori算法、FP-Growth算法和GSpan算法等。
Apriori算法是一种基于频繁项集的挖掘方法,通过迭代的方式挖掘出频繁子图;FP-Growth算法是一种基于前缀树的挖掘方法,通过构建频繁子图的树形结构来提高挖掘效率;GSpan算法是一种基于图搜索的挖掘方法,通过遍历图数据中的所有可能子图来发现频繁子图。
2. 图分类挖掘图分类挖掘主要是将图数据进行分类,即根据图的属性和拓扑结构将其归类到不同的类别中。
图分类挖掘可应用于推荐系统、网络安全和图像识别等领域。
常用的图分类挖掘算法包括最近邻算法、支持向量机和神经网络等。
最近邻算法通过将待分类图与已知类别图进行相似度计算,将其归类到最相似的类别中;支持向量机采用超平面划分图数据空间,实现分类目标;神经网络通过训练神经元之间的权值来实现图分类。
二、关键节点识别技术关键节点识别是指从图数据中识别出对整个网络结构具有重要影响力的节点。
关键节点的识别对于理解网络的拓扑结构、控制网络的传播过程以及防止网络攻击具有重要意义。
关键节点的识别可以基于节点的度中心性、介数中心性、紧密中心性和特征向量中心性等指标进行。
1. 度中心性度中心性指节点的度数,即与该节点相连接的边的数量。
度中心性高的节点在图中具有很大的影响力,通常被认为是关键节点。
2. 介数中心性介数中心性指节点在所有最短路径中作为中间节点的频率。
频繁子图模式挖掘
数据挖掘与商务智能读书报告Using Association Rules for Product Assortment英文标题:gSpan: Graph-Based Substructure Pattern Mining中文标题:频繁子图模式挖掘文献来源:ICDM 2002一、主要内容(2000~2500字):(1)论文研究的问题概述数据挖掘技术及其算法是目前国际上数据库和信息决策领域最前沿的研究方向之一,本文就数据挖掘中基于图结构的gSpan挖掘算法及其应用进行了研究。
本文研究了频繁字图挖掘在图数据集的新方法,提出了一种新的算法gSpan,它在没有候选集的情况下发现了频繁子结构。
gSpan在图中建立了一种新的字典序,和各图形映射到一个唯一的最小DFS代码作为它的规范的标签。
基于这种字典顺序,gSpan采用深度优先的搜索策略高效的挖掘频繁连通子图。
研究表明,gSpan大大优于以前的算法。
gSpan算法是图挖掘邻域的一个算法,而作为子图挖掘算法,又是其他图挖掘算法的基础,所以gSpan算法在图挖掘算法中还是非常重要的。
gSpan算法在挖掘频繁子图的时候,用了和FP-grown中相似的原理,就是模式增长方法,也用到了最小支持度计数作为一个过滤条件。
图算法在程序上比其他的算法更加的抽象,在实现时更加需要空间想象能力。
如果整个数据集图中可以容纳主存,gSpan可以直接应用,否则人们要首先执行基于图的数据投影仪,然后应用gSpan。
gSpan是第一个在频繁子图挖掘中使用深度优先搜索的算法。
本文介绍DFS字典序和最小DFS码这两种技术,它们形成一种新的规范的标识系统来支持DFS搜索。
gSpan在一个步骤里结合了频繁子图的增长和检查,从而加速挖掘过程。
(2)论文研究的理论意义及其应用前景频繁图挖掘是数据挖掘中一个非常广泛的应用。
频繁图挖掘可以理解为从大量的图中挖掘出一些满足给定支持度的频繁图,同时算法需要保证这些频繁图不是重复的。
解决数据样本不平衡性的频繁子图挖掘算法
共性 。它可 以被构建成一类特殊 的图 , 中每个节点都代表一 图 个 唯一 的蛋 白质 , 每条边表示一个相互作用。 而 这就是说 , 这类 图有其独特 的节点标签 , 从而避免 了子图同构的计算 。传统频 繁子图挖掘算法应用到生物网络中效率很低 , 子图频度的计算 至今仍是一个 N P难题 。为此 , 根据生物 网络 的特 点 , Hu等提 出了 C D N E算 法[ Y n等 提 出 C P N算法 N Mo1 OE S 1 a ] , SA 及 e [ 9 等
c l F (t ae u ci yt , rm nn rq etsbaa h yrl iesp ot hog el gwt h elpoe n l d a e IS I rtdF nt n S s m)f iigf u n u grpsb ea v u p rT r h dai i t ra rti i- e o e o e t . u n h e n
—
XI Di S E , HANG Xu - u W ANG i o, t a . g r t m o sd rn i b l n e c o s d t s t f r m i i g f e u n u - e q n, M a e 1 Al o ih c n i e i g m a a c a r s a a es o n n r q e t s b
16 20 . ( ) 4 0 84 3 4 6
Cm u rEg ergadA pi tn 计算机工程与应 用 op t nt ei n p laos e n n ci
解决数据 样本不 衡性 的频繁子 图挖掘 算法
谢 均 , 尚学群 , 王 淼 , 张延 园
XI E Di SHANG , Xue u W ANG Mio, —q n, a ZHANG Ya y a n— u n
频繁子图挖掘算法的若干问题
1 频繁子 图挖掘算 法
1 1 图的存 储 .
用相 应 的 l , ’… , ’ ’ 2 , 替换 。如果 节
关 于 图的存 储也 可 以称 为 图 的表 示 (rp e— gahrp rsnai ) 目前 图 的表 示 有 邻 接 数 组 (  ̄aec eettn 。 o A cny
点i 和 之间存在边 E i ) 则生成 B D b E (, , . 『 D b : ()八 ’ , G 的所 有 关 联 关 系 可 表 示 如 下 : i () 图 ( )=Vb G 其 中 i 取 遍 1到 。如 果 i _ 相 , 和『 不
邻 , b . s。此 时 B D T( 已经 能 够 把 无 权 则 = e / D G)
图 G表示 出来 。 1 2 图数据 库 的预处理 .
Ar s 、 r y) 邻接链表 ( d cnyL t 、 a A j ec is 邻接矩阵 ( d a s) A— j ec a i 、 a nyM tx 隐式表示 ( s ao 其 中邻 接数 组主 要 用来 描 述 静 态 数 组 , 接 链 表 主 邻
要用 来 表示 动态 图 , 接矩 阵在 表 示 稠 密 图 上有 很 邻
大优 势 。本 文主 要介绍 以下 2种 隐式 表示 方式 。
( )区间 图 表 示 方 法 。 区 间 图 由 一 系 列 区 1
原 来 的各 种 算 法 中 , 了没 有讨 论 图的存 储 形 除 式外 , 也都 没有 对 数 据 库 中的 图进 行 预 处 理 。本 文
数量出现 , 通常是海量信息 。当进行频繁子图的挖 掘时 , 就会存在如下问题。
( )图数据库中存在某些图是另外一些图的子 1
图 。将 表示 结点 的区 间 的端 点 按 序 排 列 , 后 按序 然
一种新的频繁子图挖掘算法
1 概述
数据挖掘是指在 数据 中发现有效的、新颖的、潜在有用
Vuv , ∈V, “ v ∈E) (_(),()∈E’ ( ,) ( { ( “ , v) 厂 )
V u v ∈E L uv :L , , () (,) , ( , ) ( ) v) ,
的、可理解模式 的非平 凡过程 。图结构能够模拟几乎 所有 事 物之间的联系 ,如在 We b挖掘、药物分子设 计及 其功能预测 等领域都有广泛应用 。作为 图挖掘 中一个重 要分支 ,频繁 子
第3 7卷 第 2 期 0
、_ . 7 , 13 0
・
计
算
机
工
程
21 0 1年 1 0月
Oc o e t b r 201 1
No2 .0
Comp e g n e i utrEn i e rng
软 件 技术 与数 据 库 ・
一
文章编号t10.32( 12-o2—0 文献标识码: 0o一48 010-07 3 2 )_ A
[ ywod lApirag r m; a nn ;u gahio rhs f q e tu ga h Ke r s r i o t d t miig sb rp mo i r u n b rp o i l h a s p m; e s D0I 1.9 9jsn10 —4 82 1.00 0 : 03 6 /i . 03 2 . 1 .1 .s 0 0 2
的挖掘效率更高 。
关蝴
:A r r算法 ;数据挖掘 ;子 图同构 ;频繁子图 pi i o
Ne Al o ih o i i gFr q e tS b r p w g rt m f n n e u n u g a h M
・
CPU-MIC异构并行架构下基于大规模频繁子图挖掘的药物发现算法
摘要:频繁子图挖掘是许多实际应用领域中需要解决的重要问题,由于计算密集性、挖掘的图集及其结果容量大,现有的频繁子图挖掘方案无法满足时间需求,其处理效率是目前面临的主要挑战。
原创性地提出了并行加速的频繁子图挖掘工具cmFSM。
cmFSM主要在3个层次上进行并行优化:单节点上的细粒度OpenMP并行化、多节点多进程并行化和CPU-MIC协作并行化。
在单节点上cmFSM的处理速度比基于CPU的最佳算法快一倍,在多节点方案中cmFSM提供可扩展性。
结果表明,即使只使用一些并行计算资源,cmFSM也明显优于现有的最先进的算法。
这充分表明提出的工具在生物信息学领域的有效性。
关键词:频繁子图挖掘; 生物信息学; 并行算法; 内存约束; 同构; 集成众核1 引言在生物信息学研究中,为帮助在药理学化合物数据库或生物网络的核心功能结构中寻找新药,频繁子图挖掘的解决方案尤为重要。
但现有的频繁子图挖掘方案无法有效解决内存消耗与时间需求问题。
Lin W等人认为频繁子图挖掘问题可分为两个方面:一方面是在一个图的不同区域挖掘子图,适用于社交网络分析领域;另一方面是在大规模图集中挖掘子图,适用于计算药理学和生物信息学领域。
两方面都面临共同的问题:大规模挖掘任务产生的大量挖掘结果超过了单台机器的存储器空间,且无法满足时间需求。
并行技术是解决这类问题的有效方案。
针对第一方面,专家已经提出基于串行CPU技术、并行计算框架(MapReduce、MPI、Spark)及图形处理器(graphics processing unit,GPU)的解决方案。
本文意在解决生物信息学领域中频繁子图挖掘的问题。
2 相关工作现有频繁子图挖掘方案以递归计数为基础,可以挖掘出所有频繁子图,且大部分频繁子图挖掘算法基于广度优先搜索(breadthfirst searc,BFS)改进生成,例如基于先验的挖掘算法(apriori-based algorithm for mining,AGM)和频繁子图挖掘(frequent subgraph discovery,FSG)算法工具。
频繁子图挖掘算法的比较研究
频繁子图挖掘算法的比较研究在大数据时代,数据挖掘技术成为了人们研究数据的重要手段之一。
频繁子图挖掘算法是挖掘图数据中潜在关系的一种常用手段。
它可以挖掘出图数据中频繁出现的子图,如社交网络中的社区结构、生物信息学中的蛋白质相互作用网络等。
在实践中,频繁子图挖掘算法被广泛地应用于数据挖掘、机器学习等领域。
当前,随着研究的深入,频繁子图挖掘算法也在不断地发展和创新。
本文将对目前主流的几种频繁子图挖掘算法进行比较研究。
一、背景介绍频繁子图挖掘是指在给定的大规模无向或有向图中,挖掘出满足支持度和置信度要求的子图,其中支持度指的是子图在图中出现的次数,置信度指的是满足支持度的子图在图中出现的比例。
频繁子图挖掘算法可以在无需精确查询的前提下,对图中的隐含模式进行发现和分析。
目前,有很多种不同的频繁子图挖掘算法,其中最常用的是基于Apriori算法的频繁子图挖掘算法。
随着研究的深入,越来越多的算法被提出来,并逐渐成为了主流,如GSpan、FSG等算法。
本文将对这几种算法进行比较研究。
二、Apriori算法Apriori算法最早由Agrawal和Srikant在1994年提出。
该算法适用于一般的数据挖掘任务,可用于频繁项集挖掘、关联规则挖掘、分类和聚类等任务。
该算法的基本思想是通过多次扫描事务数据库来寻找频繁项集,通过候选项集的生成和筛选来减少扫描次数,从而提高算法的效率。
在频繁子图挖掘领域,Apriori算法也有相应的改进。
例如,Menardi和Torelli 等人提出了一种改进版本的Apriori算法——RapidMiner,在速度上有了显著的提升。
另外,Apriori算法还有很多种变种,例如Eclat、FP-Growth等,这里不再赘述。
三、GSpan算法GSpan算法是一种高效的频繁子图挖掘算法。
GSpan算法以图的邻接矩阵及其迭代的方式,满足Apriori性质,通过对子图的遍历,不断生成候选子图并判断其是否频繁,从而提高算法的效率。
数据分析知识:数据挖掘中的频繁模式挖掘
数据分析知识:数据挖掘中的频繁模式挖掘数据挖掘中的频繁模式挖掘数据挖掘是一个复杂的过程,需要从庞大的数据集中提取出有价值的信息,这些信息可以用于业务分析、决策支持、市场营销等方面。
而频繁模式挖掘,就是在大量数据中寻找频繁出现的组合,从而发现数据集中的一些结构、规律和特征,帮助人们更好地理解数据,作出可靠的决策。
本文将介绍频繁模式挖掘的概念、算法和应用,并探讨其在实践中的优势和不足之处。
一、频繁模式挖掘的概念频繁模式挖掘是数据挖掘中的一种技术,它通过数据集中的项集来寻找频繁出现的组合,从而发现数据集中的一些规律、结构和特征。
在频繁模式挖掘中,一个项集是指包含若干个属性(或特征)的集合,而频繁项集指在数据集中出现频率较高的项集。
举个例子,某超市的销售数据表格中,每一行代表一次购物,每一列代表某种商品,如果某些商品常常同时被购买,那么这些商品就组成了一个频繁项集。
对于频繁项集的挖掘,可以应用一些经典的算法,如Apriori算法、FP-growth算法等。
这些算法可以从数据集中提取出频繁项集,并进行支持度和置信度的计算,从而评估每个项集的重要性和关联性。
而支持度指项集在数据集中出现的概率,而置信度则是指在包含某项集的条件下,另一个项集出现的概率。
二、频繁模式挖掘的算法1、Apriori算法Apriori算法是频繁项集挖掘领域中的经典算法,它最早由R. Agrawal和R. Srikant于1994年提出。
该算法是基于Apriori原理的,即如果一个项集是频繁的,那么它的所有子集必须也是频繁的。
具体而言,Apriori算法的流程包括:(1)对数据集中的单个项进行扫描,统计每个项的出现次数,得到一个项集L1;(2)对于项集L1中的每一项,计算其支持度,只保留支持度大于等于设定阈值minsup的项,得到一个新的项集L2;(3)对于项集L2中的每两个项,判断它们是否能够组合成一个新的项集,如果满足条件,则进行计数,并得到一个新的项集L3;(4)重复第二步和第三步,直到无法生成新的项集为止。
一种快速的频繁子图挖掘算法
一种快速的频繁子图挖掘算法摘要:提出了一种基于关联矩阵的频繁子图挖掘算法。
该算法通过对关联矩阵的标准化,有效地降低了子图同构判断的代价。
在此基础上,算法利用深度优先的思想,通过逐步扩展频繁边找出所有频繁子图。
实验结果表明,该算法比其他同类算法具有更快的速度和更好的稳定性。
关键词:图;关联矩阵;同构;数据挖掘Abstract:Analgorithmforminingfrequentsubgraphsbasedonassociatedmatrixwasproposed.Bynorm alizingtheassociatedmatrixofthegraph,thecomputationalcostonverifyingtheisomorphismofthesubgr aphswaseffectivelyreduced.Basedonthedepth2firstsearchingmethod,allthefrequentsubgraphscouldb esearchedbyaddingedgesprogressively.Experimentalresultsshowthatthealgorithmhashigherspeedan dbetterstabilitythanothersimilarones.Keywords:graph;associatedmatrix;isomorphism;datamining一引言伴随着生物信息学、社会网络学、XML文档分析的发展,传统的针对非结构型数据的挖掘方法[1]诸如频繁项集和序列模式的挖掘,已经不能胜任对半结构型、结构型数据的挖掘。
图作为结构型数据中的一个重要数据类型,能够表示诸如化学分子(化学原子表示为图中的节点,原子与原子之间的化学键表示为节点之间的边)、蛋白质结构、社会网络等众多应用领域的数据。
对于图挖掘方法的研究,可以有效地解决这些领域的难题。
因此,对于半结构型、结构型数据挖掘的研究已经具有越来越高的应用价值。
一种基于前缀节点的频繁子图挖掘算法
在化学信息学 、 生物信息学 、 网络结构分析 等领域 , 频繁 子 图挖掘算法是一个热点研 究问题 。与其他 的频繁模式挖 掘算 法类似 , 一般 的频繁子图挖掘算法都分为候选模式生成和模式
频 繁判 定 两 步 … 。在 频 繁 子 图 的 挖 掘 过 程 中 , 生 成 大 黾 的 会 候选 模 式 图 。对 每 一 个 新产 生 的候 选 模 式 图 , 在进 行 频 繁判 定
d i1 .9 9 ji n 10 —65 2 1 . 7 00 o:0 3 6/ . s.0 13 9 .0 0 0 .2 s
F e u n u g a h n n lo i m a e n p e x n d r q e ts b r p s mi i g ag rt h b s d o rf o e i
m ii g i mp o e y CBE ag rt n n si r v d b lo i hm. Ke y wor s: d t nig;fe u n u r p d a a mi n r q e ts bga h;io r im l s s mophs ca s;c n ne lf r ;p e i o e a o ia om r fx n d
C E算法 。对 在分 支上扩展得 到的候选 模 式 图, B B C E算 法能 够在 常数 时 间 内完成 规 范化 判 定。通 过 实验 证 明
C E算法 的子图挖掘效 率有显著提 高 B 关键 词 :数据挖 掘 ;频 繁子 图 ;同构类 ;规 范化 形式 ;前缀 节点 中图分类号 :T 3 1 P 0 文献标 志码 :A 文章编号 :10 —6 5 2 1 ) 7 2 7 — 3 0 139 (0 0 0 —4 6 0
树也成为该 同构类的规范形式 。同构类 的规范形式有多 种不
频繁模式树算法-概述说明以及解释
频繁模式树算法-概述说明以及解释1.引言1.1 概述频繁模式树算法是一种用于挖掘大规模数据集中频繁项集的有效算法。
在数据挖掘领域,频繁项集指的是在给定数据集中频繁出现的物品集合。
通过找到频繁项集,我们可以了解到数据集中的常见模式和关联规则,这对于市场分析、产品推荐和用户行为分析等方面都具有重要的意义。
频繁模式树算法通过构建一棵频繁模式树来实现频繁项集的发现。
在频繁模式树中,每个节点表示一个项集,并记录了该项集在数据集中的支持度。
支持度即该项集在数据集中出现的频率,支持度高的项集被认为是频繁项集。
通过遍历频繁模式树,我们可以获得满足最小支持度要求的所有频繁项集。
频繁模式树算法具有以下几个特点:首先,频繁模式树算法能够高效地处理大规模的数据集。
相比于传统的Apriori算法,频繁模式树算法采用了一种更加紧凑的数据结构,减少了空间开销和计算时间。
其次,频繁模式树算法还具有天然的子模式剪枝功能。
通过构建频繁模式树,我们可以快速地识别出不满足最小支持度要求的项集,并将其剪枝,从而提高算法的效率。
最后,频繁模式树算法还可以用于发现关联规则。
关联规则是指两个或多个项集之间的关系,例如“购买牛奶->购买面包”。
通过频繁模式树算法,我们可以挖掘出频繁项集,然后根据频繁项集之间的关系来生成关联规则。
在本文中,我们将详细介绍频繁模式树算法的原理、步骤和应用。
通过对算法进行深入的理解和探讨,我们可以更好地应用频繁模式树算法来挖掘数据集中的规律和模式,并为相关领域的研究和实践提供有力的支持。
1.2 文章结构本文将采用以下结构来展开对频繁模式树算法的介绍和讨论。
首先,在引言部分(1.1),我们将对频繁模式树算法进行概述,简要介绍它是什么以及为什么它在数据挖掘中是一个重要的算法。
同时,我们还将提到本文的结构和目的(1.2和1.3),以便读者能更好地理解文章的整体框架和目标。
接下来,在正文部分(2),我们将详细探讨频繁模式树算法的原理(2.1),从理论上解释其工作原理和背后的原理。
322-韩蒙 RAKING一种高效的不确定图K-极大频繁模式挖掘算法
,文献[17]介
绍了最新不确定数据的相关技术 ,但这些研究仍然主 要面向传统数据项。针对不确定图的研究才刚刚开 始,其中已有计算不确定图中的最可靠子图 对不确定图进行高效 TOP-K 查询
[20] [18][19]
, :
等课题。邹提出
[21,22,23]
在不确定图上挖掘频繁模式的一些有效算法
RAKING:一种高效的不确定图 K-极大频繁模式挖掘算法
韩蒙 1) 张炜 2) 李建中 1) 2)
1) (黑龙江大学 计算机科学技术学院 黑龙江哈尔滨 150080) 2) (哈尔滨工业大学 计算机科学与技术学院 黑龙江哈尔滨 150的可能图实例,基于确定图模型的频繁图模式挖掘算法通常难以在不确定图集合上高 效运行。本文提出了一种不确定图数据集上的基于随机游走的 K 极大频繁子模式挖掘算法。首先,将每个不确定图转换 为相应的确定图并挖掘候选频繁模式;然后,将候选频繁模式恢复为不确定图并生成极大频繁模式搜索空间;最后,通 过随机游走以相同概率随机地选择 K 个极大频繁模式。理论分析和实验结果表明本文提出的算法能够高效地获得不确定 图集合的 K-极大频繁模式。
Margin[11]先将图数据组织成格,在搜索的同时不断
对搜索空间进行剪裁以减少子图同构的计算,从而更 易获得极大频繁模式。但是,因为不确定图的频繁子 树也是不确定的,而且不确定图蕴含的全部确定子图 空间巨大,即使进行一定的剪裁也很难有效枚举,所 以这两种方法都不可以直接应用于不确定图。 随机化的算法因可在大规模数据上高效执行被广 泛应用。在确定图上,ORIGAMI[12]通过随机化方法 解决了获得有代表性模式的问题,但其输出不具有一 致性,多次迭代后结果中仍可能漏掉一些重要模式。 MUSK[13]方法则通过随机游走获得极大频繁模式集。 近期,Hasan在原有工作基础上提出利用随机游走对 各类带约束模式进行挖掘的通用方法[14],但以上方法 对确定图进行的处理并没有考虑边及点的不确定性, 不能很好适用于不确定图。 对于不确定数据的研究近年也已有了很多成果, 如对不确定数据建模及管理的工作
基于确定图的频繁子图挖掘技术概述
基于确定图的频繁子图挖掘技术概述摘要:化学信息学、生物信息学、医学和社会科学等领域的科学研究的迅速发展积累了大量的图数据,如何从复杂和庞大的图数据中挖掘出有效信息成为数据挖掘领域的热点。
通过介绍现阶段图数据挖掘技术的进展,特别是确定图挖掘技术中有代表性的频繁子图挖掘技术研究,讨论并预测了频繁子图挖掘研究的发展趋势。
关键词:确定图;频繁子图挖掘;子图同构中图分类号:tp311.13 文献标识码:a 文章编号:1007-9599 (2012) 17-0000-021 引言广泛应用于描述化学信息学、生物信息学、医学和社会科学等领域的图数据挖掘技术是目前数据库研究领域的重要研究方向。
在生物技术领域,图数据挖掘技术可以帮助生物学家减轻蛋白质结构匹配实验的代价;在小世界(社会)网络分析中,对小部分节点的高度局部聚类的挖掘,有助于理解如何能接触到其他人、设计网络,有利于信息或其他资源的有效传输,从而不用太多的冗余连接使网络过载[1]。
在进行确定图数据挖掘技术的讨论之前,先给出确定图数据的基本定义。
确定图是一个五元组, =(,,,,)。
其中是图的顶点集合;是图边的集合;是图的顶点标号集合;是图的边标号集合;是用来对顶点和边分配标号的函数。
本文将对国内外基于确定图的频繁子图挖掘技术研究进行介绍和总结,并对未来的发展趋势和研究热点进行展望。
2 确定图的数据挖掘技术一段时间以来,确定图的频繁子图挖掘问题得到了一定的研究,确定图的频繁子图挖掘是指在确定图集合中挖掘出公共子结构。
常见的频繁子图挖掘算法可以分为4类:基于模式增长的算法、基于的算法、基于模式规约的算法以及基于最小描述长度的近似算法。
2.1 基于的频繁子结构挖掘算法基于的频繁子结构挖掘算法,包括算法和算法等。
akihiro inokuchi、takashi washio和hiroshi motoda提出的算法以递归统计的方法为基础,图的顶点相当于传统频繁项集挖掘算法中的项集,通过每次增加一个图节点来实现子结构规模的增大,该算法可以挖掘出所有频繁子图,对集成的密集数据集具有良好性能。
基于FSG的最大频繁子图挖掘算法
o ti e maln mb ro h e u t a d t i w to tls n o ma in,mi i g ma i lfe u n u g a h s v d s a e a d ba n d a s l u e f e r s l n h s i u o s if r t t s h o nn xma q e ts b r p a e p c n r
sb rp s o bn dted ge , o e n da e c s t c l lt gn r l a xc dn n rp sdt oterm a u ga h .C m ie e re n d s da jc n y i a ua n o t o iga dpo o e oe s h t h a l to c i ma m r i w h t
GUO Jn — e g i g fn ,C HAIRa n,Z HANG We i
( ol efI omai C lg n r tn& E gne n e o f o n ier g,Ynh nU i rt,Qn un d oH bi 6 04, hn ) i a sa nv sy iha g a ee 0 60 C ia ei
数 量很 少且 不丢 失信 息 , 节省 了空 间和 以后 的 分析 工作 。基 于算 法 F G提 出了最 大频 繁 子 图挖 掘 算 法 F G— S S
GSpan-频繁子图挖掘算法
GSpan-频繁⼦图挖掘算法GSpan频繁⼦图挖掘算法,⽹上有很多相关的介绍,中⽂的⼀些资料总是似是⽽⾮,讲的不是很清楚(感觉都是互相抄来抄去,,,基本都是⼀个样,,,),仔细的研读了原论⽂后,在这⾥做⼀个总结。
1. GSpan频繁⼦图挖掘算法:总的思想是,先⽣成频繁树,再在频繁树的基础上,⽣成频繁⼦图,满⾜最⼩⽀持度,满⾜最⼩DFS编码的所有频繁⼦图。
GraphGen.输⼊:图集GD,最⼩⽀持度阈值 min_sup;输出:频繁⼦图集合FG.(1) 扫描图集并找到图集GD 中所有频繁边;(2) 删除所有⾮频繁边;(3) E→{GD中所有频繁边};(4) 将E 中的边按 DFS 编码顺序(后⽂中有介绍)和频率的降序进⾏排列;(5) T→NULL; /*T为频繁⼦树集合*/(6) t→e1; /*E中的第 1 条边作FTGen的初始值*/(7) FTGen(D,t,E,T); /*频繁树⽣成算法*/(后⽂中有介绍)(8) 将集合T 中的元素按节点数与 DFS 编码顺序进⾏排序;(9) FG→T;(10) for T 中的每棵树(11) g→t;(12) E‘{e是频繁边,且e 是内边(后⽂中有介绍),并能在图集中找到(g<>e)};(13) for E' 中的每条边(14) E' →E‘ - e;(15) g→g<>e;(16) if g ≠ min(g) then break;(17) if FG中⽆g 的同构⼦图 then FG <— FG‘ ∪ g;(18) endfor;(19) endfor;(20) return FG;GraphGen 分为 3 个部分,算法 2 给出了这种算法的细节.算法在第 1 部分(第 1 ⾏~第 6 ⾏)对图集GD进⾏预处理.作为图挖掘的基础,必须从图集中提取出必要的信息,如频繁边集、频繁节点集等.在这⼀部分中,GraphGen 扫描图集GD并得到频繁边集,将频繁边集按频率递减与 DFS 编码值递增的顺序进⾏排列,供算法进⼀步计算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
频繁子图挖掘算法
一.算法定义与分类编辑
按照模式挖掘算法的输入数据类型进行分类:分为graph-transaction和singie-graph两种类型。
graph-transaction型模式挖掘所处理的输入数据是由许多规模相对较小的图构成的集合,每个图可能只包含几十到几百个顶点;而single-graph型模式挖掘的对象则只有-个大图,这个大图包含成千上万个顶点。
这两种类型的区别还在于它们计算候选子图频度时所使用的策略。
graph-transaction型计算模式在图集合每个图中是否出现,不管它在同-个图中出现了多少次均计数-次,而single-graph型则计算模式在这个大图中不同位置出现的总次数。
根据两种类型的特征,解决graph-transaction类型的算法不能用来解决single-graph类型模式挖掘,但是Single-graph类型的算法却能方便应用于graph-transaction类型。
按照采用度量的不同进行分类:分为支持度(support)、支持度-置信度、MDL(minimumdescri-Ptionlength)三种。
支持度型挖掘是以子图在输入图中出现的次数来作为度量的,大部分算法都是基于支持度的;MDL型挖掘是以压缩输入数据的程度来度量,-般采用公式valuo(s,g)=dl(g)/(dl(g1)+dl(g2))来计算,其中:是子图,g是输入的图集合,dl(g)表示图集合g的存储空间,dl(g2)表示把g中所有出现:的地方都用同-个顶点替换后的图形所需的存储空间;支持度-置信度型挖掘是以既要满足最小支持度又要满足最小置信度来衡量的。
还有其它-些度量方法,这里就不再介绍了。
按照挖掘出的频繁子图的类型进行分类:分为一般子图、连通子图、诱导子图等。
二.算法思路编辑
算法的思路比较简单,以递归计数为基础,可以挖掘出所有频繁子图。
但是对于包含较多图的输入集合来说执行效率非常低,主要是因为挖掘算法在生成候选子图时要判断是否存在相同的k-1子图,当川尺大时,这需要花费很长时间。
并且通过每次添加一个顶点来产生候选子图时会产生许多冗余k+l子图。
在剪枝的过程中,也需要很多时间来判断每个k+l候选子图的所有k子图是
否都是频繁的。
剪枝后的候选子图仍然很多,因此需要大量的重复扫描输入图集合来计算候选子图的支持度。
这就占用了大量的内存空间和CPU处理时间,很难发现较大的模式子图,执行效率不高。
而频繁子图挖掘算法是在挖掘算法算法的基础上提出来的。
区别在于频繁子图挖掘算法旨在发现连通的频繁子图,采用了一些特殊的技巧以提高性能。
它引入了半连通图的概念,图G是半连通图当且仅当G是连通图或G只由一个连通分支和一个孤立点组成。
在频繁子图挖掘算法中所使用的规范化标记将顶点的标号也考虑在内,同时还应用了诸如规范化标记发现和砂树等技巧来提高其性能。
Kuramochi.M等人提出的FSG算法采用完全不同的找寻方法挖掘频繁子图。
在他们的算法中采取每次添加一条边的策略,而不是每次添加一个顶点,并加强了候选子图的剪枝,在计算候选子图的支持度时采用TID列表帮助加速计算,使得执行效率较挖掘算法有所提高。
三.算法流程图
算法流程如图所示:。