基于Apriori算法的超商品銷售數(shù)據(jù)的關(guān)聯(lián)規(guī)則分析_第1頁
基于Apriori算法的超商品銷售數(shù)據(jù)的關(guān)聯(lián)規(guī)則分析_第2頁
基于Apriori算法的超商品銷售數(shù)據(jù)的關(guān)聯(lián)規(guī)則分析_第3頁
基于Apriori算法的超商品銷售數(shù)據(jù)的關(guān)聯(lián)規(guī)則分析_第4頁
基于Apriori算法的超商品銷售數(shù)據(jù)的關(guān)聯(lián)規(guī)則分析_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、基于Apriori算法的超市商品銷售數(shù)據(jù)的關(guān)聯(lián)規(guī)則分析鄭印(華中師范大學計算機學院,湖北武漢430079)AprioriassociationrulesalgorithmbasedsupermarketmerchandisesalesdataZhengyin(ComputerCollege,CentralChinaNormalUniversity,Hubei430079,China)摘要:Apriori算法廣泛應用于商業(yè)中,應用于消費市場價格分析中,它能夠很快的求出各種產(chǎn)品之間的價格關(guān)系和它們之間的影響。尤其是在超市零售業(yè)中的應用更是廣泛,通過對銷售數(shù)據(jù)記錄的分析,挖掘出商品的關(guān)聯(lián)規(guī)則,有利于

2、提高超市零售業(yè)的銷售利率,增強其市場競爭力。關(guān)鍵詞:關(guān)聯(lián)規(guī)則;Apriori算法;銷售利率Abstract:Apriorialgorithmiswidelyusedinbusinessandprice'sanalysisofconsumermarket,itcanquicklydeterminetheimpactofprice'srelationshipsbetweenthevariousproducts.Especiallyusinginsupermarketretailingisevenmorewidespread,throughtheanalysisofsalesdata

3、ofrecord,theassociationruleminingcommodities,helptoimprovethesupermarketretailsalesrates,andenhancetheirmarketcompetitiveness.Keywords:Associationrules;Apriorialgorithm;salesrate1 .研究背景超市零售業(yè)是數(shù)據(jù)挖掘應用較為活躍的一個領域。了解客戶的購買習性和趨勢,對于零售商制訂銷售策略是至關(guān)重要的。通過關(guān)聯(lián)規(guī)則的挖掘,分析客戶對商品的需求狀況,發(fā)現(xiàn)顧客的潛在需求特征,有目的性的開展廣告和銷售業(yè)務。通過對顧客的忠誠度分析,

4、相應調(diào)整商品的價格和類型,改進銷售服務,有利于保持現(xiàn)有客戶,尋找潛在的客戶,擴大銷售的范圍和規(guī)模,從而增加銷售量。通過分析銷售的數(shù)據(jù)記錄,目前主要應用于銷售預測、庫存需求、零售點選擇和價格分析,分析客戶的購買行為和習慣,分析商場的銷售商品的構(gòu)成,使商品的選擇與搭配更為科學。因此,對超市經(jīng)營信息、數(shù)據(jù)的整理、挖掘,從中得出對經(jīng)營有用的信息,增強超市的競爭能力,已經(jīng)成為各家超市企業(yè)面臨的一個緊迫課題,同時,Apriori算法作為關(guān)聯(lián)規(guī)則挖掘的重要算法,也被各個企業(yè)所運用。2 .關(guān)聯(lián)規(guī)則的基本概念設I=i1,i2,im是項的集合。設任務相關(guān)的數(shù)據(jù)D是數(shù)據(jù)庫事務的集合,其中每個事務T是項的集合。每一個

5、事務有一個標識符,稱作TID。設A是一個項集,事務T包含A當且僅當ATo關(guān)聯(lián)規(guī)則是形如AB的蘊涵式,其中AI,BI,并且AnB=。關(guān)聯(lián)分析中還包括兩個重要的參數(shù),支持度(min_sup)和置信度(min_conf)。具體定義如下:支持度:support(AB)=P(AUB),即A和B這兩個項集在事務集D中同時出現(xiàn)的概率。置信度:confidence(AB)=P(B|A),即在出現(xiàn)項集A的事務集D中,項集B也同時出現(xiàn)的概率。同時滿足最小支持度(min_sup)和最小置信度(min_conf)的規(guī)則稱作強規(guī)則。項的集合稱為項集(itemset),包含k個項的項集稱為k項集。項集的出現(xiàn)頻率是包含項集

6、的事務數(shù),簡稱為項集的頻率、支持計數(shù)或計數(shù)。如果項集的出現(xiàn)頻率大于或等于最小支持度,則稱為頻繁項集頻繁k-項集的集合通常記作Lko3 .Apriori算法分析關(guān)聯(lián)規(guī)則(AssociationRules)的挖掘是數(shù)據(jù)挖掘中的一個重要問題。我們采用的是相關(guān)性分析的方法,采用的是Apriori算法。Apriori算法是一種最有影響的挖掘布爾關(guān)聯(lián)規(guī)則頻繁項集的算法。其核心是基于兩階段頻集思想的遞推算法。該關(guān)聯(lián)規(guī)則在分類上屬于單維、單層、布爾關(guān)聯(lián)規(guī)則。在這里,所有支持度大于最小支持度的項集稱為頻繁項集,簡稱頻集。該算法的基本思想是:首先找出所有的頻集,這些項集出現(xiàn)的頻繁性至少和預定義的最小支持度一樣。然

7、后由頻集產(chǎn)生強關(guān)聯(lián)規(guī)則,這些規(guī)則必須滿足最小支持度和最小可信度。然后使用第1步找到的頻集產(chǎn)生期望的規(guī)則,產(chǎn)生只包含集合的項的所有規(guī)則,其中每一條規(guī)則的右部只有一項,這里采用的是中規(guī)則的定義。一旦這些規(guī)則被生成,那么只有那些大于用戶給定的最小可信度的規(guī)則才被留下來。為了生成所有頻集,使用了遞推的方法。Apriori算法采用連接步和剪枝步兩種方式來找出所有的頻繁項集。1)連接步為找出Lk(所有的頻繁k項集的集合),通過將Lk-1(所有的頻繁k-1項集的集合)與自身連接產(chǎn)生候選k項集的集合。候選集合記作Cko設l1和l2是Lk-1中的成員。記lij表示li中的第j項。假設Apriori算法對事務或項

8、集中的項按字典次序排序,即對于(k-1)項集li,li1<li2<,.<lik-1o將Li與自身連接,如果(l11=l21)&&(l12=l22)&&,.&&(l1k-2=l2k-2)&&(l1k-1<l2k-1),那認為11和l2是可連接。連接l1和l2產(chǎn)生的結(jié)果是l11,l12,l1k-1,l2k-1o2)剪枝步G是Lk的超集,也就是說,Ck的成員可能是也可能不是頻繁的。通過掃描所有的事務(交易),確定G中每個候選的計數(shù),判斷是否小于最小支持度計數(shù),如果不是,則認為該候選是頻繁的。為了壓縮Q,可以利用A

9、priori性質(zhì):任一頻繁項集的所有非空子集也必須是頻繁的,反之,如果某個候選的非空子集不是頻繁的,那么該候選肯定不是頻繁的,從而可以將其從Q中刪除。4 .數(shù)據(jù)關(guān)聯(lián)規(guī)則挖掘的實現(xiàn)過程a)數(shù)據(jù)采集數(shù)據(jù)是數(shù)據(jù)挖掘的前提,數(shù)據(jù)采集是獲取數(shù)據(jù)的方法與實現(xiàn)??梢詫?shù)據(jù)庫中的數(shù)據(jù)進行抽樣篩選得到與數(shù)據(jù)挖掘所處理的相關(guān)數(shù)據(jù)。也可以利用視圖對數(shù)據(jù)庫中的數(shù)據(jù)進行篩選。1-1首先從數(shù)據(jù)中抽取同一購物單上的物品組成事務,用于關(guān)聯(lián)挖掘如表物品一物品二物品三物品四物品五物品六手套科普牙膏電視機電視機洗衣機T恤牙刷牛奶表1-1關(guān)聯(lián)事務表b)數(shù)據(jù)預處理在數(shù)據(jù)采集的基礎上,處理數(shù)據(jù),使數(shù)據(jù)易于進彳f挖掘處理。主要進行了下面幾

10、個步驟:1)將商品信息表、銷售記錄表合并到一起(即數(shù)據(jù)集成),返回銷售關(guān)聯(lián)信息。2)去除不用的數(shù)據(jù)字段,比如,銷售日期、商品數(shù)量等等對數(shù)據(jù)挖掘沒有作用,在預處理階段就把這些字段排除。C)數(shù)據(jù)挖掘Apriori算法是一種最有影響的挖掘布爾型關(guān)聯(lián)規(guī)則頻繁項目集的算法。算法思想的是基于先驗知識,Apriori算法所采用的是逐層迭代搜索方法,K-項目集用于搜索(K+1)-項目集,首先,尋找出頻繁1-項目集的集合,該集合記作L1,L1用來尋找頻繁2-項目集的集合L2,再用L2尋找出L3,以此類推,直到不能找到頻繁M-項目集為止。每次找出一個Lk,就需要掃描數(shù)據(jù)庫一次,即如下所述:尋找頻繁項目集算法的基本

11、思路是Apriori的性質(zhì),即頻繁項目的所有非空子集都必須是頻繁的。利用這個性質(zhì)在搜索頻繁項目集時,非常有利于壓縮搜索空間,從而提高頻繁項目集逐層搜索的效率。在第一遍掃描中,計算單個項目的支持度,確定哪些項目是頻繁項目,即它們需具有最小支持度。在后來的掃描中,均將前一次掃描得到的頻繁項目作為基礎項目,利用這個基礎項目產(chǎn)生出新的頻繁項目集,這樣的頻繁項目集稱作候選項目集(CandidateItemsets),并且在掃描數(shù)據(jù)的過程中計算這些候選項目集的實際支持度計數(shù)。掃描結(jié)束后,確定哪些候選項目集才是真正的頻繁項目,然后將是頻繁項目的這些候選項目集作為下一次掃描用的基礎項目。重復此過程直到?jīng)]有新的

12、頻繁項目集產(chǎn)生為止。一般地,算法要對數(shù)據(jù)庫進行多次掃描。由于Apriori算法要求項目集的所有非空子集都必須是頻繁的,因此在數(shù)據(jù)庫中D的事務中尋找頻繁項目集時,需要進行連接和剪枝,才能挖掘強關(guān)聯(lián)規(guī)則。如果在數(shù)據(jù)庫D中的事務找出所有的頻繁項目集以后,由他們產(chǎn)生滿足最小支持度和最小的可信度的強關(guān)聯(lián)規(guī)則就很容易了,可用如下式的條件概率計算出可信度,Confidence(A=B)=P(A|B)=support_count(A3)/support_count(A)其中support_count(A5)是包含項目集A_;B的事務數(shù),support_count(A)是包含項目集A的事務數(shù)。根據(jù)該式,關(guān)聯(lián)規(guī)則

13、的可以產(chǎn)生如下:1)對于每個頻繁項目集L,產(chǎn)生L的所有非空子集。2)對于L的所有非空子集S,如果support_count(L)/support_count(S)>min_confidence,貝U輸出關(guān)聯(lián)規(guī)則"S=L-S",其中min_confidence是最小可信度閾值。由于規(guī)則由頻繁項目集產(chǎn)生,每個規(guī)則都滿足大于最小支持度,頻繁項目與他們的支持度可預先存放在散列表中,以加快訪問速度。讓我們以上例子說明關(guān)聯(lián)規(guī)則的挖掘,在該事務數(shù)據(jù)庫中,假定數(shù)據(jù)包含頻繁項目集L=I1,I2,I5,可以由L產(chǎn)生的關(guān)聯(lián)規(guī)則,L的非空子集由I1,I2,I1,I5,I2,I5,I1,I2和

14、I5,其支持度分別是4,2,2,6,7,2。得出的關(guān)聯(lián)規(guī)則如下:(每個都列出其可信度)11I2=I5,Confidence=2/4=50yy/OIiAI5=I2,Confidence=2/2=10012T5=Ii,Confidence=2/2=10011=12AI5,Confidence=2/6=3312.IiI5,Confidence=2/7=2915.IiI2,Confidence=2/2=100如果最小的可信度閾值是70%,則只有第2、3和最后一個規(guī)則可以輸出,因為這些產(chǎn)生的是強規(guī)則d)Apriori算法實現(xiàn)偽代碼K=1Fk=i|iGIAb(i)>Nxminsup發(fā)現(xiàn)所有的頻繁1項

15、集RepeatK=k+1Ck=apriorigen(Fk-)產(chǎn)生候選項集For每個事務tTdoCt=subset(Ck,t)識別屬于t的所有候選For(每個候選項集cGCtdob(c)=b(c)+1支持度計數(shù)增值EndforEndforFk=c|cGCkAo-(c)>NXminsup提取頻繁k項集UntilFk=nullResult=UFke)挖掘結(jié)果支持度閾值用于篩選出商品的頻繁項集集合,從而算出支持度;信任度閾值用于篩選出符合要求的商品集合之間信任度集合。通過支持度閾值和信任度閾值用戶可以根據(jù)實際需要來決定篩選的程度。同時購買商品的數(shù)據(jù):牛肉,雞肉,牛蝸牛肉,蝸酪奶酪,靴子牛肉,雞肉

16、,奶酪牛肉雞肉工衣服媯酪,牛螃雞肉,衣服,牛妍雞肉沖帆衣耐設置支持度為:2信任度為:0.7則頻繁集牛奶;衣服;:3牛肉;雞肉;:3奶酪;雞肉;:2牛奶;衣服;雞肉;:3奶酪;:4衣服;雞肉;:3奶酪;牛肉;:3牛奶;牛肉;:2牛肉;:4雞肉;:5奶酪;牛肉;雞肉;:2牛奶;雞肉;:4牛奶;:4牛奶;牛肉;雞肉;:2衣服;:3關(guān)聯(lián)規(guī)則牛奶;衣服;->雞肉;:1.0牛奶;->雞肉;:1.0衣服;->雞肉;:1.0牛肉;->奶酪;:0.75牛奶;->衣服;:0.75牛奶;->衣服;雞肉;:0.75牛奶;牛肉;->雞肉;:1.0奶酪;雞肉;->牛肉;:1

17、.0衣服;->牛奶;:1.0牛肉;->雞肉;:0.75牛奶;雞肉;->衣服;:0.75雞肉;->牛奶;:0.8衣服;雞肉;->牛奶;:1.0衣服;->牛奶;雞肉;:1.0奶酪;->牛肉;:0.75f)結(jié)果分析從上面我們可以看到事務集中的所有頻繁項集,如牛奶;衣服;:3;牛肉;雞肉;:3;奶酪;雞肉;:2;牛奶;衣服;雞肉;:3等,他們的支持度都大于2。在這些頻繁集中,牛奶,衣服可以和雞肉建立關(guān)聯(lián)規(guī)則,因為他們的信任度大于所設定的最小信任度,如上面所示還有很多頻繁項集可建立關(guān)聯(lián)規(guī)則。與此同時,我們還可以看出顧客的消費習慣和那些商品顧客會同時購買,超市應該根據(jù)上面的分析結(jié)果來進購商品和安

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論