转载请注明作者和出处:http://blog.csdn.net/john_bh/
运行平台: Windows
Python版本: Python3.6
IDE: Sublime text3
背景
一、关联分析
二、Apriori原理
三、使用Apriori算法来发现频繁集
3.1 生成候选项集
3.2 组织完整的Apriori算法
四、从频繁项集中挖掘关联规则
五、实例:发现国会投票的模式
六、实例2:发现毒蘑菇的相似特征
总结
关联分析适用于发现大数据集中元素间有趣关系的一个工具集。可以采用两种方式来量化这些有趣的关系。
第一种是使用频繁项集,它会给出经常出现在一起的元素项。
第二种方式是关联规则,每条关联规则意味着元素项之间的“如果…….那么…..”关系。
发现元素项间不同的组合是个十分耗时的任务,不可避免需要大量昂贵的计算资源,这就需要一些更智能的放法在合理的时间范围内找到频繁项集。能够实现这一目标的一个方法是Ariori算法,它使用Apriori原理来减少在数据库上进行检查的集合的数目。**Apriori原理是说如果一个元素项不是频繁的,那么那些包含该元素的超集也不是频繁的。**Apriori算法从单元素项集开始,通过组合满足最小支持度要求的项集来形成更大的集合。支持度用来度量一个集合在原始数据中出现的频率。
关联分析可以用在许多不同物品上。商店中的商品以及网站的访问页面是其中比较常见的例子。关联分析也曾用于查看选举人及法官的投票历史。
每次增加频繁项集的大小,Apriori算法都会从新扫描整个数据集,当数据很大时,这会显著降低频繁项集发现的速度。于是我们可以使用PF-growth算法,和Apriori算法相比,该算法只需要对数据库进行两次遍历,所以能够显著提高发现频繁项集的速度。