????????? 作者簡介Introduction 姚某某 本節(jié)主要總結(jié)「數(shù)據(jù)分析」的「時(shí)間序列」相關(guān)模型的思路。 「時(shí)間序列」是一個(gè)變量在連續(xù)時(shí)點(diǎn)或連續(xù)時(shí)期上測量的觀測值的序列,它與我們以前見過的數(shù)據(jù)有本質(zhì)上的區(qū)別,這個(gè)區(qū)別在于之前的數(shù)據(jù)都在一個(gè)時(shí)間的橫截面上去測量、計(jì)算數(shù)據(jù),而「時(shí)間序列」給出了一種時(shí)間軸線上縱向的視角,將時(shí)間作為自變量,測量出一系列縱向數(shù)據(jù)。 關(guān)于「時(shí)間序列」的預(yù)測模型,我所了解的常用模型有三種:1. 移動(dòng)平均 2. 指數(shù)預(yù)測模型 3. ARIMA 預(yù)測模型 0. 時(shí)序的分解 要研究時(shí)序如何預(yù)測,首先需要將復(fù)雜的時(shí)序數(shù)據(jù)進(jìn)行分解,將復(fù)雜的時(shí)序數(shù)據(jù)分解為單一的分解成分,這樣能利用統(tǒng)計(jì)方法進(jìn)行擬合,然后個(gè)個(gè)擊破,最后再合成為我們需要預(yù)測的未來時(shí)序數(shù)據(jù)。 前人在這一問題上已經(jīng)得到很好的結(jié)論,通過對(duì)時(shí)序數(shù)據(jù)現(xiàn)實(shí)意義的理解,一般將時(shí)序數(shù)據(jù)分解為四個(gè)成分: 1. 水平項(xiàng) 2. 趨勢項(xiàng) 3. 季節(jié)效應(yīng)(衍生出去為周期項(xiàng)) 4. 隨機(jī)波動(dòng)
通常在分解以上各個(gè)成分時(shí),有兩種模式,一個(gè)是乘法模型,一個(gè)是加法模型。其中,加法模型的季節(jié)效應(yīng)被認(rèn)為不依賴于時(shí)間序列,二乘法模型認(rèn)為季節(jié)影響隨著時(shí)間會(huì)發(fā)生改變。不過兩種模型在計(jì)算時(shí)可以相通,對(duì)乘法模型作對(duì)數(shù)處理即可。 1. 移動(dòng)平均 這一方法很簡單,只做簡單講解
即: 較小的 k 值將更快速追蹤時(shí)間序列的移動(dòng),而較大的 k 值將隨著時(shí)間的推移更有效地消除隨機(jī)波動(dòng)。
即: 2. 指數(shù)預(yù)測模型 指數(shù)預(yù)測模型也是利用過去的時(shí)間序列值的加權(quán)平均數(shù)作為預(yù)測值,它是加權(quán)移動(dòng)平均法的一個(gè)特例。 即:只選擇最近時(shí)期觀測值的權(quán)重,其他數(shù)據(jù)值的權(quán)重則自動(dòng)推算,原則是時(shí)間距離越遠(yuǎn)權(quán)重越小。 2.1. 單指數(shù)平滑 單指數(shù)平滑,不考慮季節(jié)和趨勢分解,僅用過去數(shù)據(jù)值的加權(quán)平均數(shù)來預(yù)測。其思想為: 其中 F 為某時(shí)刻的預(yù)測值,Y 為某時(shí)刻的觀測值。以上公式從 t = 1 開始遞推,則每個(gè)時(shí)刻的預(yù)測值都包含著過去所有觀測值的成分,只是權(quán)重不同,令F1 = Y1 ,則: α為平滑常數(shù),越接近于 1 ,則近期觀測值的權(quán)重越大;反之,越接近于0,歷史觀測值權(quán)重越大。 2.2. Holt 指數(shù)平滑 Holt 指數(shù)平滑,在單指數(shù)平滑的基礎(chǔ)上,還對(duì)趨勢項(xiàng)進(jìn)行了擬合。 由于考慮到了趨勢項(xiàng),則預(yù)測值可表示為: 其中 Lt 為 t 時(shí)刻時(shí)序水平項(xiàng)的估計(jì)值,bt為 t 時(shí)刻時(shí)序斜率的估計(jì)值。 α為水平平滑常數(shù), β為斜率平滑常數(shù)。 2.3. Holt-Winters 指數(shù)平滑 Holt-Winters 指數(shù)平滑,在 Holt 指數(shù)平滑的基礎(chǔ)上,還對(duì)季節(jié)項(xiàng)(周期項(xiàng))進(jìn)行了擬合, 由于還考慮到了季節(jié)項(xiàng),則預(yù)測值表示為: 其中 i 為季節(jié)項(xiàng)的周期,mod 是求余,P 是某時(shí)刻時(shí)序周期的估計(jì)值。
2.4. R 語言實(shí)現(xiàn) 以上三種指數(shù)平滑模型,采用 forecast 包中的 ets ( ) 函數(shù)即可:
3. ARIMA 預(yù)測模型 ARIMA 模型的相關(guān)資料我找到了,但是并沒有看完和看懂,相對(duì)來說其思想確實(shí)有些復(fù)雜。而且最近買了《統(tǒng)計(jì)學(xué)方法》和《機(jī)器學(xué)習(xí)》兩本書,發(fā)現(xiàn)自己的線性代數(shù)水平還很難看懂這些公式和算法推導(dǎo),所以準(zhǔn)備把《 R 語言實(shí)戰(zhàn) 》敲完后轉(zhuǎn)入線性代數(shù)的復(fù)習(xí),之后學(xué)習(xí)方向待定。 這里我就僅把利用 R 語言進(jìn)行 ARIMA 模型模擬和預(yù)測的流程做以總結(jié): 3.1. 確保時(shí)序是平穩(wěn)的 時(shí)序平穩(wěn)的要求一般有兩個(gè):方差為均值、無趨勢項(xiàng) 方法是利用時(shí)序圖估判和 ndiffs ( ) 函數(shù)推薦最優(yōu)的差分次數(shù) d 。 3.2. 選擇模型 通過 ACF 和 PACF 圖來判斷 p 和 q 參數(shù)的值。 其中 ACF 為自相關(guān)函數(shù)圖用于判斷 q,PACF 為偏自相關(guān)圖用于判斷 p。 p 為自回歸模型(AR)參數(shù),q 為移動(dòng)平均模型(MA)參數(shù)。 3.3. 擬合模型
3.4. 模型評(píng)價(jià) 模型的殘差應(yīng)該滿足獨(dú)立正態(tài)分布,根據(jù)這一條: 1. 使用正態(tài) Q-Q 圖來判斷其正態(tài)性 2. 使用box.test ( ) 函數(shù)對(duì)模型的殘差進(jìn)行獨(dú)立性檢驗(yàn)。 3.5. 預(yù)測
3.6. 自動(dòng)預(yù)測 forecast 包中的 auto.arima ( ) 函數(shù)可以實(shí)現(xiàn)最優(yōu) ARIMA 模型的自動(dòng)選取。 |
|