Ng机器学习系列补充:4、关联分析算法FP_Growth

本文介绍了FP_Growth算法,它是Apriori算法的一种优化,避免了生成候选项集和多次扫描数据库的缺点。文章通过实例详细阐述了FP_Tree的构造过程,以及如何从FP_Tree中挖掘频繁项集,展示了该算法在数据挖掘中的高效性和实用性。
摘要由CSDN通过智能技术生成

    机器学习补充系列国际权威的学术组织the IEEE International Conference on Data Mining (ICDM,国际数据哇局会议) 2006年12月评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART,它们在数据挖掘领域都产生了极为深远的影响,这里对他们做一个简单介绍,仅作为对Ng机器学习教程的补充。

    由于k-Means、SVM、EM、kNN、Naive Bayes在Ng的系列教程中都有涉及,所以此系列教程只涉及决策树算法C4.5、关联规则算法Apriori、网页排名算法PageRank、集成学习算法AdaBoost(Adaptive Boosting,自适应推进)、分类与回归树算法CART(Classification and Regression Trees);另外会加上对神经网络的BP算法介绍,后续也会考虑介绍遗传算法等内容。




1)FP_Growth算法核心概念

2)实例演示FP_Tree的构造

3)挖掘FP_Tree

4)另一个例子



1)FP_Growth算法核心概念

FP_Growth(FrequentPattern,频繁模式)算法是对Apriori算法的补充,是为了克服Apriori算法生成大量候选项集和多次扫描数据库的缺点。FP_Gwoth算法是一种不生成候选项集从而寻找频繁项集的算法,主要基于树结构:包含一棵FP_Tree和一个项头表,项头表中的每一项通过一个结点链指向它在树中出现的位置需要注意的是项头表需要按照支持度递减排序,在FP_Tree(有后缀的也称条件FP_Tree)中高支持度的节点只能是低支持度节点的祖先节点。这样一来可以保证尽可能的共用祖先节点,更重要的是保证正确性。FP_Tree基本结构如下所示:

//FP-tree的存储结构
typedef struct CSNode{
     int item; //商品ID
     int count;//次数
     CSNode *parent,*firstchild,*nextsibling;//父节点,孩子节点,兄弟节点
     CSNode *pre,*next;//相同商品的前驱、后继节点,将相同商品的节点连接起来,根节点的直接孩子节点的这两个指针都
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值