李洪燕,萬 新
(四川理工學(xué)院自動化與電子信息工程學(xué)院,四川 自貢 643000)
交叉銷售是實際生活中常見的商業(yè)問題,它是根據(jù)客戶的購物籃中的歷史產(chǎn)品信息來推薦客戶最有可能購買的產(chǎn)品[1]。最優(yōu)的推薦信息會提高顧客的購買欲,從而增加總的銷售額。相反,劣質(zhì)的推薦信息可能使客戶失去購買興趣。當(dāng)面對的銷售產(chǎn)品目錄比較小時,根據(jù)豐富的銷售經(jīng)驗來提供建議時可能比較容易實現(xiàn),當(dāng)不同產(chǎn)品的信息和數(shù)量比較龐大時,推薦信息就會失去有效性和準(zhǔn)確性。
Microsoft關(guān)聯(lián)規(guī)則算法屬于Apriori關(guān)聯(lián)規(guī)則算法系列[2]。Microsoft關(guān)聯(lián)規(guī)則算法由兩部分構(gòu)成,第一部分是挖掘頻繁項集,第二部分是基于頻繁項集來生成關(guān)聯(lián)規(guī)則。
設(shè)L={L1,L2,…,Lm}是項的集合,設(shè)任務(wù)相關(guān)的數(shù)據(jù)D是數(shù)據(jù)庫事務(wù)的集合,其中每個事務(wù)T是一個非空項集,使得T?L。每一個事務(wù)都有一個標(biāo)識符,稱為TID。設(shè)A是一個項集,事務(wù)T包含A,當(dāng)且僅當(dāng)A?T。關(guān)聯(lián)規(guī)則是形如:A?B的蘊涵式,其中A?L,B?L,A≠Φ,B≠Φ,并且A∩B=Φ。
Microsoft關(guān)聯(lián)規(guī)則算法使用一種逐層搜索的迭代方法[3]。首先,通過掃描數(shù)據(jù)庫,累計每個項的計數(shù),并收集滿足最小支撐度的項,找出頻繁1項集的集合L1。然后,使用L1找出頻繁2項集的集合L2,使用L2找出L3,依次下去,直到所有的侯選項集都不滿足條件,算法終止[4]。
挖掘為事務(wù)數(shù)據(jù)庫D(圖1)的頻繁項集的過程如下所示:
圖1 事務(wù)數(shù)據(jù)D
(1)首先設(shè)每個項都是候選1項集的集合C1的成員。掃描所有的事務(wù),并對每個項的出現(xiàn)次數(shù)計數(shù)。
(2)假設(shè)最小支持度計數(shù)為2,即minimum_support=2。確定頻繁1項集的集合L1(圖2)。
(3)若想找到頻繁2項集的集合C2,首先連接L1產(chǎn)生候選2項集的集合。
(4)掃描D中事務(wù),同時累計C2中每個候選項集的支持度計數(shù)(圖3)。
(5)確定頻繁2項集的集合L2,L2是C2中滿足最小支持度的候選2項集構(gòu)成的。
(6)確定候選3項集的集合C3。首先令L2={{I1,I2,I3},{I1,I2,I5},{I1,I3,I5},{I2,I3,I4},{I2,I3,I5},{I2,I4,I5},{I3,I4,I5}},根據(jù)先驗性質(zhì),頻繁項集的所有子集必須是頻繁的,可以確定{I2,I4,I5},{I3,I4,I5}不是頻繁項集,因此,把它們刪除。
(7)掃描D中事務(wù)以確定L3,它由C3中滿足最小支持度的候選3項集組成,如圖4所示。
圖4 候選項集C2和頻繁項集L2的生產(chǎn)過程
(8)候選4項集的集合L3={{I1,I2,I3,I5},{I2,I3,I4,I5}},但它的子集{I2,I3,I5}不是頻繁的,所以L4=Φ,算法終止,找出了所有的頻繁項集。
在客戶購買的歷史信息中,提取了32 265個樣本數(shù),部分數(shù)據(jù)源如圖5所示。圖5中包含了客戶的訂單號、購買的產(chǎn)品的類別和單價。
圖5 事務(wù)數(shù)據(jù)
一旦提取完所需數(shù)據(jù),并通過預(yù)處理,就可根據(jù)任務(wù)選擇適當(dāng)算法對數(shù)據(jù)進行分析處理。在該任務(wù)中,利用SQL Server 2008 Data Mining Add-Ins for Microsoft office 2007工具完成商品推薦,并選擇關(guān)聯(lián)算法對數(shù)據(jù)源進行分析處理,處理結(jié)果如圖6所示。
圖6 基于關(guān)聯(lián)算法的詳細分析信息
從圖6中可知各類捆綁商品的銷售數(shù)量、銷售價格以及銷售總值。以捆綁road bike和helmets為例:road bike和helmets同時購買的銷售數(shù)量為805,從對事務(wù)數(shù)據(jù)的統(tǒng)計中可知客戶單獨購買helmets單價為53.99,銷售數(shù)量為3794;購買road bike的單價為2443.35,銷售數(shù)量為2369;平均銷售單價為1248.67低于捆綁銷售單價的平均銷售價格1570.22;銷售總值為1 005 179也低于捆綁銷售總值1 264 033,因此利用該解決方案可增加產(chǎn)品的總銷售額。
通過對數(shù)據(jù)進行分析和處理之后,就可得到理想的解決方案,從圖7中推薦商品依據(jù)可知,如果客戶購買了fenders就可向客戶推薦Mountain Bikes,并且購買該商品的購買率為43.54%;客戶購買了Cleaners、Helmets、Bike Stands、Bike Racks等任何一樣產(chǎn)品就可向客戶推薦Tires and tubes,并且其中最有可能購買的客戶為已購買了Bike Stands產(chǎn)品的客戶;客戶購買了Gloves可推薦Helmets,購買率為41.46%;客戶購買了Hydration Pack就可推薦Bottles and cages其購買率為44.63%。因此如果市場部要策劃一次營銷活動,就可根據(jù)此解決方案來制定營銷策略,有針對性地寄發(fā)產(chǎn)品海報,從而節(jié)約營銷成本,得到最大的客戶響應(yīng)度和產(chǎn)品購買率。
圖7 推薦商品的詳細依據(jù)
龐大的銷售數(shù)據(jù)庫中隱含了客戶的消費習(xí)慣和行為特征,而關(guān)聯(lián)規(guī)則算法[5]能夠幫助數(shù)據(jù)分析者和營銷決策者發(fā)現(xiàn)海量交易數(shù)據(jù)背后的有價值的信息,以SQL Server 2008 Data Mining Add-Ins for Microsoft office 2007工具提供的樣例數(shù)據(jù)基于microsoft關(guān)聯(lián)規(guī)則算法建立模型來實現(xiàn)購物籃分析,并生成推薦信息,幫助商家制定營銷策略,合理安排,提高銷售額[6]。
[1]孫曉佳,朱宏麗.淺談如何成功實踐交叉銷售[J].現(xiàn)代商業(yè),2008(21):112.
[2]Crivat JM,著.董 艷,程文俊,譯.數(shù)據(jù)挖掘原理與應(yīng)用[M].北京:清華大學(xué)出版社,2010.
[3]Pei JH,著.范 明,孟小峰,譯.數(shù)據(jù)挖掘概念與技術(shù)[M].北京:機械工業(yè)出版社,2012.
[4]Agrawal R,Shafer J C.Parallel mining of association rules:Design,implementation,and experience[M].IEEE Trans.Know ledge and Data engineering,1996.
[5]Ballou D P,Tayi G K.Enhancing Data M ining:Models and A lgorithms[M].New York:Springer,2008.
[6]徐 菊.商業(yè)性文獻數(shù)據(jù)庫的營銷策略研究[D].廣東:廣東師范大學(xué),2008.