鄭李園 吳鑫 李君 茅智慧 陳煒偉
1.浙江萬里學院信息與智能工程學院;2.寧波市海曙區(qū)教育局教研室
精確的商品需求預測可以有效減少缺貨和降低庫存積壓,幫助企業(yè)制定合理的訂貨策略和庫存決策。本文將深度學習模型時間卷積網絡TCN 引入到電商商品需求預測中,并與長短期記憶神經網絡LSTM 以及機器學習模型隨機森林、CBRT、XGBoost 進行對比實驗,驗證了TCN 模型的預測精度最高,有助于TCN 模型在商品需求預測中的推廣應用。
電商發(fā)展迅速,同時面臨了諸多挑戰(zhàn),如何有效降低庫存成本成為決策者的一大難題。如何利用數(shù)據挖掘技術實現(xiàn)精確的商品需求預測,成為電商平臺降低庫存成本,提高自身競爭力的有效手段。
但由于電商商品類目繁多,種類龐大,每類商品的需求影響因素不同,而且受季節(jié)、節(jié)假日、促銷活動等影響,使得精確預測電商商品需求量面臨著巨大挑戰(zhàn)。通過挖掘消費者行為數(shù)據,可以有效替代商品自身因素、季節(jié)以及節(jié)假日等因素對需求量的影響。學者們利用不同方法對商品需求量進行預測,Demiriz[1]利用線性回歸模型對服裝零售商品每周需求量進行預測研究。Zhang Y[2]針對水產養(yǎng)殖產量和出口規(guī)模預測中存在的問題,提出了一套優(yōu)化后的BP 神經網絡算法的產量預測模型,取得了不錯的預測效果。李長春[3]對阿里平臺的交易數(shù)據進行挖掘,用多元回歸、隨機森林、神經網絡模型預測未來兩周商品的需求量,實驗結果表明隨機森林在各項指標都顯示出明顯優(yōu)勢。深度學習做預測已在其他領域得到廣泛應用[4-8]。近年來,有不少學者將深度學習應用到商品需求預測中。Taghizadeh E[9]針對沃爾瑪歷史銷售數(shù)據,采用人工神經網絡(ANN)模型對極端天氣敏感的零售商品未來需求量做預測,研究表明在加入了天氣這一影響因素后,ANN 比決策樹效果更好。包吉祥等人[10]基于LSTM 神經網絡對某企業(yè)紙質類商品需求做預測,實驗取得了較好的精度。王淵明[11]將長短期記憶神經網絡(LSTM)優(yōu)化為具有自適應訓練能力的神經網絡,對某知名電商食品零售商12 種SKU 的月銷量做預測,實驗結果表明與手工調整參數(shù)相比,該方法更有效。
本文對大量買家與賣家的交易數(shù)據以及消費者行為數(shù)據進行分析,將深度學習模型時間卷積網絡TCN 引入到電商商品需求預測中,并與長短期記憶神經網絡LSTM 以及機器學習模型隨機森林、CBRT、XGBoost進行對比實驗,以驗證不同模型對電商商品需求量預測的準確率。這將對庫存管理者以及供應鏈管理者提供有效的數(shù)據依托,對管理者做合理決策有重要意義。
1.1.1 隨機森林
隨機森林(Random Forests,RF)采用集成學習方法,即將若干個弱學習器結合起來,形成一個強學習器。集成學習分為Bagging 模型和Boosting 模型。RF 是Bagging模型的代表,Bagging 模型是將同類別,彼此之間無強關聯(lián)的弱學習器,以均等投票機制進行組合而成的強學習器。
1.1.2 GBRT
梯度提升回歸樹(Gradient Boosting Regression Tree,GBRT),屬于梯度提升樹(Gradient Boosting Tree,GBT)。梯度提升樹是利用損失函數(shù)Loss 的負梯度在當前模型的值作為殘差的近似值,即對損失函數(shù)Loss 進行一階泰勒展開。GBT 是Boosting 模型,相比RF 其可以采用更少的子樹來獲取更優(yōu)的精度。
1.1.3 XGBoost
XGBoost 是GBT 的改進算法,GBT 的目標函數(shù)是損失函數(shù),XGBoost 在GBT 的目標函數(shù)基礎上加上正則項,來防止過擬合。GBT 對損失函數(shù)進行一階泰勒展開,XGBoost 是對其損失函數(shù)進行二階泰勒展開。XGBoost在訓練之前預先對數(shù)據進行排序,并保存為模塊結構,迭代過程利用此結構,以減小計算量,此模塊結構使并行成為了可能,在進行節(jié)點分裂時,需要計算每個特征的增益,最終選增益最大的特征進行分裂,各特征的增益計算可多線程進行。
1.2.1 LSTM 神經網絡
長短期記憶神經網絡(Long-Short Term Memory,LSTM)內部主要有遺忘門、輸入門和輸出門3 個“門”結構。遺忘門會根據當前的輸入xt、上一刻的輸出ht-1和門的偏置項b共同決定哪一部分數(shù)據記憶需要被遺忘;一般用表示當前時刻第i個LSTM 單元的遺忘門的輸出值,由Sigmoid 單元將權重設置為0 和1 之間的值,計算方式如式(1)所示,其中U f和W f分別為輸入權重和循環(huán)權重。
1.2.2 TCN 神經網絡
時間卷積網絡(Temporal Convolutional Network,TCN)是卷積神經網絡CNN 的變體,它非常適合于建立時間模型,并且結合了CNN 和RNN 的框架優(yōu)勢[12]。TCN 的主要組成部分是擴張卷積和因果卷積,其中擴張卷積是為了改善在處理順序任務時多個卷積層堆疊在一起使得建模困難的現(xiàn)象[13]。如示(2)所示為擴張卷積計算公式。其中f為過濾器大小,t-di表示過去某一時刻的方向。
擴展卷積相當于在每個相鄰濾波器之間引入一個額定步長。當展開因子設置為1時,展開卷積可視為正則卷積。為了獲得更大的感受野大小,TCN 卷積層的擴展因子呈指數(shù)增加。當TCN 卷積層的擴展因子為 2(K?1)且步數(shù)為1時,網絡的感受野大小可用公式(3)計算[14]。其中K是卷積層數(shù)。
網絡使用標準化的Sigmoid 函數(shù)和空間損失層來處理數(shù)據[15]。本文采用Sigmoid 函數(shù)作為激活函數(shù)。計算方式如(4)所示。
本文選擇TCN 的原因是TCN 與具有相同容量的循環(huán)網絡結構相比有更長的內存,并且具有平行度、靈活的接收場大小、穩(wěn)定的梯度、訓練所需的低內存和可變長度的輸入等優(yōu)點,在大量任務中其性能都優(yōu)于LSTM[16]。
實驗操作環(huán)境是Windows10 系統(tǒng),Intel(R)core(TM)i5-6200U CPU @2.30GHz 2.40GHz 處理器,內存(RAM)為8.00GB。實驗平臺是Anaconda3、Python3.7 版本,數(shù)據分析和處理采用Numpy 庫和Panadas 庫。實驗模型用到的框架為TensorFlow 和Keras 框架。
本文的數(shù)據來源于M 電商平臺,其運營模式為B2C模式,2014 年10 月10 日-2015 年12 月27日,共210548條樣本數(shù)據,數(shù)據中包含了商品自身屬性、市場表現(xiàn)、價格等方面特征。
首先本文針對收集來的“臟數(shù)據”進行數(shù)據清洗,主要是對異常值清洗和缺失值的查找。然后對原有數(shù)據中商品銷量,加購次數(shù)、收藏、瀏覽次數(shù)等相關數(shù)據的整體情況進行可視化分析。如圖1 所示為平臺上商品成交件數(shù)相關數(shù)據,如圖2 所示為平臺上商品的瀏覽次數(shù)部分相關數(shù)據。
圖1 平臺商品成交件數(shù)Fig.1 Number of transactions of platform commodities
圖2 平臺商品被瀏覽次數(shù)Fig.2 Number of views of platform products
從圖1、圖2 可以看出商品的需求量與瀏覽次數(shù)成正相關。說明原始特征對銷量的影響是存在的,但是原始特征之間是否存在內在聯(lián)系以及特征之間具體是如何影響商品需求的,這就需要進一步構建衍生特征并通過模型來對特征進行學習,發(fā)現(xiàn)特征與需求之間的深層聯(lián)系。
本文根據原始數(shù)據構造相關衍生特征,衍生特征構造情況如表1 所示。
表1 衍生特征群Tab.1 Derived feature group
2.5.1 評估指標
本文選取回歸模型常用的評估指標均方根誤差(Root Mean Square Error,RMSE)和擬合優(yōu)度(R2得分)作為商品需求預測模型的評估指標。RMSE 是預測誤差平方和與觀測次數(shù)比值的平方根,用來平衡預測值與真實值的偏差,其計算公式如式(5)所示,其中,n 代表樣本的數(shù)量,yt代表樣本t的真實值,是模型對yt的預測值,RMSE越小模型效果越好。R2得分表示目標向量的變化中有多少能通過模型進行解釋,R2越接近1,代表模型性能越好,其計算公式如式(6)所示。其中,n 代表樣本的數(shù)量,yt代表樣本t的真實值,是模型對yt的預測值,表示目標向量的平均值。
2.5.2 實驗結果對比分析
將處理好的數(shù)據輸入到構建好的深度學習模型TCN、LSTM 中和機器學習模型RF、GBRT、XGBoost中對M 平臺電商商品需求量進行預測,模型預測結果的R2值如表2 所示,RMSE 值如表3 所示。
表2 模型預測結果的R2值Tab.2 R2 value of model prediction result
表3 模型預測結果的RMSE值Tab.3 RMSE value of model prediction result
表2中,部分商品的R2值效果較差,查看商品信息后發(fā)現(xiàn)此類商品均為新上架商品,商品熱度低,周銷量為個位數(shù),而深度學習模型適用于數(shù)據量多、數(shù)值相對較大的數(shù)據集,所以模型對商品熱度低的商品預測效果相對較差。隨著周銷量數(shù)值的增大,模型R2的值越趨向于1,模型效果越好。并且從5 種模型的R2值可以看出TCN 模型預測值與真實值的擬合效果最好,GBRT 模型效果相對較差。
表3 加粗字體對比了5 種模型的最優(yōu)RMSE 和最差RMSE,發(fā)現(xiàn)TCN 模型的穩(wěn)定性更好,其次是LSTM模型;從5 種模型的RMSE 均值可以發(fā)現(xiàn)精度最優(yōu)的仍然是TCN 模型,TCN 模型對電商商品需求的預測效果優(yōu)于LSTM 模型,這是因為TCN 擁有一維卷積核可以大規(guī)模并行處理數(shù)據,而LSTM 是按順序處理數(shù)據,模型效率高;TCN 擁 有穩(wěn)定的梯度,與LSTM 不同,TCN 不存在梯度消失和梯度爆炸的問題。機器學習算法對電商商品需求預測的模型效果稍微遜色于深度學習算法,表3 中顯示在機器學習算法中RF 模型的穩(wěn)定性相對較弱,GBRT 模型的穩(wěn)定性效果最優(yōu),XGBoost 模型精度最優(yōu)。
為了精確預測多種電商商品的需求量,將深度學習模型時間卷積網絡TCN 引入到電商商品需求預測中,并與長短期記憶神經網絡LSTM 以及機器學習模型隨機森林、CBRT、XGBoost 進行對比實驗,發(fā)現(xiàn)TCN 網絡的預測精度及穩(wěn)定性都優(yōu)于LSTM 網絡以及上述機器學習模型。驗證了TCN 模型的預測精度最高,穩(wěn)定性更強,有助于TCN 模型在商品需求預測中的推廣應用。
引用
[1] Demiriz Ayhan.Demand Forecasting based on Pairwise Item Associations[J].Complex Adaptive Systems,2014(36):261-268.
[2] ZHANG Y Z.Application of Improved BP Neural Network Based on E-commerce Supply Chain Network Data in the Forecast of Aquatic Product Export Volume[J].Cognitive Systems Research,2019,57(OCT.):228-235.
[3] 李長春.大數(shù)據背景下的商品需求預測與分倉規(guī)劃[J].數(shù)學的實踐與認識,2017,47(7):70-79.
[4] 楊茂,朱亮.基于FA-PCA-LSTM的光伏發(fā)電短期功率預測[J].昆明理工大學學報(自然科學版),2019,44(1):61-68.
[5] 馬天男,王超,彭麗霖,等.計及需求響應和深度結構多任務學習的電力系統(tǒng)短期負荷預測[J].電測與儀表,2019,56(16):50-60.
[6] 方志強,王曉輝,夏通.基于長短期記憶網絡的售電量預測模型研究[J].電力工程技術,2018,37(3):78-83.
[7] 常子漢.基于小波變換與Adam優(yōu)化的LSTM電價預測研究[D].蘭州:蘭州大學,2019.
[8] 李月龍,唐德華,姜桂圓,等.基于維度加權的殘差LSTM短期交通流量預測[J].計算機工程,2019,45(6):1-5.
[9] TAGHIZADEH E.Utilizing Artificial Neural Networks to Predict Demand for Weather-sensitive Products at Retail Stores[C]//International annual conference of the American Society for Engineering Management,2017:718-727.
[10] 包吉祥,李林,趙夢鴿.基于考慮滯后性LSTM模型的電商需求預測[J/OL].計算機工程與應用:1-13[2022-03-17].
[11] 王淵明.基于LSTM神經網絡的電商需求預測的研究[D].濟南:山東大學,2018.
[12] PWA B,JS B,XC B,et al.Data-driven Reduced Order Model with Temporal Convolutional Neural Network[J].Computer Methods in Applied Mechanics and Engineering,2020,360:1-13.
[13] LENG X B,PIAO S C,WANG S,et al.An Improved Method for Odometry Estimation Based on EKF and Temporal Convolutional Network[J].Physical Communication,2020,43:1-7.
[14] PAUL W,MATTHIAS W,RALPH E.Using a Deep Temporal Convolutional Network as a Building Energy Surrogate Model That Spans Multiple Climate Zones-ScienceDirect[J].Applied Energy,2020,278:1-16.
[15] MATTHEWDAVIES E P,BOCK S.Temporal Convolutional Networks for Musical Audio Beat Tracking[C]//2019 27th European Signal Processing Conference(EUSIPCO),2019.
[16] 李燕飛,王子琪,余澄慶.基于時間強化學習卷積網絡的多數(shù)據驅動風電預測新模型(英文)[J/OL].Journal of Central South University:1-17[2021-06-01].