1. 程式人生 > >時間序列建模三部曲

時間序列建模三部曲

 與大多數高階分析解決方案不同,時間序列建模是一種低成本解決方案,可提供強大的洞察力。

本文將介紹構建質量時間序列模型的三個基本步驟:使資料靜止不動,選擇正確的模型並評估模型的準確性。這篇文章中的例子使用了一家主要汽車營銷公司的歷史頁面瀏覽資料。

步驟1:使資料靜止

時間序列涉及使用按時間間隔(分鐘,小時,天,周等)進行索引的資料。由於時間序列資料的離散性質,許多時間序列資料集都在資料中嵌入了季節和/或趨勢元素。時間序列建模的第一步是考慮現有季節(固定時間段內的重複模式)和/或趨勢(資料中的向上或向下移動)。考慮到這些嵌入式模式,我們稱之為資料固定。下面的圖1和圖2可以看出趨勢和季節資料的例子。


圖1:向上趨勢資料示例


圖2:季節資料示例

什麼是平穩性?

正如我們前面提到的,時間序列建模的第一步是消除資料中存在的趨勢或季節的影響,以使其靜止不動。我們一直在拋棄術語平穩性,但究竟意味著什麼?

一個固定的系列就是這個系列的平均值不再是時間的函式。有了趨勢資料,隨著時間的增加,該系列的平均值會隨著時間的推移而增加或減少(想想隨著時間的推移,房價會持續上漲)。對於季節性資料,系列的平均值會根據季節波動(考慮每24小時的溫度增減)。

我們如何實現平穩?

有兩種方法可用於實現平穩性,差異資料或線性迴歸。為了有所作為,您可以計算連續觀察值之間的差異。要使用線性迴歸,可以在模型中包含季節性元件的二元指示符變數。在我們決定應用哪些方法之前,讓我們來探索一下我們的資料。我們使用SAS Visual Analytics繪製歷史日常頁面瀏覽量。


圖3:原始頁面檢視的時間序列圖

最初的模式似乎每七天重複一次,表明每週的季節。隨著時間的推移瀏覽頁面數量的持續增長表明存在略微上升的趨勢。隨著資料的總體思路,我們應用了平穩性統計檢驗,增強型Dickey-Fuller(ADF)檢驗。ADF測試是平穩性的單位根檢驗。我們在這裡不會涉及細節,但是單位根表明系列是否是非平穩的,所以我們使用這個測試來確定處理趨勢或季節(差異或迴歸)的適當方法。基於上述資料的ADF測試,我們通過在一週中的某天迴歸虛擬變數來移除七天的季節,並通過區分資料來消除趨勢。由此產生的固定資料可以在下圖中看到。


圖4:刪除季節和趨勢後的固定資料

第2步:建立您的時間序列模型

現在資料是平穩的,時間序列建模的第二步是建立一個基準水平預測。我們還應該注意到,大多數基準級預測不需要將資料固定的第一步。這僅僅是更高階的模型所需要的,比如我們將要討論的ARIMA建模。

建立基準預測

有幾種型別的時間序列模型。要建立一個可以準確預測未來頁面瀏覽量的模型(或者您對預測感興趣的任何內容),有必要確定適合您資料的模型型別。

最簡單的選擇是假定y的未來值(您對預測感興趣的變數)等於y的最新值。這被認為是最基本的或“天真的模式”,其中最近的觀察是明天最可能的結果。

第二種型別的模型是平均模型。在這個模型中,資料集中的所有觀察值都被賦予相同的權重。y的未來預測以觀測資料的平均值計算。如果資料是水平的,所產生的預測可能相當準確,但如果資料趨勢化或具有季節性組成部分,則會提供非常差的預測。下面可以看到使用平均模型的頁面檢視資料的預測值。


圖5:平均(平均)模型預測

如果資料具有季節性或趨勢元素,那麼對於基準級模型來說,更好的選擇是實施指數平滑模型(ESM)。ESM在上述天真模型和平均模型之間找到了一個愉快的媒介,其中最近的觀測被賦予了最大的權重,並且之前所有觀測的權重都呈指數級下降到過去。ESM還允許將季節性和/或趨勢分量納入模型。下表提供了初始權重0.7以0.3的比率呈指數下降的例子。

意見重量(α= 0.7)

Yt(目前的觀察)0.7

YT-10.21

YT-20.063

YT-30.0189

YT-40.00567

表1:過去觀察Y的指數下降效應的例子。

在時間序列預測中可以實施各種型別的ESM。使用的理想模型將取決於您擁有的資料型別。下表根據資料中的趨勢和季節組合提供了使用何種型別的ESM的快速指南。

指數平滑模型的型別趨勢季節

簡單的ESM

線性ESMX

季節性ESMX

Winters ESMXX

 表2:模型選擇表

由於七天的強勁季節和資料的上升趨勢,我們選擇了一個冬季增溫ESM作為新的基準水平模型。所產生的預測做了一個體面的工作,繼續輕微的上升趨勢並捕捉七天的季節。但是,資料中還有更多可以刪除的模式。


圖6:冬季新增劑ESM預測

ARIMA建模

在確定了最能說明資料趨勢和季節的模型後,您最終將獲得足夠的資訊來生成一個體面的預測,如上面的圖2所示。然而,這些模型仍然存在侷限性,因為它們沒有考慮到在過去一段時間內利益變數與自身的相關性。我們將這種相關性稱為自相關,它通常在時間序列資料中找到。如果資料與我們的資料具有自相關性,那麼可能會進行額外的建模,以進一步改進基線預測。

為了捕獲時間序列模型中自相關的影響,有必要實施自迴歸整合移動平均(或ARIMA)模型。ARIMA模型包含了考慮季節和趨勢的引數(例如使用虛擬變數來表示一週中的天數和差異),還允許包含自迴歸和/或移動平均項來處理資料中嵌入的自相關。通過使用適當的ARIMA模型,我們可以進一步提高頁面瀏覽量預測的準確性,如圖3所示。


圖7:季節性ARIMA模型預測

第3步:評估模型的準確性

雖然您可以看到提供的每個模型的精度都有所提高,但從視覺上確定哪個模型具有最佳精度並不總是可靠的。計算MAPE(平均絕對誤差百分比)是一種快速簡便的方法,可以比較所提出模型的總體預測精度 - MAPE越低預測精度越好。比較先前討論的每個模型的MAPE,很容易看出季節性ARIMA模型提供了最佳的預測精度。請注意,還有其他幾種可用於模型比較的比較統計資訊。

模型錯誤驗證

  概要

總而言之,構建一個強大的時間序列預測模型的訣竅是儘可能多地消除噪音(趨勢,季節和自相關),以便資料中唯一剩下的運動是純粹的隨機性。對於我們的資料,我們發現具有迴歸變數的季節ARIMA模型提供了最準確的預測。與上面提到的天真,平均和ESM模型相比,ARIMA模型預測更準確。



大資料部落——中國專業的第三方資料服務提供商,提供定製化的一站式資料探勘和統計分析諮詢服務統計分析和資料探勘諮詢服務 :y0.cn/teradat(諮詢服務請聯絡官網客服點選這裡給我發訊息QQ:3025393450【服務場景】                     科研專案;                     公司專案外包 ;線上線下一對一培訓 ;學術研究。【大資料部落】提供定製化的一站式資料探勘和統計分析諮詢服務
 分享最新的大資料資訊,每天學習一點資料分析,讓我們一起做有態度的資料人【大資料部落】大資料部落提供定製化的一站式資料探勘和統計分析諮詢服務微信客服號:lico_9eQQ交流群:186388004  歡迎關注微信公眾號,瞭解更多資料乾貨資訊!
 
大資料部落——中國專業的第三方資料服務提供商,提供定製化的一站式資料探勘和統計分析諮詢服務統計分析和資料探勘諮詢服務 :y0.cn/teradat(諮詢服務請聯絡官網客服點選這裡給我發訊息QQ:3025393450【服務場景】                     科研專案;                     公司專案外包 ;線上線下一對一培訓 ;學術研究。【大資料部落】提供定製化的一站式資料探勘和統計分析諮詢服務
 分享最新的大資料資訊,每天學習一點資料分析,讓我們一起做有態度的資料人【大資料部落】大資料部落提供定製化的一站式資料探勘和統計分析諮詢服務微信客服號:lico_9eQQ交流群:186388004  歡迎關注微信公眾號,瞭解更多資料乾貨資訊!