徐琴+韓潔
摘要:采用Microsoft時(shí)序算法來(lái)創(chuàng)建數(shù)據(jù)挖掘模型,并瀏覽驗(yàn)證了數(shù)據(jù)挖掘模型的有效性,可應(yīng)用該模型預(yù)測(cè)電子商城中的銷(xiāo)售情況,包括:每個(gè)商店、每類(lèi)商品、每個(gè)商品的銷(xiāo)售額、銷(xiāo)售量及銷(xiāo)售成本等,可為電子商城中的商家的商業(yè)活動(dòng)提供決策支持。
關(guān)鍵詞:數(shù)據(jù)挖掘;時(shí)序算法;銷(xiāo)售預(yù)測(cè);電子商城
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)04-0243-02
1 概述
目前,在電子商城中各個(gè)商家和企業(yè)的商業(yè)活動(dòng)在很大程度上存在著盲目性,對(duì)大家都有利的許多信息得不到共享,也沒(méi)有商業(yè)活動(dòng)可依據(jù)的可靠的決策支持。可以通過(guò)數(shù)據(jù)挖掘來(lái)對(duì)電子商城的s未來(lái)銷(xiāo)售情況進(jìn)行預(yù)測(cè),使企業(yè)和商家對(duì)未來(lái)的發(fā)展有一定的認(rèn)識(shí),也有利于合理的安排各項(xiàng)商業(yè)活動(dòng)。
對(duì)未來(lái)銷(xiāo)售情況預(yù)測(cè)包括:通過(guò)商城中各類(lèi)商品的歷史銷(xiāo)售記錄,預(yù)測(cè)各類(lèi)商品的發(fā)展前景進(jìn)行;通過(guò)各個(gè)企業(yè)和商家的商品的歷史銷(xiāo)售記錄,預(yù)測(cè)企業(yè)和商家的發(fā)展前景;通過(guò)各個(gè)產(chǎn)品的歷史銷(xiāo)售記錄,預(yù)測(cè)產(chǎn)品將來(lái)的發(fā)展前景等等。
本文的銷(xiāo)售預(yù)測(cè)采用Microsoft時(shí)序算法對(duì)電子商城中的銷(xiāo)售數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘。
2 Microsoft時(shí)序算法簡(jiǎn)介
時(shí)間序列包含一系列的隨時(shí)間或者其他變量的增加而得到的數(shù)據(jù)。在現(xiàn)實(shí)世界中,許多變量的值隨著時(shí)間的改變而改變,變量值的序列也就組成了一個(gè)時(shí)間序列。在時(shí)間序列中,給定時(shí)間點(diǎn)的值由該時(shí)間點(diǎn)之前的值決定。通過(guò)收集時(shí)間序列數(shù)據(jù)對(duì)將來(lái)的值進(jìn)行預(yù)測(cè)。[1]
Microsoft時(shí)序算法是一個(gè)結(jié)合了自動(dòng)回歸技術(shù)和決策樹(shù)技術(shù)的新預(yù)測(cè)算法,所以也把該算法稱(chēng)作自動(dòng)回歸樹(shù)(Auto Regression Tree,ART)。[2]
1)自動(dòng)回歸:自動(dòng)回歸是一種用來(lái)處理時(shí)間序列問(wèn)題的常見(jiàn)的技術(shù)。在自動(dòng)回歸過(guò)程中,x在f(xt)的值是t時(shí)間之前x的一系列值的一個(gè)函數(shù),例如:[xt=f(xt-1,xt-2,xt-3,…,xt-n)+εt],其中,xt是待研究的時(shí)間序列,n是自動(dòng)回歸的階,通常遠(yuǎn)小于該序列的長(zhǎng)度,最后一項(xiàng)[εt]代表噪聲。使用時(shí)間序列算法的目標(biāo)就是找到這個(gè)函數(shù)f。
2)使用多個(gè)時(shí)間序列:一個(gè)挖掘模型可能包含多個(gè)時(shí)間序列,這些序列可能不是相互獨(dú)立的。這一算法的特征之一就是當(dāng)這些序列存在著依賴(lài)關(guān)系的時(shí)候,可以被識(shí)別出是交叉序列。
3)自動(dòng)回歸樹(shù):使用該算法創(chuàng)建的模型是自動(dòng)回歸樹(shù),一顆回歸樹(shù)就對(duì)應(yīng)著函數(shù)f。
4)季節(jié)性:大多數(shù)時(shí)間序列都有季節(jié)性的模式。ART算法可以使用季節(jié)性參數(shù)Periodicity_Hint來(lái)增加歷史數(shù)據(jù)點(diǎn)。
5)預(yù)測(cè)歷史:當(dāng)處理完一個(gè)時(shí)序模型后,就可以用該模型對(duì)未來(lái)進(jìn)行預(yù)測(cè)、對(duì)歷史進(jìn)行預(yù)測(cè)。如果該模型對(duì)過(guò)去的預(yù)測(cè)比較準(zhǔn)確,則該模型對(duì)未來(lái)預(yù)測(cè)的結(jié)果也比較準(zhǔn)確。
3 使用Microsoft時(shí)序算法挖掘數(shù)據(jù)
3.1 創(chuàng)建模型
在本例中,采用Microsoft時(shí)序算法創(chuàng)建2個(gè)挖掘模型,其中:模型Stores_Model的目標(biāo)是對(duì)每個(gè)商店每個(gè)月的銷(xiāo)售額、銷(xiāo)售量、銷(xiāo)售成本進(jìn)行預(yù)測(cè);模型Product_Category_Model的目標(biāo)是對(duì)每類(lèi)商品每個(gè)月的銷(xiāo)售額、銷(xiāo)售量、銷(xiāo)售成本進(jìn)行預(yù)測(cè)。
利用DMX 語(yǔ)言創(chuàng)建時(shí)序模型Stores_Model和Product_Category_Model的代碼如下:
CREATE MINING MODEL Stores_Model (
年月 LONG KEY TIME,
商店名稱(chēng) TEXT KEY,
銷(xiāo)售額 LONG CONTINUOUS PREDICT,
銷(xiāo)售成本 LONG CONTINUOUS PREDICT,
銷(xiāo)售量 LONG CONTINUOUS PREDICT)
Using Microsoft_Time_Series (HISTORIC_MODEL_COUNT = 12, HISTORIC_MODEL_GAP = 2, MISSING_VALUE_SUBSTITUTION = Previous, PERIODICITY_HINT = '{12}')
CREATE MINING MODEL Product_Category_Model (
年月 LONG KEY TIME,
商品分類(lèi)名稱(chēng) TEXT KEY,
銷(xiāo)售金額 LONG CONTINUOUS PREDICT,
銷(xiāo)售成本 LONG CONTINUOUS PREDICT,
銷(xiāo)售數(shù)量 LONG CONTINUOUS PREDICT)
Using Microsoft_Time_Series (HISTORIC_MODEL_COUNT = 12, HISTORIC_MODEL_GAP = 2, MISSING_VALUE_SUBSTITUTION = Previous, PERIODICITY_HINT = '{12}')
其中:HISTORIC_MODEL_COUNT參數(shù)設(shè)置為12,表示構(gòu)建12個(gè)歷史模型;HISTORIC_MODEL_GAP參數(shù)設(shè)置為2,表示構(gòu)建的歷史模型之間的時(shí)間間隔為2;MISSING_VALUE_SUBSTITUTION設(shè)置為Previous,指的是使用以前的值來(lái)填充歷史數(shù)據(jù)中的空白;PERIODICITY_HINT設(shè)置為{12},指的是按照年模式進(jìn)行計(jì)算。
3.2 瀏覽驗(yàn)證數(shù)據(jù)挖掘模型
在模型中通常有一或多棵樹(shù),模型中的每一棵樹(shù)都有一或多個(gè)節(jié)點(diǎn),樹(shù)中的每一個(gè)非葉節(jié)點(diǎn)都包含一個(gè)線(xiàn)性回歸公式,樹(shù)中的每一個(gè)內(nèi)容節(jié)點(diǎn)的分布行集存儲(chǔ)著線(xiàn)性回歸公式的系數(shù)和截距的數(shù)值。[3]
商店Store22的銷(xiāo)售額的預(yù)測(cè)樹(shù)如圖1所示??梢钥吹皆摌?shù)只有一個(gè)拆分,該拆分是基于前第二個(gè)月Store14的銷(xiāo)售量。所選擇的節(jié)點(diǎn)顯示前第二個(gè)月Store14的銷(xiāo)售量是否高于176.810,可以使用下面的兩個(gè)回歸公式來(lái)預(yù)測(cè)下一個(gè)月Store22的銷(xiāo)售額:
Store14.銷(xiāo)售量-2 >= 176.810:
Store22銷(xiāo)售額 = 86.828 -0.051 * 銷(xiāo)售額(Store03,-2) + 0.456 * 銷(xiāo)售量(Store14,-2) + 0.215 * 銷(xiāo)售量(Store06,-2) + 0.521 * 銷(xiāo)售成本(Store02,-1)
Store14.銷(xiāo)售量-2 < 176.810:
Store22銷(xiāo)售額 = 353.896 + 0.013 * 銷(xiāo)售量(Store06,-2) + 0.003 * 銷(xiāo)售額(Store03,-2)
這兩個(gè)公式可以在挖掘圖例中看到。可以看出,在Store14.銷(xiāo)售量-2 >= 176.810時(shí),回歸公式用前第二個(gè)月Store03的銷(xiāo)售額、Store14的銷(xiāo)售量、Store06的銷(xiāo)售量以及前一個(gè)月Store02的銷(xiāo)售成本來(lái)預(yù)測(cè)Store22的銷(xiāo)售額,這是因?yàn)樵撃P桶l(fā)現(xiàn)在這個(gè)條件下,Store22的銷(xiāo)售額序列和這些序列有較強(qiáng)的回歸關(guān)系;同樣的,在Store14.銷(xiāo)售量-2 < 176.810時(shí),回歸公式用前第二個(gè)月Store03的銷(xiāo)售額、Store06的銷(xiāo)售量來(lái)預(yù)測(cè)Store22的銷(xiāo)售額,這也是因?yàn)槟P桶l(fā)現(xiàn)在這個(gè)條件下,Store22的銷(xiāo)售額序列和這些序列有較強(qiáng)的回歸關(guān)系。
Store16銷(xiāo)售額的預(yù)測(cè)曲線(xiàn)如圖2所示,藍(lán)色圖形表示Store16每月的銷(xiāo)售額。在圖形中有一根垂直的線(xiàn),該線(xiàn)是歷史的序列值與將來(lái)的預(yù)測(cè)值的分界線(xiàn),左邊表示歷史的序列值,右邊表示將來(lái)的預(yù)測(cè)值。由圖可見(jiàn),將來(lái)的預(yù)測(cè)值用虛線(xiàn)表示,虛線(xiàn)之上的豎線(xiàn)表示的是預(yù)測(cè)偏差。通常情況下,預(yù)測(cè)的將來(lái)越遠(yuǎn),則預(yù)測(cè)的偏差相對(duì)也就越大。
另外,每個(gè)序列都會(huì)用相應(yīng)的回歸公式對(duì)歷史進(jìn)行預(yù)測(cè)。如圖2所示,在垂直線(xiàn)左邊的虛線(xiàn)部分就是歷史預(yù)測(cè)的圖形。從圖中可以看出模型對(duì)歷史的預(yù)測(cè)總體趨勢(shì)是符合的。
可以看出,該模型對(duì)過(guò)去進(jìn)行預(yù)測(cè)的結(jié)果是比較準(zhǔn)確的,所以,可認(rèn)為它對(duì)未來(lái)的預(yù)測(cè)結(jié)果也是比較準(zhǔn)確的。在模型對(duì)過(guò)去的預(yù)測(cè)有較大的偏差時(shí),可以適當(dāng)?shù)男薷乃惴ǖ膮?shù)再進(jìn)行預(yù)測(cè),直到得到滿(mǎn)意的結(jié)果為止。
4 應(yīng)用模型
在圖2中可以看出,在未來(lái)兩個(gè)月,Store16的銷(xiāo)售額會(huì)有所下降,應(yīng)該采取一定的措施來(lái)提高銷(xiāo)售額??梢愿鶕?jù)在商城中各類(lèi)商品的銷(xiāo)售預(yù)測(cè)情況來(lái)做決策,比如適當(dāng)調(diào)整商品結(jié)構(gòu)、采取一定的促銷(xiāo)手段等等。
在圖3中顯示出,Vegetables的銷(xiāo)售額在未來(lái)兩個(gè)月下降得很快,之后將會(huì)保持在一個(gè)較低的水平,商店應(yīng)該適當(dāng)減少這類(lèi)商品的采購(gòu)量,降低庫(kù)存,或?qū)@類(lèi)商品進(jìn)行促銷(xiāo),以免出現(xiàn)商品積壓。Canned Oysters的銷(xiāo)售額會(huì)有大幅上升,之后雖會(huì)再下降但又會(huì)出現(xiàn)一個(gè)的高峰,維持在一個(gè)較高水平,商店可以適當(dāng)采購(gòu)此類(lèi)商品,增加其庫(kù)存量,避免出現(xiàn)供不應(yīng)求的現(xiàn)象。Frozen Entree的銷(xiāo)售額不變化不大,維持在一個(gè)較穩(wěn)定的水平,其庫(kù)存量也可維持在正常水平,也可對(duì)其進(jìn)行促銷(xiāo),以增加其銷(xiāo)量。
5 結(jié)論
本文利用Microsoft 時(shí)序算法對(duì)電子商城中大量的歷史銷(xiāo)售數(shù)據(jù)進(jìn)行分析、數(shù)據(jù)挖掘,建立了預(yù)測(cè)模型,得出了電子商城中各個(gè)商店和各類(lèi)商品的銷(xiāo)售量、銷(xiāo)售額、銷(xiāo)售成本的變化趨勢(shì),并對(duì)未來(lái)的銷(xiāo)售情況進(jìn)行了預(yù)測(cè)。通過(guò)對(duì)具體的模型構(gòu)建,實(shí)現(xiàn)了Microsoft時(shí)序算法在電子商城中的應(yīng)用。
參考文獻(xiàn):
[1] 劉金平. 基于Microsoft時(shí)序算法在電力負(fù)荷預(yù)測(cè)中的應(yīng)用[J]. 電腦知識(shí)與技術(shù),2011,7(8):1923-1926.
[2] Microsoft時(shí)序算法[EB/OL]. https://msdn.microsoft.com/zh-cn/library/ms174923.aspx. 2014.
[3] 袁亞麗. 時(shí)序算法在銷(xiāo)售預(yù)測(cè)中的應(yīng)用研究[J].微計(jì)算機(jī)信息,2009,25(15):249-250.
[4]Jose-Norberto Mazón, Juan Trujillo, Jens Lechtenberger. Reconciling requirement-driven data warehouses with data sources via multidimensional normal forms[J]. Data & Knowledge Engineering, 2007, 63(3):725-751.
[5] 岑琴. 數(shù)據(jù)挖掘技術(shù)在飾品設(shè)計(jì)中的應(yīng)用[J]. 商業(yè)現(xiàn)代化,2011(1):75-76.
[6] Mark F.Hornick, Erik Marcadé, Sunil Venkayala. Data Mining Process[J]. Java Data Mining, 2007:51-83
[7] 袁凡,唐國(guó)華. 數(shù)據(jù)挖掘在電子商務(wù)中的應(yīng)用研究[J].江西科學(xué),2015,33(6):920-924.
[8] 迪麗拜爾·艾海提,庫(kù)德來(lái)提·熱西提,EHAT Diliber,等.數(shù)據(jù)挖掘技術(shù)的應(yīng)用[J].電腦編程技巧與維護(hù), 2009(6):66-67.
[9] Salvatore T.March, Alan R.Hevner. Integrated decision support systems: A data warehousing perspective[J]. Decision Support Systems, 2007,43(3):1031-1043.
[10]Jing Zhao, Shan Wang, Wilfred V. Huang. A study of B2B e-market in China: E-commerce process perspective[J]. Information & Management, 2008,45(4): 242-244.