国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

電商企業(yè)商品銷量的預(yù)測方法

2018-12-20 07:20:58王玉霞趙旭東
統(tǒng)計與決策 2018年22期
關(guān)鍵詞:因果關(guān)系銷量預(yù)處理

李 杰,王玉霞,趙旭東

(河北工業(yè)大學(xué) 經(jīng)濟管理學(xué)院,天津 300401)

0 引言

目前,許多銷量預(yù)測研究是用歷史銷量來預(yù)測未來銷量,主要考慮銷量本身歷史數(shù)據(jù)的影響,較少考慮不同因素之間的相互影響。李俊等(2012)[1]將GM(1,1)模型、非線性三次指數(shù)平滑預(yù)測模型和二次回歸預(yù)測模型相結(jié)合組成了組合預(yù)測模型,依據(jù)某企業(yè)前10個月的銷量,預(yù)測后兩個月的銷量。Singh等(2014)[2]將人工神經(jīng)網(wǎng)絡(luò)和模糊時間序列相結(jié)合,確定歷史時間序列的間隔期,將不同間隔期的時間序列分為不同組進行預(yù)測。Li等(2015)[3]建立了動態(tài)自適應(yīng)的BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法來預(yù)測四川省消費產(chǎn)品的總銷售額,提高了預(yù)測的準確度。Chen等(2017)[4]基于徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)提出了一種進化算法,并利用該算法對電腦的銷量進行預(yù)測。盡管也有銷量預(yù)測研究考慮到了產(chǎn)品銷售的影響因素,但在進行銷量預(yù)測之前,并未對影響因素進行篩選,導(dǎo)致許多無關(guān)變量加入銷量預(yù)測模型,降低了模型的準確度。王大溪等(2015)[5]通過問卷調(diào)查方法,找到了可能影響孔塞銷售的主要影響因素,把所有可能的影響因素都帶入了基于混沌果蠅支持向量機回歸的產(chǎn)品銷量預(yù)測模型中,導(dǎo)致模型的預(yù)測精度較低。

為此,本文提出一種基于Granger因果檢驗和XGBoost算法的電商企業(yè)商品銷量預(yù)測方法。首先對Granger因果檢驗和XGBoost算法的基本原理進行了介紹,而后給出了銷量預(yù)測算法的具體實現(xiàn)步驟,最后通過對2014年10月27日至2015年2月27日某電商企業(yè)一種生活用品的銷量及其影響因素歷史數(shù)據(jù)進行建模和預(yù)測,驗證了該方法的有效性。

1 基于Granger因果檢驗與XGBoost算法的銷量預(yù)測模型

1.1 Granger因果檢驗

Granger因果檢驗是用于檢驗兩個變量之間因果關(guān)系的一種常用方法,該方法于1969年由Granger提出,70年代Hendry和Richard等加以發(fā)展。該方法的一個重要概念是Granger原因。存在兩個時間序列 Xt和Yt,若 Xt的滯后項在Yt的預(yù)測中有幫助,即利用Xt比不利用Xt可以更好的預(yù)測Yt,則稱 Xt是Yt的Granger原因。

檢驗Xt是否為Yt的Granger原因,需構(gòu)建不含滯后項X的受約束回歸模型和含有滯后項X的無約束回歸模型,分別如式(1)和式(2)所示:

其中,Xt表示待檢驗的Granger原因(外生變量),Yt表示待檢驗的Granger結(jié)果(內(nèi)生變量),αi和βi分別表示Yt和Xt各階滯后項的系數(shù),α0表示常數(shù)項,εt表示殘差。

對式(1)和式(2)進行估計,構(gòu)建F統(tǒng)計量檢驗的聯(lián)合假設(shè)H0:

如果在選定的顯著性水平α上計算的F值大于臨界Fα值,則拒絕零假設(shè),即 Xt是Yt的Granger原因。

從上述Granger因果關(guān)系檢驗方法分析中可以看出,Granger因果關(guān)系檢驗方法的前提假設(shè)是Xt和Yt都是平穩(wěn)(單整)序列,或者兩序列協(xié)整。因此,本文在進行Granger因果關(guān)系檢驗之前,先對各指標序列進行了ADF檢驗,驗證各序列的平穩(wěn)性。各序列通過平穩(wěn)性驗證之后,再進行Granger因果關(guān)系檢驗。

1.2 XGBoost算法

2015年Chen等提出了XGBoost算法,算法全名eX-treme Gradient Boosting,該算法是在Gradient Boosting Decision Tree(GBDT)基礎(chǔ)上發(fā)展起來的[6]。GBDT的算法流程與一般的Boosting算法類似,是一個迭代的過程,每一次迭代是為了減少上一次的殘差[7]。相比于GBDT算法只利用了一階導(dǎo)數(shù)的信息,XGBoost算法采用二階泰勒公式展開損失函數(shù),求得模型最優(yōu)解的效率更高。

1.2.1 XGBoost算法原理

XGBoost算法是一種boosting算法,它的基分類器為CART決策樹,最后的預(yù)測結(jié)果為K棵決策樹的預(yù)測結(jié)果之和,反映在如式(4)所在的等式中。其中表示數(shù)據(jù)樣本,?(t)代表i樣本在模型t次迭代后的預(yù)測結(jié)果,ft(xi)代表i樣本在第t棵決策樹的預(yù)測值:

利用二階泰勒展開式將式(5)中的損失函數(shù)展開得到式(6)。其中

在第t次迭代后,得到一個不帶有常數(shù)項的簡單目標函數(shù)如式(7)所示:

在第t棵決策樹中,存在一個映射函數(shù)Ij={i| q(xi)=j}能夠把一個樣本映射到某個葉子節(jié)點,所以目標函數(shù)可以從樣本求和轉(zhuǎn)化為葉子求和。通常正則化懲罰函數(shù),T表示樹中包含T個葉子,γ和λ表示正則化懲罰函數(shù)的兩個系數(shù)。因此,可以將式(7)轉(zhuǎn)化為式(8)的形式,式中 ft(xi)=wj。

在創(chuàng)建決策樹時,一棵樹的obj的值越小,該樹的結(jié)構(gòu)越好。也就是說,一個葉子節(jié)點分裂后的信息增益Gain越大,該樹結(jié)構(gòu)越好。Gain的計算如式(11)所示:

1.2.2 XGBoost算法流程

XGBoost算法流程如下:

(1)對所有特征的特征值分別進行排序,依次掃描所有樣本,根據(jù)式(11)計算每個分裂點的信息增益。

(2)選擇信息增益最大的分裂點進行分裂。

(3)當(dāng)達到預(yù)先設(shè)定樹的最大深度時停止分裂,轉(zhuǎn)到步驟(4);否則,轉(zhuǎn)到步驟(1)。

(4)按照自底向上的順序進行剪枝,如果某個節(jié)點之后存在負的信息增益,則除去這個分裂。

(5)當(dāng)達到預(yù)先設(shè)定的迭代次數(shù)t時停止,否則,轉(zhuǎn)到步驟(1)。

1.3 銷量預(yù)測算法的實現(xiàn)步驟

在上述分析的基礎(chǔ)上,給出銷量預(yù)測算法的具體實現(xiàn)步驟:

(1)商品銷量初始影響因素的選擇。通過調(diào)查和訪談發(fā)現(xiàn)電商企業(yè)產(chǎn)品銷量的可能影響因素包括:商品的瀏覽次數(shù)、流量、被加購次數(shù)、加購人次、收藏夾人次、拍下筆數(shù)、拍下金額、拍下件數(shù)、成交金額、成交筆數(shù)、成交件數(shù)、成交人次等24個影響因素。設(shè)n=24表示影響因素的個數(shù),則初始影響因素集可表示為:

(2)剔除與商品銷量無關(guān)的影響因素。對各影響因素和銷量序列分別做Granger因果關(guān)系檢驗,刪除無關(guān)影響因素,形成新的影響因素集:

(3)數(shù)據(jù)的預(yù)處理。剔除與商品銷量無關(guān)的影響因素數(shù)據(jù)后,對數(shù)據(jù)進行預(yù)處理。在原始數(shù)據(jù)中,產(chǎn)品的銷量及各影響因素的數(shù)值均按天給出。對實驗數(shù)據(jù)分析中發(fā)現(xiàn),各影響因素距離預(yù)測時間越近對預(yù)測結(jié)果的準確性影響越大。本文以周為單位,采用滑窗采樣的方法,統(tǒng)計該窗口前1天、2天、3天、5天和7天各種影響因素數(shù)據(jù)的總值和均值,將得到的值作為新的特征加入到數(shù)據(jù)集。同時,考慮到產(chǎn)品銷量具有時序性的特點,統(tǒng)計該窗口前1天、2天、3天、5天和7天產(chǎn)品銷量的總值和均值以及該窗口前7天日銷量中的最大值、最小值和標準差也作為特征加入到數(shù)據(jù)集。

(4)設(shè)置合適的XGBoost算法參數(shù),訓(xùn)練XGBoost模型。分析該模型對于測試集的擬合誤差,并和其他常用的算法模型相比較。

2 電商企業(yè)商品銷量預(yù)測實例

2.1 數(shù)據(jù)來源及說明

選取某電商企業(yè)中生活用品2014年10月27日至2015年12月27日時間段內(nèi)產(chǎn)品日銷量及24個可能影響因素的數(shù)據(jù),如表1所示。由于篇幅所限,表1只展示了部分日期和影響因素的數(shù)據(jù)。需要特別說明的是,本文的銷量特指非聚劃算支付件數(shù)。

表1 生活用品日銷量及可能影響因素數(shù)據(jù)

2.2 Granger因果關(guān)系檢驗

數(shù)據(jù)從2014年10月27日至2015年12月27日共包含427個樣本,從表1商品日銷量的走勢來看,“雙11”和“雙12”的銷量驟增,被認定為異常點,因此分別刪除2014年和2015年“雙11”和“雙12”的4個樣本點,剩余樣本總數(shù)為423個。

本文使用EVIEWS6.0統(tǒng)計軟件,對24個可能影響因素和銷量的時間序列分別做ADF檢驗,以驗證各序列的平穩(wěn)性。在做ADF檢驗的過程中均采用修正的AIC準則判斷滯后期,所得結(jié)果如表2所示。

通過上述ADF檢驗結(jié)果可知,在5%顯著性水平下,24個影響因素和銷量序列均通過了平穩(wěn)性檢驗,可以直接進行Granger因果關(guān)系檢驗。在進行Granger因果關(guān)系檢驗時,通過建立VAR模型找到最優(yōu)滯后階數(shù)。Granger因果關(guān)系檢驗結(jié)果如表3所示。

從Granger因果關(guān)系檢驗結(jié)果可以看出,在5%的顯著性水平下,被加購次數(shù)、加購人次、收藏夾人次、淘寶客引導(dǎo)瀏覽次數(shù)、淘寶客引導(dǎo)瀏覽人次、直通車引導(dǎo)瀏覽次數(shù)、直通車引導(dǎo)瀏覽人次不是銷量的Granger原因,剩下的17個影響因素都是銷量的Granger原因。因此,在進行銷量預(yù)測時,剔除7個無關(guān)影響因素的數(shù)據(jù)。

2.3 數(shù)據(jù)預(yù)處理

在刪除了“雙11”“雙12”和7個無關(guān)影響因素的數(shù)據(jù)之后,以周為單位,利用滑窗采樣的方法對數(shù)據(jù)進行預(yù)處理。以周為單位滑窗采樣,是因為要預(yù)測的是該產(chǎn)品一周中的總銷量。統(tǒng)計該窗口前1天、2天、3天、5天和7天17種影響因素和產(chǎn)品銷量的總值和均值,同時統(tǒng)計該窗口前7天日銷量中的最大值、最小值和標準差,將這些統(tǒng)計數(shù)據(jù)作為銷量預(yù)測的特征變量。將該窗口在這一周的產(chǎn)品銷量總和作為標簽值。經(jīng)過這樣的預(yù)處理后特征變量由最初的17個變?yōu)?83個,樣本數(shù)量由423變?yōu)?0個。在滑窗采樣過程中2015年12月21日至2015年12月27日產(chǎn)品銷量的滑動窗口為1,2015年12月14日至2015年12月20日產(chǎn)品銷量的滑動窗口為2,依此類推,2014年11月3日至2014年11月10日產(chǎn)品銷量的滑動窗口為60。因此,數(shù)據(jù)從2014年10月27日至2015年12月27日的423個日樣本數(shù)量變?yōu)榱?0個周樣本數(shù)量。表4給出了預(yù)處理后部分滑窗和特征變量的數(shù)據(jù)。

表2 日銷量及24個可能影響因素時間序列ADF檢驗結(jié)果

表3 Granger因果關(guān)系檢驗結(jié)果

表4 預(yù)處理后部分滑窗和特征變量的數(shù)據(jù)

表4中Watch指滑窗數(shù),Label指標簽值,Pi指瀏覽次數(shù),sn指銷量(非聚劃算支付件數(shù))。Pi_avg_1指該窗口前1天瀏覽次數(shù)的均值,Pi_sum_1指該窗口前1天瀏覽次數(shù)的總值,Pi_avg_2指該窗口前2天瀏覽次數(shù)的均值,Std_sn指該窗口前7天日銷量的標準差。

2.4 XGBoost算法擬合模型及模型精度檢驗

本文選取2014年10月27日至2015年12月20日的數(shù)據(jù)作為訓(xùn)練集,2015年12月21日至2015年12月27日的數(shù)據(jù)作為測試集,即預(yù)處理后滑窗2~60的數(shù)據(jù)作為訓(xùn)練集,預(yù)處理后滑窗1的數(shù)據(jù)作為測試集。用訓(xùn)練集來擬合XGBoost模型,對2015年12月21日至2015年12月27日產(chǎn)品周銷量進行預(yù)測,并將該模型的預(yù)測結(jié)果和常用GBDT、RF算法模型的預(yù)測結(jié)果進行比較,所得預(yù)測結(jié)果如表5所示。

表5 各算法模型預(yù)測精度比較

從表5的對比結(jié)果可以看出,無論是否進行Granger因果檢驗,XGBoost算法模型預(yù)測的相對誤差都小于GBDT和RF算法。當(dāng)進行Granger因果檢驗剔除無關(guān)影響因素后,各算法的相對誤差都有所下降。在進行Granger因果檢驗,并用XGBoost算法模型擬合后,該預(yù)測的相對誤差最小為2.5%,充分說明了該銷量預(yù)測方法的有效性。

3 結(jié)論

本文對電商企業(yè)商品銷量預(yù)測問題進行了研究,在綜合分析了產(chǎn)品銷量時序特征和外部影響因素的基礎(chǔ)上,提出了基于Granger因果檢驗與XGBoost算法的電商企業(yè)商品銷量預(yù)測方法。該方法通過Granger因果分析剔除了無關(guān)的銷量影響因素,在數(shù)據(jù)預(yù)處理中充分考慮了影響因素距離預(yù)測時間越近對預(yù)測結(jié)果準確性影響越大的特點,并將產(chǎn)品銷量的時序特征也考慮在內(nèi)。在數(shù)據(jù)預(yù)處理完成之后,用XGBoost模型進行擬合。該銷售預(yù)測方法的應(yīng)用表明,所提方法能夠較好的解決電商企業(yè)商品銷量預(yù)測的問題。同時,也可以考慮將該種銷量預(yù)測方法推廣到實體企業(yè)商品銷量預(yù)測中去。

猜你喜歡
因果關(guān)系銷量預(yù)處理
同比增長130%!劍指3萬噸銷量,豐華黃顙料迎來大爆發(fā)
玩忽職守型瀆職罪中嚴重不負責(zé)任與重大損害后果的因果關(guān)系
盤點2018年車企銷量
汽車觀察(2019年2期)2019-03-15 06:00:12
做完形填空題,需考慮的邏輯關(guān)系
基于預(yù)處理MUSIC算法的分布式陣列DOA估計
幫助犯因果關(guān)系芻議
淺談PLC在預(yù)處理生產(chǎn)線自動化改造中的應(yīng)用
上汽通用172萬銷量下的陰影
家用汽車(2016年4期)2016-02-28 02:23:37
絡(luò)合萃取法預(yù)處理H酸廢水
基于自適應(yīng)預(yù)處理的改進CPF-GMRES算法
沅陵县| 商城县| 永丰县| 宜章县| 崇州市| 南岸区| 荆门市| 城市| 儋州市| 资中县| 邮箱| 荆州市| 都兰县| 渑池县| 鹤庆县| 南投市| 石城县| 张掖市| 兰溪市| 诏安县| 太康县| 河源市| 石城县| 梁平县| 武冈市| 正安县| 炎陵县| 大洼县| 柞水县| 海安县| 濉溪县| 永平县| 义马市| 巧家县| 佛教| 黄浦区| 永兴县| 石景山区| 平安县| 云梦县| 平邑县|