時間序列模式

常用按時間順序排列的一組隨機變量X_1,X_2,...,X_t來表示一個隨機事件的時間序列,簡記爲\{X_t\};用x_1,x_2,...,x_n\{x_t,t=1,2,...,n\}表示該隨機序列的n個有序的觀察值,稱之爲序列長度爲n的觀察值序列。

時間序列在各個領域中都非常常見,就餐飲企業而言,其銷售預測可以看做是基於時間序列的短期數據預測,預測對象爲具體菜品銷售量,在金融領域,嚐嚐使用歷史股票數據來預測未來的股票價格,等等。

時間序列預測主要就是使用已知的歷史數據,來預測未來的數據,其關鍵就是抓住歷史數據之間的聯繫以及歷史數據和未來數據之間的聯繫。

時間序列算法

常用的時間序列模型如下圖所示:

 時間序列預處理

拿到一個觀察值序列後,首先要對它的純隨機性和平穩性進行檢驗,這兩個重要的檢驗稱爲序列的預處理。根據檢驗結果可以將序列分爲不同的類型,對不同類型的序列會纔去不同的分析方法。

純隨機序列:又稱爲白噪聲序列,序列的各項之間沒有任何的相關關係,序列在進行完全無序的隨機波動,可以終止對該序列的分析。白噪聲序列是沒有信息可提取的平穩序列。

 注意:純隨機序列具有的數學含義是零均值同方差。

平穩非白噪聲序列:它的均值和方差是常數,對於這種序列通常是建立一個線性模型來擬合改序列的發展,藉此提取該序列的有用信息。ARMA模型是最常用的平穩序列擬合模型。

非平穩序列:由於它的均值和方差不穩定,處理方法一般是將其轉變爲平穩序列,這樣就可以應用有關平穩時間序列的分析方法,一般是將其經過差分運算來轉變爲平穩序列。

如上圖所示,第一個圖示平穩序列,第二個圖是非平穩序列。

通過圖更詳細的說平穩序列是基本不存在趨勢的序列,這類序列中的各個觀察值基本上在某個固定的水平上波動,雖然在不同時間段波動的程度不同,但是並不存在某種規律,其波動可以看成是隨機的。而非平穩序列是包含趨勢、季節性或者週期性的序列,它可能只含有其中一種成分,也可能是幾種成分的組合。因此,非平穩序列又可以分爲有趨勢的序列,有趨勢和季節的序列,幾種成分的組合。

平穩性檢驗

1. 平穩時間序列的定義(從數學角度看)

對於隨機變量X,可以計算其均值\mu、方差\sigma ^2;對於兩個隨機變量X和Y,可以計算X、Y的協方差cov(X,Y)=E[(X-\mu _X)(Y-\mu _Y)]和相關係數\rho (X,Y)=\frac{cov(X,Y)}{\sigma _X\sigma _Y},兩者都是度量兩個不同事件之間的相互影響程度。

對於時間序列\{X_t,t\in T\},任何時刻的序列值X_t都是一個隨機變量,每一個隨機變量都會有均值和方差,記X_t的均值爲\mu _t,方差爲\sigma _t;任意t,s\in T,定義序列\{X_t\}的自協方差函數\gamma (t,s)=E[(X_t-\mu _t)(X_s-\mu _s)]和自相關係數\rho (t,s)=\frac{cov(X_t,X_s))}{\sigma _t\sigma _s},其中\gamma(t,t)=\gamma (0)=1,\rho _0=1,之所以稱它們爲自協方差函數和自相差係數,是因爲它們衡量的是同一個事件在兩個不同時期(時刻t和s)之間的相關程度,形象的講就是度量自己過去的行爲對自己現在的影響。

如果時間序列\{X_t,t\in T\}在某一常數附近波動且波動範圍有限,即有常數均值和常數方差、並且延遲k期的序列變量的自協方差和自相關係數是相等的或者說延遲k期的序列變量之間的影響程度是一樣的,則稱\{X_t,t\in T\}爲平穩序列。

2. 平穩性的檢驗

一般有兩種方法:一種是根據時序圖和自相關圖的特徵做出判斷的圖檢驗,該方法操作簡單,應用廣泛,缺點是帶有主觀性;另外一種是構造檢驗統計量進行檢驗的方法,目前最常用的方法是單位根檢驗

1)時序圖檢驗。根據平穩時間序列的均值和方差都爲長度的性質,平穩序列的時序圖顯示該序列值始終在一個常數附近隨機波動,而且波動的範圍有界;如果有明顯的趨勢性或者週期性,那它通常不是平穩序列。

2)自相關圖檢驗。平穩序列具有短期相關性,這個性質表明對平穩序列而言通常只有近期的序列值對現時值的影響比較明顯,間隔越遠的過去值對現時值的影響越小。隨着延遲期數k的增加,平穩序列的自相關係數\rho _k(延遲k期)會比較快的衰減趨向於零,並在零附近隨機波動,而非平穩序列的自相關係數衰減的速度比較慢,這就是利用自相關圖進行平穩性檢驗的標準。

3)單位根檢驗。單位根檢驗是指檢驗序列中是否存在單位根,如果存在就是非平穩性序列。

3. 純隨機性檢驗

如果一個序列是純隨機序列,那麼它的序列值之間應該沒有任何聯繫,即滿足\gamma (k)=0,k!=0這是一種理論上纔會出現的理想狀態,實際上純隨機序列的樣本自相關係數不會絕對爲零,但是很接近零,並在零附近隨機波動。

參考書目《Python數據分析與挖掘實戰》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章