Strona główna AI i ML Symulator prognozy sprzedaży — trend, sezonowość i szum

📈 Symulator prognozy sprzedaży — trend, sezonowość i szum

Interaktywny symulator prognozowania sprzedaży: zbuduj syntetyczną historię sprzedaży z trendu, sezonowości i szumu, a następnie obserwuj, jak klasyczny model dekompozycji dopasowuje się do niej i prognozuje przyszłość z pasmem ufności.

AI i ML3DUmiarkowany60 FPS
ai-sales-forecasting ↗ Otwórz osobno
Interfejs samej symulacji jest w języku angielskim.

O tej symulacji

Prawdziwe dane sprzedażowe rzadko są samym szumem — zwykle mają długoterminowy trend (rosnący lub malejący popyt), powtarzający się wzorzec sezonowy (skoki świąteczne, letnie zastoje, efekty dnia tygodnia) oraz losową zmienność na wierzchu, której żaden model nie przewidzi. Klasyczna dekompozycja szeregów czasowych dzieli obserwowany szereg dokładnie na te trzy części: y(t) = trend(t) + sezon(t) + reszta(t). Gdy trend i kształt sezonowy zostaną oszacowane z historii, można je przedłużyć w przyszłość, tworząc prognozę, podczas gdy rozrzut reszt mówi, na ile ufać tej prognozie. Ta symulacja generuje 104 tygodnie (dwa lata) syntetycznych danych sprzedaży z regulowanego trendu liniowego, regulowanego cyklu sezonowego i szumu gaussowskiego. Następnie uruchamia prawdziwy potok dekompozycji po stronie klienta: wyśrodkowana średnia krocząca izoluje trend, uśrednianie fazowe izoluje indeks sezonowy, a regresja liniowa na danych odsezonowanych daje linię trendu prognozy. Odchylenie standardowe reszt dopasowania w próbie napędza pasmo ufności ±1,96σ wokół prognozowanej wartości. Dostosuj suwaki, aby zobaczyć, jak siła trendu, amplituda sezonowa i poziom szumu zmieniają jakość dopasowania (MAE, RMSE) oraz jak ściśle prognoza śledzi świeżo symulowaną „prawdziwą” przyszłość.

Najczęściej zadawane pytania

Co oznacza zacienione pasmo ufności wokół prognozy?

Pasmo to przedział ±1,96σ wokół prognozy punktowej, zbudowany z odchylenia standardowego reszt dopasowania w próbie (różnicy między dopasowanymi wartościami modelu a rzeczywistymi danymi historycznymi). Zakładając, że te reszty mają w przybliżeniu rozkład normalny, a ten sam proces szumu utrzymuje się w przyszłości, około 95% rzeczywistych wyników powinno mieścić się w paśmie. To nie gwarancja — to najlepsze oszacowanie modelu co do tego, jak bardzo zwykle się myli, przeniesione w przyszłość przy stałej szerokości.

Dlaczego prognoza bardzo się myli, gdy szum sigma jest wysoki?

Klasyczna dekompozycja rozdziela szereg na trend, sezonowość i szum reszt, a następnie zakłada, że szum uśrednia się w czasie. Gdy σ jest duże w stosunku do sygnału trendu i sezonowości, poszczególne tygodnie są zdominowane przez losowość niemającą trwałej struktury — w szumie nie ma niczego, czego model mógłby się nauczyć, więc pasmo ufności się poszerza, a każdy pojedynczy przyszły punkt prawdopodobnie wyląduje daleko od centralnej linii prognozy, mimo że średnie zachowanie na przestrzeni wielu tygodni wciąż podąża za trendem i wzorcem sezonowym.

Czym jest klasyczna dekompozycja szeregów czasowych?

Dekompozycja dzieli obserwowany szereg y(t) na składowe: y(t) = trend(t) + sezon(t) + reszta(t). Ten symulator szacuje trend za pomocą wyśrodkowanej średniej kroczącej, która wygładza cykl sezonowy, odejmuje ją, by wyizolować efekty sezonowe, uśrednia wartości pozbawione trendu według fazy (np. wszystkie tygodnie-27 razem), by uzyskać powtarzający się indeks sezonowy, a następnie ponownie dopasowuje trend liniowy do danych odsezonowanych. Reszta to to, co pozostaje — idealnie bliskie czystemu szumowi bez pozostałego wzorca.

Jaka jest różnica między MAE a RMSE?

Średni błąd bezwzględny (MAE) uśrednia |rzeczywista − dopasowana| dla wszystkich punktów, traktując każdy błąd jednakowo niezależnie od wielkości. Pierwiastek błędu średniokwadratowego (RMSE) uśrednia błędy podniesione do kwadratu przed wyciągnięciem pierwiastka, co karze duże błędy znacznie mocniej niż małe. Gdy RMSE jest zauważalnie większe niż MAE, sygnalizuje to, że kilka tygodni ma nietypowo duże błędy (wartości odstające), a nie że błędy są rozłożone równomiernie — przydatne do sprawdzenia, czy ustawienie szumu σ lub amplitudy sezonowej powoduje sporadyczne duże skoki, których model trend+sezon nie potrafi uchwycić.

Jak szacowana jest składowa sezonowa?

Dla każdej fazy rocznego cyklu (od tygodnia 0 do tygodnia 51 okresu) symulator uśrednia resztę pozbawioną trendu we wszystkich wystąpieniach tej fazy w dwóch latach historii. Przy 104 tygodniach danych to dwie obserwacje na fazę, co wystarcza do odzyskania czystego kształtu sezonowego przy niskim szumie, ale daje bardziej zaszumiony indeks sezonowy przy wysokim σ. 51 średnich fazowych jest następnie centrowanych tak, by sumowały się do zera, aby składowa sezonowa nie zniekształcała ogólnego poziomu trendu.

Dlaczego prognoza po prostu powtarza ten sam kształt sezonowy co roku?

Klasyczna dekompozycja zakłada, że wzorzec sezonowy jest stabilny z cyklu na cykl — nie ma mechanizmu, by sam kształt sezonowy ewoluował w czasie (wymagałoby to bardziej zaawansowanego modelu, takiego jak Holt-Winters z parametrem wygładzania sezonowego, lub modelu przestrzeni stanów / ARIMA z różnicowaniem sezonowym). Powtarzanie stałego indeksu sezonowego to silne, ale proste założenie: działa dobrze, gdy leżący u podstaw cykl biznesowy faktycznie się powtarza, a zawodzi, gdy wzorzec sezonowy się przesuwa.

Dlaczego linia prawdziwej przyszłości odbiega od prognozy nawet przy niskim szumie?

Linia prognozy ekstrapoluje dopasowany trend i indeks sezonowy oszacowane wyłącznie ze 104 tygodni zaszumionej historii, podczas gdy linia prawdziwej przyszłości kontynuuje dokładny leżący u podstaw proces generujący ze świeżym losowaniem szumu. Nawet przy niskim σ dopasowane nachylenie trendu i indeks sezonowy są oszacowaniami z pewnym błędem próbkowania, więc niewielka luka między obiema liniami jest oczekiwana. Gdy σ rośnie, ten błąd estymacji rośnie, co jest właśnie powodem istnienia pasma ufności.

Dlaczego do znalezienia trendu używa się średniej kroczącej zamiast bezpośrednio dopasować linię?

Bezpośrednie dopasowanie prostej linii do surowych danych wciąż zawierających silny cykl sezonowy może obciążyć nachylenie, ponieważ sezonowe szczyty i doły nie są równomiernie rozłożone w oknie próby. Wyśrodkowana średnia krocząca o oknie równym okresowi sezonowemu anuluje jeden pełny cykl w każdym punkcie, dając gładkie oszacowanie trendu niezniekształcone sezonowością. Dopiero po wyizolowaniu i usunięciu składowej sezonowej symulator dopasowuje regresję liniową, dając oszacowanie trendu niepomieszane z sygnałem sezonowym.

Podobne symulacje