事實上,你想買啥,電商網(wǎng)站都知道!當(dāng)我們在某電商網(wǎng)站搜索“數(shù)據(jù)挖掘”的書時,商品頁面會同時推薦一些其它類似的書籍,這里面就用到了“剁手黨們”天天接觸到的關(guān)聯(lián)規(guī)則挖掘技術(shù)。
關(guān)聯(lián)規(guī)則(Association Rules)是反映一個事物與其他事物之間的相互依存性和關(guān)聯(lián)性,如果兩個或多個事物之間存在一定的關(guān)聯(lián)關(guān)系,那么,其中一個事物就能通過其他事物預(yù)測到。關(guān)聯(lián)規(guī)則是數(shù)據(jù)挖掘的一個重要技術(shù),用于從大量數(shù)據(jù)中挖掘出有價值的數(shù)據(jù)項之間的相關(guān)關(guān)系。
關(guān)聯(lián)規(guī)則挖掘的最經(jīng)典的例子就是沃爾瑪?shù)钠【婆c尿布的故事。通過對超市購物籃數(shù)據(jù)進行分析,發(fā)現(xiàn)美國婦女們經(jīng)常會叮囑丈夫下班后為孩子買尿布,30%-40%的丈夫同時會順便購買喜愛的啤酒,超市就把尿布和啤酒放在一起銷售增加銷售額。所以關(guān)聯(lián)規(guī)則挖掘有時也叫購物籃分析。(注:本文所使用數(shù)據(jù)分析工具為億信華辰的億信BI)
關(guān)聯(lián)規(guī)則挖掘方法
一、支持度和置信度
要了解關(guān)聯(lián)規(guī)則,就要了解什么是“經(jīng)常同時購買”。這是通過支持度(support)與置信度(confidence)來衡量的。
支持度:support(A-->B) = |AB|/|N|
商品A和B(如啤酒和尿布) 同時出現(xiàn)在同一個購物清單中的數(shù)量 / 總的購物清單數(shù)。
置信度:confidence(A-->B) = |AB|/|A|
同時出現(xiàn)在同一個購物清單中的數(shù)量/A出現(xiàn)的數(shù)量。即規(guī)則A-->B的可信度。
可信度是對關(guān)聯(lián)規(guī)則的準(zhǔn)確度的衡量,支持度是對關(guān)聯(lián)規(guī)則重要性的衡量。
支持度說明了這條規(guī)則在所有事務(wù)中有多大的代表性,顯然支持度越大,關(guān)聯(lián)規(guī)則越重要。
關(guān)聯(lián)規(guī)則有很多不同的算法,下面介紹兩種最經(jīng)典的算法。
二、Apriori算法
Apriori算法是一種對有影響的挖掘布爾關(guān)聯(lián)規(guī)則頻繁項集的算法,通過算法的連接和剪枝即可挖掘頻繁項集。
Apriori算法將發(fā)現(xiàn)關(guān)聯(lián)規(guī)則的過程分為兩個步驟:
1. 通過迭代,檢索出事務(wù)數(shù)據(jù)庫中的所有頻繁項集,即支持度不低于用戶設(shè)定的閾值的項集;
2. 利用頻繁項集構(gòu)造出滿足用戶最小置信度的規(guī)則。
挖掘或識別出所有頻繁項集是該算法的核心,占整個計算量的大部分。
?
三、FP-Growth算法
FP-Growth算法通過構(gòu)造一個樹結(jié)構(gòu)來壓縮數(shù)據(jù)記錄,使得挖掘頻繁項集只需要掃描兩次數(shù)據(jù)記錄,而且該算法不需要生成候選集合,所以效率會比較高。FP-Growth算法主要步驟:
1. 利用數(shù)據(jù)集中的數(shù)據(jù)構(gòu)造FP-Tree。
從空集開始,將過濾和重排序后的頻繁項集依次添加到樹中。
?
2. 從FP-Tree中挖掘頻繁模式。
構(gòu)建好 FPFP 樹后,即可抽取頻繁項目集,其思路與 Apriori 算法類似——先從單元素頻繁項目集開始,然后逐步構(gòu)建更大的頻繁項目集。
?
關(guān)聯(lián)規(guī)則挖掘的步驟
接下來我們在WonderDM中介紹一下進行關(guān)聯(lián)規(guī)則挖掘的步驟。
準(zhǔn)備數(shù)據(jù)
我們準(zhǔn)備了某超市的一些購物籃數(shù)據(jù)。
?
該數(shù)據(jù)集有7個字段。根據(jù)關(guān)聯(lián)規(guī)則的挖掘特性,需要選擇一個事務(wù)字段和一個事項字段。不然發(fā)現(xiàn),CARD_NO(卡號)字段同一卡號購買過多種不同商品,可作為事務(wù)字段,而GOODS(購買商品)字段可作為事項字段。另外,界面信息顯示,該數(shù)據(jù)集有2800條購買數(shù)據(jù),由939個客戶(卡號)購買了11種不同商品,符合“經(jīng)常同時購買”的特征。
接下來我們開始用數(shù)據(jù)集訓(xùn)練一個合適的關(guān)聯(lián)規(guī)則模型。
訓(xùn)練模型
先創(chuàng)建一個挖掘過程,選擇關(guān)聯(lián)規(guī)則FP-Growth進入挖掘過程界面。

系統(tǒng)內(nèi)置了兩種關(guān)聯(lián)規(guī)則算法,他們的參數(shù)設(shè)置都一樣。我們選擇性能較好的FP-Growth算法。再選擇“購物籃”數(shù)據(jù)集,選擇CARD_NO字段為事務(wù)字段,GOODS字段為項字段,設(shè)置所有數(shù)據(jù)參與挖掘(100%抽樣)。最低支持度設(shè)置為5項,最小可信度設(shè)置為40%。注意,這兩個參數(shù)設(shè)置過大,可能挖掘不出關(guān)聯(lián)規(guī)則,可根據(jù)實現(xiàn)情況調(diào)整。點擊”訓(xùn)練模型”菜單查看訓(xùn)練出來的關(guān)聯(lián)規(guī)則。
?
如上圖所示,該模型挖掘到了100條關(guān)聯(lián)規(guī)則。每條關(guān)聯(lián)規(guī)則左邊代表。
系統(tǒng)雖然內(nèi)置了FP-Growth和Apriori兩種挖掘算法,而且操作方法一樣,但它們還是存在以下特點:
Apriori算法效率較低,計算過程中需要多次掃描整個數(shù)據(jù)集,占用較多的內(nèi)存和計算時間;
FP-Growth算法效率較高,只需要掃描兩次數(shù)據(jù)集,占用更少的內(nèi)存和計算時間。但對于長事務(wù)(同一事務(wù),很多事項),會造成FP樹深度過大,計算時間顯著增加。
所以在選擇算法時,絕大部分情況下,可以優(yōu)先選擇FP-Growth算法。
模型應(yīng)用
關(guān)聯(lián)規(guī)則模型的應(yīng)用同其它類型的挖掘模型,也是要先發(fā)布選擇好的關(guān)聯(lián)規(guī)則模型,再制作相應(yīng)的模型應(yīng)用用于關(guān)聯(lián)規(guī)則的顯示和查詢。這里就不重復(fù)講解了。
小 結(jié)
關(guān)聯(lián)規(guī)則挖掘的應(yīng)用領(lǐng)域非常多,但凡需要分析事物和事物間的頻繁模式的場景,都可以用到關(guān)聯(lián)規(guī)則挖掘。這項技術(shù)在一些眾所周知的行業(yè)有了許多成熟應(yīng)用,例如:
-
電商或零售業(yè)的商品推薦
-
百度文庫推薦相關(guān)文檔
-
醫(yī)療推薦可能的治療組合
-
生物研究中,發(fā)現(xiàn)有毒植物的共性特征,識別有毒植物
-
銀行推薦相關(guān)聯(lián)業(yè)務(wù)
-
搜索引擎推薦相關(guān)搜索關(guān)鍵詞
-
門戶網(wǎng)站通過點擊流分析熱點新聞
看到這些應(yīng)用,你是不是也想為你的系統(tǒng)增加智能推薦的神奇功能呢?
億信BI是億信華辰公司在多年數(shù)據(jù)分析挖掘、報表處理的技術(shù)經(jīng)驗基礎(chǔ)上,運用先進的數(shù)據(jù)倉庫、商務(wù)智能核心理論,經(jīng)過多年的潛心研發(fā)而推出的商務(wù)智能產(chǎn)品軟件。強大的分析引擎、成熟的并行計算技術(shù),為數(shù)不多的可以面向業(yè)務(wù)人員的BI平臺。
(部分內(nèi)容來源網(wǎng)絡(luò),如有侵權(quán)請聯(lián)系刪除)