天天看點

菜鳥—需求預測與分倉規劃季軍——“我們為R代言”團隊賽後總結賽題分析分析方法特征分析線下解決方案優化改進賽後思考

在菜鳥—需求預測與分倉規劃比賽上,“我們為r代言”團隊獲得了季軍。在分享中,“我們為r代言”團隊主要對賽題進行了分析,提出了選擇機器學習的理由,介紹了團隊線下解決方案實作過程。

賽題主要是根據過去一年的銷量來預測未來14天的銷售情況。這個賽題相對于其他問題有比較明顯的特點:賽題提供的資料量非常多,除了銷量之外還有其他很多資料,怎麼使用這麼多的資料來提高精度?成本是一個非線性的資料,補多補少是不一樣的兩種情況,怎麼根據成本來進行優化?全國倉和區域倉的問題,理論上全國倉應該等于區域倉之和,但是大部分情況并不滿足這一點要求,全國倉和區域倉之間的關系怎麼利用?

通過分析15組相對來說銷量比較大的商品的資料,可以看出雙十一的高峰是一個比較明顯的特征,但是并不是所有的商品雙十一的銷量都會暴增。銷量的變化更是五花八門,影響銷量的因素非常多,除了商品本身的人氣還包括類目、促銷、倉儲等的影響。如果單純從銷量來預測銷量的話難度會比較高。

對于上述問題,主要的分析方法有三種:時序分析,該方法的前提是需要具有外部特性的穩定性,上述的問題明顯不符合穩定性,因為隻給了一年的資料,很難看到長周期的變化,并且每個時間段都有每個時間段的特性;增加系統規則;基于滑窗的機器學習方法。由于我們獲得的特征比較多并且機器學習的魯棒性比較強,是以最終選擇了機器學習。

大賽資料提供了很多特征,銷量包括成交金額、筆數、件數,類目等。由于給的特征非常多,不同的時間視窗都會獲得一系列的特征,是以用滑窗方法來做的話,特征還會有幾倍的增長。分類問題是在空間中找個超平面把空間切分成兩半,有一個點的數值偏差很大時會很影響分界線。對于回歸問題,過拟合和欠拟合往往發生在局部,導緻很難調一組合适的參數讓所有資料都拟合恰當。并且回歸問題是一維特征,裡面點的密度遠遠高于分類問題。是以,相同數量的訓練集,回歸問題容納的特征會非常少,遠遠少于分類問題。

為了使用回歸分析,需要利用stacking方法進行特征壓縮。首先根據一系列的門檻值設計了分類器,把分類器的機率輸出作為新的特征做回歸分析。通過stacking把幾百維的特征直接壓縮到了10維。

此外,選擇滑動視窗法利用28天的資料預測接下來14天的情況。資料清洗則直接把雙十一和春節的資料進行了删除。

為了使訓練結果更加準确,“我們為r代言”團隊加入了一些規則。如果商品過去銷量波動比較大(方差)的話,可以認為這條資料是比較難預測的,預測的準确度比較低,線下可以通過pso例子優化方法修正。對于全國倉和分倉的問題,一般是利用全國倉的資料來修正分倉的資料。

改進方面,對特征進行了選擇,線上選擇的方法是将所有的特征都拿來進行訓練,而更優的方法是把最重要的特征單獨取出來,把次要的特征也取出來一些進行壓縮,把得到的特征和分類測試結果一起構成新的訓練集進行回歸訓練。

對于補多補少成本,一個直覺的想法就是修改訓練的損失函數,但是損失函數引入外部參數會導緻可變因素變多,很難确定一定有效果。是以,選擇的方法是:再訓練一個新的模型去估計我們訓練的偏差,把第一個預測模型的相對誤差作為label,再拿一個模型去趨近它。

改版之後新的平台比過去提升很多。線下平台是一個可深化的平台,裡面的代碼可以做成樹形結構。

繼續閱讀