频繁子图挖掘与软件项目成熟度预测技术解析
1. FSMS:频繁子图挖掘算法
在图数据处理中,频繁子图挖掘是一项重要的任务。传统的频繁子图挖掘算法(如 AGM、FSG)在处理大规模图数据时,复杂度较高,主要体现在需要生成所有子图以及计算子图同构上。为了解决这些问题,提出了 FSMS(Frequent Subgraph Mining Algorithm Using Mapping Sets)算法。
1.1 算法原理
FSMS 算法采用内存中的模式增长方法,通过创建和更新映射集(Mapping Sets)来替代传统的同构计算。在每次迭代中,算法会基于最小支持度(minimum support)τ 找出频繁子图。具体步骤如下:
1. 初始化 :
- 构建图 G 中所有频繁边的集合 freqEdges。
- 基于 freqEdges 创建单边图的集合 freqSubgraphs,每个子图表示为 (key, values, mappingSets) 三元组。
- 将 mostRecentSubgraphs 初始化为 freqSubgraphs。
- 初始化哈希表 hashFreqSGs 为空。
2. 迭代过程 :
- 当 mostRecentSubgraphs 不为空时,执行以下操作:
- 初始化 newSubgraphs 为空。
- 对于 mostRecentSubgraphs 中的每个子图 S:
- 对于 S 的每个映射集 MS:
- 对 MS 中顶点的邻居进行分组,分组依据是顶点标签和边标签。
超级会员免费看
订阅专栏 解锁全文
12

被折叠的 条评论
为什么被折叠?



