Apriori算法的简介
Apriori算法:使用候选项集找频繁项集
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。
Apriori原理:如果某个项集是频繁的,那么它的所有子集也是频繁的。该定理的逆反定理为:如果某一个项集是非频繁的,那么它的所有超集(包含该集合的集合)也是非频繁的。Apriori原理的出现,可以在得知某些项集是非频繁之后,不需要计算该集合的超集,有效地避免项集数目的指数增长,从而在合理时间内计算出频繁项集。
支持度,置信度,提升度
支持度
表示同时购买X、Y的订单数占总订单数(研究关联规则的“长表”中的所有购买的产品的订单数)的比例。如果用P(X)表示购买X的订单比例,其他产品类推,那么
置信度
表示购买X的订单中同时购买Y的比例,即同时购买X和Y的订单数占购买X的订单的比例。公式表达:
提升度
提升度反映了关联规则中的X重点内容与Y的相关性:提升度 >1 且越高表明正相关性越高;提升度 <1 且越低表明负相关性越高;提升度 =1 表明没有相关性。
Apriori算法的编程实现
题目
数据集
要求:
从频繁项集结果中,提取2阶频繁项集
使用seaborn工具包,实现2阶频繁项集的热力度表示
计算2阶频繁项集的置性度(Confidence)和提升度(Lift)。定义最小置性度阈值,并生成和输出2阶关联规则
代码