利用深度元學習對城市銷量進行預測 | AAAI 2021論文解讀

對於線上和線下的零售行業,銷量預測都是一項至關重要的任務,它可以幫助企業更好的預備庫存以及在各個倉庫之間分配商品。特別是在大型購物節期間,強勁的促銷活動將極大地促進消費。然而,可供參考的歷史數據卻非常稀缺。如何同時對城市的不同區域和不同時間段的銷量進行預測,是一個非常具有挑戰的問題。

在2020年12月收錄的AAAI 2021(CCF-A類)上,京東城市被收錄了一篇名爲《Robust Spatio-Temporal Purchase Prediction via Deep Meta Learning》的論文。該論文研究瞭如何通過深度元學習,結合城市中的各項信息以及歷史的銷量數據,對未來,特別是大型購物節期間,城市中各個區域不同時間段的銷量進行預測。

1.背景

購物中心和商店的空間分佈、人口的分佈屬性以及不同的日期類型(例如,工作日,週末或購物節)等因素,將會導致不同的購物方式,如圖1所示。由於來自某個特定區域以及特定時間範圍內的數據過於稀缺,我們無法僅使用某個範圍的數據去訓練一個高精度的預測模型。同時,城市中不同區域的人口密度和分佈特徵高度異質,並且隨着時間的推移區域特徵也會發生變化,對這樣複雜的時空購買模式進行建模是一個非常困難的任務。爲了準確地捕獲區域的空間特性,它需要考慮一組綜合的空間特徵,例如興趣點(POI)分佈,區域的人口統計特徵等。如何通過跨時空建模學習提升單個區域在特定時間段的預測精度是我們的主要任務。

圖1 空間分佈

作者將該預測任務分爲主要三個部分:1)利用時空元學習推理,對不同的時空區域生成對應的時空表示。2)學習不同時空區域間的共享信息,同時結合區域特定的時空表示,得到更加可靠的預測銷量。3)通過時空交替訓練使得模型在空間以及時間層面都能夠得到更加完善的學習。

圖2 攤銷網絡

2.時空表示生成

我們開發了一個攤銷網絡(如圖2 Amortization Network 所示),以對目標區域和日期類型的時空表示的近似後驗分佈進行建模,該模型需要同時考慮銷量特徵和相關空間特徵的影響。

從圖3(a)中我們可以看到,以北京爲例,不同城區的銷量分佈有着明顯的區別。

要完全捕獲不同區域預測任務的購買數據的時間特性,還需要考慮歷史銷量數據之間的線性和非線性時間相關性,例如採購訂單和購物車記錄中所隱藏的週期模式。

圖3(b)中我們能夠看到明顯的以周爲週期的銷量模式變化。爲了對這種複雜而動態的時間序列模式進行建模,我們使用了線性變換模塊來獲得銷量的大致基數,並使用一個特殊的跳躍LSTM層來捕獲銷量變化的非線性時間模式。接着,通過特徵融合模塊將提取的時間特徵與靜態特徵相結合,以進一步支持構建更具有代表性的銷量時空表示。

圖3 銷量模式變化

3.時空銷量預測

通過上一步,我們已經得到了特定時空區域的銷量表示。接下來我們將介紹一種利用共享統計結構的生成模型,來學習不同時空預測任務間所共享信息。對於任務特定的預測,它大大提高了學習效率和預測準確性。該生成模型的結構可以參考上節所屬的攤銷網絡結構的解碼器(圖2 Generative Model 所示)。

它使用兩個不同的輸入來生成最終的銷量。第一個輸入側重於通過對最近一段時間的輸入銷量,利用特徵提取和融合技術來挖掘當前的購買表示,該特徵描述了近期的銷量模式的變化。第二個輸入是從攤銷網絡中採樣的特定於某個時空預測任務的時空特徵表示。它捕獲了目標任務的宏觀時空模式。最後,生成模型使用完全連接的網絡將兩個輸入合併,對目標時刻的銷量訂單進行預測。

4.時空交替訓練

不同的時空任務僅與來自特定區域和時間範圍的有限數據相關聯,無法完全描述特定區域的購買行爲。受多視圖學習的啓發,我們構建了兩種視圖(空間視圖和時間視圖)來描述數據的不同觀點。兩個視圖相互補充,以增強學習到的信息並獲得更準確的時空數據表示。空間觀點傾向於學習不同地區的購買模式,而時間觀點傾向於挖掘不同時間段類型的時間變化模式。

訓練期間在不同視圖之間進行切換可以在不同區域或日期類型之間學習到不同的時空信息。同時,在交替訓練期間還能夠整合不同時空任務共享的生成模型,並提高了預測準確性。完整的訓練過程如算法1所示。

算法1

5.實驗

爲了驗證模型的有效性以及魯棒性,作者對不同時間區間(周內,週末,購物節等)的銷量進行預測評估。同時還對模型中的不同組件進行消融分析,對不同組件的有效性進行評估,結果如表1所示。

表1 不同組件的有效性

表1中我們可以看到,對於平日較爲平緩和購物節的爆發性預測設置中,STMP均優於所有基線方法。在MSE方面,STMP均比最佳基準提高了至少30%。在爆發性銷量預測場景中,STMP仍比基準降低約30%至60%。這些結果表明,當實際購買模式與平時截然不同時,我們的方法是有效且可靠的。

爲了進一步研究STMP各個模型組成部分的影響,我們還在表1中比較了STMP及其變體的性能。可以觀察到,STMP-VI在總體和週末情景中表現良好,這些情景具有相對穩定的購買模式,但在購物節上的表現要比STMP差。這是因爲STMP-VI使用點估計而不是特定於任務的時空表示的分佈描述,當數據有限或模式高度不確定時,這會出現問題。此外,與STMP或其他變體相比,STMP-SKIP的準確性較差,但仍優於其他基準。這證明需要考慮購買時間序列中的多個週期性模式。這也反映在圖4(b)中,我們可以在購買時間序列數據中看到清晰的週期性模式。這些證明對數據中的多個週期性屬性進行建模在提高模型性能方面起着重要作用。

圖4

爲了探究模型在不同區域以及時間段的效果,作者挑選了四個具有代表性的區域(覆蓋不同銷量範圍,詳細地理位置請參見圖4(a))將STMP與基線方法在整個2019年的銷量數據上做可視化,如圖4所示。在大多數地區,基線無法很好地預測購物節期間購買時間序列的突發性,例如中旬促銷和11.11的購買高峯。他們傾向於給出保守的結果,並且只專注於提高整體準確性。但是,STMP利用不同區域和日期類型的時空表示來支持多任務少拍學習,以促進對特定區域和日期類型的更好預測。可以觀察到,只有STMP能夠準確地預測爆發式的銷量(所有圖6中的峯值)。

圖5

最後,作者對時空交替訓練方式在三個大型購物節上也做了比較。在時間訓練中,合併操作將來自同一天類型的實例成批集成,而不考慮空間知識。同時,在空間訓練中,模型將來自同一區域的一批實例集成在一起,而無需考慮時間信息。但是,與完整的時空交替訓練相比,缺乏時空上的聯合元知識仍然會導致較低的準確性。這表明不同的訓練模式會跨地區和時間類型學習不同的轉換。從時空方面的補充訓練可以有效地提高預測的準確性。

推薦閱讀

歡迎點擊【京東科技】,瞭解開發者社區

更多精彩技術實踐與獨家乾貨解析

歡迎關注【京東科技開發者】公衆號

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章