關聯規則演算法總結

2021-10-04 23:47:37 字數 2299 閱讀 2286

物品集i裡面是物品,事務集

事務t支援物品集a:這個事務中包含此物品

支援度

物品a的支援度:1000個顧客購物,200個買了麵包,支援度20%(200/1000)

關聯規則a->b的支援度(聯合概率):1000個顧客購物,100個購買了麵包和黃油。則麵包->黃油 10%

可信度

關聯規則a->b的可信度(條件概率):1000個顧客購物,200個購買了麵包,140個購買了麵包和黃油,則可信度為70%(140/200)

a->b的支援度和b->a的支援度一樣,可信度不同。

規則度量

最小支援度minsup關聯規則必須滿足的最小支援度

最小可信度minconf關聯規則必須滿足的最小可信度

大項集

頻繁項集:支援度不小於minsup的物品集

最大頻繁專案集:頻繁集中挑選出所有不被其他元素包含的平凡專案集。

關聯規則發現任務

事務資料庫d,滿足最小支援度和最小可信度的關聯規則

1)求d中滿足最小支援度的所有頻繁集(apriori演算法和fp樹都是找頻繁集的演算法)。大於支援度

2)利用頻繁集生成滿足最小可信度的所有關聯規則。大於可信度

高效求出頻繁集:生成長度為1的l[1];l[k]的基礎上生成候選物品集c[k+1],候選物品集必須保證包括所有的頻繁項集。

頻繁集向下封閉性,頻繁集子集必是頻繁集;非頻繁集的超集必是非頻繁集

思想:找單項候選集,去掉小於事先設定最小支援度的項,得單項頻繁集;組合為兩項候選集,再去掉小於事先設定最小支援度的項,得兩項頻繁集。以此類推!

注意:組合時及時修剪。k項到k+1項時,可以將它排序,前k-1項都一樣,然後將兩個集合的第k項加入(此方法選的只多不少,需要再篩選一次)

偽**:

優化:基於劃分方法/hash/取樣/減小交易個數

瓶頸:候選集的生成(1、組成更長頻繁集太多。2、最長模式n,則需n+1次掃瞄資料庫)

注意的問題:充分理解資料、目標明確、資料工作做好、最小的支援度和可信度、理解關聯規則

使用步驟:連線資料,做資料準備;給定最小支援度和可信度,發現關聯規則;視覺化與評估

原理:1.兩次資料庫搜尋。一次對所有1-專案進行頻度排序,一次將資料庫資訊轉化為緊緻記憶體(即fp-tree)

2.根據fp-tree生成頻繁集。為樹上每個節點生成條件模型庫;用條件模型庫構造對應的條件fp樹;遞迴挖掘條件fp樹,並增長頻繁集。

步驟:1.找單項集的頻次,並將大於等於minsup的專案進行排序,形成項頭表。構建乙個null結點的fp樹

2.將資料庫中的每一條記錄進行過濾排序(過濾即刪去頻次3.將排序後的資料插入fp樹中,記錄路過一次結點,結點頻次加一。

4.不斷進行2-3步,直到每一條記錄都插入fp樹,fp樹即構造完成

5.fp-growth,按項頭表的逆序(即從下往上),依次選定結點,並在fptree中找到能到達該結點的路徑(條件模式基)

6.根據條件模式基找到頻繁集

具體演算法和例子在這篇部落格中講的很清楚

缺點:需要遞迴,所以記憶體開銷大。只適用於單維的布林關聯規則。

上面觀察的是使用者單次購物買這些東西和買另一些東西的關係;

下面觀察的是使用者的上次購物買的東西和下次購物買的東西的關係。

如圖,有五個使用者a,b,c,d,e分別有3,2,3,3,2次購買記錄,a使用者第一次買了物品,第二次買了物品,第三次買了物品

<>代表某使用者某次購買時同時買了物品1和2;<>代表某使用者某次購買了物品1,之後在另一次購買時又購買了物品2

支援度的分母代表記錄幾個人,這裡就是5。分子代表有幾個人買過(不論是哪次購物)

兩個長度為k(有k個數,不關注幾個大括號)的序列,乙個去頭,乙個去尾,若中間相同,則將兩個集合合併

a的生成:1去首==4去尾,則a=1+4

b的生成:2去首==5去尾,則b=2+5

c的生成:3去首==7去尾中的4,則c=3+7

d的生成:4去首==6去尾,則d=4+6

e的生成:5去首中的2==7去尾中的4,則e=5+7

上面生成的之多不少,再進行pruning最終只有b.

Apriori 關聯規則演算法

關聯規則通過量化的數字描述物品甲的出現對物品乙的出現有多大的影響。它的模式屬於描述型模式,發現關聯規則的演算法屬於無監督學習的方法。其實是一種事物相關性的 通過對比支援度,進行剪枝,將支援度高的分支留下,繼續探尋關聯,直到再沒有高於最小支援度為止。應用場景比較廣泛,購物籃資料,醫療診斷,科學資料分析...

Apriori關聯規則演算法

例子 支援度 支援度是乙個百分比,指某個商品組合出現的次數與總次數之間的比例,支援度越高表示該組合出現的機率越大。在上面圖中我們可以發現 牛奶 出現了 4 次,那麼這 5 筆訂單中 牛奶 的支援度就是 4 5 0.8。同樣 牛奶 麵包 出現了 3 次,那麼這 5 筆訂單中 牛奶 麵包 的支援度就是 ...

aprioir演算法 關聯規則

關聯規則 評定規則的標準 支援度 規則前項lhs和規則後項rhs所包括的商品都同時出現的概率,lhs和rhs商品的交易次數 總交易次數。置信度 在所有的購買了左邊商品的交易中,同時又購買了右邊商品的交易機率,包含規則兩邊商品的交易次數 包括規則左邊商品的交易次數。提公升度 有這個規則和沒有這個規則是...