算法介绍
一提到关联规则首先想到的就是“啤酒与尿布”的故事,关联规则最初的提出就是对购物车的分析,最为经典的就是Apriori算法。
给定一个购物交易数据库,记录每个交易涉及的商品,每一个交易都与一个唯一的标识id对应。关联规则在交易中的支持度是购物单中同时包含X、Y的百分比,即概率;置信度(confidence)是购物单中事务已经包含X的情况下,包含Y的百分比,即条件概率。如果满足最小支持度阈值和最小置信度阈值,则认为关联规则是有价值的。这些阈值是根据挖掘需要人为设定。
如果一个项集是频繁项集,则它的所有子集都是频繁项集。如果一个集合不是频繁项集,则它的所有父集(超集)都不是频繁项集。
关联分析的目标:
发现频繁项集:发现满足最小支持度的所有项集
发现关联规则:从频繁项集中提取所有高置信度的规则
输入:数据集合D,支持度阈值
输出:最大的频繁k项集
1)扫描整个数据集,得到所有出现过的数据,作为候选频繁1项集。k=1,频繁0项集为空集。
2)挖掘频繁k项集
a) 扫描数据计算候选频繁k项集的支持度
b) 去除候选频繁k项集中支持度低于阈值的数据集,得到频繁k项集。如果得到的频繁k项集为空,则直接返回频繁k-1项集的集合作为算法结果,算法结束。如果得到的频繁k项集只有一项,则直接返回频繁k项集的集合作为算法结果,算法结束。
c) 基于频繁k项集,连接生成候选频繁k+1项集。
3) 令k=k+1,转入步骤2。
参考:https://blog.csdn.net/weixin_40042143/article/details/82691106
相关指标
置信度:包含X的情况下,包含Y的百分比,即条件概率
支持度:支持度同时包含X、Y的百分比,即概率
应用场景
关联规则是最常见的数据挖掘任务,可以用来构建起推荐体系。通过收集到的用户使用、购买等数据,挖掘出相关性,形成知识,作为推荐的依据。在电商广告、新闻推送等相关推荐场景应用。还有就是对数据挖掘,如气象因素分析、事故因素分析等通过过往数据总结规则。