FPGrowth算法原理

算法实现: 
/** 
* FPGrowth算法的主要思想: 
* 1. 构造频繁1项集:遍历初始数据集构造频繁1项集,并作为项头表,建立将指向fpTree节点对应元素的引用 
* 2. 构造FPTree:再次遍历初始数据集,对于每一条事务中的元素,根据频繁1项集中元素的顺序排序, 
* 由此建立FPTree,记录每条事务的节点在同一条路径上出再的节点次数; 
* 3. 逆序遍历在步骤1中构造的项头表,根据其提供的引用指针,找出fpTree中由该节点到根节点的路径, 
* 即生成每个频繁元素的条件模式基 
* 4. 根据每个频繁元素对应的条件模式基,生成其对应的条件fpTree,并删除树中节点记数不满足给定的最小支持度的节点 
* 5. 对于每一颗条件fpTree,生成所有的从根节点到叶子节点的路径,由路径中的集合生成其所有非空子集 
* 所有这些非空子集和每一个频繁1项集中的元素共同构成了原始数据集中的频繁集 

*/

 

posted @ 2016-08-23 14:12  马云12314  阅读(760)  评论(0编辑  收藏  举报