关联规则挖掘是大数据分析与挖掘的基础,通过在大量数据中挖掘数据项之间的强关联关系,可以得到很多有趣而且有价值的信息。
01、基本概念
1、关联规则的挖掘是在大量数据的基础上,通过分析哪些数据项频繁地一起出现,可以得到很多频繁一起出现的数据项集合。
2、根据频繁项集的元素个数X,将频繁项集称为频繁k-项集。
3、项集X的支持度计数
4、设计集合中事务的总数为N,则项集的支持度定义为
5、最小支持度(minsup),当时,称项集X为频繁项集(频繁模式)。
6、关联规则是形如的表达式,A和B是不相交的项集。
7、关联规则的支持度
8、关联规则的置信度
9、同时满足最小支持度minsup和最小置信度minconnf的关联规则,称为强关联规则。
10、关联规则挖掘的一般过程:首先,通过最小支持度,找到所有的频繁项集;然后,根据最小置信度,过滤频繁项集产生的所有关联规则;最后,得到用户可能感兴趣的强关联规则。
02、基于候选项产生——测试策略的频繁模式挖掘算法
1、Apriori算法:为了找出候选k-项集中的频繁项集,需要扫描一遍数据库,时间复杂度为O(),主要开销是I/O。
2、一个先验原理:如果一个项集是频繁的,则它的所有子集一定也是频繁的。
3、基于划分的算法:只需要扫描两遍数据库。
4、一个全局的频繁项集至少在一个子数据库Pi中是局部频繁的。
5、二元表示存储:每行存储一个事务,每列对应一个项。
6、垂直数据格式:以项为中心,存储与每一个项集关联的事物ID的列表。
03、不需要产生候选项集的频繁模式挖掘算法
1、FP-Growth(Frequent-Pattern Growth)算法:
(1)从原始的事务数据库T得到FP树。
(2)采取分治策略来挖掘所有的频繁项。将所有的频繁模式划分为不相交的子集合,每个子集合中的频繁项都以某个频繁项为后缀,分别挖掘以某个特定频繁项为后缀结尾的频繁项集,按照Flist从后往前选择后缀项进行挖掘。
04、结合相关性分析的关联规则
1、通过支持度和置信度得到强关联规则的方法,称为支持度-置信度框架。支持度-置信度框架并不知道该关联是正相关还是负相关。
2、在支持度-置信度框架中增加相关性度量指标cor,比如卡方检验。根据判断是否相关。当期望数大于实际观测值时,二者为负相关。
3、提升度:适合二元属性的相关性度量。
4、提升度。当Lift等于1时,A和B独立;当Lift大于1时,二者是正相关的;当Lift小于1时,二者是负相关的。
05、多层关联规则挖掘算法
1、多层关联规则是一种基于概念分层的关联规则挖掘方法,概念分层是一种映射,它将底层概念映射到高层概念。
2、多层关联规则挖掘过程:先在每一个概念层次上挖掘频繁模式,再挖掘交叉层(更高的层)的频繁模式,进而可以挖掘跨层频繁项集。
06、序列模式挖掘
1、序列是元素e1,e2,…,en构成的有序串,记为<e1,e2,…,en>。
2、序列模式的定义:如果定义序列数据库S是元组<SID,s>的集合,其中SID是序列ID,s是序列。在序列数据库S中,任何支持度大于等于最小支持度阈值min_sup的序列都是频繁项,一个频繁项序列被称为序列模式。
3、
(1)前缀
(2)后缀(前缀相对于序列的后缀)
(3)投影数据库(相同前缀对应的所有后缀集合)
(4)投影数据库中的支持度计数(投影数据库中序列的数量)
07、其他类型关联规则简介
1、量化关联规则。将定量属性的值域离散化到若干区间,将区间映射到连续整数,并保持区间连续。
2、时态关联规则。通过增加事务执行时间的属性来增强事务模式。
3、局部化关联规则。在某些具有相似特点的局部数据集合中支持度很高的关联规则。
4、优化关联规则。