【2018-10-04】挖掘频繁项、关联和相关性
关联规则(以购物篮为例)
支持度:规则前项LHS和规则后项RHS所包含的商品同时出现的概率,LHS和RHS的商品交易次数/总交易次数。
support(A=>B)=P(AUB)
置信度:在所有的购买了左边商品的交易中,同时又购买了右边商品的交易机率,包含规则两边商品的交易次数/包括规则左边商品的交易次数。
confidence(A=>B)=P(B|A)=support(AUB) / support(A)
提升度:(有这个规则和没有这个规则是否概率会提升,规则是否有价值):无任何约束的情况下买后项的交易次数/置信度。提升度必须大于1才有意义。
lift(A,B)=P(AUB)/P(A)P(B)
关联规则的挖掘一般分为两步:
(1)找出频繁项集
(2)由频繁项产生强关联规则
【Apriori算法】逐层搜索的迭代算法。通过扫描数据库累计每个项的计数,并收集满足最小支持度的项,找出频繁 i 项集合,记为Li。
【提高Apriori的效率】
(1)基于散列的技术,散列项集到对应的桶中
(2)事物压缩,压缩进一步迭代扫描的事物数。
(3)抽样,对给定数据的一个子集进行挖掘
(4)动态项集计数,在扫描的不同点添加候选项集
挖掘频繁项集的模式增长方法(FP-growth)
(1)将代表频繁项集的数据库压缩到一棵频繁模式树(FP-树),该树任然保留项集的关联信息。
(2)把压缩后的数据库划分成一组条件数据库(一种特殊类型的投影数据库),每个数据库关联一个频繁项或“模式段”,并分别挖掘每个条件数据库。
模式评估方法:
(1)提升度
(2)卡方
(3)全置信度
all_conf(A,B)=sup(AUB)/max{sup(A),sup(B)}=min{P(A|B),P(B|A)}
(4)最大置信度
max_conf(A,B)=max{sup(A),sup(B)}
(5)kulczynski
kulc(A,B)=1/2(P(A|B)+P(B|A))
(6)余弦
cosine(A,B)=P(AUB)/((P(A)*P(B))^1/2)=sup(AUB)/((sup(A)*sup(B))^1/2)
【高级模式挖掘】
-----多层关联规则
------多维关联规则
------量化关联规则
-----稀有模式和负模式
【基于约束的频繁项挖掘】
【挖掘高维数据和巨型模式】
【挖掘压缩或近似模式】
----通过模式聚类挖掘压缩模式
-----提取感知冗余的top-k模式
挖掘top-k个最频繁模式是一种减少挖掘返回的模式数量的策略。