Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Michał Kowalczykiewicz

Podobne prezentacje


Prezentacja na temat: "Michał Kowalczykiewicz"— Zapis prezentacji:

1 Michał Kowalczykiewicz
Time series forecasting using a hybrid ARIMA and neural network model (na podstawie pracy z Neurocomputing 50 (2003) 159 – 175, autorstwa G. Peter Zhang)

2 Szereg czasowy Szereg czasowy to proces stochastyczny, którego dziedziną jest czas; to zbiór informacji uporządkowanych w czasie, których pomiary wykonywane są z pewnym krokiem czasowym Analiza szeregów czasowych ma dwa główne cele: wykrywanie natury zjawiska reprezentowanego przez sekwencję obserwacji prognozowanie (przewidywanie przyszłych wartości szeregu czasowego)

3 Analiza szeregów Modele pure autoregressive (AR)
pure moving avarage (MA) autoregressive integrated moving average (ARIMA) bilinear model threshold autoregressive (TAR) autoregressive conditional heteroscedastic (ARCH) artificial neural network (ANN)

4 Analiza szeregów Modele pure autoregressive (AR)
pure moving avarage (MA) autoregressive integrated moving average (ARIMA) bilinear model threshold autoregressive (TAR) autoregressive conditional heteroscedastic (ARCH) artificial neural network (ANN)

5 ARIMA Jest metodą statystyczną służącą do analizowania szeregów czasowych, o liniowych zależnościach między danymi. Autorzy Box i Jenkins, 1976

6 ARIMA Model: yt = Ө0 + Ф1yt-1 + Ф2yt-2 . . . + Фpyt-p +
єt - Ө1єt-1 - Ө2єt Өqєt-q yt - wartość w czasie t єt - losowy błąd w czasie t Фi (i = 1, 2, , p), Өi (j = 0, 1, . . ., q) - parametry modelu p, q - porządek modelu єt - niezależne, ze średnią zero i stałą wariancją σ2

7 ARIMA Budowanie modelu za pomocą metody Boy - Jenkins’a (1976)
Algorytm FAZA 1 : identyfikacja modelu FAZA 2 : estymacja parametrów FAZA 3 : walidacja

8 ARIMA - identyfikacja modelu
W tej fazie należy ustalić (zidentyfikować) liczbę i typ parametrów modelu ARIMA, czyli określić wartości parametrów p i q.

9 ARIMA - identyfikacja modelu
W tej fazie należy ustalić (zidentyfikować) liczbę i typ parametrów modelu ARIMA, czyli określić wartości parametrów p i q. Korzysta się z: autokorelogramu (ACF) autokorelogramu cząstkowego (PACF)

10 ARIMA - uwagi Wymaga się, by wejściowy szereg dla tej fazy był stacjonarny, to znaczy, powinien on mieć stałą w czasie średnią, wariancję i autokorelację. Dlatego zazwyczaj szereg wymaga różnicowania aż do osiągnięcia stacjonarności różnicowanie: yt = yt - yt-1

11 ARIMA - estymacja parametrów
Polega na wyznaczeniu wartości parametrów Фi (i = 1, 2, , p), Өi (j = 0, 1, . . ., q) dla których otrzymujemy maksymalną wiarygodność (prawdopodobieństwo) otrzymania właśnie obserwowanego szeregu. Aby mierzony błąd był minimalny

12 ARIMA - estymacja parametrów
Polega na wyznaczeniu wartości parametrów Фi (i = 1, 2, , p), Өi (j = 0, 1, . . ., q) dla których otrzymujemy maksymalną wiarygodność (prawdopodobieństwo) otrzymania właśnie obserwowanego szeregu. Aby mierzony błąd był minimalny W praktyce wymaga to obliczenia (warunkowych) sum kwadratów reszt przy zadanych parametrach

13 ARIMA - walidacja W ostatniej fazie oceniamy trafność naszego modelu. Jeśli model zawiera wiele parametrów i\lub wyniki nas nie zadowalają

14 ARIMA - walidacja W ostatniej fazie oceniamy trafność naszego modelu. Jeśli model zawiera wiele parametrów i\lub wyniki nas nie zadowalają możemy próbować powtórnie z innymi wartościami początkowymi parametrów (czyli wracamy do FAZA 1).

15 ANN Jest ogólnym modelem potrafiącym wykrywać nieliniowe zależnościach między danymi, w szeregów czasowych

16 ANN Najczęściej używaną siecią w tym zagadnieniu jest a sieć GLM
zależność między wyjściem yt , a wejściam (yt-1, yt-2, . . ., yt-p), jest następująca: yt = α0 + Σj<=q αjg(Σ i<=p βijyt-i) + єt αj (j = 0, 1, . . ., q), βij (i = 0, 1, . . ., p; j = 1, 2, . . ., q) - wagi p - liczba wejść q - liczba neuronów w warstwie ukrytej

17 ANN Jako funkcję aktywacji środkowej warstwy przyjmuję się funkcje logistic: g(x) = 1 / (1 + exp(-x)) liczba wejść sieci (p) i liczba neuronów wewnętrznych (q) są dobierane eksperymentalnie.

18 Hybrid Dla danych o których nie wiemy, czy są związki w nich występujące są liniowe czy, też nie żadna z wymienionych metoda nie jest odpowiednia. Metoda ARIMA nie wykrywa nieliniowości w danych Sieci neuronowe dają średnie wyniki dla danych w których występują zarówno liniowe jak i nieliniowe związki

19 Hybrid Dla danych o których nie wiemy, czy są związki w nich występujące są liniowe czy, też nie żadna z wymienionych metoda nie jest odpowiednia. Metoda ARIMA nie wykrywa nieliniowości w danych Sieci neuronowe dają średnie wyniki dla danych w których występują zarówno liniowe jak i nieliniowe związki Potrzebujemy uniwersalnego modelu, odpowiedniego dla wszystkich rodzajów danych

20 Hybrid Model: yt = Lt + Nt Lt - liniowy komponent
Nt - nieliniowy komponent Te dwa parametry muszą zostać wyznaczone z danych

21 Hybrid - Liniowy komponent
Wpierw metodą ARIMA modelujemy liniowy komponent (Ľ). Jeśli tylko Ľ~L (czyli Ľ zawiera wszystkie liniowe relacje w danych) to residua powstałe z liniowego modelu będą zawierały tylko nieliniowe związki.

22 Hybrid - Nieliniowy komponent
Niech et będzie resztą z dopasowanego liniowego modelu w czasie t. Wtedy: et = yt - Ľ t Te wartości możemy zamodelować za pomocą sieci neuronowej: et = f(et-1, et-2, . . ., et-n) + єt єt - losowy błąd w czasie t

23 Hybrid Ostatecznie yt ~ Ľ t + N’t
gdzie N’t przewidywana wartość w czasie t wyznaczona przez ANN

24 Hybrid - przykłady Testowane szeregi czasowe: Lynx Sunspot
Exchange rate

25 Dziękuję za uwagę


Pobierz ppt "Michał Kowalczykiewicz"

Podobne prezentacje


Reklamy Google