Auto.arima vs autobox różnią się?


16

Po przeczytaniu postów na tej stronie wiem, że jest funkcja R auto.arima(w forecast pakiecie ). Wiem również, że IrishStat , członek tej witryny, zbudował pakiet komercyjny autobox na początku lat 80. Ponieważ te dwa pakiety istnieją dzisiaj i automatycznie wybierają modele arima dla danych zestawów danych, co robią inaczej? Czy prawdopodobnie stworzą różne modele dla tego samego zestawu danych?


Dzięki za edycję @Wayne. Nie jestem zaznajomiony z pakietem prognozy R, ale jestem pewien, że właśnie to chcę porównać z autoboxem.
Michael R. Chernick

(Właśnie wprowadziłem drugą małą zmianę „auto-arima” na „auto.arima”.) Mogą istnieć inne auto.arimafunkcje w innych pakietach, ale na pewno jest jedna forecast, której opis brzmi: „Zwraca najlepszy model ARIMA zgodnie z na wartość AIC, AICc lub BIC. Funkcja przeprowadza wyszukiwanie możliwego modelu w ramach podanych ograniczeń zamówienia. ”
Wayne

1
AUTOBOX traktuje automatyczną identyfikację w sposób holistyczny poprzez iterację poprzez automatyczną identyfikację poprzez faktyczne oszacowanie, a następnie wykonanie diagnostycznych procedur podwyższania i zmniejszania w celu uzyskania modelu, który ma jedynie parametry istotne statystycznie, a jednocześnie posiada proces błędu wolny od możliwej do zidentyfikowania struktury W ten sposób następuje skrypt iteracji. Wczesne wersje AUTOBOX około 1975 r. Próbowały zastosować „podejście oparte na jednej statystyce”, ale okazało się, że jest to pożądane, ponieważ zidentyfikowane modele miały zbędną lub głupią strukturę (na przykład 5,1,2) lub wykazywały niewystarczającą strukturę.
IrishStat

1
@IrishStat To brzmi jak dobre podejście. Co robisz, jeśli znajdziesz dwa konkurujące ze sobą modele spełniające Twoje wymagania. Wydaje się to możliwe. Czy polecasz „optymalny” model oparty na określonych kryteriach? Zdaję sobie sprawę, że wybranie modelu z tylko „parametrami istotnymi statystycznie” może sprzyjać parsimony, ale nie można mieć procesu AR o niskich parametrach i innego modelu AEMA niskiego rzędu, w którym wszystkie parametry są istotne statystycznie, a reszty wyglądają jak białe hałas?
Michael R. Chernick

1
@IriehStat. Zgadzam się z Tobą. W końcu co robisz dla użytkownika. Czy dostarczasz tylko jeden model, czy może podajesz uporządkowaną listę konkurencyjnych dopuszczalnych modeli? Jeśli nie to drugie, być może byłaby to dobra opcja, aby dodać miejsce, w którym ograniczasz listę do niewielkiej liczby.
Michael R. Chernick

Odpowiedzi:


9

michael / wayne

AUTOBOX zdecydowanie dostarczy / zidentyfikuje inny model, jeśli zostanie spełniony co najmniej jeden z poniższych warunków

1) dane zawierają impulsy

2) w danych jest co najmniej 1 zmiana poziomu / kroku

3) jeśli w danych występują pulsacje sezonowe

4) w danych występuje 1 lub więcej trendów czasu lokalnego, które nie są po prostu usuwane

5) jeśli parametry modelu zmieniają się w czasie

6) jeśli wariancja błędów zmienia się w czasie i żadna transformacja mocy nie jest wystarczająca.

Jeśli chodzi o konkretny przykład, sugeruję, abyście oboje wybrali / stworzyli szereg czasowy i umieścili je w Internecie. Użyję AUTOBOX do analizy danych w trybie nienadzorowanym i opublikuję modele na liście. Następnie uruchamiasz program R, a następnie każdy z was dokonuje osobnej obiektywnej analizy obu wyników, wskazując podobieństwa i różnice. Wyślij te dwa modele wraz ze wszystkimi dostępnymi materiałami pomocniczymi, w tym ostatecznymi warunkami błędu, do moich komentarzy. Podsumuj i zaprezentuj te wyniki na liście, a następnie poproś czytelników z listy o GŁOSOWANIE, dla której procedury wydaje im się najlepsza.


Masz na myśli konkurs taki jak ten ?
whuber

@ whuber Tak. Być może nawet używając jakiegoś „nieznanego / zakodowanego przykładu książki tekstowej”, który mógłby zostać użyty jako tło.
IrishStat

22

Reprezentują dwa różne podejścia do dwóch podobnych, ale różnych problemów. Napisałem, auto.arimaa @IrishStat jest autorem Autobox.

auto.arima()pasuje do (sezonowych) modeli ARIMA, w tym do warunków znoszenia. Autoboxpasuje do modeli z funkcją przenoszenia, umożliwiających przenoszenie poziomów i wartości odstające. Model ARIMA to specjalny przypadek modelu funkcji przenoszenia.

Nawet jeśli wyłączysz przesunięcia poziomu i wykrywanie wartości odstających Autobox, uzyskasz inny model ARIMA z auto.arima()powodu różnych wyborów sposobu identyfikacji parametrów ARIMA.

W moich testach na danych konkurencji M3 i M, auto.arima()produkuję dokładniejsze prognozy niż Autoboxdla tych danych. AutoboxLepiej jednak będzie z danymi zawierającymi duże wartości odstające i zmiany poziomów.


3
Wierzę, że miałeś na myśli wersję AUTOBOX sprzed wielu, wielu lat. AUTOBOX zmienił się znacząco przez te wszystkie lata. Jeśli się nie mylę, porównałeś tylko dokładności z 1 źródła, które, jestem pewien, że zgodzisz się, to próbka 1. Dokładności muszą być ocenione z wielu źródeł.
IrishStat

15
Mam na myśli opublikowane porównania w tysiącach serii. Jako redaktor naczelny International Journal of Forecasting myślę, że mam pewne pojęcie o tym, jak oceniać prognozy.
Rob Hyndman

2
Nie chciałem, aby to pytanie zawierało argumenty na temat tego, kto ma najlepszy algorytm prognozowania. Myślę, że zarówno autobox, jak i auto.arima są prawdopodobnie bardzo dobrymi pakietami. Bezpośrednie porównanie może być niesprawiedliwe z wielu powodów. 1) Użytkownik może nie być wystarczająco ekspertem, aby wiedzieć, jak je oceniać. 2) Dokładność prognozy dla pojedynczych szeregów czasowych to bzdura. Można przewidywać niższy średni błąd kwadratowy w prognozowaniu, ale ilekroć występuje losowość, należy to wziąć pod uwagę. Musisz spojrzeć na kilka serii i jak sugeruje IrishStat, powinieneś spojrzeć na różne punkty początkowe.
Michael R. Chernick

Przydałyby się również różne punkty do zainicjowania prognozowania. 3) W świecie ARIMA istnieje wiele reprezentacji dla tego samego modelu szeregów czasowych, skończone procesy AR mają nieskończone reprezentacje średniej ruchomej i odwrotnie. Tak więc AR niskiego rzędu może być prawie taki sam jak średnia ruchoma wysokiego rzędu lub ARMA. Box zawsze sugerował przestrzeganie zasady parsimony. Ale jeśli masz dużo danych, możesz uzyskać dobre oszacowania parametrów, a model wyższego rzędu może generować prawie takie same prognozy, jak prognostyczne. 4) Dwa pakiety mają różne cele.
Michael R. Chernick

3
Metoda ewoluowała z czasem. Dave Reilly jest bardzo aktywny na tej stronie jako IrishStat i był bardzo otwarty na wyjaśnienie, jak to działa w kategoriach ogólnych. Istotnym aspektem biznesu jest posiadanie tajemnic handlowych i zastrzeżonych algorytmów. Z jego punktu widzenia R szkodzi jego biznesowi, tak jak to jest w przypadku SPlus. Ale nie wykazuje goryczy i bardzo chętnie demonstruje swoje oprogramowanie, jak widać dzisiaj. Jest również skłonny do przeprowadzania testów z zawodnikami i wierzę, że brał udział w konkursach prognozowania szeregów czasowych.
Michael R. Chernick

11

EDYCJA: Według twojego komentarza, uważam, że jeśli wyłączysz wiele autoboxopcji, prawdopodobnie uzyskasz podobną odpowiedź auto.arima. Ale jeśli tego nie zrobisz, a przy wartościach odstających na pewno będzie różnica: auto.arimanie zależy na wartościach odstających, a jednocześnie autoboxje wykryje i odpowiednio się z nimi obchodzi, co dałoby lepszy model. Mogą występować również inne różnice i jestem pewien, że IrishStat może je opisać.


Wierzę, że autoboxwykrywa wartości odstające i inne rzeczy poza szukaniem najlepszych współczynników AR, I i MA. Jeśli to prawda, wymagałoby to więcej analiz i kilku innych funkcji R, aby mieć podobną funkcjonalność. I IrishStats jest cennym członkiem tej społeczności i bardzo przyjazny.

Oczywiście R jest darmowy i może robić bazilliony rzeczy poza ARIMA.

Innym wyborem, który jest bezpłatny dla ARIMA w stylu ekonomicznym, jest X13-ARIMA SEATSUS Census Bureau, które jest open source. Istnieją pliki binarne dla systemu Windows i Linux, ale skompilowano je bezpośrednio na moim komputerze Mac, biorąc pod uwagę, że już załadowałem kompilator gfortran gnu. Jest następcą X12-ARIMAi został wydany w ciągu ostatnich kilku dni, po latach rozwoju i testowania. (Aktualizuje X12, a także dodaje funkcje SEATS / TRAMO. X12 jest oficjalnym narzędziem USA, natomiast SEATS / TRAMO pochodzi z Banku Hiszpanii i jest „narzędziem europejskim”).

Bardzo podoba mi się X12 (a teraz X13). Jeśli wydasz sporo diagnostyki, zapoznasz się z nimi i dowiesz się, co mają na myśli, są to właściwie dość dobre wykształcenie w ARIMA i szeregach czasowych. Opracowałem własny obieg pracy, ale istnieje pakiet R x12do wykonywania większości prac z poziomu R (nadal musisz utworzyć plik modelu wejściowego („.spc”) dla X12).

Mówię, że X12 jest dobry w ARIMA w „stylu ekonomicznym”, co oznacza dane miesięczne z danymi z ponad 3 lat. (Aby korzystać z niektórych funkcji diagnostycznych, potrzebujesz ponad 5 lat danych). Posiada funkcję identyfikacji wartości odstających, może obsłużyć wszystkie specyfikacje wartości odstających, a także porady, dni wolne od pracy, efekty dnia handlowego i wiele innych rzeczy ekonomicznych. Jest to narzędzie, którego używa rząd USA do tworzenia sezonowych danych.


Moje pytanie naprawdę otrzymało zestaw danych, czy te dwa algorytmy prawdopodobnie spowodują wybór różnych modeli. To naprawdę automatyczna selekcja, która mnie interesuje, a nie inne cechy diagnostyczne, z których jedna może mieć tę, której nie ma. Wiadomo, że rodzina modeli ARMA i dwa modele w rodzinie mogą być dokładnymi lub prawie dokładnymi alternatywnymi reprezentacjami tego samego modelu. Więc jeśli istnieją niewielkie różnice w procedurach selekcji, sądzę, że mogą dać różne modele.
Michael R. Chernick

3
@MichaelChernick: Ah. Domyślam się, że jeśli wyłączysz wszystkie auto-rzeczy autobox, otrzymasz tę samą odpowiedź. Ale jednym z punktów użycia autoboxjest to, że wykryje wartości odstające i potraktuje je jako takie, więc zwrócony model byłby inny, gdyby były wartości odstające.
Wayne

@Wayne +1, aby uzyskać dodatkowe informacje na temat foteli X13-ARIMA i SEATS / TRAMO.
Graeme Walsh

@ Wayne Nawiasem mówiąc, kolejnym „narzędziem europejskim” jest DEMETRA + .
Graeme Walsh
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.