鄭 琰,黃 興,肖玉杰
(1.南京林業大學 汽車與交通工程學院, 南京 210037;2.南京財經大學 營銷與物流管理學院, 南京 210046)
隨著電子商務、互聯網技術、大數據技術以及各種移動設備的快速發展,客戶在網絡購物中產生或保存的數據更容易獲取,從而使得全樣本數據的搜集成為了可能。通過對這些數據進行分析,電子商務企業可以發現客戶群體對不同商品的偏好程度,預測各商品在不同時間段的需求量以及庫存備貨量等。企業根據預測結果可為生產、經營、管理提供決策支持,為庫存管理提供依據,從而為企業節省庫存成本,同時提高了客戶購物滿意度。
目前,商品需求預測方法主要有定性預測與定量預測兩種。定性預測易受主觀因素影響,不適合對大量商品進行預測,且預測精度也會隨著預測者對商品銷售的熟悉程度而大幅變化。定量預測的方法有簡單移動平均法、加權移動平均法等。簡單移動平均法與加權移動平均法都只適用于需求量一直處于比較平穩且不存在季節變化趨勢的商品,而且對于加權平均法,權重的賦予仍然具有很大主觀性。
自回歸滑動平均模型(auto-regressive and moving average model,簡稱ARMA模型),近年來被國內外學者運用于各個領域,取得了豐碩的研究成果。劉璐[1]利用我國1986—2016年人均GDP的數據,通過構建ARMA模型,對未來3年的GDP做出了預測。Marcia等[2]運用基于ARMA模型的數據驅動技術對航空工具進行故障預測,減少了以固定時間間隔進行維護所帶來的資源浪費。Ervural等[3]運用基于遺傳算法的ARMA模型對未來土耳其伊斯坦布爾城市的天然氣消耗量進行了有效預測,為土耳其天然氣進口的決策提供了合理的依據。Mirzavand等[4]證明了聚類分析與ARMA結合并用于預測地下水位的方法具有一定的預測優勢。Fernando[5]提出了一種結合三角分布假設和相關性分析的ARMA模型,并運用于解決隨機需求的隨機庫存問題,可以用來預測沒有歷史需求數據的新產品,并以智利醫院為例對其新藥品的采購和庫存管理提供了有價值的依據。可見,ARMA預測模型能夠適應多種研究領域,且取得很好的預測結果。本文基于時間序列的ARMA模型,結合了多種群遺傳算法對基礎模型的定階方法做出了改進,并針對阿里巴巴電商企業的部分商品進行需求預測。
ARMA模型是一種以自回歸模型(AR模型)與滑動平均模型(MA模型)為基礎的時間序列模型。根據Hamilton Smith[6]理論,運用ARMA模型進行預測,首先需要對序列進行平穩性的統計檢驗,通過時間序列自相關、偏相關函數,確定多組模型參數。然后確定一組最優模型參數,常用的方法是利用貝葉斯信息化準則(簡稱BIC)檢驗。最后,對序列進行白噪聲檢驗,如果該序列通過檢驗則進行預測計算;否則,需要對模型的各參數值進行重新確定。具體預測流程如圖1所示。

圖1 預測方法流程
ARMA模型適用于平穩的時間序列,但在實際研究中絕大多數序列是不平穩的,因此就需要對原序列進行d階差分處理,處理后得到一組平穩序列。而這種適用于不平穩序列的模型稱為ARIMA模型。
對于任意一個序列Yt,通過做出時序圖以及自相關圖可以粗略判斷序列平穩性。平穩序列的時序圖表現為一種圍繞著某個值上下波動,自相關圖表現為自相關函數迅速下降至零,并且在零附近收斂。不平穩序列的時序圖表現為在不同時間段內圍繞不同的值上下波動,自相關圖表現為自相關函數未迅速下降至零,也沒有在零附近收斂。
平穩序列的一個顯著特征就是自相關函數值會隨著時間間隔k的增大迅速減小到零,并且在零附近收斂,針對這一特征使用QLB統計量進行檢驗,檢驗統計量如下:
式中p為滯后階數,如果各滯后階數p的QLB統計量都沒有超過顯著性水平為5%決定的臨界值,則序列不存在p階自相關,序列各階自相關系數與偏相關系數都趨于零,該序列平穩。如果只要存在1個滯后階數p的QLB統計量超過了顯著性水平為5%決定的臨界值,則序列存在p階自相關,該序列非平穩。
若序列Yt存在顯著線性趨勢,則采用1階差分消除不平穩;如果序列Yt存在二次多項式趨勢,則采用2階差分消除不平穩;以此類推,如果序列Yt存在d次多項式趨勢,則采用d階差分消除不平穩。
若Yt是一個含有指數趨勢的非平穩序列,可以通過對序列取對數,先將指數趨勢轉化為線性趨勢,再進行差分處理。
若Yt是一個有明顯周期變化的季節性不平穩序列,將該類序列某一時刻的數據與下一周期相對應的數據相減,可以消除周期性變化。
3.1.1模型識別
計算序列經過平穩處理后的自相關系數ρk和偏相關系數φkk,繪出自相關圖與偏相關圖,識別模型類別,識別依據參考文獻[7],如表1所示。

表1 模型識別
如果不能通過自相關與偏相關圖做出判斷,則需要進行定量計算,計算依據如下:
1)序列自相關函數(偏相關函數)在最初滯后q(p)階的系數明顯大于兩倍標準差,其后超過95%的序列自相關(偏相關)系數都在2倍標準差的范圍內,則視為自相關(偏相關)系數截尾。
2)存在超過5%的序列自相關(偏相關)系數超過2倍標準差的范圍,則判斷自相關(偏相關)系數拖尾。
3.1.2模型定階
通過模型識別,已經確定了模型的p、q值,但大多情況下,p與q的值并不唯一,就需要借助BIC準則確定適應模型的唯一一組參數。BIC準則中文全稱是貝葉斯信息化準則,該準則就是在信息不完全的情況下,對未知的參數先用主觀概率進行估計的得到的結果成為先驗概率,后用樣本數據與貝葉斯公式對主觀概率進行修正得到后驗概率,最后再利用期望與后驗概率做出最優的決策[8]。
多種群遺傳算法(MPGA)是一種進化算法,它借鑒了生物界中“物競天擇,適者生存”的自然法則,算法擁有高度隨機、并行、自適應的全局優化搜索能力,且彌補了標準遺傳算法(SGA)早熟收斂的不足。將其應用在ARMA模型的p、q定階計算中,能夠避免傳統方法的試探搜索與窮舉搜索兩種極端現象,提高了模型定階的準確性,與標準遺傳算法相比,運行速度也會有所提高。
建模步驟如下:
1)確定p、q取值范圍,對其進行二進制編碼,并在取值范圍內創建隨機初始種群。
2)確定適應度函數。
3)在實際應用中,使用時間序列前一半數據進行建模,使用后一半數據對模型進行驗證。若預測值與實際值的差值越小,則模型越理想。通常采用預測值與實際值的平均相對變動值(Average relative variance:VAR)進行衡量。其表達式如下:

當VAR越小,表明預測效果越好。由此構造適應度函數:F=1/VAR。當F的值越大,表明預測效果越好,最后計算各初始種群個體的適應度值。
4)在[0.7,0.9]區間內隨機產生交叉概率(Pc),在[0.001,0.05]區間內隨機產生變異概率(Pm)。一組Pc、Pm值分別決定了算法全局搜索能力和局部搜索能力,即決定了一個種群的最優值。將隨機產生的Pc、Pm作用于不同的種群,即可得到各個種群的最優值。
5)通過移民算子將各種群關聯起來,保證了多種群的協同進化,并得到種群收斂的最優依據。
6)通過人工算子存儲各種群中的最優個體,保證其在計算的過程中不丟失。
7)記錄精華種群及其編碼,最終通過在精華種群中尋找最優個體,并進行解碼找到適合模型的最優p、q值。
得到模型相關參數后,通過判斷模型殘差序列是否為白噪聲序列來進行假設檢驗。若QLB統計量的pvalue值大于0.05,則認定殘差序列為白噪聲序列,模型可進行預測求解。
依據本文提出的預測模型和方法,使用Matlab軟件,將阿里云天池大數據眾智平臺的數據集作為樣本來預測某電商企業未來一周內的商品需求量。
本文使用該數據集中商品ID、成交件數、交易發生時間這3個特征,隨機選取ID = 72836的商品作為實例,為驗證模型的精確度,以2015年3月20日—2015 年12 月20日的成交件數作為訓練集進行建模,以2015年12月21日—2015年12月27日的成交件數作為測試集進行模型驗證。
由圖2 可以看出,商品原始序列Y1的時序圖存在異常值,這是由于電商企業在特殊時期舉行大型促銷活動而導致商品需求數量激增,而本文旨在預測電商企業在一般情況下的商品需求量,因此在數據處理階段需要剔除這些異常值。在剔除異常值后,本文采用插值法對缺失值進行補充,從而得到一組新的時間序列Y2,如圖3所示。

圖2 原始時間序列Y1

圖3 時間序列 Y2
根據圖4所示的Y2自相關圖,判斷Y2的平穩性,由圖4可看出該序列的自相關函數沒有迅速趨于零,也沒有在零處收斂,大致判斷出該序列為非平穩的。通過定量計算,滯后最大階數的QLB=871.246大于顯著性水平為5%決定的臨界值313.608 1。

圖4 Y2的自相關圖
通過差分法,對序列Y2進行平穩化處理,差分后得到序列Y3如圖5所示,可以看出該序列在零值附近波動,大致判斷差分后的時間序列為平穩序列。

圖5 時間序列Y3
由圖6所示的序列Y3自相關圖可知自相關函數迅速趨于零,并且在零處收斂,大致判斷該序列為平穩序列。通過定量計算,滯后最大階數的QLB=231.732 2小于顯著性水平為5%決定的臨界值312.537 7。因此,可以判斷序列Y3為平穩序列。
由圖7所示的序列Y3偏相關圖對模型進行識別,通過定量計算,并結合Y3的相關函數,存在超過5%的自相關與偏相關系數超過2倍標準差的范圍,由此判斷自相關與偏相關系數均拖尾,由于序列Y3是由序列Y2經過一次差分處理得到的,所以差分次數d=1,根據圖1所示的流程圖,選擇ARIMA模型進行預測。

圖6 Y3的自相關圖

圖7 Y3的偏相關圖
通過計算對模型進行定階,在滯后15階的范圍內,自相關系數滯后1、2、10、12階級時,對應的自相關值超過了兩倍標準差的范圍,偏相關系數滯后1、2、3階時,對應的偏相關值超過了兩倍標準差的范圍,確定模型p、q組合以及每種組合對應的BIC值如表2所示。

表2 模型p、q值及BIC值
選擇BIC值最小的p,q組合(2,1,1)為ARIMA模型的參數。對序列的殘差值進行白噪聲檢驗,得到 pvalue(=0.536 754)>0.5,判斷該序列的殘差值為白噪聲序列,模型適合預測。對上文所確定的模型及參數,進行求解,得到2015年12月20日—2015年12月27日這7天的預測值為32.202 99,由測試集得到7天的實際需求量為46。
通過迭代運算得到當p=1,q=8,VAR=3.105 116,適應度函數值F最大為0.322 05,將(1,1,8)作為ARIMA模型的參數。
對序列的殘差值進行白噪聲檢驗,得到pvalue(=0.536 754)>0.5,判斷該序列的殘差值為白噪聲序列,模型適合預測。對上文所確定的模型及參數,進行求解得到2015年12月20日—2015年12月27日這7天的預測值為36.989,由測試集得7天的實際需求量為46。
為驗證本文模型預測的準確性,對10種商品未來7天的需求量進行預測,商品ID、真實值與使用ARMA_BIC、ARMA_MPGA兩種方法所得結果以及相對誤差RE值如表3所示。

表3 3種模型預測結果對比分析
使用ARMA_BIC模型與ARMA_MPGA模型對上述11種商品預測值的均方根誤差(RMSE)、平均相對誤差(MAPE)進行對比,得到的對比結果如表4所示。
表4 對比結果

預測方法RMSEMAPEARMA_BIC26.161 00.242 532 394ARMA_MPGA16.870 10.128 225 186
由表4可以看出本文提出的ARMA_MPGA模型所對應的RMSE值與MAPE值小于常用的ARMA_BIC模型,表明本文模型的預測準確性較高。
本文基于時間序列ARMA_MPGA 模型對電商企業在一定時間內的商品需求量進行預測,通過對阿里巴巴公司某種商品進行需求預測分析,本文模型的特性適應了商品需求變化的復雜性,能夠取得較滿意的預測結果。通過計算預測精度和ARMA_BIC模型的預測精度進行對比分析,結果顯示本文提出的方法具有較高精度。說明本文所出的模型能夠為電商企業的庫存管理提供決策依據。未來的研究方向在于應用ARMA模型的同時,如何結合其他模型對數據規模較少的促銷日商品需求量進行預測,并且也能夠達到一定的精確度。