1. 程式人生 > >Kaggle 商品銷量預測季軍方案出爐,應對時間序列問題有何妙招

Kaggle 商品銷量預測季軍方案出爐,應對時間序列問題有何妙招

oca 分類 tle 這樣的 不同類 context 意見反饋 發展 nal

https://baijiahao.baidu.com/s?id=1595331607299762312&wfr=spider&for=pc

雷鋒網 AI 研習社消息,Kaggle 上 Corporación Favorita 主辦的商品銷量預測比賽於兩個月前落下帷幕,此次比賽的獎金池共計三萬美元,吸引到 1675 支隊伍參賽。

近日,Private Leaderboard 上的亞軍 SoLucky 團隊在 arxiv 上發表了一篇論文,闡述了其獲勝方案,雷鋒網 AI 研習社對論文內容進行編譯整理如下:

作者參加了在 Kaggle 上舉辦的 Corporacion Favorita Grocery Sales Forecasting 銷量預測比賽,並取得了第二名的成績。

這場比賽是基於時間序列數據的基礎機器學習問題,論文中闡明了總體分析和解決方案。

作者的方法基於空洞卷積神經網絡(dilated convolutional neural network)並進行了改善,來對時間序列進行預測。利用這種技術,在 n 個示例批次中不斷叠代,能夠快速和準確地對大量時間序列數據進行處理。

比賽背景

Kaggle 等競賽平臺舉辦的時間序列比賽目前已經成為機器學習流行賽事,這些競賽有助於推進機器學習頂尖技術的發展,將其用於實際領域。

時間序列是不太為人所知的分析領域。由於數據存在著季節性、動態性和周期性的特征,數據序列是非線性的,並存在噪聲,因此很難準確進行識別和預測。

神經網絡在近幾年的熱度急劇增長,這使人們對預測有了截然不同的理解。硬件的進步使得我們能夠在一定時間內利用深度神經網絡解決問題。目前,深度學習是一個可行的解決方案,利用這項技術,近年來研究者們在基準數據集的分類精度上打破了很多記錄。

作者在本文中討論了解決 Corporacion Favorita Grocery Sales Forecasting 商品銷量預測問題的方法,描述並分析了將卷積神經網絡應用於時間序列數據。

數據集描述

數據被分為兩部分——訓練數據和測試數據。訓練數據用於模型訓練,測試數據被分為幾部分,分別用於在公共和私人的排行榜上進行模型的準確性評估。這場比賽中,Corporacion Favorita 提供 125,497,040 個訓練觀察值和 3370,464 個測試觀察值。

數據集由按日銷售額、商店編號、商品編號和促銷信息組成。此外,主辦方還提供交易信息、石油價格、商店信息和假期。

該競賽使用 NWRMSLE(標準化加權均方根對數誤差)作為評價指標。

問題定義

實體店中的采購和銷售需要保持平衡。稍微將銷售預測過量,店裏就會積存許多貨物,要是積壓了不易儲存的商品會更加糟糕。而要是將銷量預測過低,設想一下,當顧客把錢都付了,卻發現沒貨,那這家店的口碑將會急劇下降。

此外,隨著零售商增加新的門店,那裏的顧客又可能存在獨特的需求,比如他們想要新的產品,口味隨季節而變化,那問題將變得更加復雜,產品市場如何真的很難預知。

在這次比賽中,主辦方希望參賽者建立一個更準確的預測產品銷量的模型。作者的目標是建立一個可能應用於實際,並具有最高準確度的銷量預測模型。

主要存在如下三種挑戰:

噪聲數據:盡管組織者盡力準備並提供了大量數據,但其中存在有噪聲標簽的數據。有些數據(石油價格、假期、交易)與目標沒有關聯,在之後根本不會使用。

不可見數據:有這樣一種情況,在測試集中出現了不可見的數據。由於存在這類不可見的商店/商品數據,模型的行為將不可預測。原因如下:訓練集中不包括銷售額為 0 的記錄,但是測試集包含所有的商店/商品組合(不管商店此前是否銷售該商品)。最後,作者假設這些不可見的組合只是零銷售額數據,用 0 來進行替換。

準確度:因為這個實驗是嚴格按照比賽規則進行的,作者嘗試了所有可能用來提高預測準確度的方法。

可選方案

下面的這些架構基於神經網絡,但在這個比賽中,最終結果不如作者最後使用的 WaveNet 模型,但他們相信這種架構可以提供一種完全不同的方法來解決問題,產生出一些有趣的洞見,甚至在其他比賽中超越 WaveNet。

循環神經網絡

循環神經網絡(RNN)可以將當前節點的輸出作為下一個節點的輸入,可以如下描述:相較於其他深度學習算法,RNN 已經被廣泛用於預測時間序列問題,並被定位為預測此類數據數組問題的最先進的方法。

這些網絡的效率可以通過重復的連接來解釋,這些連接允許網絡訪問以前的時間序列值的整個歷史。

可以將 RNN 看成同一個網絡的多個副本,每個副本會傳遞消息給後續副本。由於自身屬性,RNN 與序列和列表密切相關。在過去的幾年中,將 RNN 應用於時間序列預測問題上已經取得了驚人的成果。

其中具有象征意義的是 LSTMs,這是一種非常特殊的 RNN,在許多任務上,它比標準 RNN 的表現要好得多。

GRU 架構也可以作為解決當前問題的方法,它們與 LSTMs 相似,結構更簡。

作者的方法

基於 WaveNet CNN 網絡並做了一些額外的擴展和修改。

近年來,深度學習技術的發展促使研究人員探索出各種時間序列預測方法,其中就有 WaveNet。WaveNet 是一個生成模型,這意味著模型可以針對一些條件輸入生成實值數據(real-valued data)序列。

該架構背後的核心思想是空洞因果卷積(dilated causal convolutions)。由於沒有循環連接和跳躍步驟,空洞卷積訓練起來比 RNN 要快。

目前,因果卷積存在的問題之一是:為了增大感受野,需要用到多層卷積或者或很多大濾波器。

空洞卷積不存在這些問題,它使用上采樣濾波器代替特征映射(feature maps)。換句話說,空洞卷積允許只增加核的視野在層間維持特征映射的大小,另外,可以用更少的參數捕獲輸入的全局視圖。

為了能夠產生 16 天的預測值,作者對模型進行了修改。因為訓練使用的是下一步預測值,錯誤會持續累積。為了解決這個問題,他們使用 sequence to sequence 方法,編碼器和解碼器不會共享參數。解碼器將會在產生長序列時處理累積的噪聲。這裏還用了亞當優化器更新網絡權重。數據是通過小批次產生的,隨機采樣 128 個序列。

由於整個數據集大約包含 17 萬序列 x 365 天,所以在每次訓練叠代中都能向模型輸入不同的數據。考慮到這一點,該模型能很好地處理過擬合問題。

在訓練過程中,學習率衰減系數設置為 0.0005。作者將過去 16 天的訓練數據做成一個集合,並將其用於驗證。銷售量的變化和促銷信息可以用來生成的季度和年度模型。

在最後若幹個上千或上萬的的小批次中,模型會稍微出現過擬合,所以結果會有一點波動。

為了解決過擬合問題,平滑短期波動,著重於長期的動態性和周期性趨勢,作者用到移動平均法(Moving average)。在 5000 次小批量叠代之後,模型開始預測,之後每過 2000 次叠代產生預測。在特定的叠代之後,如下圖所示,5 個模型的平均性能優於單個模型。為了將模型準確性進一步提高,最終,作者使用指數移動平均法(exponential moving average),利用局部交叉驗證(local cross-validation)計算出平滑因子(smooth factor)。

技術分享圖片

該模型有很好的捕獲時間序列數據規律的能力,因此很多特性都沒有被使用。其中一些是單位產品銷售額和促銷信息。

總結

企業面臨一個明顯的問題——市場是不可預測的。任何銷售預測,無論你的分析條件多麽嚴謹,都可能是完全錯誤的。如果市場狀況保持相對不變,一種可靠的預測方法就是使用歷史數據。作者的經驗表明,卷積神經網絡非常善於處理歷史數據,捕捉季節性的趨勢、周期和無規律的趨勢,如下圖所示。

技術分享圖片

他們描述了一種使用 CNN WaveNet 的方法,這是一個 sequence to sequence 架構,在銷售預測方面,它是解決時間序列預測問題的有效方法(如下圖)。

技術分享圖片

在未來,需要對層數更多的 CNN 進行更深入的研究,以完成更復雜的任務。為了訓練更深的網絡,需要大量的數據。在未來,對不同類型和領域的數據進行分析可能是另一個有趣的方向。此外,將不同技術融合起來也能獲得相當的準確性。

比賽地址:https://www.kaggle.com/c/favorita-grocery-sales-forecasting

論文地址:https://arxiv.org/pdf/1803.04037.pdf

雷鋒網 AI 研習社編譯整理。

本文由百家號作者上傳並發布,百家號僅提供信息發布平臺。文章僅代表作者個人觀點,不代表百度立場。未經作者許可,不得轉載。

技術分享圖片

樊凡

百家號最近更新:03-1910:33

簡介:科學奇跡帶你去科學和科學。

作者最新文章

網絡小說這樣的小生意,如何讓新手快速上手月入10000+呢!

隕石是什麽?值錢嗎?

時機不尋常、主題有深意 九張圖帶你了解今年的博鰲亞洲論壇!

相關文章

  • 技術分享圖片

    網絡表征學習綜述

    白頭發09-07
  • 技術分享圖片

    用於句子匹配的門控卷積神經網絡(上篇)

    科技的修煉09-10
  • 技術分享圖片

    機器學習為何選擇GPU?

    愛撒09-07
  • 技術分享圖片

    如何玩轉自然語言理解和深度學習實踐?——技術直播回顧

    達觀數據09-07
  • 技術分享圖片

    華慧視推出“刷臉”名片APP,將人臉識別切入C端社交市場

    藍鯨財經09-07
設為首頁? Baidu 使用百度前必讀 意見反饋 京ICP證030173號 技術分享圖片 京公網安備11000002000001號

Kaggle 商品銷量預測季軍方案出爐,應對時間序列問題有何妙招