关联规则挖掘FP-Growth算法

举报
SHQ5785 发表于 2022/05/15 18:50:52 2022/05/15
【摘要】 绪近期在写论文方面涉及到了数据挖掘,需要通过数据挖掘方法实现软件与用户间交互模式的获取、分析与分类研究。主要涉及到关联规则与序列模式挖掘两块。关联规则挖掘使用基于有趣性度量标准的FP-Growth算法,序列模式挖掘使用基于有趣性度量标准的GSP算法。若想实现以上优化算法,首先必须了解其基本算法,并编程实现。关键点还是在于理解算法思想,只有懂得了算法思想,对其进行优化操作易如反掌。源代码方面,...

近期在写论文方面涉及到了数据挖掘,需要通过数据挖掘方法实现软件与用户间交互模式的获取、分析与分类研究。主要涉及到关联规则与序列模式挖掘两块。关联规则挖掘使用基于有趣性度量标准的FP-Growth算法,序列模式挖掘使用基于有趣性度量标准的GSP算法。若想实现以上优化算法,首先必须了解其基本算法,并编程实现。关键点还是在于理解算法思想,只有懂得了算法思想,对其进行优化操作易如反掌。源代码方面,其实是自己从网络中查找并进行阅读,在理解的基础上进行优化。下面首先介绍一下基本的FP-Growth算法的实现过程:

原理介绍

基本思路:不断地迭代FP-tree的构造和投影过程。

对于每个频繁项,构造它的条件投影数据库和投影FP-tree。对每个新构建的FP-tree重复这个过程,直到构造的新FP-tree为空,或者只包含一条路径。当构造的FP-tree为空时,其前缀即为频繁模式;当只包含一条路径时,通过枚举所有可能组合并与此树的前缀连接即可得到频繁模式。

算法实现

本算法采用Java实现,主要根据序列模式的情况,算法共有2个类:

MyFptree类:算法核心类。FP-Growth算法的核心操作:建树挖掘频繁项操作都在这里实现。在使用该算法时,也是需要通过使用该类的方法来实现GSP算法。

TreeNode2类:元素类。在本算法实现中,元素类中含有元素属性集,在使用时也是使用该属性。另外,在该类中还封装了对元素的操作以及一些其他操作。

有关源码请点击下载

有关序列模式挖掘的GSP算法,详见鄙人博客中“数据挖掘进阶之序列模式挖掘GSP算法”一文。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。