1. 程式人生 > >印象鹽城數創未來大資料競賽上牌賽總結:

印象鹽城數創未來大資料競賽上牌賽總結:

這個比賽是我的第一次機器學習比賽,成績還算湊合,第一賽季mse67w多,勉強進了第二賽季,第二賽季mse在4w8,和前面的大神差了快一倍,總結這次的比賽,為之後打好基礎。
剛接觸到題目的時候,完全沒有思路,匯入資料,用matplotlib畫了圖看了下資料曲線;
最初的想法是利用day_of_week來擬合七條曲線進行預測,但是對於預測演算法毫無思路。
後來在技術圈看到了麻婆豆腐大佬的分享,按照他的程式碼,依葫蘆畫瓢,用加權平均的方法提交了第一次結果,mse88w,效果在當時還可以;
之後嘗試了金融上常用的arima模型,但是對於arima的理解不夠深入,加上使用了每天的上牌數作為特徵,導致資料中存在大量的極端值,模型訓練的不好,mse在141w;
後來在寫基金申請的時候,接觸到了lstm長短期記憶網路,本打算使用lstm做一下嘗試,後來因為趕基金的申請加上過年期間評測關閉,也就放棄了;
過年後評測開始前,在某群裡和別人尬聊,知道了活動行為認知中常用的提取時序特徵的庫tsfresh,閱讀了官方文件後,簡單的做了一下,mse在91w;
最後成為了進第二輪,做了最後的嘗試,利用day_of_week推日期,提取了year,month_of_year,day_of_month,season,ten_day(上中下旬);並利用xgboost建模,第一賽季B榜mse在81w左右,最後一天,有提取了在每個法定假日前一天、後一天的特徵,最終mse到了67w,僥倖進了第二賽季;
第二賽季使用之前的特徵,加上在法定假日的工作日的特徵,使用xgboost和lightgbn分別進行訓練,最後將兩個的結果作為特徵輸入到xgboost,做模型融合,最後的分數在4w8;
比賽結束後,看了成績比較好的人分享,差距主要在特徵工程上面,根據有限的資料,提取的特徵比我提取的多,甚至考慮了農曆年的特徵;
需要改進的地方:
1.對於xgboost和lightgbm的理解以及調參;
2.對於不同的模型都閱讀一下paper,加深理解;
3.爭取早日看完周志華老師的《機器學習》
以後的工作:這次的比賽結束後,報名了ijcai和阿里媽媽聯合主辦的廣告預估率的比賽,這次的比賽應該有很多大佬參加,希望能再接再厲們爭取繼續苟進第二賽季