Cele 10 reguli de aur ale prognozei serii temporale

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

(Acest articol a fost publicat pentru prima dată pe Ozancan Ozdemirși cu amabilitate a contribuit la R-bloggeri). (Puteți raporta problema legată de conținutul acestei pagini aici)


Doriți să vă distribuiți conținutul pe R-bloggeri? dați clic aici dacă aveți un blog, sau aici dacă nu aveți.

Prognoza serii temporale este adesea considerată „arta întunecată” a științei datelor. Spre deosebire de problemele standard de regresie în care presupunem că observațiile sunt independente, datele din seria temporală sunt pline de autocorelare, sezonalitate și tendințe.

Indiferent dacă anticipați prețurile acțiunilor folosind R sau prognozați vânzările pentru un gigant de retail, algoritmii se pot schimba (ARIMA, Prophet, LSTM), dar principiile fundamentale rămân aceleași.

Aici sunt cele 10 reguli de aur fiecare cercetător de date ar trebui să urmeze atunci când se ocupă de date temporale.

1. Inspecția vizuală nu este negociabilă

Înainte de a scrie o singură linie de cod de modelare, trasează datele tale. Statisticile rezumate pot minți, dar un complot rareori o face. Caută:

  • Tendinţă: Datele se deplasează în sus sau în jos?
  • Sezonalitate: Există un model care se repetă?
  • Valori aberante: Există vârfuri care nu ar trebui să fie acolo?
  • Lacune: Lipsesc date?

2. Nu vă amestecați niciodată datele

În învățarea automată standard, amestecăm datele pentru a crea împărțiri tren/test. În serii de timp, acesta este un păcat capital.
Timpul este strict liniar. Nu puteți folosi datele de săptămâna viitoare pentru a prezice astăzi. Folosiți întotdeauna a scindare temporală:

  • Tren: ianuarie 2020 – decembrie 2023
  • Test: ianuarie 2024 – martie 2024

3. Stabiliți o linie de bază (modelul naiv)

De unde știi dacă modelul tău complex LSTM este de fapt „bun”? Ai nevoie de un reper. Comparați întotdeauna modelul dvs. cu un Metoda naivă:

  • Naiv 1: Valoarea de mâine va fi aceeași cu cea de azi.
  • Naiv 2 (sezonier): Vânzările din iunie viitor vor fi aceleași cu cele din iunie trecut. Dacă modelul dvs. complex nu poate depăși aceste euristice simple, nu merită implementat.

4. Respectați staționaritatea

Majoritatea modelelor statistice clasice (cum ar fi ARIMA) presupun că proprietățile statistice ale seriei (medie, varianță) nu se modifică în timp.

  • Dacă datele dvs. au o tendință, diferenţă ea.
  • Dacă varianța este în creștere (heteroscedasticitate), aplicați a transformarea jurnalului.

5. Cunoștințe de domeniu > Algoritmi

Un algoritm nu știe că o creștere a vânzărilor s-a datorat „Black Friday” sau că o scădere a traficului s-a datorat unei întreruperi de server.

  • Inginerie caracteristică: Includeți sărbătorile, datele meteo sau evenimentele de marketing ca regresori externi.
  • Contextul este adesea mai puternic decât reglarea hiperparametrului.

6. Atenție la scurgeri

Scurgerea de date în serii de timp este subtilă. Dacă utilizați viitor informații pentru a prezice trecutmodelul tău va arăta uimitor la antrenament, dar va eșua în producție.

  • Exemplu: Folosind „temperatura medie lunară” din 2024 pentru a prezice vânzările zilnice în ianuarie 2024. Nu veți cunoaște media lunară până la încheierea lunii!

7. Diagnosticarea contează (verificați-vă reziduurile)

Un model bun extrage tot „semnalul” și lasă în urmă doar „zgomot”. Verificați reziduurile (erorile) modelului dvs. Ar trebui să arate ca Zgomot Alb:

  • Media de zero.
  • Varianta constanta.
  • Fără autocorelare (Verificați graficul ACF al reziduurilor). Dacă există un model în erorile tale, modelul tău a omis ceva.

8. Îmbrățișează incertitudinea

Prognozele punctuale (de exemplu, „Vânzările vor fi de 105 unități”) sunt aproape întotdeauna greșite. În schimb, oferă Intervale de predicție (de exemplu, „Vânzările vor fi între 95 și 115 de unități cu 95% de încredere”). Acest lucru este crucial pentru factorii de decizie pentru a evalua riscul.

9. Alegeți metrica potrivită

Nu te baza doar pe $R^2$. Alegeți o valoare care se potrivește cazului dvs. de afaceri:

  • RMSE: Penalizează puternic erorile mari (bun pentru prognozele critice pentru siguranță).
  • MAE: Mai ușor de interpretat (eroare medie).
  • MAPE: Bun pentru procente, dar eșuează dacă valorile reale sunt zero.

10. Complexitate $neq$ Acuratețe

Există o tentație de a folosi cel mai recent model Transformer sau Deep Learning pentru fiecare problemă. Cu toate acestea, pentru multe serii de timp univariate din lumea reală, modele simple cum ar fi Netezire exponențială (ETS) sau ARIMA depășesc adesea rețelele neuronale complexe. Începeți simplu și adăugați complexitate numai dacă linia de bază eșuează.


Concluzie

Prognoza este la fel de mult despre înțelegerea procesului de generare a datelor, cât și despre matematică. Urmând aceste reguli, vă asigurați că modelele dvs. nu se potrivesc doar cu zgomotul, ci și captează semnalul.

Prognoza fericită!

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.