Wszechnica Wszechwiedzy - Baner

Wygładzanie wykładnicze – metody Browna, Holta i Wintersa

Wygładzanie wykładnicze obejmuje grupę adaptacyjnych metod prognozowania szeregów czasowych. Ich podstawową cechą jest regularne aktualizowanie modelu po pojawieniu się każdej nowej obserwacji. Najnowsze dane otrzymują zwykle największe znaczenie, natomiast wpływ obserwacji starszych stopniowo maleje.

Do najczęściej omawianych metod należą metoda Browna, metoda Holta oraz metoda Wintersa, nazywana również metodą Holta – Wintersa. Metodę Browna stosuje się przede wszystkim do szeregów o względnie stałym poziomie, metodę Holta do szeregów z trendem, a metodę Wintersa do szeregów zawierających jednocześnie trend i sezonowość.

W artykule przyjmujemy konsekwentną konwencję, w której:

Osobno zapisujemy szeregi pomocnicze modelu i osobno wynikającą z nich prognozę. Takie podejście jest bardziej czytelne niż bezpośrednie włączanie prognozy do równania aktualizującego model.


Spis treści

Idea wygładzania wykładniczego

Wygładzanie wykładnicze należy do metod adaptacyjnych. Oznacza to, że wartości opisujące model są aktualizowane za każdym razem, gdy pojawia się nowa obserwacja.

W odróżnieniu od średniej ruchomej model nie ogranicza się do jednego, sztywnego okna ostatnich \(k\) obserwacji. Pośrednio uwzględnia całą historię szeregu, ale znaczenie starszych danych maleje wraz z ich wiekiem.

Wartość wygładzona jest połączeniem:

Najprostsze równanie ma postać:

\[ F_t = \alpha y_t + (1-\alpha)F_{t-1} \]

gdzie:

Wykładniczo malejące wagi

Nazwa metody wynika ze sposobu, w jaki maleje wpływ kolejnych obserwacji. Po wielokrotnym podstawieniu wcześniejszych wartości wygładzonych otrzymujemy:

\[ F_t = \alpha y_t + \alpha(1-\alpha)y_{t-1} + \alpha(1-\alpha)^2y_{t-2} +\ldots \]

Najnowsza obserwacja otrzymuje wagę:

\[ \alpha \]

obserwacja poprzednia:

\[ \alpha(1-\alpha) \]

a obserwacja sprzed dwóch okresów:

\[ \alpha(1-\alpha)^2 \]

Wagi tworzą więc ciąg geometryczny. Starsze informacje nadal wpływają na wynik, ale ich znaczenie stopniowo maleje.

Wygładzanie wykładnicze nie odrzuca nagle starszych obserwacji, jak średnia ruchoma po przesunięciu okna. Ich wpływ zanika stopniowo.

Brown, Holt i Winters – porównanie

Wybór metody zależy przede wszystkim od budowy szeregu czasowego.

MetodaPoziomTrendSezonowośćParametry
Browntaknienie\(\alpha\)
Holttaktaknie\(\alpha,\beta\)
Winterstaktaktak\(\alpha,\beta,\gamma\)

Można zatem przedstawić rozwój modeli w następujący sposób:

\[ \text{Brown} \rightarrow \text{Holt} \rightarrow \text{Winters} \]

Każdy kolejny model dodaje nowy element struktury szeregu. 

Porównanie metod Browna, Holta i Wintersa w wygładzaniu wykładniczym
Metoda Browna służy do prognozowania szeregu bez trendu i sezonowości, metoda Holta uwzględnia trend, a metoda Wintersa pozwala modelować jednocześnie trend i sezonowość.

Metoda Browna

Najprostsza metoda wygładzania wykładniczego jest w wielu polskojęzycznych materiałach nazywana metodą Browna. Stosuje się ją do szeregów, w których nie występuje wyraźny trend ani sezonowość, a wartości oscylują wokół względnie stałego poziomu.

W literaturze można spotkać różne konwencje nazewnicze. Określenie „metoda Browna” bywa również odnoszone do podwójnego wygładzania wykładniczego. Dlatego w tym artykule przez metodę Browna rozumiemy proste wygładzanie wykładnicze szeregu bez trendu i sezonowości.

Wartość wygładzona

Szereg pomocniczy wartości wygładzonych obliczamy według wzoru:

\[ F_t = \alpha y_t + (1-\alpha)F_{t-1} \]

Prognoza

Wartość wygładzona z okresu \(t\) staje się prognozą na okres następny:

\[ \widehat{y}_{t+1\mid t}=F_t \]

Prognoza wyznaczona w poprzednim okresie i przypisana do okresu \(t\) wynosi zatem:

\[ \widehat{y}_{t\mid t-1}=F_{t-1} \]

W tabeli obliczeniowej warto rozdzielić kolumny:

\[ t,\qquad y_t,\qquad F_t,\qquad \widehat{y}_{t\mid t-1},\qquad e_t \]

Dzięki temu łatwo zauważyć, że wartość \(F_t\) nie jest prognozą dla tego samego okresu, lecz prognozą na okres kolejny.

Wartość początkowa w metodzie Browna

Do rozpoczęcia obliczeń potrzebna jest wartość początkowa \(F_1\). Najprostsza konwencja polega na przyjęciu:

\[ F_1=y_1 \]

Można również przyjąć średnią arytmetyczną z pierwszych kilku obserwacji:

\[ F_1 = \frac{y_1+y_2+\ldots+y_r}{r} \]

Drugie rozwiązanie może ograniczyć wpływ nietypowej pierwszej obserwacji, ale powoduje, że właściwe obliczenia rozpoczynają się później.

Możliwe jest również potraktowanie wartości początkowej jako dodatkowego parametru wyznaczanego numerycznie. W przykładzie dydaktycznym przyjmiemy jednak najprostszą konwencję:

\[ F_1=y_1 \]

Metoda Holta

Metoda Holta rozszerza proste wygładzanie wykładnicze o składnik trendu. Tworzy dwa szeregi pomocnicze:

Aktualizacja poziomu

\[ F_t = \alpha y_t + (1-\alpha)(F_{t-1}+S_{t-1}) \]

Nowy poziom jest kombinacją najnowszej obserwacji oraz poziomu z poprzedniego okresu powiększonego o dotychczasowy trend.

Aktualizacja trendu

\[ S_t = \beta(F_t-F_{t-1}) + (1-\beta)S_{t-1} \]

Nowy składnik trendu jest kombinacją najnowszej zmiany poziomu i wcześniejszego trendu.

Prognoza

Prognoza na jeden okres naprzód wynosi:

\[ \widehat{y}_{t+1\mid t} = F_t+S_t \]

Prognoza na \(h\) okresów naprzód:

\[ \widehat{y}_{t+h\mid t} = F_t+hS_t \]

W tabeli dla okresu \(t\) obliczamy \(F_t\) i \(S_t\), natomiast suma \(F_t+S_t\) jest prognozą dotyczącą okresu \(t+1\).

Przy zapisie prognozy w wierszu okresu, którego dotyczy, otrzymujemy:

\[ \widehat{y}_{t\mid t-1} = F_{t-1}+S_{t-1} \]

Wartości początkowe w metodzie Holta

Metoda Holta wymaga ustalenia początkowego poziomu i trendu. W literaturze i programach komputerowych stosuje się różne sposoby inicjalizacji.

Najprostsza konwencja

Poziom początkowy:

\[ F_1=y_1 \]

Trend początkowy:

\[ S_1=y_2-y_1 \]

Jest to konwencja najłatwiejsza do zastosowania w przykładach rachunkowych.

Średni początkowy przyrost

Aby ograniczyć wpływ przypadkowej różnicy pomiędzy dwiema pierwszymi obserwacjami, można wykorzystać średnią z kilku początkowych przyrostów:

\[ S_1 = \frac{ (y_2-y_1)+(y_3-y_2)+\ldots+(y_r-y_{r-1}) }{r-1} \]

Po skróceniu:

\[ S_1 = \frac{y_r-y_1}{r-1} \]

Trend wyznaczony za pomocą regresji

Na początkowym fragmencie szeregu można oszacować model ekonometryczny trendu liniowego:

\[ y_t=a+bt+\varepsilon_t \]

Współczynnik kierunkowy \(b\) może zostać przyjęty jako wartość początkowa trendu:

\[ S_1=b \]

Takie rozwiązanie jest często stabilniejsze od pojedynczej różnicy, ale wymaga dodatkowych obliczeń.

Metoda Wintersa

Metoda Wintersa, nazywana również metodą Holta – Wintersa, rozszerza model Holta o składnik sezonowy.

Tworzymy trzy szeregi pomocnicze:

Załóżmy, że pełny cykl sezonowy obejmuje \(m\) okresów. Dla danych kwartalnych z cyklem rocznym \(m=4\), a dla danych miesięcznych \(m=12\).

Sezonowość addytywna i multiplikatywna

Metoda Wintersa występuje w dwóch podstawowych wariantach. Wybór zależy od tego, jak zmienia się amplituda wahań sezonowych.

Wariant addytywny

Model addytywny stosujemy, gdy wahania sezonowe mają zbliżoną amplitudę niezależnie od poziomu szeregu. Sezonowość jest wyrażana w tych samych jednostkach co analizowana zmienna.

Ogólny zapis szeregu można przedstawić jako:

\[ y_t = \text{poziom} + \text{trend} + \text{sezonowość} + \text{składnik losowy} \]

Równania modelu addytywnego:

\[ F_t = \alpha(y_t-C_{t-m}) + (1-\alpha)(F_{t-1}+S_{t-1}) \]

\[ S_t = \beta(F_t-F_{t-1}) + (1-\beta)S_{t-1} \]

\[ C_t = \gamma(y_t-F_t) + (1-\gamma)C_{t-m} \]

Prognoza na \(h\) okresów naprzód:

\[ \widehat{y}_{t+h\mid t} = F_t+hS_t+C_{t-m+r} \]

gdzie \(r\) wskazuje składnik sezonowy właściwy dla prognozowanego okresu. W praktyce indeks sezonowy dobiera się cyklicznie, zgodnie z położeniem prognozy w sezonie.

Wariant multiplikatywny

Model multiplikatywny stosujemy, gdy amplituda wahań sezonowych rośnie lub maleje wraz z poziomem szeregu. Sezonowość jest wtedy wyrażana w postaci mnożnika.

Ogólny zapis:

\[ y_t = (\text{poziom}+\text{trend}) \cdot \text{sezonowość} \cdot \text{składnik losowy} \]

Równania modelu multiplikatywnego:

\[ F_t = \alpha\frac{y_t}{C_{t-m}} + (1-\alpha)(F_{t-1}+S_{t-1}) \]

\[ S_t = \beta(F_t-F_{t-1}) + (1-\beta)S_{t-1} \]

\[ C_t = \gamma\frac{y_t}{F_t} + (1-\gamma)C_{t-m} \]

Prognoza:

\[
\widehat{y}_{t+h\mid t}
=
(F_t+hS_t)C_{t-m+r}
\]

Porównanie sezonowości addytywnej i multiplikatywnej na wykresach szeregu czasowego
W sezonowości addytywnej amplituda wahań pozostaje zbliżona, natomiast w sezonowości multiplikatywnej zmienia się wraz z poziomem szeregu.

Stała amplituda wahań wskazuje zwykle na wariant addytywny. Amplituda zwiększająca się wraz z poziomem szeregu wskazuje na wariant multiplikatywny.

Wartości początkowe w metodzie Wintersa

Inicjalizacja metody Wintersa jest bardziej złożona niż w metodach Browna i Holta. Potrzebujemy początkowego poziomu, trendu oraz zestawu \(m\) początkowych składników sezonowych.

Stosowane są różne konwencje. Programy statystyczne mogą estymować wartości początkowe numerycznie, korzystać z procedur heurystycznych albo przyjmować wartości wskazane przez użytkownika.

Początkowy poziom

Najprostszą wartością początkową jest średnia arytmetyczna z pierwszego pełnego cyklu:

\[ F_m = \frac{1}{m} \sum_{t=1}^{m}y_t \]

Początkowy trend

Jeżeli dysponujemy co najmniej dwoma pełnymi cyklami, możemy obliczyć średnie:

\[ \overline{y}_1 = \frac{1}{m} \sum_{t=1}^{m}y_t \]

\[ \overline{y}_2 = \frac{1}{m} \sum_{t=m+1}^{2m}y_t \]

Trend przypadający na jeden okres można przyjąć jako:

\[ S_m = \frac{\overline{y}_2-\overline{y}_1}{m} \]

Możliwe jest również oszacowanie trendu liniowego na początkowym fragmencie szeregu i wykorzystanie jego współczynnika kierunkowego.

Początkowe składniki sezonowe – wariant addytywny

Dla pierwszego cyklu:

\[ C_t=y_t-F_m, \qquad t=1,\ldots,m \]

Składniki sezonowe powinny przeciętnie dawać zero:

\[ \sum_{t=1}^{m}C_t=0 \]

Początkowe składniki sezonowe – wariant multiplikatywny

W wariancie multiplikatywnym:

\[ C_t = \frac{y_t}{F_m}, \qquad t=1,\ldots,m \]

Ich średnia powinna wynosić jeden:

\[ \frac{1}{m} \sum_{t=1}^{m}C_t=1 \]

czyli:

\[ \sum_{t=1}^{m}C_t=m \]

W artykule i przykładach możemy przyjmować tę prostą konwencję, zaznaczając, że inne podręczniki i programy mogą wykorzystywać odmienne procedury inicjalizacji.

Znaczenie parametrów alfa, beta i gamma

Parametry wygładzania spełniają warunki:

\[ 0\leq\alpha\leq1, \qquad 0\leq\beta\leq1, \qquad 0\leq\gamma\leq1 \]

Parametr \(\alpha\)

Parametr \(\alpha\) steruje aktualizacją poziomu.

Parametr \(\beta\)

Parametr \(\beta\) określa szybkość aktualizacji trendu.

Parametr \(\gamma\)

Parametr \(\gamma\) steruje aktualizacją składników sezonowych.

Graniczne wartości parametrów i związki z prostszymi metodami

Parametry wygładzania określają, w jakim stopniu model reaguje na nowe informacje. Dla niektórych wartości granicznych metody wygładzania wykładniczego stają się równoważne prostszym metodom prognozowania albo przestają aktualizować wybrane składniki modelu.

Metoda Browna dla \(\alpha=1\)

W metodzie Browna wartość wygładzona wynosi:

\[ F_t = \alpha y_t + (1-\alpha)F_{t-1} \]

Jeżeli przyjmiemy:

\[ \alpha=1 \]

otrzymujemy:

\[ F_t=y_t \]

Ponieważ prognoza na kolejny okres jest równa:

\[ \widehat{y}_{t+1\mid t}=F_t \]

to dla \(\alpha=1\):

\[ \widehat{y}_{t+1\mid t}=y_t \]

Metoda Browna staje się wtedy dokładnie metodą naiwną poziomu bez zmian. Model całkowicie pomija wcześniejszą wartość wygładzoną i jako prognozę przyjmuje ostatnią obserwację.

Metoda Browna dla \(\alpha=0\)

Jeżeli:

\[ \alpha=0 \]

to:

\[ F_t=F_{t-1} \]

Wartość wygładzona nie reaguje wówczas na nowe obserwacje. Wszystkie kolejne prognozy pozostają równe przyjętej wartości początkowej:

\[ \widehat{y}_{t+1\mid t}=F_1 \]

Parametr równy zero oznacza więc całkowite zamrożenie poziomu modelu.

Metoda Holta a metoda naiwna przyrostu bez zmian

W metodzie Holta:

\[ F_t = \alpha y_t + (1-\alpha)(F_{t-1}+S_{t-1}) \]

\[ S_t = \beta(F_t-F_{t-1}) + (1-\beta)S_{t-1} \]

Jeżeli przyjmiemy:

\[ \alpha=1, \qquad \beta=1 \]

to poziom jest równy bieżącej obserwacji:

\[ F_t=y_t \]

a trend staje się ostatnim przyrostem:

\[ S_t = F_t-F_{t-1} = y_t-y_{t-1} \]

Prognoza wynosi wtedy:

\[ \widehat{y}_{t+1\mid t} = F_t+S_t = y_t+(y_t-y_{t-1}) \]

Otrzymujemy zatem metodę naiwną przyrostu bez zmian. Ostatni zaobserwowany przyrost jest przenoszony na kolejny okres.

Metoda Holta dla \(\beta=0\)

Jeżeli:

\[ \beta=0 \]

to równanie trendu przyjmuje postać:

\[ S_t=S_{t-1} \]

Trend nie jest aktualizowany i pozostaje równy wartości początkowej. Model prognozuje wówczas z wykorzystaniem stałego przyrostu ustalonego podczas inicjalizacji.

Od metody Wintersa do metody Holta

Metoda Wintersa przechodzi w metodę Holta, jeżeli składnik sezonowy jest neutralny.

W wariancie addytywnym neutralna sezonowość oznacza:

\[ C_t=0 \]

W wariancie multiplikatywnym:

\[ C_t=1 \]

Po usunięciu wpływu sezonowości prognoza opiera się wyłącznie na poziomie i trendzie:

\[ \widehat{y}_{t+h\mid t} = F_t+hS_t \]

czyli przyjmuje postać prognozy metody Holta.

Znaczenie granicznych wartości \(\gamma\)

W metodzie Wintersa parametr \(\gamma\) steruje aktualizacją sezonowości.

Metody Browna, Holta i Wintersa nie są całkowicie odrębnymi konstrukcjami. Dla odpowiednich wartości parametrów i składników modelu przechodzą w prostsze metody, w tym w metody naiwne.

Infografika wyjaśniająca znaczenie parametrów alfa, beta i gamma w wygładzaniu wykładniczym
Parametr alfa odpowiada za poziom, beta za trend, a gamma za sezonowość. Ich dobór wpływa na szybkość reakcji modelu na nowe obserwacje.

Dobór parametrów za pomocą Solvera

Parametry można przyjąć arbitralnie, sprawdzić kilka wariantów albo wyznaczyć za pomocą optymalizacji numerycznej. W arkuszach kalkulacyjnych często wykorzystuje się do tego Solver.

Dla każdego okresu, dla którego znamy prognozę jednookresową i wartość empiryczną, obliczamy błąd:

\[ e_t = y_t-\widehat{y}_{t\mid t-1} \]

Następnie obliczamy sumę kwadratów błędów:

\[ SSE = \sum_{t=t_0}^{T}e_t^2 \]

Solver powinien minimalizować \(SSE\), zmieniając odpowiednie parametry:

Do komórek zmienianych dodajemy ograniczenia:

\[ 0\leq\alpha,\beta,\gamma\leq1 \]

Dlaczego wystarczy minimalizować SSE?

Średni błąd kwadratowy ma postać:

\[ MSE = \frac{SSE}{n} \]

Pierwiastek średniego błędu kwadratowego:

\[ RMSE = \sqrt{\frac{SSE}{n}} \]

Liczba \(n\) jest podczas optymalizacji stała, a pierwiastek kwadratowy jest funkcją rosnącą. Dlatego:

\[ \arg\min SSE = \arg\min MSE = \arg\min RMSE \]

Minimalizacja samej sumy kwadratów jest prostsza obliczeniowo i prowadzi do tych samych optymalnych parametrów.

W Solverze najlepiej minimalizować bezpośrednio sumę kwadratów błędów. Dzielenie przez liczbę obserwacji i wyciąganie pierwiastka nie zmienia położenia minimum.

Próba ucząca, testowa i walidacja krocząca

Minimalizacja błędu na całym dostępnym szeregu pokazuje przede wszystkim jakość dopasowania wewnątrz próby. Model może bardzo dobrze odtwarzać dane historyczne, ale gorzej prognozować nowe obserwacje.

Dlatego warto podzielić szereg na dwie części.

Próba ucząca

Na próbie uczącej:

Próba testowa

Na próbie testowej obliczamy prognozy bez ponownego dopasowywania parametrów. Dzięki temu sprawdzamy, jak model radzi sobie z danymi, których nie wykorzystano podczas strojenia.

Walidacja krocząca

W walidacji kroczącej prognozujemy kolejno każdy następny okres, korzystając wyłącznie z informacji dostępnych przed jego rozpoczęciem.

Procedura może wyglądać następująco:

  1. wyznacz prognozę na okres \(t+1\) na podstawie danych do okresu \(t\),
  2. porównaj prognozę z rzeczywistą wartością \(y_{t+1}\),
  3. dołącz nową obserwację do zbioru informacji,
  4. wyznacz prognozę na kolejny okres.

Wszystkie porównywane modele powinny być oceniane na tym samym zakresie, przy tym samym horyzoncie oraz za pomocą tej samej miary błędu.

Przykład metody Browna

Załóżmy, że wartości szeregu wynoszą:

\[ 100,\quad106,\quad103,\quad108,\quad110 \]

Przyjmujemy:

\[ \alpha=0{,}4, \qquad F_1=y_1=100 \]

Dla okresu drugiego:

\[ F_2 = 0{,}4\cdot106 + 0{,}6\cdot100 = 102{,}4 \]

Dla okresu trzeciego:

\[ F_3 = 0{,}4\cdot103 + 0{,}6\cdot102{,}4 = 102{,}64 \]

Dla okresu czwartego:

\[ F_4 = 0{,}4\cdot108 + 0{,}6\cdot102{,}64 = 104{,}784 \]

Dla okresu piątego:

\[ F_5 = 0{,}4\cdot110 + 0{,}6\cdot104{,}784 = 106{,}8704 \]

Prognoza na okres szósty:

\[ \widehat{y}_{6\mid5} = F_5 = 106{,}8704 \]

Przykład metody Holta

Załóżmy, że obserwacje wynoszą:

\[ 100,\quad104,\quad109,\quad113 \]

Przyjmujemy:

\[ \alpha=0{,}5, \qquad \beta=0{,}4 \]

oraz wartości początkowe:

\[ F_1=100, \qquad S_1=104-100=4 \]

Dla okresu drugiego:

\[ F_2 = 0{,}5\cdot104 + 0{,}5(100+4) = 104 \]

\[ S_2 = 0{,}4(104-100) + 0{,}6\cdot4 = 4 \]

Prognoza na okres trzeci:

\[ \widehat{y}_{3\mid2} = F_2+S_2 = 108 \]

Po poznaniu wartości \(y_3=109\) aktualizujemy model:

\[ F_3 = 0{,}5\cdot109 + 0{,}5(104+4) = 108{,}5 \]

\[ S_3 = 0{,}4(108{,}5-104) + 0{,}6\cdot4 = 4{,}2 \]

Prognoza na okres czwarty:

\[ \widehat{y}_{4\mid3} = 108{,}5+4{,}2 = 112{,}7 \]

Prognoza na dwa okresy naprzód, wyznaczona po okresie trzecim:

\[ \widehat{y}_{5\mid3} = F_3+2S_3 = 108{,}5+2\cdot4{,}2 = 116{,}9 \]

Zalety i ograniczenia

Zalety

Ograniczenia

Podsumowanie

Wygładzanie wykładnicze jest grupą adaptacyjnych metod prognozowania, w których wpływ starszych obserwacji maleje wykładniczo.

Metoda Browna wykorzystuje jeden szereg wartości wygładzonych:

\[ F_t = \alpha y_t + (1-\alpha)F_{t-1} \]

a prognoza na kolejny okres wynosi:

\[ \widehat{y}_{t+1\mid t}=F_t \]

Metoda Holta uwzględnia poziom i trend:

\[ \widehat{y}_{t+h\mid t} = F_t+hS_t \]

Metoda Wintersa dodaje składnik sezonowy \(C_t\) i występuje w wariancie addytywnym oraz multiplikatywnym.

Parametry \(\alpha,\beta,\gamma\) można wyznaczać przez minimalizację sumy kwadratów błędów prognoz jednookresowych:

\[ SSE = \sum e_t^2 \]

Rzetelna ocena modelu powinna obejmować nie tylko dopasowanie wewnątrz próby, lecz również próbę testową albo walidację kroczącą.

Ze względu na różnorodność konwencji przy każdej analizie należy jasno określić sposób inicjalizacji, oznaczenia szeregów pomocniczych, funkcję celu oraz procedurę wyznaczania prognoz.

Powiązane artykuły

Masz problem z tym tematem?

Wszechwiedza.pl pomaga zrozumieć matematykę, statystykę, ekonometrię, badania operacyjne, analizę danych, mechanikę, rachunkowość i wiele innych przedmiotów — spokojnie, konkretnie i krok po kroku. 

Zapytaj o pomoc