熱線電話:13121318867

登錄
首頁精彩閱讀如何建立時間序列預測模型?
如何建立時間序列預測模型?
2016-04-13
收藏

如何建立時間序列預測模型?

1. 背景

先來看兩個例子,下面兩幅圖展示了百度在趨勢預測方面的應用案例,一個是世界杯期間的比賽輸贏預測,另一個是北京各旅游景區的游客人數預測。


這兩幅圖代表了大數據環境下趨勢預測的典型場景,即事件預測和時序預測,本文重點關注第二幅圖中的場景,即與時間維度相關的時間序列預測。

2. 時間序列預測

時間序列預測即以時間數列所能反映的社會經濟現象的發展過程和規律性,進行引伸外推,預測其發展趨勢的方法,簡單來說就是從已知事件測定未知事件。

上圖展示了時間序列的一般趨勢,時間序列數據的趨勢變動可分為以下四點:

趨勢性:某個變量隨著時間進展或自變量變化,呈現一種比較緩慢而長期的持續上升、下降、停留的同性質變動趨向,但變動幅度可能不等。周期性:某因素由于外部影響隨著自然季節的交替出現高峰與低谷的規律。
隨機性:個別為隨機變動,整體呈統計規律。
綜合性:實際變化情況一般是幾種變動的疊加或組合。預測時一般設法過濾除去不規則變動,突出反映趨勢性和周期性變動。

3. 方法綜述

時間序列預測法分為傳統的時間序列預測方法和機器學習方法。傳統的時間序列方法指僅根據歷史時間序列的趨勢發展來預測未來時間序列的趨勢發展的方法,此類方法通過建立適當的數學模型擬合歷史時間趨勢曲線,根據所建模型預測未來時間序列的趨勢曲線,常見模型包括ARMA,VAR,TAR,ARCH等。傳統時間序列方法所依賴的數據較簡單,只需要歷史時間序列趨勢曲線便可構建模型,因此可適用于多種場景,模型較為通用。但是,傳統時間序列預測法常面臨滯后性問題,即預測值晚于真實值幾個時間單位。

為提高預測的精度,機器學習算法被引入時序預測,此類方法根據具體的應用場景,選取可能影響預測值的features,將這些features引入模型,應用機器學習的分類/回歸模型來進行預測。為提取features,機器學習方法需要多個維度的數據,預測精度較高,建立的模型較為復雜,但是模型往往不夠通用,針對不同應用場景需要重新提取features,建立模型?,F實預測中,機器學習方法往往結合傳統時序預測法來運用。

4. ARIMA模型

ARIMA模型全稱自回歸積分滑動平均模型(Autoregressive Integrated Moving Average Model),是經典的時間序列預測方法,我們從ARIMA模型入手,進行了實時趨勢預測的初步探索。


ARIMA模型公式分為自回歸(AR)和移動平均(MA)兩部分,p為自回歸項數,q為移動平均項數,為保證時間序列的平穩性,往往需對時間序列做d階差分。自回歸方法基于假設當前時期的指標值依賴于過去時期的指標值,對過去時期的指標值進行加權平均得到當前的指標值;移動平均方法的思想是模擬指標值的隨機性,指標值受白噪聲序激勵的影響。

5. 預測實驗

我們采用了某個業務的ctr數據,分別以分鐘為單位和以小時為單位進行預測,希望可以準確預測下一時間單位(分鐘,小時)的ctr。
分鐘ctr預測(一天內的ctr變化情況):

局部細節展示:

小時ctr(一周內的小時ctr變化情況):

6. 展望

大數據時代的時序預測得到越來越多的關注,能夠準確預測趨勢是時序預測的基礎應用,其他場景如異常檢測等也應用了時序預測方法,我們期待時序預測能夠有更多的應用場景,比如通過精準預測,發現可能出現的突發事件以提高應對措施;加入空間維度,產生時空組合下的預測,提高預測的實際應用價值,比如通過預測滴滴打車某一地區的打車人數,引導用戶和出租車,產生更好的資源利用;精準的金融預測,如預測理財通的買入買出數額,以幫助管理者合理指定策略等。這里初步探索的ARIMA模型是通用場景下的時序預測,在具體應用場景下,預測可以做的更精確。

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢