posts - 30,  comments - 3,  trackbacks - 0
Apriori算法乃是关联规则挖掘的经典算法,尽管是94年提出的算法,然而至今也有着旺盛的生命力。在互联网科学领域,也有着广泛的应用,因此还是值得大家都对此学习一下。

一、术语
1.支持度:support,所有实例中覆盖某一项集的实例数。
2.置信度:confidence。对于X→Y这个规则,如果数据库的包含X的实例数的c%也包含Y,则X→Y的置信度为c%。
3.频繁项集:也称large itemsets,指支持度大于minsup(最小支持度)的项集

二、思想
1.Apriori算法思想与其它关联规则挖掘算法在某些方面是相同的。即首先找出所有的频繁项集,然后从频繁项集中抽取出规则,再从规则中将置信度小于最小置信度的规则剃除掉。

2.若项集i为频繁项集,则其所有子集必为频繁项集。因此,Apriori算法思想在于从频繁的k-1项集中合并出k项集,然后剃除掉子集有不是频繁项集的k项集。

3.先从数据库中读出每条实例,对于设定阈值,选出频繁1项集,然后从频繁1项集中合并,并剃除掉包含非频繁1项集子集的2项集……

4.符号说明:
Lk:Set of large(frequent) k-itemsets
Ck:Set of candidate k-itemsets
apriori-gen()函数通过合并k-1的频繁项集,生成Ck

三、算法描述
1) Apriori基本算法
 1L1={large 1-itemsets};
 2for(k=2;Lk-1!=Φ;k++)
 3{
 4  Ck=apriori-gen(Lk-1);
 5  for(all transaction t∈D)
 6  {
 7     Ct=subset(Ck,t);
 8     for(all candidates c∈Ct)
 9        c.count++;
10  }

11  Lk={c∈Ck|c.count>=minsup}
12}

13Answer=∪k Lk;

2)apriori-gen()函数
    这个函数将Lk-1(即所有k-1频繁项集的集合)作为参数,返回一个Lk的超集(即Ck
    算法如下:
1insert into Ck
2select p.item1, p.item2 ,p.itemk-1,q.itemk-1
3from Lk-1 p, Lk-1 q
4where p.item1=q.item1, p.item2=q.item2 , p.itemk-1<q.itemk-1
   
    然后通过剪枝,剃除掉Ck中某些子集不为频繁k-1项集的项集,算法如下:
1for(all items c∈Ck)
2{
3     for(all k-1 itemsets s of c)
4     {
5        if(s
∉Lk-1)
6           delete c from Ck;
7     }

8}
   
3)从频繁项集中生成规则
1for(all l∈Answer)
2{
3  A=set of nonempty-subset(l);
4  for(all aA)
5  {
6    output a→(l-a);
7  }

8}
  

四、举例(这里将minsup=1,mincof=0.5)
L3={{1 2 3}{1 2 4}{1 3 4}{1 3 5}{2 3 4}}
在合并步骤时,选取L3中,前两个项都相同,第三个项不同的项集合并,如{1 2 3}与{1 2 4}合并、{1 3 4}与{1 3 5}合并成{1 2 3 4}和{1 3 4 5}。因此,C4={{1 2 3 4}{1 3 4 5}},但是由于{1 3 4 5}中某子集{3 4 5}并未在L3中出现,因此,将{1 3 4 5}剃除掉,所以L4={{1 2 3 4}}。
然后以L4为例,选取出关联的规则:
L4中{1 2 3 4}项集中抽取出(这里只列出左边为3项的情况):
{1 2 3}→4
{1 2 4}→3
{1 3 4}→2
{2 3 4}→1
显然,因为只有一个4项集,因此,这四条规则的置信度都为100%。因此,全数为关联规则。

五、Apriori变体
    有些Apriori变体为追求时间效率,不是从L1→C2→L2→C3→....的步骤产生,而是从L1→C2→C3'..产生。

参考文献:
Agrawal, Rakesh, Srikant, Ramakrishnan. Fast algorithms for mining association rules in large databases. Very Large Data Bases, International Conference Proceedings, p 487, 1994   
posted on 2012-02-27 13:08 Seraphi 阅读(776) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: