FPgrowth

************************FPgrowth概述和apirior的比較*********************************

       頻繁項集挖掘算法用於挖掘經常一起出現的item集合(稱爲頻繁項集),通過挖掘出這些頻繁項集,當在一個事務中出現頻繁項集的其中一個item,則可以把該頻繁項集的其他item作爲推薦。比如經典的購物籃分析中啤酒、尿布故事,啤酒和尿布經常在用戶的購物籃中一起出現,通過挖掘出啤酒、尿布這個啤酒項集,則當一個用戶買了啤酒的時候可以爲他推薦尿布,這樣用戶購買的可能性會比較大,從而達到組合營銷的目的。
        常見的頻繁項集挖掘算法有兩類,一類是Apriori算法,另一類是FPGrowth。Apriori通過不斷的構造候選集、篩選候選集挖掘出頻繁項集,需要多次掃描原始數據,當原始數據較大時,磁盤I/O次數太多,效率比較低下。FPGrowth算法則只需掃描原始數據兩遍,通過FP-tree數據結構對原始數據進行壓縮,效率較高。
        FPGrowth算法主要分爲兩個步驟:FP-tree構建、遞歸挖掘FP-tree。FP-tree構建通過兩次數據掃描,將原始數據中的事務壓縮到一個FP-tree樹,該FP-tree類似於前綴樹,相同前綴的路徑可以共用,從而達到壓縮數據的目的。接着通過FP-tree找出每個item的條件模式基、條件FP-tree,遞歸的挖掘條件FP-tree得到所有的頻繁項集。算法的主要計算瓶頸在FP-tree的遞歸挖掘上,下面詳細介紹FPGrowth算法的主要步驟。


***************FPgrowth算法步驟******************

參見:https://wenku.baidu.com/view/c32bbada27d3240c8547ef1b.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章