🎯 Definicja
Szereg Czasowy to dane, w których kolejność (Czas) ma kluczowe znaczenie. To nie jest worek losowych liczb. To historia. Przykłady: Cena akcji, Temperatura co godzinę, Sprzedaż dzienna.
🔑 Kluczowe cechy
- Trend: Czy rośnie/spada w długim okresie? (Np. Globalne ocieplenie - trend rosnący).
- Sezonowość: Czy powtarza się w cyklach? (Np. Sprzedaż lodów rośnie latem).
- Szum: Losowe wahania.
📚 Szczegółowe wyjaśnienie
Analiza szeregów czasowych (Forecasting) służy do przewidywania przyszłości. Metody:
- Klasyczne: ARIMA, Exponential Smoothing. (Dobre dla prostych trendów).
- ML: XGBoost (wymaga “Lag Features” - dodania kolumn
sprzedaż_wczoraj,sprzedaż_tydzień_temu). - Deep Learning: LSTM, Transformers, Prophet (Facebooka).
💡 Przykład zastosowania
Piekarnia chce wiedzieć, ile chleba upiec jutro. Analizuje sprzedaż z ostatnich 3 lat. Model widzi:
- W soboty sprzedaż jest +50% (Sezonowość tygodniowa).
- W Grudniu sprzedaż rośnie (Sezonowość roczna).
- Od roku sprzedaż ogólnie rośnie o 2% miesięcznie (Trend). Model wypluwa liczbę: 500 bochenków. Piekarnia nie marnuje jedzenia.
📌 Źródła
- Forecasting: Principles and Practice (Hyndman).
👽 Brudnopis
- Uważaj na “Data Leakage” przy walidacji! Nie możesz używać
train_test_splitlosowo. Musisz uciąć czasowo: Trenuj na 2020-2022, testuj na 2023. Nie wolno mieszać przyszłości z przeszłością w treningu.