喬 媛,姜 江,夏江江,白 帆,蔣 志
(1.北京市氣象服務中心,北京100089;2.中國科學院大氣物理研究所,北京 100029;3.北京市門頭溝區(qū)氣象局,北京 102300)
客流量單數(shù)(以下簡稱為客單數(shù))的實際含義是指客流量中有效的收入來源部分,即達到商場后的顧客真實買單的單數(shù)。客單數(shù)是經營環(huán)節(jié)中非常重要的指標,因為客單數(shù)越多,經營者的收入自然也越多。事實上,經營者常感到客單數(shù)變化的不可測、不可控。原因在于客單數(shù)受到很多因素的影響,且短期內的客單數(shù)會呈現(xiàn)出比較復雜的非線性特征。加之國內大部分經營者的信息化起步較晚,存在著歷史數(shù)據不連續(xù)或數(shù)據量較少的問題,致使以往的研究很難對客單數(shù)的影響因素進行深入分析,造成了客單數(shù)的相關研究中,預測值和真實值之間存在著較大的偏差,難以開展進一步的業(yè)務化應用工作。
以往的客流量相關研究當中,更多的是針對各類自然風景區(qū)[1],而對居民區(qū)附近超市的客單數(shù)研究較少??紤]到景區(qū)是門票制,景區(qū)的門票數(shù)可以相當于超市的客單數(shù),因而前人的研究方法同樣可以借鑒。早期的景區(qū)客流量預測方法以傳統(tǒng)的時間序列預測思路為主,如指數(shù)平滑模型[2]、時間序列模型[3-4]、多元回歸[5-6]、網絡搜索方法[7]等,但這些模型缺少對樣本學習的過程,重點放在時間趨勢的外推,對具有線性特征的客流量有很好的預測效果,但往往難以實現(xiàn)復雜的非線性客流量預測。隨著機器學習理論的深入推進,一些新的人工智能算法在電力、交通、旅游、氣象等短期非線性序列預測中得到了大量應用[8-9]。如BP神經網絡、支持向量機、最小二乘支持向量機、反向傳播神經網絡等[10-13],均在客流量短期預測中取得了很好的應用效果。
由于經濟學與氣象學領域的學科交叉性,在預測要素的選擇時,氣象因子在其中發(fā)揮的作用總是一定程度上被忽視[14-16]。實際上,氣象因子對客流主體的影響是不可忽略的。比如,天氣的“好”“壞”是可以直接感受到的。好的天氣會讓潛在的顧客感覺身體舒適、心情舒暢,使其出行購買的欲望得到提升。反之,當天氣條件不好的時候,會讓潛在顧客的出行購物欲望降低。另外,從交通角度來說,天氣條件也影響著顧客目的地可達的難易程度。天氣條件有利,目的地可達程度容易,促使購買變?yōu)楝F(xiàn)實。反之,天氣條件不利,目的地可達程度變難,導致購買行為減少。當然,“好天氣”“舒適的氣候”或“感到舒服的天氣”,在不同的人群中可能存在著一定的差異[17-18]。Martin等[19]的研究中也明確指出這些概念是相對的,對于一些人來說感到“舒適”時,可能對另一些人來說則是相反的。就此問題,前人在相關的預測研究中會加入“氣候舒適度”作為一項輸入因素,以此來減弱客體主觀感受的差異,從而能夠盡可能地代表多數(shù)人的感受[20-21]。
鑒于此,建立一個科學準確的、且能夠反映出客流量與天氣等要素之間定量關系的短期超市客單數(shù)預測模型,對超市經營團體乃至整個商業(yè)服務行業(yè)的實用價值是非常明顯的。本文將基于2019年北京西北部地區(qū)42家同一品牌下,且規(guī)模大致相同的超市逐日客單數(shù)資料,結合超市地理位置相對應的氣象要素數(shù)據,在梳理氣象因子與客單數(shù)之間關系的基礎上,試驗多種機器學習方法來建立與天氣有關的客單數(shù)逐日預測模型。所得研究結果能夠較為準確地預測客單數(shù),有助于經營者對商業(yè)行為開展提前規(guī)劃和科學決策,充分利用人力和物力成本,進行節(jié)能減排。
客單數(shù)的數(shù)據來自北京西北部地區(qū)42家中型超市。它們均不是新開超市,不存在由于超市環(huán)境、商品結構和補貨能力的差異影響。同時,它們均隸屬于同一品牌,也不會存在不同的商品價格差異,以及不同的員工銷售技能差別。研究中曾指出空間距離、經濟收入、人口密度都是影響熱點客源市場客流量的主要因素[22-25]。本文所選擇的42家超市都是以周邊穩(wěn)定的居民區(qū)為主要對象的中型超市,各個超市的購買能力較為穩(wěn)定,因而也會更多地產生對天氣因素的依賴。2020年年初開始受限于疫情的影響,客單數(shù)的數(shù)據較為特殊,為避免信息干擾,僅獲取2019年有完整記錄以來共365天的樣本進行數(shù)據分析。由于整體數(shù)據量過小,為避免缺測數(shù)據量過高對預測結果帶來的影響,則從42家不同超市中,篩選出缺測數(shù)據量低于5%的超市,共34家。其中,海淀區(qū)31家,豐臺區(qū)1家,東城區(qū)1家,昌平區(qū)1家。
根據缺測數(shù)據量低于5%的34家超市具體的經緯度坐標,分別將其對應到地理位置最接近的氣象站點(表1)。共匹配到氣象站點12個,分別為A1001、A1024、A1029、A1034、A1054、A1061、A1065、A1068、A1069、A1074、A1076和A1445,涉及的基礎氣象要素為日平均氣溫、日相對濕度、日平均風速和日總降水量。
表1 北京西北部地區(qū)34家超市店號及其地理位置最近的氣象站點
1.3.1 輸入因子
在預測模型中輸入的氣象因子包括氣溫、相對濕度、風速和降水量。同時,考慮到天氣現(xiàn)象的“好”與“壞”不易描述,也較難統(tǒng)一,在輸入因子選擇時,還采用了舒適度指數(shù)(Effective Temperature,ET)來反映氣溫、相對濕度、風速對人體舒適度的綜合影響[26],計算公式如下:
(1)
其中,t為氣溫(單位:℃),RH為相對濕度(單位:%),V為風速(單位:m/s)。ET指數(shù)能夠覆蓋從寒冷到炎熱的各種氣候類型,可反映出人體的普遍感知。其中,降水量不同于其他的氣象因子,降水量具有不連續(xù)的非正態(tài)分布的特點,因而單獨將降水量按日累積雨/雪量進行了等級轉化(表2)。
表2 降水量等級表
另外,超市經營者認為“星期”“是否節(jié)假日”和“是否節(jié)氣”都與北京地區(qū)的購買習慣有一定的關聯(lián)。比如顧客偏向于周五至周日、或者在節(jié)假日和節(jié)氣當天去采購商品。綜合考慮,最終可輸入的因子共為8項,其中氣象因子5項,非氣象因子3項,具體見表3。
表3 機器學習模型的輸入因子
1.3.2 機器學習方法
鑒于經濟學與氣象學領域的學科交叉性,在預測方法選擇時,使用了多種解決回歸問題的機器學習方法,以充分利用各種方法的特點,盡可能地降低預測值和真實值之間的偏差。具體如下:
(1)多元回歸方法(Multiple Regression,MR):常被用來研究一個因變量與多個自變量之間的關系問題。具體公式如下:
yj=β0+β1x1+β2x2+…+βmxm+εj
(2)
式中,β0,β1,…,βm均為模型的回歸系數(shù),εj為隨機殘差。
(2)支持向量機(Support Vector Machine,SVM):SVM方法通過核函數(shù)將輸入低維的原始數(shù)據映射到高維的新特征空間,同時將非線性回歸問題轉化成線性回歸問題。其中,SVM的線性回歸模型為
f(x)=wφ(x)+b
(3)
式中,w、b是待估參數(shù),φ(x)是非線性映射。
(3)隨機森林(Random Forest,RF):隨機森林構造出多棵決策樹,當需要對某個樣本進行預測時,統(tǒng)計每棵決策樹對該樣本的預報結果,然后通過投票法從這些預報結果中選出最后的結果。隨機森林算法本質上是在決策樹的訓練過程中引入隨機屬性,對樣本進行有放回采樣,對屬性進行無放回采樣。
(4)迭代決策樹(Gradient Boost Regression Tree,GBRT):單決策樹由于功能太簡單,并且非常容易出現(xiàn)過擬合的現(xiàn)象,于是引申出了許多變種決策樹,就是將單決策樹進行模型組合,形成多決策樹,比較典型的就是迭代決策樹和隨機森林。GBRT是一種迭代的決策樹算法,算法由多棵決策樹組成,所有樹的結論累加起來做最終結果。
(5)K最鄰近分類算法(K-Nearest Neighbor,KNN):如果一個樣本在特征空間中的K個最相似(即特征空間中最鄰近)的樣本中的大多數(shù)屬于某一個類別,則該樣本也屬于這個類別。該方法在定類決策上只依據最鄰近的一個或者幾個樣本的類別來決定待分樣本所屬的類別。
(6)多層感知器(Muti-Layer Perception,MLP):多層感知器主要是模擬生物神經系統(tǒng)對真實世界物體所做出的交互反應,通過調整內部大量節(jié)點之間相互連接的關系,達到處理信息的目的。通常在測試的過程中可以不斷調整節(jié)點數(shù)以取得最佳預報效果。其中,輸入層的每個節(jié)點,都要通過加權求和和激活函數(shù)(激活函數(shù)有很多種,本文使用的是比較常用的Sigmoid函數(shù))來與隱藏層每個節(jié)點做點對點的計算。輸入層的數(shù)值通過計算分別傳播到隱藏層,再以相同的方式傳播到輸出層,得到最終的輸出值,同時也要將輸出值和樣本值作比較,根據計算所得誤差再對神經網絡中的權重和閾值進行調整。
1.3.3 檢驗方法
為客觀地對比多種方法得到的預報差異,選用均方根誤差(Root Mean Squard Error,RMSE)來檢驗預報效果,公式如下:
(4)
式中,ri為某樣本的客單數(shù)預報值,ti為相對應的客單數(shù)的真實值,n為試驗樣本總數(shù)。在本文中由于樣本量較少,很難單獨分月或者分季節(jié)去進行預測,所以在檢驗環(huán)節(jié)的均方根誤差計算中,采取樣本總量(365天)的5%(18天)進行交叉驗證。
不同超市的客單數(shù)與氣象因子相關關系的差異是非常明顯的,有的甚至與氣象因子基本不存在相關關系,如店號為A235和A236這兩家超市。經與超市的銷售部門溝通和實地調研發(fā)現(xiàn),A235和A236兩家超市均位于北京地區(qū)的五環(huán)外,居民區(qū)和人口密集程度相對其他超市的差距非常大。同時,這兩家超市所在的小區(qū)附近0-3 km內均沒有大型正規(guī)的品牌商場和超市,沒有可替代的實體購買渠道,并且這兩家超市的位置均位于小區(qū)居民樓內,其銷售模式波動或更依賴于“是否節(jié)假日”,與氣象因子的關聯(lián)性相對較低(表4)。因此,在下文的預測試驗中去掉了A235、A236兩家超市。
另外32家超市的相關分析結果中,客單數(shù)與氣象因子間相關性最高的為氣溫(相關系數(shù)為0.11~0.71,平均值為0.45,有97%的超市通過0.01的顯著性檢驗),其次為舒適度(相關系數(shù)為0.11~0.70,平均值為0.44,同樣有97%的超市通過了0.01的顯著性檢驗)??蛦螖?shù)與氣溫及舒適度均呈現(xiàn)正相關關系,反映出隨著氣溫和舒適度指數(shù)的升高,客流量會在一定程度上增加??蛦螖?shù)與風速(相關系數(shù)為-0.37~0.08,平均值為-0.11,有31%的超市通過0.01的顯著性檢驗)、相對濕度(相關系數(shù)為-0.18~0.24,平均值為0.08,有47%的超市通過0.01的顯著性檢驗)和降水量(相關系數(shù)為-0.18~0.06,平均值為-0.05,有6%的超市通過0.01的顯著性檢驗)多呈現(xiàn)負相關關系,這表明隨著風速、相對濕度和降水量的降低,客流量會在一定程度上有所增加(表4)。
表4 北京西北部地區(qū)34家超市2019年客單數(shù)與氣象要素的相關性
32家超市的日平均客單數(shù)為358~5490單,平均單數(shù)為2241單(圖1)。各個超市本身的日客單數(shù)的差異為363~6653單。客單數(shù)本身的波動性變化是非常明顯的,而8項輸入因子的變化也是造成這種波動性的主要原因。
圖1 北京西北部地區(qū)32家超市2019年平均客單數(shù)
根據相關分析的結果,首先嘗試將氣溫、舒適度、風速、相對濕度和降水量5項氣象因子作為輸入因子,6種模型預測結果顯示,對逐日客單數(shù)預測效果最佳的是SVM模型(圖2)。
圖2 北京西北部地區(qū)32家超市基于5項氣象因子的6種模型預測效果對比
對5項氣象輸入因子的預測效果利用RMSE進行對比發(fā)現(xiàn),分別有43.75%的超市采用SVM模型,21.88%的超市采用MR模型,12.50%的超市采用GBRT模型,12.50%的超市采用KNN模型,6.25%的超市采用RF模型,3.12%的超市采用MLP模型。其中,平均預測效果最好的店號是A245,其平均日客單數(shù)為358單。6種方法預測結果的RMSE為33.9~38.0單。平均預測效果最差的店號是A035,其平均日客單數(shù)為5358單。6種方法預測結果的RMSE為519.5~632.5單。
當僅選擇星期、是否節(jié)假日、是否節(jié)氣3個非氣象因子作為輸入因子時,同樣利用相同的95%的樣本作為訓練集,5%作為測試集,結果顯示,6種預測方法對逐日客單數(shù)預測效果最佳的是RF模型(圖3)。
圖3 北京西北部地區(qū)32家超市基于3項非氣象因子的6種模型預測效果對比
利用RMSE結果進行對比,分別有34.38%的超市采用RF模型,31.25%的超市采用SVM模型,21.88%的超市采用GBRT模型,9.38%的超市采用MR模型,3.11%的超市采用MLP模型;沒有超市采用KNN模型。平均預測效果最好的店號是A245,其平均日客單數(shù)為358單。6種方法預測結果的RMSE為43.0~46.7單。平均預測效果最差的店號是A035,其平均日客單數(shù)為5358單。6種方法預測結果的RMSE為537.0~639.7單。
當選擇氣溫、風速、相對濕度、降水量級別、ET指數(shù)共5個氣象因子,加上星期、是否節(jié)假日、是否節(jié)氣3個非氣象因子,共8項混合輸入因子,利用同樣的訓練集和測試集,預測結果顯示,6種預測方法中對逐日客單數(shù)預測效果最佳的是GBRT模型(圖4)。
圖4 北京西北部地區(qū)32家超市輸入為8項因子的6種預測模型效果對比
利用RMSE結果進行對比,分別有28.13%的超市采用GBRT模型,25.00%的超市采用MR模型,21.88%的超市采用SVM模型,15.63%的超市采用RF模型,9.36%的超市采用KNN模型;沒有超市采用MLP模型。平均預測效果最好的店號是A245,其平均日客單數(shù)為358單。6種方法預測結果的RMSE為29.3~39.4單。平均預測效果最差的店號是A035,其平均日客單數(shù)為5358單。6種方法預測結果的RMSE為446.8~555.4單。
當5項氣象因素作為輸入因子時,有43.75%的最優(yōu)結果來自SVM模型,基于GBRT、KNN、MR、RF、SVM、MLP得到的平均RMSE及6種方法得到的平均RMSE的均值分別為191.4、195.5、169.6、190.9、164.3、187.8和183.2單。
當3項非氣象因素作為輸入因子時,有34.38%的最優(yōu)結果來自RF模型,相應順序的平均RMSE分別為174.4、136.7、153.0、138.7、182.9、187.4和162.2單。
當全因素作為輸入因子時,有28.13%的最優(yōu)結果來自GBRT模型,相應順序的平均RMSE分別為146.1、157.3、134.4、145.0、138.8、175.1和149.4單。全因子的平均預測效果最佳(圖5)。
圖5 北京西北部地區(qū)32家超市不同輸入因子的6種方法平均預測效果對比
當全因素作為輸入因子時,GBRT、KNN、MR、RF、SVM、MLP預測結果及6種預測方法平均預測結果相比于3項非氣象因子預測得到的RMSE分別減少了16.2%、-15.1%、12.2%、-4.5%、24.1%、6.6%和7.8%,預測效果提升最多的模型是SVM方法。同樣,當全因素作為輸入因子,GBRT、KNN、MR、RF、SVM、MLP預測結果及6種預測方法平均預測結果相比于僅5項氣象因子預測得到的RMSE分別減少了23.7%、19.5%、20.8%、24.0%、15.5%、6.8%和18.4%,預測效果提升最多的模型是RF方法。整體而言,全因素作為輸入因子時的預測效果相對于其他兩種方案都是提升的(圖6),且提升效果最多的模型也是預測效果最好的模型,如SVM、RF和GBRT。
圖6 北京西北部地區(qū)32家超市不同預測方案的客單數(shù)均方根誤差的降低比率
(1)在通過0.01的顯著性檢驗的結果當中,客單數(shù)與氣象因素間的相關性反映出隨著氣溫和舒適度指數(shù)的升高,客流量會在一定程度上有所增加。而隨著風速、相對濕度和降水量的降低,客流量會在一定程度上有所增加。預測結果的分析顯示,6種方法預測效果最好的超市均為A245,預測效果最差的均為A035。相對其他超市而言,A245客單數(shù)最低,A035客單數(shù)最高。整體上,客單數(shù)偏低的超市預測效果更優(yōu)。
(2)在6種預測方法中,當輸入因子選擇為氣溫、風速、相對濕度、降水量級別、ET指數(shù),加上星期、是否節(jié)假日、是否節(jié)氣3個非氣象因素,共8個進行全因子訓練后,預測效果是最佳的。就32家超市的平均預測效果而言,GBRT、KNN、MR、RF、SVM、MLP及6種方法的平均預測效果相比于僅5項氣象因子作為輸入的預測模型的RMSE減少了6.8%~24.0%;相比于3項非氣象因子預測得到的RMSE減少了-15.1%~24.1%。相對而言,漸進梯度回歸樹預測效果最佳,支持向量機和隨機森林的次之,K最鄰近分類算法和多層感知器的效果較差。
(3)通過試驗6種機器學習方法來建立與天氣有關的客流單數(shù)逐日預測模型,結果發(fā)現(xiàn)機器學習回歸方法是可以有效地進行客單數(shù)預測的,且考慮的關聯(lián)因素越多,預測效果也就越好。在后續(xù)的業(yè)務使用中,只需要輸入未來不同地理位置的逐日天氣預報結論,即可得到相應超市的客單數(shù)逐日預測情況,從而使經營者對商業(yè)行為開展提前規(guī)劃。但需要指出的是,客單數(shù)越大的超市預測誤差也相對越大,原因在于客單數(shù)越大的超市,影響客單數(shù)的不可知因素越多且越復雜,比如小區(qū)居民的集中程度、年齡分布、文化習慣、周圍可替代超市的數(shù)量和距離等,并且這些因素都很難獲取,導致了不同超市的客單數(shù)與氣象因素的相關關系差異非常明顯,需要未來繼續(xù)積累相關數(shù)據,進一步提高預測效果。