資料探勘案例分析(1) Apriori演算法

2021-07-22 12:32:23 字數 1979 閱讀 3246

資料探勘案例分析(1)-apriori演算法

前言:由於單單學習演算法太過於枯燥和乏味,所以我們採取的學習方法是練中學,本人也是之前一點關於資料探勘的演算法知識沒有學習,因此可能在理解上還不是很到位,我會盡我最大的努力來進行闡述。我們一起共勉。學習資料**,《資料探勘十大演算法》-清華大學和《資料探勘實用案例分析》-機械工業出版社。

案例:商業零售業中的購物籃分析

一、挖掘目標的提出

零售商的問題:

銷售什麼樣子的商品?

採取什麼樣的銷售策略和**方式?

商品在貨架上的擺放位置?

針對以上的問題,我們需要分析客戶的購買資料,才能發現顧客的購買規律。所以基於問題的分析,我們明確了資料**。那麼我們明確了資料的**,對這些資料該採取什麼樣的分析方法才能達到我們想要完成的目標。

二、分析方法與過程

根據所要實現的目標,我們先來介紹乙個經典的關聯規則挖掘演算法:apriori演算法。

apriori演算法:關聯規則挖掘問題可以劃分為兩個子問題:第一是找出事務資料庫中所有大於等於使用者指定的最小支援度的資料項集;第二個是利用頻繁項集生成所需要的關聯規則。根據使用者設定的最小置信度進行取捨,最後得到強關聯規則。識別或發現所有頻繁專案集是關聯規則發現演算法的核心。

主要步驟:

(1)   掃瞄全部資料,產生候選1-項集的集合.

(2)   根據最小支援度,由候選1-項集的集合產生頻繁1-項集的集合.

(3)   對k>1,重複執行步驟(4)(5)(6)

(4)   由執行鏈結和剪枝操作,產生候選(k+1)-項集合。

(5)   根據最小支援度,由候選(k+1)-項集的集合產生頻繁(k+1)-項集的集合。

(6)   若l,則k=k+1,跳往步驟(4):否則,跳往步驟(7)。

(7)   根據最小置信度,由頻繁項集產生強關聯規則,結束。

其中在這個演算法中,為了達到使用者的一定要求,需要指定規則必須滿足的支援度和置信度閾值,此兩個值稱為最小支援度閾值(min_sup)和最小置信度閾值(min_conf)。其中min_sup描述了關聯規則的最低重要度,min_conf規定了關聯規則必須滿足的最低可靠性。

具體的簡單應用讀者可以自己自行從網上找取資源。

下面我們來總結一下apriori演算法的優缺點:

優點缺點

1apriori是乙個迭代演算法

1多次掃瞄事務資料庫,需要很大的i/ofu負載

2資料採用水平組織方式

2可能產生龐大的候選集

3採用apriori優化方法

3在頻繁專案集長度變大的情況下,運算時間顯著增加。

4適合事務資料庫的關聯規則挖掘

5適合稀疏資料集

apriori演算法應用的領域多樣,其中主要包括:商業、網路安全、高效管理和移動通訊等領域的應用。

介紹完apriori演算法之後,我們回歸我們的案例分析,基於關聯規則的購物籃分析。那麼關聯規則的挖掘過程如圖:

三、建模**

1模型輸入

模型的輸入包括兩部分,一部分是建模專家樣本資料的輸入,另外一部分是建模引數的輸入。

建模引數如下表:

序號引數名稱

引數描述

列索引類別的屬性選擇,-1代表最後乙個屬性為類別屬性

增量支援度的變化量

最小置信度

設定最低的置信度值

規則條數

關聯規則的條數

顯著性水平

估計錯誤的概率

最小支援度下界

最小支援度的範圍下限

最小支援度上界

最小支援度的範圍上界

2具體的**過程:

經過上述的分析,我們可以發現,在彼此不同的屬性之間,可以發現它們之間的關聯規則,這有利於我們進行商品定價和商品的擺放。合理的制定消費策略。

資料探勘之用python實現Apriori關聯演算法

apriori演算法指導我們,如果要發現強關聯規則,就必須先找到頻繁集。所謂頻繁集,即支援度大於最小支援度的項集。如何得到資料集合d中的所有頻繁集呢?apriori演算法是挖掘布林關聯規則頻繁項集的演算法。apriori演算法利用頻繁項集性質的先驗知識,通過逐層搜尋的迭代方法,即將k 項集用於探察 ...

資料探勘演算法和實踐(九) 關聯規則 Apriori

幾個重要概念 支援度 置信度 提公升度 apriori 演算法的工作原理 在實際工作中,我們該如何進行關聯規則挖掘 舉乙個超市購物的例子,下面是幾名客戶購買的商品列表 訂單編號 購買商品 1 牛奶 麵包 尿布 2可樂 麵包 尿布 啤酒 3牛奶 尿布 啤酒 雞蛋 4麵包 牛奶 尿布 啤酒 5麵包 牛奶...

基於資料探勘的客戶流失分析案例

客戶挽留在很多行業都是乙個備受關注的問題,比如電信 銀行 保險 零售等。要做客戶挽留就需要對客戶流失進行預警 客戶流失原因分析 客戶滿意度或忠誠度研究 客戶生命週期研究等相關問題進行深入而全面的分析。例如,對客戶的行為特徵進行分析,可以了解有多少客戶流失,客戶是什麼時候流失的,以及客戶是如何流失的等...