關聯規則的發現是指找出支援度大於等於最小支援度(minsup),並且置信度大於最小置信度(minconf)的所有
規則。
對於關聯規則分析來說,主要分為兩個步驟:
1.找出頻繁項集:找出滿足最小支援度閾值的所有項集。對於乙個k項集來說,它可能產生2.規則的產生:從第一步中找出置信度大於最小置信度閾值的規則。
一、基本定義
1.支援度(support):
2.置信度(confidence):
3.支援度計數:
其中符號| |代表求元素的個數。
二、頻繁項集的產生
閾值,這樣就十分繁重。下面介紹一種使用支援度度量,減少頻繁項集的產生時所需要探查的候選集個數。
1.先驗原理:如果乙個項集是頻繁的,那麼它的所有子集也一定是頻繁的。相反,若乙個項集是非頻繁項集,那麼它的所有超集一定是非頻繁項集。如下圖所示,若項集{ab}是非頻繁,
則包含{ab}項集的子圖就可以被剪枝。
2.apriori演算法產生頻繁項集apriori演算法主要步驟如下:
(1)掃瞄資料集,確定每個項的支援度,得到所有的頻繁1-項集。
(2)使用上一次迭代發現的頻繁(k-1)-項集,產生新的k-侯項集。(候選項集的產生使用apriori-gen函式)
(3)對新產生的k-候選集的支援度計數,需要再次掃瞄資料集。
(4)計算了候選集的支援度計數後,刪去小於最小支援度閾值的候選集
(5)當沒有新的頻繁項集產生時,演算法結束。
候選項集的產生需要注意以下幾點:(1)若它至少存在乙個自己是非頻繁的,則這個候選集是不必要的,產生候選集時應當避免產生過多不必要的候選集。
(2)必須確保候選項集是完整的。
(3)不會產生重複的候選項集。
a.這種方法運用頻繁1-項集和頻繁(k-1)項集進行組合,從而產生k-侯項集,再計算每個
k-侯項集的支援度進行剪枝。
b.函式apriori-gen函式產生候選項集的過程中,合併一對頻繁(k-1)-項集,僅當它們的前(k-2)個項全部相
同,且它們的第k項不同。令
eg:假設有三個頻繁項集{麵包,牛奶}、{啤酒,尿布}和{麵包,尿布}。
奶}和{麵包,尿布}為{麵包,牛奶,尿布},而不會合併{啤酒,尿布}和{麵包,尿布}。
二、規則的產生若將頻繁項集y劃分成兩個非空的子集x和(y-x),使得eg:若{a,b,c,d}中基於置信度的剪枝:
定理:若規則
關聯規則挖掘
關聯規則反映事物之間的相互依存性和關聯性。如果事物之間存在一定的關聯,那麼我們就可以通過乙個事物去 另乙個事物。我們要挖掘大量資料中人們感興趣的,有價值的資訊,包括概念,規則,規律等。關聯規則 發現資料中的規律 超市中什麼產品會 起購買?組合推薦 顧客在買了 臺pc之後下 步會購買?搭配推薦 哪種d...
關聯規則Apriori
首先介紹的是啤酒和尿布的故事 上網自查 這是學習關聯規則必須知道的乙個故事。頻繁項集,關聯規則,支援度,置信度這四個概念貫穿apriori演算法的始終。如果乙個集合不是頻繁相集,那它的超集比然也不是頻繁相集。機器學習實戰例子 coding utf 8 from numpy import def lo...
解讀關聯規則
很久以前,研究資料探勘的康師傅告訴一種應用,叫做交叉銷售。它是用來向使用者推薦目標業務的。背後的原理是,通過分析現有使用者的業務使用組合,對於那些常常一同 172 出現的業務,這就是一種規則。譬如有一對業務總是出現,只要有其中一種業務的,70 的可能會有另一種業務。就可以對那些只使用一種業務的推薦另...