李文娟
(定西師范高等??茖W(xué)校, 甘肅 定西 743000)
基于關(guān)聯(lián)規(guī)則挖掘算法的商場(chǎng)購物籃分析與建模仿真研究
李文娟
(定西師范高等??茖W(xué)校, 甘肅 定西 743000)
結(jié)合一個(gè)商場(chǎng)購物籃的數(shù)據(jù)集,通過理論分析、實(shí)例驗(yàn)證,介紹關(guān)聯(lián)規(guī)則挖掘過程及Apriori算法,運(yùn)用頂尖數(shù)據(jù)挖掘平臺(tái)TipDM中的Apriori算法進(jìn)行建模仿真實(shí)驗(yàn),挖掘出商場(chǎng)購物籃事務(wù)集的強(qiáng)關(guān)聯(lián)規(guī)則,為商場(chǎng)進(jìn)行市場(chǎng)定位、商品定價(jià)、新商品采購等決策提供幫助,也對(duì)指導(dǎo)未來的超市商品分組布局與促銷活動(dòng)提供幫助。
支持度;置信度;關(guān)聯(lián)規(guī)則挖掘;Apriori算法;建模仿真
商場(chǎng)以獲得最大的銷售利潤為目的。了解顧客的購買習(xí)慣和偏愛,有助于他們制定正確的營銷策略。只有對(duì)商場(chǎng)銷售數(shù)據(jù)進(jìn)行分析,才能了解顧客的購買特性,并根據(jù)發(fā)現(xiàn)的規(guī)律而采取有效的行動(dòng)。只有分析商場(chǎng)銷售商品的構(gòu)成,才能發(fā)現(xiàn)不同類別商品的共同特征及規(guī)則,并進(jìn)而通過這些規(guī)則對(duì)商場(chǎng)的市場(chǎng)定位、商品定價(jià)、新商品采購等進(jìn)行決策。
1.1 支持度和置信度
表1為一個(gè)購物籃的數(shù)據(jù)集,每一組數(shù)據(jù)ti表示不同的顧客一次在商場(chǎng)購買的商品集合。
表1 購物籃交易項(xiàng)目
假如有一條規(guī)則:奶酪→牛奶,那么同時(shí)購買奶酪和牛奶的顧客比例是1/7,而購買奶酪的顧客當(dāng)中也購買了牛奶的顧客比例是1/4。這兩個(gè)比例參數(shù)是很重要的衡量指標(biāo),在關(guān)聯(lián)規(guī)則中分別稱作支持度(Support)和置信度(Confidence)。支持度為1/7表示在所有顧客當(dāng)中有1/7同時(shí)購買了奶酪和牛奶,它反映了同時(shí)購買奶酪和牛奶的顧客在所有顧客當(dāng)中的覆蓋范圍;置信度為1/4表示在買了奶酪的顧客當(dāng)中有1/4的人買了牛奶,它反映了可預(yù)測(cè)的程度,即顧客買了奶酪之后有多大可能性買牛奶。
在數(shù)據(jù)挖掘中,所有商品集合I={牛肉,羊肉,牛奶,奶酪,靴子,衣服}稱作項(xiàng)目集合,每位顧客一次購買的商品集合ti稱為一個(gè)事務(wù),所有的事務(wù)T={ t1,t2,…,t7}稱作事務(wù)集合,并且滿足ti是T的真子集。一條關(guān)聯(lián)規(guī)則是形如“A→B”的蘊(yùn)含式,它滿足:A,B是I的真子集,并且A和B的交集為空集。其中A稱為前件,B稱為后件。對(duì)于規(guī)則A→B,則有:
支持度P(A|B)=(A,B).count/T.count
(1)
置信度P(B|A)=(A,B).count/A.count
(2)
其中(A,B).count表示T中同時(shí)包含A和B的事務(wù)的個(gè)數(shù),A.count表示T中包含A的事務(wù)的個(gè)數(shù)。對(duì)于支持度和置信度,需要正確地去看待這兩個(gè)衡量指標(biāo)。一條規(guī)則的支持度表示這條規(guī)則的可能性大小,如果一個(gè)規(guī)則的支持度很小,則表明它在事務(wù)集合中覆蓋范圍很小,很有可能是偶然發(fā)生的;如果置信度很低,則表明很難根據(jù)A推出B。根據(jù)條件概率公式:P(B|A)= P(A|B)/ P(A)可知,對(duì)于任何一條關(guān)聯(lián)規(guī)則,置信度總是大于或等于支持度。
1.2 關(guān)聯(lián)規(guī)則挖掘過程
關(guān)聯(lián)規(guī)則挖掘總體過程主要包括兩步:
(1)根據(jù)最小支持度找出事務(wù)集合T中所有的頻繁項(xiàng)目集。
(2)由頻繁項(xiàng)目集和最小支持度產(chǎn)生強(qiáng)關(guān)聯(lián)規(guī)則。
如何迅速高效的找出T中所有頻繁項(xiàng)目集,是關(guān)聯(lián)規(guī)則挖掘的核心所在。關(guān)聯(lián)規(guī)則挖掘總體過程如圖1所示。
圖1 關(guān)聯(lián)規(guī)則挖掘總體過程
圖1中T為輸入的事務(wù)集合,第一步根據(jù)搜索算法找出頻繁項(xiàng)目集,第二步的算法從頻繁項(xiàng)目集中產(chǎn)生有用的關(guān)聯(lián)規(guī)則,最后輸出挖掘出的關(guān)聯(lián)規(guī)則集合。用戶可以通過指定支持度和置信度的最低閾值min_sup和min_conf,根據(jù)公式(1)和(2),要想找出滿足條件的關(guān)聯(lián)規(guī)則,首先必須找出這樣的集合F=A∪B,它滿足:
F.count/T.count≥min_sup
(3)
其中,F(xiàn).count 是T中包含F(xiàn)的事務(wù)的個(gè)數(shù),然后從F中找出這樣的蘊(yùn)含式A→B,它滿足:
(A,B).count/A.count≥min_conf
(4)
1.3 關(guān)聯(lián)規(guī)則挖掘算法
最著名的關(guān)聯(lián)規(guī)則挖掘算法是Apriori算法,該算法使用一種稱為逐層搜索的迭代方法,其中k-頻繁項(xiàng)目集用于探索(k+1)-頻繁項(xiàng)目集。首先,通過掃描事務(wù)數(shù)據(jù)庫,累計(jì)每個(gè)項(xiàng)的計(jì)數(shù),并收集滿足最小支持度的項(xiàng),找出1-頻繁項(xiàng)目集,該集合記為L1。然后,使用L1找出2-頻繁項(xiàng)目集,記為L2,使用L2找出L3,如此下去,直到不能再找到k-頻繁項(xiàng)目集。找出每個(gè)Lk需要一次事務(wù)數(shù)據(jù)庫的完整掃描。具體實(shí)現(xiàn)步驟如下:
步驟1 頻繁項(xiàng)目集的生成過程。
首先要做的是找出1-頻繁項(xiàng)目集,這個(gè)很容易做到,只要循環(huán)掃描一次事務(wù)集合統(tǒng)計(jì)出項(xiàng)目集合中每個(gè)元素的支持度,然后根據(jù)設(shè)定的支持度閾值進(jìn)行篩選,即可得到1-頻繁項(xiàng)目集。圖2給出Apriori算法和它的相關(guān)過程的偽代碼。
圖2 挖掘關(guān)聯(lián)規(guī)則發(fā)現(xiàn)頻繁項(xiàng)集的Apriori算法
步驟2 在步驟1得出的頻繁項(xiàng)目集中找出滿足條件的關(guān)聯(lián)規(guī)則。
一旦由步驟1生成滿足條件的頻繁項(xiàng)目集,就可以直接由它們產(chǎn)生強(qiáng)關(guān)聯(lián)規(guī)則。根據(jù)公式(2),可以如下描述產(chǎn)生關(guān)聯(lián)規(guī)則:
(1)對(duì)于每個(gè)頻繁項(xiàng)目集l,產(chǎn)生l的所有非空子集。
1.4 Apriori算法實(shí)例驗(yàn)證
假如有項(xiàng)目集合I={牛奶I1,面包I2,薯片I3,果汁I4,奶酪I5},如表2所示,有事務(wù)集T。設(shè)定minsup=3/7,minconf=5/7。以Apriori算法為例來說明具體流程。
表2 事務(wù)數(shù)據(jù)庫
1.4.1 生成頻繁項(xiàng)目集
步驟1 生成1-頻繁項(xiàng)目集。
{I1},{I2},{I3},{I4},{I5}
步驟2 生成2-頻繁項(xiàng)目集。
根據(jù)1-頻繁項(xiàng)目集生成所有的包含2個(gè)元素的項(xiàng)目集,任意取兩個(gè)只有最后一個(gè)元素不同的1-頻繁項(xiàng)目集,求其并集,由于每個(gè)1-頻繁項(xiàng)目集元素只有一個(gè),所以生成的項(xiàng)目集如下:
{I1,I2},{I1,I3},{I1,I4},{I1,I5}
{I3,I4},{I3,I5}
{I4,I5}
計(jì)算它們的支持度,發(fā)現(xiàn)只有{I1,I2},{I1,I3},{I1,I4},{I2,I3},{I2,I4}的支持度滿足要求,因此求得2-頻繁項(xiàng)目集:{I1,I2},{I1,I3},{I1,I4},{I2,I3},{I2,I4}。
步驟3 生成3-頻繁項(xiàng)目集。
因?yàn)閧I1,I2},{I1,I3},{I1,I4}除了最后一個(gè)元素以外都相同,所以求{I1,I2},{I1,I3}的并集得到{I1,I2,I3},{I1,I2}和{I1,I4}的并集得到{I1,I2,I4},{I1,I3}和{I1,I4}的并集得到{I1,I3,I4}。但是由于{I1,I3,I4}的子集{I3,I4}不在2-頻繁項(xiàng)目集中,所以需要把{I1,I3,I4}剔除掉。然后再來計(jì)算{I1,I2,I3}和{I1,I2,I4}的支持度,發(fā)現(xiàn){I1,I2,I3}的支持度為3/7,{I1,I2,I4}的支持度為2/7,所以需要把{I1,I2,I4}剔除。
同理可以對(duì){I2,I3},{I2,I4}求并集得到{I2,I3,I4},但是{I2,I3,I4}的支持度不滿足要求,所以需要剔除掉。因此得到3-頻繁項(xiàng)目集:{I1,I2,I3}。
1.4.2 生成強(qiáng)關(guān)聯(lián)規(guī)則
以3-頻繁項(xiàng)目集為例,其生成關(guān)聯(lián)規(guī)則的過程如下:
對(duì)于集合{I1,I2,I3},先生成1-后件的關(guān)聯(lián)規(guī)則:
(I1,I2)→I3,置信度=3/4;(I1,I3)→I2,置信度=3/5;(I2,I3)→I1,置信度=3/3。(I1,I3)→I2的置信度不滿足要求,所以剔除掉。因此得到1-后件的集合{I1},{I3},然后再以{I1,I3}作為后件。(I1,I3)→I2的置信度=3/5不滿足要求,所以對(duì)于3-頻繁項(xiàng)目集生成的強(qiáng)關(guān)聯(lián)規(guī)則為:(I1,I2)→I3和(I2,I3)→I1。
2.1 建模工具
采用頂尖數(shù)據(jù)挖掘平臺(tái)TipDM中的Apriori算法進(jìn)行關(guān)聯(lián)規(guī)則挖掘。TipDM平臺(tái)能從各種數(shù)據(jù)源獲取數(shù)據(jù),建立各種不同的數(shù)據(jù)挖掘模型,能夠滿足各種復(fù)雜的應(yīng)用需求。TipDM的典型應(yīng)用場(chǎng)景包括:智能營銷、模式識(shí)別、信用等級(jí)、故障診斷、風(fēng)險(xiǎn)評(píng)估、欺詐預(yù)警等。
2.2 模型輸入
模型數(shù)據(jù)的輸入有兩部分:建模樣本數(shù)據(jù)和建模參數(shù),建模參數(shù)的設(shè)置見表3所示。
表3 Apriori關(guān)聯(lián)規(guī)則建模參數(shù)
建模樣本數(shù)據(jù)見表1和表4,為了說明問題,僅選擇了部分樣本進(jìn)行建模。
表4 預(yù)處理后購買記錄
2.3 仿真過程
建模仿真過程如圖2所示。
圖2 仿真過程示意圖
仿真過程說明如下:
(1)登錄TipDM平臺(tái),在方案管理頁面中,新建方案或者打開一個(gè)已建方案。
(2)切換到數(shù)據(jù)管理頁面,上傳客戶消費(fèi)樣本數(shù)據(jù)文件。
(3)選擇Apriori關(guān)聯(lián)規(guī)則挖掘算法進(jìn)行模型構(gòu)建。
(4)對(duì)挖掘的關(guān)聯(lián)規(guī)則進(jìn)行分析。
2.4 結(jié)果及分析
當(dāng)設(shè)置Apriori算法的最小置信度為0.9,增量為0.05,規(guī)則條數(shù)為10,顯著性水平為-1.0,最小支持度下界為0.1,最小支持度上界為1.0時(shí),產(chǎn)生的項(xiàng)集L(1)的大小為6,項(xiàng)集L(2)的大小為4,項(xiàng)集L(3)的大小為1,挖掘出來的強(qiáng)關(guān)聯(lián)規(guī)則如表5所示。
通過對(duì)以上購物籃數(shù)據(jù)進(jìn)行分析,發(fā)現(xiàn)商品之間的相關(guān)性,對(duì)于指導(dǎo)未來的超市商品分組布局與促銷活動(dòng)提供了很大幫助,也為零售商進(jìn)行市場(chǎng)定位、商品定價(jià)以及新商品采購等進(jìn)行決策提供有力幫助。
[1]Jiawei Han,Micheline Kamber,Jian Pei.?dāng)?shù)據(jù)挖掘概念與技術(shù)[M].北京:機(jī)械工業(yè)出版社,2013:160-165.
[2]劉錫鈴.關(guān)聯(lián)規(guī)則挖掘算法及其在購物籃分析中的應(yīng)用研究[D].蘇州大學(xué),2009.
[3]陳麗芳.基于Apriori算法的購物籃分析 [J].重慶工商大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,31(5):84-89.
[4]李愛鳳.基于數(shù)據(jù)挖掘技術(shù)的購物籃模式研究[J].計(jì)算機(jī)應(yīng)用與軟件,2011,(12):156-158.
表5 挖掘出來的強(qiáng)關(guān)聯(lián)規(guī)則
[5]黃宏本,盧雪燕.關(guān)聯(lián)規(guī)則挖掘在超市銷售系統(tǒng)中的應(yīng)用及實(shí)現(xiàn)[J].梧州學(xué)院學(xué)報(bào),2011,(3):59-63.
[6]劉明會(huì),韓朝.基于關(guān)聯(lián)規(guī)則Apriori算法進(jìn)行購物籃分析[J].中國商貿(mào),2014,(9):17-20.
[7]朱龍.利潤約束的關(guān)聯(lián)規(guī)則挖掘算法[J].華僑大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,36(5):522-526.
[8]李洪燕,萬新.基于關(guān)聯(lián)規(guī)則分析的產(chǎn)品銷售推薦的應(yīng)用[J].四川理工學(xué)院學(xué)報(bào)(自然科學(xué)版),2013,(2).
Analysis and Modeling Simulation Research of Shopping Basket Based on Association Rule Mining Algorithm
LI Wen-juan
(Dingxi Teachers College, Dingxi Gansu 743000, China)
To set the principles of market positioning, price commodifty, purchasing new commadities for a shopping malls, the process of association rules mining and Apricri alogrithm are used in the analysis of a shopping basket data set. The conclusion is also helpful to products layout and salse promotions.
support degree; confidence; association rule mining; Apriori algorithm; modeling and simulation
2016-12-30
定西師范高等??茖W(xué)校校級(jí)項(xiàng)目(TD2016YB04)
李文娟(1984-),女,甘肅定西人,講師,在讀工程碩士,研究方向?yàn)榇髷?shù)據(jù)及數(shù)據(jù)挖掘算法。
TP31
A
1674-344X(2017)2-0066-04