王志剛,馮云超,江勇
(湖南師范大學信息科學與工程學院,長沙410081)
連鎖超市零售業是一個競爭非常激烈的市場,庫存控制能力是公司盈利的關鍵。因此,準確的銷售預測是取得成功的基礎。否則可能會出現缺貨或庫存過剩等情況,直接影響公司的盈利[1]。這種影響并不局限于盈利性業績,服務客戶的質量也會受到低效預測系統的影響。例如,缺貨將導致客戶去其他零售商購物。此外,連鎖超市行業的供應鏈很長,涉及大量參與者(如原材料供應商、制造商、分銷商和零售商),這導致在對產品的需求水平有一個準確的了解之前就下了訂單。
盡管有相關性,但銷售預測是一個復雜的過程,因為產品的銷售高度依賴消費者的個人品味,而消費者的品味差異很大[2]。商品也是由大量不同尺寸的不同產品組成,對應許多不同的庫存單位(SKUs)。此外,天氣條件、節假日、市場活動、促銷和當前的經濟環境等外部因素也會對銷售產生直接影響[3]。
本案例研究旨在通過以下方式改善銷售預測問題:
(1)考慮新產品銷量和因素的大量變化,可以對未來的銷售產生很大的影響。而過往研究的模型通常只包含影響銷售的有限因素;
(2)評估深度神經網絡(DNN)的性能,以在連鎖超市銷售預測上下文中執行預測。雖然深度學習的應用還處于起步階段,但值得進一步探索。另外將DNN模型與淺層數據挖掘回歸技術的性能進行比較,以便了解使用更先進的方法是否可以顯著提高模型精度,或者更簡單的方法是否可以獲得類似的結果;
(3)將領域專家的意見和產品的特性結合起來,作為預測變量的一部分。
為了探討連鎖超市零售額預測的問題,研究人員開發了幾種分析模型。在統計技術中,最常用的是基于時間序列的預測方法,如ARIMA、SARIMA、指數平滑、回歸等。
盡管統計方法很受歡迎,但仍存在一些局限性,例如需要將定性數據轉換為定量數據、需要匯總信息或時間序列數據,而這在連鎖超市行業通常是不可用的,因為其庫存單位經常被更換,銷售模式可能不規則[4]。模糊系統或數據挖掘模型已經優于統計方法。這些方法能夠處理大型數據集,并且可以處理數值和標稱數據[5]。可以模擬銷售和歷史商品變量之間復雜的非線性關系,再將這些關系推廣到未來商品的銷售預測中[6]。在各種研究中都有令人滿意的結果,例如文獻[7]將神經網絡與進化計算相結合來支持一個預測系統,其模型的性能優于SARIMA模型,且適用于需求不確定性低、季節性趨勢較弱的短期零售預測。然而,很難在精確的結果和計算時間之間取得良好的折衷。
近年來,深度學習技術受到了廣泛關注。基于其靈活性和顯著優于其他數據挖掘方法的能力[8],該技術已被用于解決不同研究領域的實際問題,如圖像分類、語音識別和生物信息學[9]。深度學習技術在需求預測中的應用也越來越多,諸如交通系統[10]、醫院管理和電力負荷等。然而,深度學習算法在零售業銷售預測中的應用還處于起步階段。
盡管數據分析技術為改進預測做出了不可否認的貢獻,基于其更高的客觀性和推理能力,來自領域專家的意見應得到特別關注。一些研究將專家意見納入預測模型,強調了在預測需要調整的情況下,領域專家起關鍵作用。這些調整可能是源于獲得的額外信息或存在特殊事件[11]。這些研究的一個共同點是,將專家的知識與數據分析工具相結合,而不是僅僅依賴其中一個工具,預測模型的性能會更好。然而,在連鎖超市零售的背景下,還沒有研究將產品特性和領域專家的意見作為預測變量來預測銷售額。
國內對零售采購決策做的研究工作不多,主要集中在供貨渠道、價格和盈利管理方面的研究。文獻[13]構建了一個由平臺商和電商平臺構成的混合銷售渠道決策模型,分析了不同權利結構下制造商入駐的質量條件、入駐前后對雙方的決策影響。文獻[14]研究了一個初入行業的生產型零售商,和一條由上下游競爭零售商組成的成熟型供應鏈,將市場需求不確定性進行量化,將自制和外購策略的定義具體化。探討了在兩種策略下,零售商的生產/訂貨量、供應商的批發價和參與者的期望收益。
關于連鎖超市行業的預測研究一般是按產品類別進行的,對單個庫存單位進行銷售預測的研究也很少。這些研究工作的一個共同特點是考慮很少的變量來預測銷售額(通常不超過4個),并且都沒有考慮領域知識。
本文通過評估DNN在連鎖超市零售行業中進行銷售預測的效率,同時考慮不同性質的特性,如產品的物理特性、價格和代表領域知識的特性。
以一個在各地有近百家分店的連鎖超市公司作為研究案例。盡管這家公司的產品種類繁多,如雨傘、手表、帽子和箱包,但本研究分析的數據與2017年春夏(S17)和2018年春夏(S18)期間三百多種箱包的銷售有關。
數據有每個產品的歷史銷售數據及其物理特性、公司的物流和內部組織方面,還包括領域專家的意見。所有這些因素都被用來了解哪些特性使產品對客戶更有吸引力,從而幫助采購部門更好地確定要訂購的產品數量。
目前,公司訂購的箱包數量依據三個因素:上一季和同一季節同類產品的銷售情況、采購部人員的經驗,以及開發人員和市場部從不同來源收集的未來趨勢信息。表1列出了收集的信息類型,對于每個變量,都指定了名稱、類型、含義以及可以采用的類別總數。

表1 變量及說明
變量分為產品特征(PC)、公司后勤與內部組織(LIO)和領域專家(DE)三個類別。共10個變量描述產品的特性,價格和銷量是數值變量,其他是定性變量。
按規模及其銷售潛力將公司的門店分為四種類型(A、B、C或D),A類是指展示面積大、銷售潛力大的店,將接收為該季節采購的全部產品。而銷售潛力較低的小型門店,可供選擇的產品種類將比較有限,分類為D。門店的這種分類用于定義每個商品的總訂購量。為了推斷這一數量,根據以下方法創建了門店類型的聚集區:D類門店將只提供可以在公司的所有門店展示的商品,而A類可以接收更特殊的產品,因為這些門店已經證明了銷售這些產品的能力。因此,分類為DCBA的產品將在公司所有門店銷售,分類為A的產品僅在A類門店中銷售。預期水平變量與產品的銷售期望水平有關,有四個可能的值:SB、M1、M2和M3,分別對應銷售預期的最高值、正常、平均、較低,這種分類由市場、開發和采購部門定義。因為類別名稱不能傳達每個類別之間的差異,款型變量則可以根據季節趨勢將產品分為四類:時新、基本時新、普通和集中分發;其中時新產品更接近當季潮流;集中分發與普通類似,只是在所采用的分發策略上有所不同。這種分類還與產品在店內銷售的周數有關,時新產品在商店可以銷售4周,基本時新產品在6周內可以買到,普通和集中分發類則可達8周。產品也根據其設計的目標受眾進行區分。例如被歸類為“青少年”的產品是為青少年設計的,而打算銷售給女性的產品則被歸類為“女性”。這種分類是市場部工作人員對年齡或性別的看法,目標受眾會對特定產品表現出更大興趣。
期望水平、門店、款型和區分這四個分類都是由公司的專業人員生成,它們代表了領域知識。這些變量被作為附加值整合到預測模型中。
雖然沒有每個季節新推出產品的歷史銷售數據,但公司擁有以前產品的銷售信息,并完全了解歷史和新產品的特點。因此,可以根據歷史商品的銷售情況和新舊商品的特點,探索兩者的相似性,從而實現對未來商品銷售的預測。為此,提出探索不同的回歸數據挖掘技術來開發新產品銷售預測模型。
在模型的學習過程中,使用了同一季節產品的歷史銷售數據。如圖1所示,在數據預處理步驟之后,根據觀測所屬季節將初始數據集分成兩個子集。有關S17季節的信息是訓練過程的基礎,該過程對應一個由300多個商品組成的數據集,其中有可用的歷史數據。S18季節對應的數據用于對模型進行性能評估,即總共300來個未來商品。必須強調的是,產品不會從一個季節過渡到下一個相應的季節,這意味著兩個不同季節之間的產品沒有重疊。
在S17和S18記錄的庫存單位銷售總量中,大部分產品的銷售記錄在2000至6000件之間,大約相當于構成各自收集的庫存單位總數的80%左右。也可以得出這樣的結論,少數庫存單位的銷量超過了剩余產品的銷量。銷量超過14000件的可以被認為是優秀產品。

圖1 流程示意圖
預測模型的構建有三個相互聯系的重要步驟,即改進模型的學習過程和創建更精確的預測工具。這些步驟是:應用貪婪方法選擇模型中的預測變量,對所涉及的參數進行優化,并對模型進行測試。圖2描述了算法的結構,下面將介紹這些步驟以及在模型開發過程中的鏈接方式。

圖2 算法結構
該過程的目的是首先確定變量和參數的選擇,它們僅使用歷史數據就可以得到更好的模型,然后,在對未來和未知信息進行測試時,評估所獲得的最佳模型的性能。
為此,應用K=10的K-fold交叉驗證將初始訓練數據集劃分為K個折。通過多次重復訓練與驗證過程(與定義的折數相同)來找到最佳的參數和預測器組合。
為了選擇模型中預測變量的最佳組合,采用貪婪特征選擇方法在每個階段進行局部最優選擇。這一過程將因變量分別與每個自變量相關聯,也就是說,開始考慮僅用一個獨立變量獲得的所有可能的組合(總共有10種可能性)。對于每一個組合參數都進行優化,其中包括在驗證數據集上的模型測試過程。對所分析的參數定義值進行暴力網格搜索。每一參數組合的決定系數R是模型評估過程中獲得的10個R值的平均值。每個變量組合的最佳參數組合被選為使R平均值最大化的參數組合。類似地,在所有可能的變量組合中,選擇能使平均R達到最高值的組合。
然后將能夠達到最高平均值R的單個預測值與其余預測值相結合。重復這個過程,直到平均R值沒有改善,這意味著加入一個額外的預測值(不管是哪個預測值)并不能改善模型估計的預測值和觀察到的銷售值之間的R。然后,將預測因子和一組參數組合起來,得到最佳的績效模型,用于構建預測未來銷售的模型。
最終模型的性能評估過程遵循自舉方法,并由以下步驟重復十次組成:通過重新定位原始S17和S18數據集,創建訓練和測試數據集(與原始數據集大小相同),開發預測模型、測試數據集預測值的確定、R的計算以及預測值和測試數據集之間的剩余性能度量值。
由于在預測模型的構建和測試中采用了這種重復采樣過程,模型的魯棒性提高了,并避免了過度擬合。計算均方根和均方根誤差等評價指標來衡量最終預測模型的性能。模型性能指標的最終值被確定為十次迭代的平均值。
此外,為了比較深度學習技術與淺層技術的性能,還采用了線性回歸方法。所采用的一些數據挖掘技術需要定義一組可以調整的參數,以便確定每個參數的值,從而提高預測模型的效率。
總的來說,結果表明模型可以作為有效的工具來預測銷售,并幫助定義連鎖超市行業的訂貨和營銷策略,但管理者必須充分意識到與使用這些模型相關的一些特殊之處。
另外,管理者需要了解與可用的不同類型模型相關的復雜性,以及所需的不同資源。例如,DNN可以在大型和小型數據集上成功運行,但在實踐中,由于需要復雜的訓練過程,這種技術可能難以實現。在許多情況下,更簡單的技術如RF也能取得良好的結果,也是最具成本效益的方法。
基于專家在確定潛在銷售方面所起的重要作用,管理者必須確保其員工充分了解市場及其需求,并在決策過程中整合他們的知識。值得注意的是,連鎖超市零售市場的一個公認特征是高度依賴顧客的偏好,這種偏好非常不穩定。因此,決定使用這類模型來協助其決策過程時,管理者必須每年用新信息對模型進行再培訓,因為這一步驟能使模型捕捉客戶的最新偏好。
本文論述了一個預測模型的研發,以估計未來的產品銷售。探討了使用深度學習方法實現這一目標的潛力。使用了一家在連鎖超市零售市場經營的公司提供的銷售數據。數據集包括以前收集的產品銷售信息,以及描述以前和未來產品的預測變量。
雖然這項工作的重點是連鎖超市零售業,但所提出的模型也可應用于其他零售業領域,因為問題的特點通常是相似的。