Saturday, 11 November 2017

Autoregressive moving average model excel


ARMA Unplugged Jest to pierwszy wpis w naszej serii samouczków Unplugged, w których zagłębimy się w szczegóły każdego z modeli szeregów czasowych, które już znasz, podkreślając podstawowe założenia i kierując do domu intuicje, które za nimi stoją. W tym wydaniu traktujemy model ARMA jako kamień węgielny w modelowaniu szeregów czasowych. W przeciwieństwie do wcześniejszych problemów z analizą, zaczniemy od definicji procesu ARMA, przedstawimy dane wejściowe, wyjściowe, parametry, ograniczenia stabilności, założenia i na koniec opracujemy kilka wskazówek dotyczących procesu modelowania. Tło Z definicji autoregresyjna średnia ruchoma (ARMA) to stacjonarny proces stochastyczny składający się z sumy autoregressive Excel i ruchomych składników średnich. Alternatywnie, w prostym sformułowaniu: Założenia Przyjrzyjmy się bliżej sformułowaniu. Proces ARMA jest po prostu ważoną sumą przeszłych obserwacji i wstrząsów wyjściowych, z kilkoma kluczowymi założeniami: Co oznaczają te założenia Proces stochastyczny jest odpowiednikiem deterministycznego procesu, opisującego ewolucję zmiennej losowej w czasie. W naszym przypadku zmienną losową jest Proces ARMA przechwytuje jedynie korelację szeregową (tj. Autokorelację) pomiędzy obserwacjami. Mówiąc krótko, proces ARMA podsumowuje wartości wcześniejszych obserwacji, a nie ich wartości kwadratów lub ich logarytmy itd. Wyższe zależności rzędu nakazują inny proces (np. ARCHGARCH, nieliniowe modele itp.). Istnieje wiele przykładów procesu stochastycznego, w którym przeszłe wartości wpływają na obecne. Na przykład w biurze sprzedaży, które na bieżąco otrzymuje zapytania ofertowe, niektóre z nich są realizowane jako wygrane w sprzedaży, niektóre jako utracone ze sprzedaży, a kilka z nich rozlewa się na następny miesiąc. W rezultacie, w danym miesiącu, niektóre z wygranych w sprzedaży przypadków pochodzą z zapytań ofertowych lub są powtórką sprzedaży z poprzednich miesięcy. Jakie są wstrząsy, innowacje lub terminy błędów Jest to trudne pytanie, a odpowiedź nie jest mniej myląca. Mimo to, spróbujmy: słowami prostymi, termin błędu w danym modelu jest wiadrem typu "catch-all" dla wszystkich odmian, których model nie wyjaśnia. Wciąż zagubione. Użyjmy przykładu. W przypadku procesu ceny giełdowej prawdopodobnie istnieją setki czynników, które powodują wzrost poziomu cen, w tym: informacje o dywidendzie i ogłoszeniach kwartalnych Kwartalne raporty o zarobkach Działania związane z fuzją i przejęciem (MAMPA) Zdarzenia prawne, np. groźba pozwów grupowych. Inne Z założenia model jest uproszczeniem złożonej rzeczywistości, więc to, co pozostawiamy poza modelem, jest automatycznie dołączane do terminu błędu. Proces ARMA zakłada, że ​​zbiorowy efekt wszystkich tych czynników działa mniej więcej tak samo jak szum Gaussa. Dlaczego dbamy o przeszłe wstrząsy W przeciwieństwie do modelu regresji, pojawienie się bodźca (np. Szoku) może mieć wpływ na obecny poziom i być może na przyszłe poziomy. Na przykład wydarzenie firmowe (np. Działalność MAMPA) wpływa na cenę akcji spółki zależnej, ale zmiana może zająć trochę czasu, aby wywrzeć pełny wpływ, ponieważ uczestnicy rynku absorbują dostępne informacje i odpowiednio reagują. To nasuwa pytanie: czy poprzednie wartości wyjścia już nie zawierają wstrząsów przeszłości TAK, historia wstrząsów jest już uwzględniona na poprzednich poziomach wyjściowych. Model ARMA może być wyłącznie reprezentowany jako model czysto autoregresyjny (AR), ale wymóg przechowywania takiego systemu w nieskończoność. Jest to jedyny powód uwzględnienia komponentu MA: oszczędzić na przechowywaniu i uprościć formułowanie. Ponownie, proces ARMA musi być stacjonarny, aby istnieć marginalna (bezwarunkowa) wariancja. Uwaga: W mojej dyskusji powyżej, nie robię rozróżnienia między jedynie brakiem pierwiastka jednostki w charakterystycznym równaniu a niestacjonarnością procesu. Są spokrewnione, ale brak korzenia jednostki nie jest gwarancją stacjonarności. Mimo to, korzeń jednostki musi znajdować się wewnątrz koła jednostki, aby był dokładny. Wniosek Podsumujmy to, co do tej pory zrobiliśmy. Najpierw zbadaliśmy stacjonarny proces ARMA, wraz z jego formułowaniem, nakładami, założeniami i wymaganiami dotyczącymi pamięci masowej. Następnie pokazaliśmy, że proces ARMA zawiera wartości wyjściowe (autokorelacja) i wstrząsy doświadczane wcześniej na bieżącym wyjściu. Na koniec pokazaliśmy, że stacjonarny proces ARMA wytwarza szereg czasowy ze stabilną długoterminową średnią i wariancją. W naszej analizie danych, zanim zaproponujemy model ARMA, powinniśmy zweryfikować założenie stacjonarności i wymagania dotyczące pamięci skończonej. W przypadku, gdy serie danych wykazują trend deterministyczny, musimy najpierw usunąć (odstroić), a następnie użyć reszt dla ARMA. W przypadku, gdy zestaw danych wykazuje trend stochastyczny (na przykład chodzenie przypadkowe) lub sezonowość, musimy przyjąć ARIMASARIMA. Na koniec, korelogram (tj. ACFPACF) może być użyty do zmierzenia wymagań pamięci modelu, który powinien oczekiwać, że ACF lub PACF ulegną szybkiemu zanikowi po kilku opóźnieniach. Jeśli nie, może to być oznaką niestacjonarności lub długoterminowego schematu (np. ARFIMA).ARIMA Prognozowanie za pomocą Excela i R Hello Dzisiaj przedstawię wprowadzenie do modelu ARIMA i jego składników, a także jako krótkie wyjaśnienie metody Box-Jenkinsa, w jaki sposób określone są modele ARIMA. Wreszcie, stworzyłem implementację programu Excel przy użyciu R, który I8217ll pokazuje, jak skonfigurować i używać. Modele Autoregressive Moving Average (ARMA) Model Autoregressive Moving Average służy do modelowania i prognozowania stacjonarnych, stochastycznych procesów szeregów czasowych. Jest to połączenie dwóch wcześniej opracowanych technik statystycznych, modeli Autoregressive (AR) i Moving Average (MA) i zostało pierwotnie opisane przez Petera Whittle'a w 1951 roku. George E. P. Box i Gwilym Jenkins spopularyzowali model w 1971 roku, określając dyskretne kroki w celu identyfikacji modelu, oszacowania i weryfikacji. Proces ten zostanie opisany później w celach informacyjnych. Zaczniemy od wprowadzenia modelu ARMA przez jego różne komponenty, modele AR i MA, a następnie zaprezentujemy popularne uogólnienie modelu ARMA, ARIMA (Autoregressive Integrated Moving Average) oraz prognozy i etapy specyfikacji modelu. Na koniec wytłumaczę utworzoną przeze mnie implementację Excela i sposób jej wykorzystania do przygotowania prognoz serii czasowych. Modele autoregresyjne Model autoregresyjny służy do opisywania procesów losowych i procesów zmiennych w czasie i określa, że ​​zmienna wyjściowa zależy liniowo od poprzednich wartości. Model jest opisany jako: Xt c sum varphii, Xt-i varepsilont Gdzie varphi1, ldots, varphivarphi są parametrami modelu, C jest stałe, a varepsilont jest terminem białego szumu. Zasadniczo to, co opisuje model, dotyczy dowolnej wartości X (t). można to wytłumaczyć funkcjami jego poprzedniej wartości. Dla modelu z jednym parametrem, varphi 1. X (t) jest wyjaśnione przez jego poprzednią wartość X (t-1) i losowy błąd varepsilont. Dla modelu z więcej niż jednym parametrem, na przykład varphi 2. X (t) jest podane przez X (t-1). X (t-2) i przypadkowy błąd varepsilont. Model średniej ruchomej Model średniej ruchomej (MA) jest często używany do modelowania jednowymiarowych szeregów czasowych i jest definiowany jako: Xt mu varepsilont theta1, varepsilon ldots thetaq, varepsilon mu jest średnią serii czasowych. theta1, ldots, thetaq są parametrami modelu. varepsilont, varepsilon, ldots są terminami błędu białego szumu. q jest kolejnością modelu średniej ruchomej. Model średniej ruchomej jest regresją liniową bieżącej wartości szeregu w porównaniu do warunków varepsilont w poprzednim okresie, t. varepsilon. Na przykład, model MA q 1. X (t) jest wyjaśniony przez bieżący błąd varepsilont w tym samym okresie i wartość błędu przeszłego, varepsilon. Dla modelu rzędu 2 (q 2), X (t) jest wyjaśnione przez dwie ostatnie wartości błędu: varepsilon i varepsilon. Terminy AR (p) i MA (q) są stosowane w modelu ARMA, który zostanie teraz wprowadzony. Autoregresyjny model średniej ruchomej Autoregresyjny model średniej ruchomej wykorzystuje dwa wielomiany, AR (p) i MA (q) i opisuje stacjonarny proces stochastyczny. Proces stacjonarny nie zmienia się po przesunięciu w czasie lub przestrzeni, dlatego proces stacjonarny ma stałą średnią i wariancję. Model ARMA jest często określany jako wielomian, ARMA (p, q). Zapisuje się oznaczenie modelu: Xt c varepsilont sum varphi1 X sum thetai varepsilon Wybór, oszacowanie i weryfikacja modelu jest opisana w procesie Box-Jenkinsa. Metoda Box-Jenkinsa do identyfikacji modelu Poniżej znajduje się bardziej zarys metody Box-Jenkins, ponieważ faktyczny proces znajdowania tych wartości może być dość przytłaczający bez pakietu statystycznego. Arkusz Excel zawarty na tej stronie automatycznie określa najlepiej dopasowany model. Pierwszym krokiem metody Box-Jenkins jest identyfikacja modelu. Krok ten obejmuje identyfikację sezonowości, różnicowanie w razie potrzeby i określenie kolejności p i q poprzez wykreślenie funkcji autokorelacji i częściowej autokorelacji. Po zidentyfikowaniu modelu, kolejnym krokiem jest oszacowanie parametrów. Oszacowanie parametrów wykorzystuje pakiety statystyczne i algorytmy obliczeniowe w celu znalezienia najlepszych parametrów dopasowania. Po wybraniu parametrów, ostatnim krokiem jest sprawdzenie modelu. Sprawdzanie modelu odbywa się poprzez testowanie, aby sprawdzić, czy model jest zgodny ze stacjonarnymi jednowymiarowymi szeregami czasowymi. Należy również potwierdzić, że reszty są od siebie niezależne i wykazują stałą średnią i wariancję w czasie, co można osiągnąć przez wykonanie testu Ljung-Box lub ponowne naniesienie autokorelacji i częściowej autokorelacji reszt. Zauważ, że pierwszy krok polega na sprawdzeniu sezonowości. Jeśli dane, z którymi pracujesz, zawierają sezonowe trendy, możesz 8220 różnić8221, aby dane stały. Ten etap różnicowania uogólnia model ARMA na model ARIMA lub Autoregresyjną zintegrowaną średnią ruchomą, gdzie 8216Integrated8217 odpowiada etapowi różnicowania. Autoregressive Integrated Moving Average Models Model ARIMA ma trzy parametry, p, d, q. Aby zdefiniować model ARMA w celu uwzględnienia terminu różnicowego, rozpoczynamy od zmiany standardowego modelu ARMA, aby oddzielić X (t) lateks i lateks od podsumowania. (1 - suma alfai Li) Xt (1 suma thetai Li) varepsilont Gdzie L jest operatorem opóźnienia i alfą. thetai. varepsilont to odpowiednio autoregresyjne i ruchome parametry oraz terminy błędów. Przyjmujemy teraz założenie, że pierwszy wielomian funkcji (1 - suma alfai Li) ma jednorodny pierwiastek o krotności d. Możemy następnie przepisać go na następujący: Model ARIMA wyraża wielomianową faktoryzację za pomocą pp-d i podaje nam: (1 - suma phii Li) (1 - L) d Xt (1 suma thetai Li) varepsilont Wreszcie, generalizujemy model dalej, dodając termin dryfu, który definiuje model ARIMA jako ARIMA (p, d, q) z przesunięciem frac. (1 - suma phii Li) (1 - L) d Xt delta (1 suma thetai Li) varepsilont Przy obecnie zdefiniowanym modelu możemy zobaczyć model ARIMA jako dwie oddzielne części, jedną niestacjonarną i drugą szeroką - stacjonarną (wspólny rozkład prawdopodobieństwa nie zmienia się po przesunięciu w czasie lub przestrzeni). Model niestacjonarny: model stacjonarny o szerokim znaczeniu: (1 - suma phii Li) Yt (1 suma thetai Li) varepsilont Prognozy można teraz wykonać na Yt za pomocą uogólnionej autoregresyjnej metody prognozowania. Teraz, gdy omówiliśmy modele ARMA i ARIMA, teraz sięgamy do tego, w jaki sposób możemy ich używać w praktycznych aplikacjach do prognozowania. Zbudowałem implementację za pomocą programu Excel, używając R do tworzenia prognoz ARIMA, a także opcję uruchomienia symulacji Monte Carlo na modelu w celu określenia prawdopodobieństwa prognoz. Implementacja i sposób korzystania z programu Excel Przed użyciem arkusza należy pobrać pliki R i RExcel ze strony internetowej Statconn. Jeśli masz już zainstalowany R, możesz po prostu pobrać RExcel. Jeśli nie masz zainstalowanego R, możesz pobrać RAndFriends, który zawiera najnowszą wersję R i RExcel. Uwaga: RExcel działa tylko w 32-bitowym Excelu z niekomercyjną licencją. Jeśli masz zainstalowany 64-bitowy program Excel, będziesz musiał uzyskać komercyjną licencję od Statconn. Zaleca się pobranie RAndFriends, ponieważ umożliwia najszybszą i najłatwiejszą instalację, jednak jeśli masz już R i chciałbyś zainstalować go ręcznie, wykonaj następujące kroki. Ręczne instalowanie programu RExcel Aby zainstalować program RExcel i inne pakiety, aby program R działał w programie Excel, najpierw otwórz system R jako administrator, klikając prawym przyciskiem myszy plik. exe. W konsoli R zainstaluj program RExcel, wpisując następujące instrukcje: Powyższe polecenia zainstalują program RExcel na komputerze. Następnym krokiem jest instalacja programu rcom, który jest kolejnym pakietem firmy Statconn dla pakietu RExcel. Aby to zainstalować, wpisz następujące polecenia, które również automatycznie zainstalują rscproxy z wersji R 2.8.0. Po zainstalowaniu tych pakietów możesz przejść do ustawienia połączenia między R i Excel. Chociaż nie jest to konieczne do instalacji, poręcznym pakietem do pobrania jest Rcmdr, opracowany przez Johna Foxa. Rcmdr tworzy R menu, które może stać się menu w Excelu. Ta funkcja jest domyślnie instalowana przez RAndFriends i udostępnia kilka poleceń R w Excelu. Wpisz następujące polecenia w R, aby zainstalować Rcmdr. Możemy utworzyć link do R i Excela. Uwaga w ostatnich wersjach RExcel to połączenie jest wykonywane za pomocą jednego kliknięcia na dostarczony plik. bat ActivateRExcel2017, więc powinieneś tylko wykonać te kroki, jeśli ręcznie zainstalowałeś R i RExcel lub jeśli z jakiegoś powodu połączenie nie zostanie wykonane podczas instalacja RAndFriends. Utwórz połączenie między R a Excel Otwórz nową książkę w Excelu i przejdź do ekranu opcji. Kliknij Opcje, a następnie Dodatki. Powinieneś zobaczyć listę wszystkich aktywnych i nieaktywnych dodatków, które aktualnie posiadasz. Kliknij przycisk Przejdź na dole. W oknie dialogowym Dodatki zobaczysz wszystkie dodane referencje dodatków. Kliknij Przeglądaj. Przejdź do folderu RExcel, zwykle znajdującego się w C: Program FilesRExcelxls lub coś podobnego. Znajdź dodatek RExcel. xla i kliknij go. Następnym krokiem jest utworzenie odwołania do makr, używając R do poprawnego działania. W dokumencie Excel wpisz Alt F11. Otworzy się edytor Excels VBA. Przejdź do Tools - t References i znajdź referencję RExcel, RExcelVBAlib. RExcel powinien być teraz gotowy do użycia Korzystanie z arkusza Excel Teraz, gdy R i RExcel są poprawnie skonfigurowane, czas na wykonanie prognoz. Otwórz arkusz prognozowania i kliknij Załaduj serwer. Ma to na celu uruchomienie serwera RCom i załadowanie niezbędnych funkcji do prognozowania. Otworzy się okno dialogowe. Wybierz plik itall. R dołączony do arkusza. Ten plik zawiera funkcje używane przez narzędzie do prognozowania. Większość zawartych funkcji została opracowana przez profesora Stoffera z Uniwersytetu w Pittsburghu. Rozszerzają możliwości R i dostarczają nam pomocne wykresy diagnostyczne wraz z wynikami prognozowania. Istnieje również funkcja automatycznego określania najlepszych parametrów dopasowania modelu ARIMA. Po załadowaniu serwera wprowadź dane w kolumnie Dane. Wybierz zakres danych, kliknij prawym przyciskiem myszy i wybierz Zakres nazwy. Nazwij zakres jako dane. Następnie ustaw częstotliwość swoich danych w komórce C6. Częstotliwość odnosi się do okresów danych. Jeśli jest to co tydzień, częstotliwość wynosi 7. Miesięcznie byłoby 12, a kwartalne 4, i tak dalej. Wprowadź okresy wyprzedzające do prognozy. Należy zauważyć, że modele ARIMA stają się dość niedokładne po kilku kolejnych prognozach częstotliwości. Dobrą zasadą jest, aby nie przekroczyć 30 kroków, które mogłyby być raczej niewiarygodne. To zależy również od wielkości zbioru danych. Jeśli masz ograniczone dane, zaleca się wybrać mniejszą liczbę kroków do przodu. Po wprowadzeniu danych, nazwaniu ich i ustawieniu żądanej częstotliwości oraz krokach do prognozowania, kliknij Uruchom. Przetwarzanie prognozy może trochę potrwać. Po zakończeniu otrzymasz przewidywane wartości pod podanym numerem, standardowy błąd wyników i dwa wykresy. Lewa to przewidywana wartość naniesiona na dane, natomiast prawa zawiera podręczną diagnostykę ze standaryzowanymi resztami, autokorelację reszt, wykres gg pozostałości i wykres statystyczny Ljung-Box, aby ustalić, czy model jest dobrze dopasowany. Nie będę wdawał się w zbyt szczegółowe informacje na temat tego, jak szukasz dobrze dopasowanego modelu, ale na wykresie ACF nie chcesz żadnych (lub wielu) opóźnień skokowych przekraczających przerywaną niebieską linię. Na wykresie Gg im więcej okręgów przechodzi przez linię, tym bardziej normalizowany i lepiej dopasowany jest model. W przypadku większych zestawów danych może to przekraczać wiele kręgów. Wreszcie, test Ljung-Box jest sam w sobie artykułem, im więcej kręgów znajduje się powyżej przerywanej niebieskiej linii, tym lepszy jest model. Jeśli wynik diagnostyki nie wygląda dobrze, możesz spróbować dodać więcej danych lub zacząć od innego punktu znajdującego się bliżej zakresu, który chcesz przewidzieć. Możesz łatwo wyczyścić wygenerowane wyniki, klikając przyciski Wyczyść prognozowane wartości. I to jest obecnie. W kolumnie daty nie robi się nic poza odniesieniem, ale nie jest to konieczne dla tego narzędzia. Jeśli znajdę czas, wrócę i dodam, że wyświetlany wykres pokazuje prawidłową godzinę. Możesz również otrzymać błąd podczas uruchamiania prognozy. Jest to zwykle spowodowane funkcją, która znajduje najlepsze parametry, nie jest w stanie określić właściwej kolejności. Możesz wykonać powyższe kroki, aby lepiej uporządkować swoje dane, aby funkcja działała. Mam nadzieję, że skorzystasz z narzędzia, które zaoszczędziło mi dużo czasu w pracy, ponieważ teraz wszystko, co muszę zrobić, to wprowadzić dane, załadować serwer i uruchomić go. Mam również nadzieję, że to pokazuje jak niesamowity może być R, szczególnie gdy używa się go z front-endem, takim jak Excel. Kod, arkusz programu Excel i plik. bas są również na GitHub tutaj. Wprowadzenie do ARIMA: modele niesezonowe Równanie prognostyczne ARIMA (p, d, q): Modele ARIMA są w teorii najbardziej ogólną klasą modeli do prognozowania szeregów czasowych, które może być ustawiony na 8220stacja 8221 przez różnicowanie (jeśli to konieczne), być może w połączeniu z nieliniowymi transformacjami, takimi jak rejestracja lub deflacja (jeśli to konieczne). Zmienna losowa, która jest szeregiem czasowym, jest nieruchoma, jeśli jej właściwości statystyczne są stałe w czasie. Seria stacjonarna nie ma trendu, jej wahania wokół średniej mają stałą amplitudę i poruszają się w spójny sposób. tj. jego krótkoterminowe wzorce czasu losowego zawsze wyglądają tak samo w sensie statystycznym. Ten ostatni warunek oznacza, że ​​jego autokorelacje (korelacje z jego własnymi wcześniejszymi odchyleniami od średniej) pozostają stałe w czasie, lub równoważnie, że jego widmo mocy pozostaje stałe w czasie. Zmienna losowa tej postaci może być oglądana (jak zwykle) jako kombinacja sygnału i szumu, a sygnał (jeśli jest widoczny) może być wzorem szybkiej lub wolnej średniej rewersji, lub sinusoidalnej oscylacji, lub szybkiej przemiany w znaku , a także może mieć składnik sezonowy. Model ARIMA może być postrzegany jako 8220filter8221, który próbuje oddzielić sygnał od szumu, a sygnał jest następnie ekstrapolowany w przyszłość w celu uzyskania prognoz. Równanie prognostyczne ARIMA dla stacjonarnych szeregów czasowych jest równaniem liniowym (to jest typu regresyjnym), w którym predyktory składają się z opóźnień zmiennej zależnej i opóźnień błędów prognoz. Oznacza to: Przewidywaną wartość Y stałej stałej lub ważoną sumę jednej lub więcej ostatnich wartości Y i lub ważoną sumę jednej lub więcej ostatnich wartości błędów. Jeśli predykatory składają się tylko z opóźnionych wartości Y., jest to model czysto autoregresyjny (8220a-regressed8221), który jest tylko szczególnym przypadkiem modelu regresji i który może być wyposażony w standardowe oprogramowanie regresyjne. Na przykład, autoregresyjny model pierwszego rzędu (8220AR (1) 8221) dla Y jest prostym modelem regresji, w którym zmienna niezależna jest po prostu Y opóźniona o jeden okres (LAG (Y, 1) w Statgraphics lub YLAG1 w RegressIt). Jeśli niektóre z predyktorów są opóźnieniami błędów, to model ARIMA NIE jest modelem regresji liniowej, ponieważ nie ma sposobu, aby określić 8220last okres8217s błąd8221 jako zmienną niezależną: błędy muszą być obliczane na podstawie okresu do okresu kiedy model jest dopasowany do danych. Z technicznego punktu widzenia problem z wykorzystaniem opóźnionych błędów jako czynników predykcyjnych polega na tym, że przewidywania model8217 nie są liniowymi funkcjami współczynników. mimo że są liniowymi funkcjami przeszłych danych. Współczynniki w modelach ARIMA, które zawierają opóźnione błędy, muszą być oszacowane przez nieliniowe metody optymalizacji (8220hill-climbing8221), a nie przez samo rozwiązanie układu równań. Akronim ARIMA oznacza Auto-Regressive Integrated Moving Average. Lagi ze stacjonarnej serii w równaniu prognostycznym są nazywane "wartościami dodatnimi", opóźnienia błędów prognoz są nazywane "przesunięciem średniej", a szeregi czasowe, które muszą być różnicowane, aby stały się stacjonarne, są uważane za "podzielone" wersje stacjonarnej serii. Modele Random Walk i Random-Trend, modele autoregresyjne i modele wygładzania wykładniczego są szczególnymi przypadkami modeli ARIMA. Niesezonowy model ARIMA jest klasyfikowany jako model DAIMIMA (p, d, q), gdzie: p to liczba terminów autoregresyjnych, d to liczba niesezonowych różnic potrzebnych do stacjonarności, a q to liczba opóźnionych błędów prognozy w równanie predykcji. Równanie prognostyczne jest skonstruowane w następujący sposób. Po pierwsze, niech y oznacza różnicę d Y. Oznacza to: Zwróć uwagę, że druga różnica Y (przypadek d2) nie jest różnicą od 2 okresów temu. Jest to raczej różnica między pierwszą a różnicą. który jest dyskretnym analogiem drugiej pochodnej, tj. lokalnym przyspieszeniem szeregu, a nie jego lokalnym trendem. Pod względem y. ogólne równanie prognostyczne jest następujące: Tutaj parametry średniej ruchomej (9528217 s) są zdefiniowane w taki sposób, że ich znaki są ujemne w równaniu, zgodnie z konwencją wprowadzoną przez Boxa i Jenkinsa. Niektórzy autorzy i oprogramowanie (w tym język programowania R) definiują je, aby zamiast tego mieli znaki plus. Kiedy rzeczywiste liczby są podłączone do równania, nie ma dwuznaczności, ale ważne jest, aby wiedzieć, którą konwencję używa twoje oprogramowanie podczas odczytu danych wyjściowych. Często parametry są tam oznaczone przez AR (1), AR (2), 8230 i MA (1), MA (2), 8230 itd. Aby zidentyfikować odpowiedni model ARIMA dla Y. zaczynasz od określenia kolejności różnicowania (d) konieczność stacjonowania serii i usunięcia ogólnych cech sezonowości, być może w połączeniu z transformacją stabilizującą warianty, taką jak rejestracja lub deflacja. Jeśli zatrzymasz się w tym momencie i będziesz przewidywał, że zróżnicowana seria jest stała, dopasowałeś jedynie model losowego spaceru lub losowego trendu. Jednak stacjonarne serie mogą nadal mieć błędy związane z auto - korelacjami, co sugeruje, że w równaniu prognostycznym potrzebna jest również pewna liczba terminów AR (p 8805 1) i kilka warunków MA (q 8805 1). Proces określania wartości p, d i q, które są najlepsze dla danej serii czasowej, zostanie omówiony w dalszych sekcjach notatek (których linki znajdują się na górze tej strony), ale podgląd niektórych typów nietypowych modeli ARIMA, które są powszechnie spotykane, podano poniżej. ARIMA (1,0,0) Model autoregresyjny pierwszego rzędu: jeśli seria jest stacjonarna i autokorelowana, być może można ją przewidzieć jako wielokrotność jej poprzedniej wartości plus stałą. Równanie prognostyczne w tym przypadku wynosi 8230, co samo w sobie cofnęło się Y o jeden okres. Jest to model 8220ARIMA (1,0,0) constant8221. Jeżeli średnia z Y wynosi zero, wówczas nie zostałoby uwzględnione stałe wyrażenie. Jeśli współczynnik nachylenia 981 1 jest dodatni i mniejszy niż 1 w skali (musi być mniejszy niż 1 w wielkości, jeśli Y jest nieruchomy), model opisuje zachowanie polegające na odwróceniu średniej, w którym należy przypisać wartość kolejnego okresu 817 razy 981 razy jako daleko od średniej, jak ta wartość okresu. Jeżeli 981 1 jest ujemny, przewiduje zachowanie średniej odwrócenia z naprzemiennością znaków, tj. Przewiduje również, że Y będzie poniżej średniego następnego okresu, jeśli jest powyżej średniej tego okresu. W modelu autoregresyjnym drugiego rzędu (ARIMA (2,0,0)), po prawej stronie pojawi się również termin Y t-2 i tak dalej. W zależności od znaków i wielkości współczynników, model ARIMA (2,0,0) może opisywać układ, którego średnia rewersja zachodzi w sposób oscylacyjny sinusoidalnie, podobnie jak ruch masy na sprężynie poddanej losowym wstrząsom . Próba losowa ARIMA (0,1,0): Jeśli seria Y nie jest nieruchoma, najprostszym możliwym modelem jest model losowego spaceru, który można uznać za ograniczający przypadek modelu AR (1), w którym autoregresyjny Współczynnik jest równy 1, tzn. szeregowi z nieskończenie powolną średnią rewersją. Równanie predykcji dla tego modelu można zapisać jako: gdzie stałym terminem jest średnia zmiana okresu do okresu (tj. Dryf długoterminowy) w Y. Ten model może być dopasowany jako model regresji bez przechwytywania, w którym pierwsza różnica Y jest zmienną zależną. Ponieważ zawiera on (tylko) niesezonową różnicę i stały termin, jest klasyfikowany jako model DAIMA (0,1,0) ze stałą. Często Modelem bezładnego spaceru byłby ARIMA (0,1; 0) model bez stałego ARIMA (1,1,0) różny model autoregresyjny pierwszego rzędu: Jeśli błędy modelu chodzenia swobodnego są autokorelowane, być może problem można rozwiązać, dodając jedno opóźnienie zmiennej zależnej do równania predykcji - - to znaczy przez regresję pierwszej różnicy Y, która sama w sobie jest opóźniona o jeden okres. To przyniosłoby następujące równanie predykcji: które można przekształcić na To jest autoregresyjny model pierwszego rzędu z jednym rzędem niesezonowego różnicowania i stałym terminem - tj. model ARIMA (1,1,0). ARIMA (0,1,1) bez stałego prostego wygładzania wykładniczego: Inna strategia korekcji błędów związanych z autokorelacją w modelu losowego spaceru jest zasugerowana przez prosty model wygładzania wykładniczego. Przypomnijmy, że w przypadku niektórych niestacjonarnych szeregów czasowych (na przykład takich, które wykazują głośne wahania wokół wolno zmieniającej się średniej), model chodzenia losowego nie działa tak dobrze, jak średnia ruchoma wartości z przeszłości. Innymi słowy, zamiast brać ostatnią obserwację jako prognozę następnej obserwacji, lepiej jest użyć średniej z ostatnich kilku obserwacji, aby odfiltrować hałas i dokładniej oszacować średnią miejscową. Prosty model wygładzania wykładniczego wykorzystuje wykładniczo ważoną średnią ruchomą przeszłych wartości, aby osiągnąć ten efekt. Równanie predykcji dla prostego modelu wygładzania wykładniczego można zapisać w wielu matematycznie równoważnych formach. jedną z nich jest tak zwana forma 8220, korekta zera 8221, w której poprzednia prognoza jest korygowana w kierunku popełnionego błędu: Ponieważ e t-1 Y t-1 - 374 t-1 z definicji, można to przepisać jako : co jest równaniem ARIMA (0,1,1) - bez stałej prognozy z 952 1 1 - 945. Oznacza to, że możesz dopasować proste wygładzanie wykładnicze, określając je jako model ARIMA (0,1,1) bez stała, a szacowany współczynnik MA (1) odpowiada 1-minus-alfa w formule SES. Przypomnijmy, że w modelu SES średni wiek danych w prognozach z wyprzedzeniem 1 roku wynosi 1 945. Oznacza to, że będą one pozostawać w tyle za trendami lub punktami zwrotnymi o około 1 945 okresów. Wynika z tego, że średni wiek danych w prognozach 1-okresowych modelu ARIMA (0,1,1) - bez stałej wynosi 1 (1 - 952 1). Tak więc, na przykład, jeśli 952 1 0.8, średnia wieku wynosi 5. Ponieważ 952 1 zbliża się do 1, ARIMA (0,1,1) - bez stałego modelu staje się bardzo długookresową średnią ruchomą, a jako 952 1 zbliża się do 0, staje się modelem losowego chodzenia bez dryfu. Jaki jest najlepszy sposób korekcji autokorelacji: dodawanie terminów AR lub dodawanie terminów MA W dwóch poprzednich modelach omówionych powyżej, problem związanych z autokorelacją błędów w modelu losowego spaceru ustalono na dwa różne sposoby: przez dodanie opóźnionej wartości różnej serii do równania lub dodanie opóźnionej wartości błędu prognozy. Które podejście jest najlepsze Zasada praktyczna dla tej sytuacji, która zostanie omówiona bardziej szczegółowo w dalszej części, polega na tym, że pozytywna autokorelacja jest zwykle najlepiej traktowana przez dodanie do modelu warunku AR, a negatywna autokorelacja jest zwykle najlepiej traktowana przez dodanie Termin magisterski. W biznesowych i ekonomicznych szeregach czasowych negatywna autokorelacja często pojawia się jako artefakt różnicowania. (Ogólnie rzecz biorąc, różnicowanie zmniejsza pozytywną autokorelację, a nawet może spowodować przełączenie z autokorelacji dodatniej na ujemną). Tak więc model ARIMA (0,1,1), w którym różnicowanie jest połączone z terminem MA, jest częściej używany niż Model ARIMA (1,1,0). ARIMA (0,1,1) o stałym prostym wygładzaniu wykładniczym ze wzrostem: Dzięki wdrożeniu modelu SES jako modelu ARIMA można uzyskać pewną elastyczność. Po pierwsze, szacowany współczynnik MA (1) może być ujemny. odpowiada to współczynnikowi wygładzania większemu niż 1 w modelu SES, co zwykle nie jest dozwolone w procedurze dopasowania modelu SES. Po drugie, masz możliwość włączenia stałego warunku w modelu ARIMA, jeśli chcesz, aby oszacować średni niezerowy trend. Model ARIMA (0,1,1) ze stałą ma równanie prognozy: prognozy jednokresowe z tego modelu są jakościowo podobne do tych z modelu SES, z tym że trajektoria prognoz długoterminowych jest zwykle linia nachylenia (której nachylenie jest równe mu) zamiast linii poziomej. ARIMA (0,2,1) lub (0,2,2) bez stałego liniowego wygładzania wykładniczego: liniowe modele wygładzania wykładniczego są modelami ARIMA, które wykorzystują dwie niesezonowe różnice w połączeniu z terminami MA. Druga różnica w serii Y nie jest po prostu różnicą między Y a nią opóźnioną o dwa okresy, ale raczej jest pierwszą różnicą pierwszej różnicy - a. e. zmiana w Y w okresie t. Tak więc druga różnica Y w okresie t jest równa (Y t - Y t-1) - (Y t-1 - Y t-2) Y t - 2Y t-1 Y t-2. Druga różnica funkcji dyskretnej jest analogiczna do drugiej pochodnej funkcji ciągłej: mierzy ona przyspieszenie cytadania lub inną krzywiznę w funkcji w danym punkcie czasu. Model ARIMA (0,2,2) bez stałej przewiduje, że druga różnica szeregu równa się funkcji liniowej dwóch ostatnich błędów prognozy: która może być uporządkowana jako: gdzie 952 1 i 952 2 to MA (1) i Współczynniki MA (2). Jest to ogólny liniowy model wygładzania wykładniczego. w zasadzie taki sam jak model Holt8217s, a model Brown8217s to szczególny przypadek. Wykorzystuje wykładniczo ważone średnie ruchome do oszacowania zarówno lokalnego poziomu, jak i lokalnego trendu w serii. Długoterminowe prognozy z tego modelu zbiegają się do linii prostej, której nachylenie zależy od średniej tendencji obserwowanej pod koniec serii. ARIMA (1,1,2) bez stałego liniowego tłumienia wykładniczego. Ten model jest zilustrowany na załączonych slajdach w modelach ARIMA. Ekstrapoluje lokalny trend na końcu serii, ale spłaszcza go na dłuższych horyzontach prognozy, wprowadzając nutę konserwatyzmu, praktykę, która ma empiryczne wsparcie. Zobacz artykuł na ten temat: "Dlaczego działa Damped Trend" autorstwa Gardnera i McKenziego oraz artykuł "Zgodny z legendą" Armstronga i in. dla szczegółów. Ogólnie zaleca się trzymać modele, w których co najmniej jedno z p i q jest nie większe niż 1, tj. Nie próbować dopasować modelu takiego jak ARIMA (2,1,2), ponieważ może to prowadzić do przeuczenia oraz pytania o współczynniku równomolowym, które omówiono bardziej szczegółowo w uwagach dotyczących struktury matematycznej modeli ARIMA. Implementacja arkusza kalkulacyjnego: modele ARIMA, takie jak opisane powyżej, można łatwo wdrożyć w arkuszu kalkulacyjnym. Równanie predykcji jest po prostu równaniem liniowym, które odnosi się do przeszłych wartości pierwotnych szeregów czasowych i przeszłych wartości błędów. W ten sposób można skonfigurować arkusz kalkulacyjny prognozowania ARIMA, przechowując dane w kolumnie A, formułę prognozowania w kolumnie B i błędy (dane minus prognozy) w kolumnie C. Formuła prognozowania w typowej komórce w kolumnie B byłaby po prostu wyrażenie liniowe odnoszące się do wartości w poprzednich wierszach kolumn A i C, pomnożone przez odpowiednie współczynniki AR lub MA przechowywane w komórkach w innym miejscu arkusza kalkulacyjnego.

No comments:

Post a Comment