Szeregi niestacjonarne
Transkrypt
Szeregi niestacjonarne
Analiza szeregów czasowych: 6. Liniowe modele niestacjonarne P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 Warunki stacjonarności modelu AR(p) yn = β1yn−1 + β2yn−2 + · · · + βpyn−p + α0ηn . (1) Proces (1) jest stacjonarny wtedy i tylko wtedy, gdy pierwiastki równania λp − β1λp−1 − β2λp−2 − · · · − βp = 0 (2) leża˛ wewnatrz ˛ okregu ˛ jednostkowego. Jeżeli któryś pierwiastek leży poza okregiem ˛ jednostkowym, model wybucha. Co sie˛ dzieje, jeśli jakiś pierwiastek leży na okregu ˛ jednostkowym? Model jest niestacjonarny, ale czy możemy jakoś sobie z tym poradzić? 6. Liniowe modele niestacjonarne 2 Trendy liniowe Rozważmy proces yn+1 = yn + αηn (3) Proces ten jest niestacjonarny, równanie (2) ma dla niego postać λ − 1 = 0, ale szereg pierwszych różnic jest stacjonarny: (1) zn ≡ yn+1 − yn = αηn (4) jest stacjonarny! Ogólnie, jeśli zbudowany ze współczynników procesu wielomian wystepuj ˛ acy ˛ w równaniu (2) ma postać (λ − 1)Bp(λ), gdzie Bp jest wielomianem stopnia p, majacym ˛ wszystkie pierwiastki wewnatrz ˛ okregu ˛ jednostkowego, proces taki nazywamy procesem ARIMA(1,p,0). Proces taki ma (lokalny) trend liniowy. 6. Liniowe modele niestacjonarne 3 Trendy kwadratowe Podobnie, jeśli zbudowany ze współczynników procesu wielomian wystepuj ˛ acy ˛ w równaniu (2) ma postać (λ − 1)2Bp(λ), gdzie Bp jest wielomianem stopnia p, majacym ˛ wszystkie pierwiastki wewnatrz ˛ okregu ˛ jednostkowego, proces taki nazywamy procesem ARIMA(2,p,0). Proces taki ma (lokalny) trend kwadratowy. Szereg jego drugich różnic jest stacjonarny. Przykład: yn+1 = 2yn − yn−1 + α0ηn (1) zn (1) ≡ yn+1 − yn = zn−1 + α0ηn (2) (1) (1) zn ≡ zn − zn−1 = α0ηn 6. Liniowe modele niestacjonarne (5a) (5b) (5c) 4 Przykład szeregu z trendem liniowym 10 0 -10 -20 -30 -40 -50 -60 -70 -80 time series first differences -90 0 64 128 192 256 320 384 448 512 Niestacjonarny szereg czasowy i stacjonarny szereg pierwszych różnic 6. Liniowe modele niestacjonarne 5 Przykład szeregu z trendem kwadratowym 6000 5000 4000 3000 2000 1000 time series 0 0 64 128 192 256 320 384 448 512 Niestacjonarny szereg czasowy 6. Liniowe modele niestacjonarne 6 40 30 20 10 0 -10 -20 first differences second differences -30 0 64 128 192 256 320 384 448 512 Niestacjonarny szereg pierwszych różnic szeregu z poprzedniego rysunku i stacjonarny szereg drugich różnic 6. Liniowe modele niestacjonarne 7 “Empiryczny” sposób postepowania ˛ Jeśli domyślamy sie, ˛ że badany szereg czasowy może mieć trend liniowy, badamy szereg jego pierwszych różnic. Jeśli szereg pierwszych różnic jest niestacjonarny, badamy szereg drugich różnic. W praktycznych zastosowaniach szeregi z trendami liniowymi i kwadratowymi na ogół wystarczaja, ˛ możemy sie˛ wiec ˛ ograniczyć do badania pierwszych i drugich różnic. 6. Liniowe modele niestacjonarne 8 Przykład szeregu z trendem sześciennym (nierealistyczny) 400000 300000 200000 100000 0 -100000 time series -200000 -300000 0 64 128 192 256 3000 30 2000 20 1000 10 0 0 -1000 -10 -2000 -20 -3000 320 384 448 512 -30 first differences -4000 -40 -5000 -50 0 64 128 6. Liniowe modele niestacjonarne 192 256 320 384 448 512 second differences third differences 0 64 128 192 256 320 384 448 512 9 Dopasowywanie modelu • Z niestacjonarnego szeregu czasowego tworzymy stacjonarny szereg pierwszych, ewentualnie drugich różnic. • Do stacjonarnego szeregu różnic dopasowujemy model ARMA(p,q). • Wyjściowy szereg jest wówczas procesem typu ARIMA(p,d,q), gdzie d oznacza rzad ˛ różnicy, jaki był potrzebny do uzyskania szeregu stacjonarnego. • “I” w nazwie ARIMA oznacza “Integrated” — wycałkowany, czyli wysumowany. 6. Liniowe modele niestacjonarne 10 Przykład 1.0 0.5 0.0 -0.5 -1.0 -1.5 -2.0 0 128 256 384 512 640 768 896 1024 0 128 256 384 512 640 768 896 1024 0.5 0.0 -0.5 Niestacjonarny szereg czasowy i stacjonarny szereg pierwszych różnic 6. Liniowe modele niestacjonarne 11 1 0.5 0 -0.5 -1 0 2 4 6 8 10 12 14 16 Funkcja korelacji ρk i funkcja korelacji czastkowej ˛ ϕkk dla szeregu pierwszych różnic z poprzedniego rysunku. Uznajemy, iż ϕ33 ' 0. 6. Liniowe modele niestacjonarne 12 Ponieważ ϕ33 ' 0, przyjmujemy, że szereg pierwszych różnic jest procesem AR(p = 2). Z równań Yule’a-Walkera obliczamy β1 = −0.849523, β2 = −0.165224. Wielomian określajacy ˛ stabilność szeregu pierwszych różnic dany jest przez λ2 −β1λ−β2, a wobec tego wielomian określajacy ˛ stabilność przecałkowanego procesu dany jest przez (λ − 1)(λ2 − β1λ − β2), a zatem badany proces jest procesem ARIMA(2,1,0). Nateżenie ˛ szumu szacujemy liczac ˛ pierwiastek z wariancji szeregu pierwszych różnic. Ostatecznie dla badanego procesu otrzymujemy yn+1 = 0.150477 yn + 0.684299 yn−1 + 0.165224 yn−2 + 0.189055 ηn (6) Proces, którego użyto do wygenerowania tego przykładu, miał postać yn+1 = 0.166667 yn + 0.666667 yn−1 + 0.166667 yn−2 + 0.125000 ηn 6. Liniowe modele niestacjonarne 13 Gdy szum jest silniejszy, sytuacja może sie˛ pogorszyć 12.0 10.0 8.0 6.0 4.0 2.0 0.0 -2.0 -4.0 64 128 192 256 320 384 448 512 576 640 704 768 832 896 960 1024 64 128 192 256 320 384 448 512 576 640 704 768 832 896 960 1024 2.0 1.0 0.0 -1.0 -2.0 Niestacjonarny szereg czasowy i stacjonarny szereg pierwszych różnic 6. Liniowe modele niestacjonarne 14 1 0.5 0 -0.5 -1 0 2 4 6 8 10 12 14 16 Funkcja korelacji ρk i funkcja korelacji czastkowej ˛ ϕkk dla szeregu pierwszych różnic z poprzedniego rysunku. 6. Liniowe modele niestacjonarne 15 W tym wypadku też moglibyśmy na oko uznać, że ϕ33 ' 0, a zatem, że szereg pierwszych różnic można opisać procesem AR(2). Ale czy istnieje jakieś kryterium pozwalajace ˛ rozstrzygnać ˛ o rz˛edzie modelu? 6. Liniowe modele niestacjonarne 16 Kryterium Akaike AIC — Akaike Information Criterion Jest jasne, że jeśli do danych dopasowujemy różne model, dopasowanie bedzie ˛ tym lepsze, im wiecej ˛ swobodnych parametrów bedziemy ˛ mieli do dyspozycji. Z drugiej strony modele ze zbyt duża˛ liczba˛ swobodnych parametrów sa˛ uważane za niedobre. Powinniśmy wiec ˛ jednocześnie nagradzać dobre dopasowanie i „karać” za zbyt wiele parametrów. Zakładamy, że błedy ˛ pochodza˛ z rozkładu normalnego i że dopasowanie przeprowadzamy metoda˛ najmniejszych kwadratów. 6. Liniowe modele niestacjonarne 17 p N gdzie Q jest rezydualnym błedem: ˛ Przy dopasowywaniu modelu AR(p), AIC = ln Q + 2 Q= X n zn − p X (7) 2 βj zn−j (8) j=1 p gdzie {βj }j=1 sa˛ dopasowanymi parametrami dla procesu rz˛edu p. Im wyższe p, tym, potencjalnie, mniejsze Q, ale zarazem tym wiekszy ˛ jest człon 2p/N . Dobieramy takie p, aby AIC było najmniejsze. Uwaga: gdyby błedy ˛ nie pochodziły z rozkładu normalnego, trzebaby przyjać ˛ inna˛ definicje˛ AIC. 6. Liniowe modele niestacjonarne 18 6.6 6.5 6.4 AIC 6.3 6.2 6.1 6 5.9 5.8 4 8 12 16 20 24 28 32 p Kryterium Akaike sugeruje użycie modelu AR(6). 6. Liniowe modele niestacjonarne 19 Dla n = 6 otrzymalibyśmy β1 = −0.832051, β2 = −0.181079, β3 = 0.0407839, β4 = 0.0650440, β5 = 0.0504210, β6 = 0.0310754, a zatem wyjściowy szereg byłby procesem ARIMA(6,1,0) o parametrach yn+1 = 0.167949 yn + 0.650972 yn−1 + 0.221863 yn−2 + 0.024260 yn−3 − 0.014620 yn−4 − 0.081496 yn−5 − 0.031075 yn−6 + 0.700224 ηn (9) Dla porównania, przyjecie ˛ p = 2 daje β1 = −0.831124, β2 = −0.189943 i dalej ARIMA(2,1,0): yn+1 = 0.168876 yn + 0.641181 yn−1 + 0.189943 yn−2 + 0.700224 ηn (10) co jest nieco gorszym przybliżeniem idealnych parametrów użytych do wygenerowania szeregu. 6. Liniowe modele niestacjonarne 20 Kryterium Akaike w “zwykłej” metodzie najmniejszych kwadratów 6 dane generating function 5 4 y(x) 3 2 1 0 -1 0.0 0.5 1.0 1.5 2.0 x 2.5 3.0 3.5 4.0 Punkty wygenerowane według wzoru yn = 0.125 x3n + 0.25 x2n − 2.5 xn + 3.0 + 0.5 ηn 6. Liniowe modele niestacjonarne (11) 21 6 dane 2 1.00276 x - 3.71561 x + 3.45878 3 AIC = 1.003000 2 0.116057 x + 0.28466 x - 2.51242 x + 3.01371 5 4 3 AIC = 0.743705 2 -0.00220287 x + 0.134231 x + 0.235956 x - 2.46613 x + 3.00285 AIC = 0.806068 4 y(x) 3 2 1 0 -1 0.0 0.5 1.0 1.5 2.0 x 2.5 3.0 3.5 4.0 Wyniki dopasowania Dopasowane krzywe trzeciego i czwartego stopnia — w skali rysunku nierozróżnialne 6. Liniowe modele niestacjonarne 22 Szeregi sezonowe Staramy sie˛ zidentyfikować okres, po czym tworzymy szereg odpowiednich różnic 3 szereg szereg 32-gich roznic 2 yn 1 0 -1 -2 -3 0 100 200 300 400 500 n Do stacjonarnego szeregu różnic dopasowujemy jakiś model ARMA 6. Liniowe modele niestacjonarne 23