FPGrowth演算法總結複習

2022-01-10 08:23:50 字數 1160 閱讀 2332

摘要:

1.演算法概述

2.演算法推導

3.演算法特性及優缺點

4.注意事項

5.實現和具體例子

6.適用場合

內容:1.演算法概述

關聯規則(associatio rules):從大規模資料集中尋找物品建隱含關係被稱作關聯分析或關聯規則學習

頻繁項集(frequent itemsets):經常出現在一起的物品集合

fpgrowth是乙個流行的頻繁項集挖掘的演算法(韓家煒等人在2023年);在演算法中使用了一種稱為頻繁模式樹(frequent pattern tree)的資料結構(見演算法推導)。

2.演算法推導

2.1 幾個基本概念

支援度(support):支援度表示項集在總項集裡出現的概率。 support(x→y) = p(x,y) / p(i) = num(xuy) / num(i),其中i為總項集;

可信度或置信度(confidence):置信度表示在先決條件x發生的情況下,由關聯規則」x→y「推出y的概率;confidence(x→y) = p(y|x) = num(xuy) / num(x)

提公升度(lift): lift(x→y) = p(y|x) / p(y)

強關聯規則:滿足最小支援度和最小置信度的規則

如果lift(x→y)>1,則規則「x→y」是有效的強關聯規則。

如果lift(x→y) <=1,則規則「x→y」是無效的強關聯規則。

特別地,如果lift(x→y) =1,則表示x與y相互獨立。(參考自)

2.2 幾個基本原理

aprori 原理:如果某條規則並不滿足最小可信度,則該規則的所有子集也不滿足最小可信度  

3.演算法特性及優缺點

優點:一般快於apriori演算法(只掃瞄兩次資料集)

缺點:實現比較困難,在某些資料集上效能下降

4.注意事項

連續資料要進行離散化

5.實現和具體例子

《機器學習實戰》中的實現以及發現國會投票中的模式案例

spark mllib實現(run方法);使用associationrules挖掘關聯規則

應用:6.適用場合

支援大規模資料:是

特徵維度:無

是否有 online 演算法:這個沒必要吧?

特徵處理:支援類別型資料或者離散型資料,連續資料要進行離散化

Apriori演算法和FP growth演算法比較

關聯分析可以用於回答 哪些商品經常被同時購買?之類的問題 關聯分析是在大規模資料集中尋找有趣關係的任務,這些關係可以有兩種形式 頻繁項集 是經常出現在一塊兒的物品的集合 關聯規則 按時兩種物品之間可能存在很強的關係。支援度是針對項集來說的,因此可以定義乙個最小支援度,而只保留滿足最小值尺度的項集。可...

Apriori演算法和FP growth演算法

經典的關聯規則挖掘演算法包括apriori演算法和fp growth演算法。apriori演算法多次掃瞄交易資料庫,每次利用候選頻繁集產生頻繁集 而fp growth則利用樹形結構,無需產生候選頻繁集而是直接得到頻繁集,大大減少掃瞄交易資料庫的次數,從而提高了演算法的效率。但是apriori的演算法...

經典的FP Growth演算法

經典fp growth演算法 1 背景 眾所周知,apriori演算法在產生頻繁模式完全集前需要對資料庫進行多次掃瞄,同時產生大量的候選頻繁集,這 就使apriori演算法時間和空間複雜度較大。但是apriori演算法中有乙個很重要的性質 頻繁項集的所有非空子集都必 須也是頻繁的。由此性質,引出了f...