標籤:
Apriori algorithm是關聯規則裡一項基本演算法。是由Rakesh Agrawal和Ramakrishnan Srikant兩位博士在1994年提出的關聯規則挖掘演算法。關聯規則的目的就是在一個資料集中找出項與項之間的關係,也被稱為購物藍分析 (Market Basket analysis),因為"購物藍分析"很貼切的表達了適用該演算法情景中的一個子集。
關於這個演算法有一個非常有名的故事:"尿布和啤酒"。故事是這樣的:美國的婦女們經常會囑咐她們的丈夫下班後為孩子買尿布,而丈夫在買完尿布後又要順 手買回自己愛喝的啤酒,因此啤酒和尿布在一起被購買的機會很多。這個舉措使尿布和啤酒的銷量雙雙增加,並一直為眾商家所津津樂道。
資料庫(Transaction Database):儲存著二維結構的記錄集。定義為:D
所有項集(Items):所有項目的集合。定義為:I。
記錄 (Transaction ):在資料庫裡的一筆記錄。定義為:T,T ∈ D
項集(Itemset):同時出現的項的集合。定義為:k-itemset(k項集),k-itemset ? T。除非特別說明,否則下文出現的k均表示項數。
支援度(Support):定 義為 supp(X) = occur(X) / count(D) = P(X)。
1. 解釋一:比如選秀比賽,那個支援和這個有點類似,那麼多人(資料庫),其中有多少人是選擇(支援)你的,那個就是支援度;
2. 解釋二:在100個人去超市買東西的,其中買蘋果的有9個人,那就是說蘋果在這裡的支援度是 9,9/100;
3. 解釋三:P(X),意思是事件X出現的機率;
4. 解釋四:關聯規則當中是有絕對支援度(個數)和相對支援度(百分比)之分的。
信賴度(Confidence/Strength): 定義為 conf(X->Y) = supp(X ∪ Y) / supp(X) = P(Y|X)。
候選 集(Candidate itemset):通過向下合并得出的項集。定義為C[k]。
頻繁集(Frequent itemset):支援度大於等於特定的最小支援度(Minimum Support/minsup)的項集。表示為L[k]。注意,頻繁集的子集一定是頻繁集。
提升比率(提升度Lift):lift(X -> Y) = lift(Y -> X) = conf(X -> Y)/supp(Y) = conf(Y -> X)/supp(X) = P(X and Y)/(P(X)P(Y))
經過關聯規則分析後,針對某些人推銷(根據某規則)比盲目推銷(一般來說是整個資料)的比率,這個比率越高越好,我們稱這個規則為強規則;
剪枝步
只有當子集都是頻繁集的候選集才是頻繁集,這個篩選的過程就是剪枝步;
- More information about the concepts of arules!
1、項集(Itemset):是一組項,而每一個項都是一個屬性值。在購物籃分析樣本中,項集包含一組產品,例如Cake、Pepsi、Milk。在研究客戶的人口統計資訊樣本中,項集包含一組屬性值,比如{Gender=‘Male‘,Education=‘Bachelor‘}。每個項集都有一個大小,該大小表示項集中包含的項的數目。項集{Cake、Pepsi、Milk}的大小是3。
頻繁項集是在資料集中出現頻率相當高的那些項集。項集出現頻率的閾值是用"支援度"來定義的。
2、支援度(Support):支援度用來度量一個項集的出現頻率。項集{A,B}的支援度是同時包含A和B的事務的總個數。即:
Support({A,B})=NumberofTransactions(A,B)
Minimum_Support是一個閾值參數,必須在處理關聯模型之前指定該參數。該參數表示使用者只對某些項集和規則感興趣,這些規則表示資料集的最低支援度。它是用於對項集進行限制,而不是對規則進行限制。
3、機率(Probability):也叫信賴度(Confidence),是關聯規則的屬性。規則A=>B要機率是使用{A}的支援度除項集{A,B}的支援度來計算的。公式如下:
Probability(A=>B)=Probability(B|A)=Support(A,B)/Support(A)
也等於NumberofTransactions(A,B)/TotalNumberofTransactions
Minimum_Probability是一個閾值參數,必須在運行演算法之前指定該參數.它表使用者只對某些規則感興趣,這些規則搖擁有比較高的機率,而不是最小的機率.Minimum_Probability對項集沒有任何影響,它影響的是規則.
3、重要性(Importance):在一些文獻中也稱為興趣度分數或者增益。重要性可以用於度量項集和規則。
項集的重要性是使用以下公式來定義的:
如果Importance=1,剛A和B是獨立的項,它表示購買A和購買B是兩個獨立的事件。如果Importance<1,剛A和B是負相關的,這表求如果一個客戶購買A了,剛他購買B是不太可能發生的。如果Importance>1,剛A和B是正相關的。這表示如果一個客戶購買了A,剛他也可能購買B。
規則的重要性是使用以下公式計算的:
Importance(A=>B)=Log(P(B|A)/P(B|not A))
重要性為0,表示A和B之間沒有任何關聯。正的重要性分數表示當A為真時,B的機率會上升。負的重要性分數表示,當A為真時,B的機率會下降。
資料採礦—關聯規則理論介紹與R實現