Kaggle知識點:時序預測基礎知識
時間序列
時間序列是按照時間排序的一組隨機變數,通常是在相等間隔的時間段內,依照給定的取樣率對某種潛在過程進行觀測的結果。時間序列資料通常是一系列實值型資料,時間序列資料的研究方法主要包括分類、聚類和迴歸預測等方面。
時序預測任務
時間序列資料本質上反映的是某個或者某些隨機變數隨時間不斷變化的趨勢,而時間序列預測方法的核心就是從資料中挖掘出這種規律,並利用其對將來的資料做出估計。
現實生活中的時間序列資料預測問題有很多,包括語音分析、噪聲消除以及股票市場的分析等,本質主要是根據前個時刻的觀測資料推算出時刻的時間序列的值。
時序資料特徵
基礎特點
時間序列資料與其他型別的資料的最大區別在於當前時刻的資料值與之前時刻的資料值存在著聯絡,該特點表 明過去的資料已經暗示了現在或者將來資料發展變化的規律,這種規律主要包括了趨勢性、週期性和不規則性。
-
趨勢性:反映的是時間序列在一個較長時間內的發展方向,它可以在一個相當長的時間內表現為一種近似直線的持續向上或持續向下或平穩的趨勢。
-
週期性:反映的是時間序列受各種週期因素影響所形成的一種長度和幅度固定的週期波動。
-
不規則性:反映的是時間序列受各種突發事件、偶然因素的影響所形成的非趨勢性和非週期性的不規則變動。
平穩與非平穩
時間序列的平穩性表明了時間序列的均值和方差在不同時間上沒有系統的變化,而非平穩性意味著均值和方差隨著時間推移會發生變化。時間序列的平穩性保證了時間序列的本質特徵不僅僅存在於當前時刻,還會延伸到未來。
傳統時序預測模型
傳統的時間序列模型包括:
-
移動平均模型(Moving Averaige, MA)
-
自迴歸模型(AutoRegressive, AR)
-
自迴歸移動平均模型(Auto Regressive Moving Average, ARMA)
傳統的時間預測是在確定序列引數模型的基礎上求解出模型引數,並利用求解出的模型完成預測工作。
”Box-Jenkins方法“策略包含3步:
-
確定適當的p,d,q值;
-
估計出模型中具體的引數值;
-
檢驗擬合模型的適當性;
d值可以通過對原始時間序列進行差分,然後檢驗差分後的時間序列的平穩性來確定d值的大小,p值和q值可通過偏自相關函式PACF和自相關函式ACF來確定。
傳統的時間序列預測方法非常依賴引數模型的選擇,能否正確選擇引數模型在很大程度上決定了預測結果的準確率。
機器學習時序模型
經典的支援向量機SVM、貝葉斯網路BN、矩陣分解MF和高斯過程GP在時間序列預測方面均取得了不錯的效果。
早期的人工神經網路ANN也被用來獲取時間序列中長期的趨勢。隨著深度學習的崛起,其也可以被看作實現時間序列預測的有效工具。
比較典型的模型WaveNet可以對大範圍歷史資料和序列之間關係的進行建模,利用資料來訓練新的深度學習網路結構以完成預測。
# 競賽交流群 邀請函 #
△長按新增競賽小助手
新增Coggle小助手微信 (ID : coggle666)
每天Kaggle演算法競賽、乾貨資訊彙總
與 22000+ 來自競賽愛好者一起交流~