Idősorok elemzése és előrejelzése

Tartalomjegyzék:

Idősorok elemzése és előrejelzése
Idősorok elemzése és előrejelzése
Anonim

Az emberek hosszú éveken keresztül előre jelezték az időjárási viszonyokat, a gazdasági és politikai eseményeket és a sporteredményeket, a közelmúltban ez a kiterjedt lista kriptovalutákkal bővült. A sokoldalú események előrejelzéséhez sokféleképpen lehet előrejelzéseket készíteni. Például az intuíció, a szakértői vélemények, a múltbeli eredmények összehasonlítása a hagyományos statisztikákkal és az idősoros előrejelzés csak egy ezek közül, miközben a legmodernebb és legpontosabb előrejelzési típusok széleskörű alkalmazási lehetőségekkel.

Idősoros módszer

Idősoros módszer
Idősoros módszer

Az idősoros (TS) módszer egy olyan adatkészlet, amely egy bizonyos időszakon keresztül gyűjt információkat. Vannak speciális módszerek ennek a típusnak a kinyerésére:

  • lineáris és nemlineáris;
  • paraméteres és nem paraméteres;
  • egydimenziós és többdimenziós.

Előrejelzési idősorozat a képességek egyedülálló készletét hozza magával, hogy megfeleljen a mai kihívásoknak. A modellezés a tanuláson alapul, hogy megállapítsa az adatok változásának mozgatórugóját. A folyamat a hosszú távú trendekből, szezonális hatásokból vagy szabálytalan ingadozásokból ered, amelyek a TS-re jellemzőek, és nem láthatók más típusú elemzésekben.

A gépi tanulás a számítástechnika egyik ága, ahol az algoritmusokat adatokból állítják össze, és magában foglalja a mesterséges neurális hálózatokat, a mély tanulást, az asszociációs szabályokat, a döntési fákat, a megerősítő tanulást és a Bayes-hálózatokat. Számos algoritmus kínál lehetőséget a problémák megoldására, és mindegyiknek megvannak a saját követelményei és kompromisszumai az adatbevitel, a sebesség és az eredmények pontossága tekintetében. Ezek a végső előrejelzések pontosságával együtt súlyozásra kerülnek, amikor a felhasználó eldönti, hogy melyik algoritmus működik a legjobban a vizsgált helyzetben.

Az idősoros előrejelzés a statisztika területéről kölcsönöz, de új megközelítéseket ad a problémamodellezéshez. A gépi tanulás és az idősorok fő problémája ugyanaz: az új eredmények előrejelzése a korábban ismert adatok alapján.

A prediktív modell célpontja

A prediktív modell célja
A prediktív modell célja

A TS rendszeres időközönként gyűjtött adatpontok halmaza. Elemezzük őket egy hosszú távú trend meghatározásához, a jövő előrejelzéséhez vagy valamilyen más típusú elemzés elvégzéséhez. 2 dolog különbözteti meg a TS-t a normál regressziós problémától:

  1. Ezek az időtől függenek. Ígya lineáris regressziós modell azon alapfeltevése, hogy a megfigyelések függetlenek ebben az esetben nem állja meg a helyét.
  2. A növekvő vagy csökkenő trend mellett a legtöbb TS-nek van valamilyen szezonalitása, azaz olyan változások, amelyek egy bizonyos időszakra jellemzőek.

Az idősoros előrejelzési modell célja, hogy igény szerint pontos előrejelzést adjon. Az idősor független változója az idő (t) és a célfüggő változó. A legtöbb esetben konkrét eredmény az előrejelzés, például egy ház eladási ára, a verseny sporteredménye, a tőzsdei kereskedés eredménye. Az előrejelzés a mediánt és az átlagot jelenti, és tartalmaz egy konfidenciaintervallumot, amely a 80-95%-os megbízhatósági szintet fejezi ki. Ha rendszeres időközönként rögzítik őket, a folyamatokat idősoroknak nevezik, és kétféleképpen fejezik ki:

  • egydimenziós időindexszel, amely implicit sorrendet hoz létre;
  • egy kétdimenziós halmaz: idő egy független változóval és egy másik függő változó.

A funkciók létrehozása az egyik legfontosabb és legidőigényesebb feladat az alkalmazott gépi tanulásban. Az idősoros előrejelzés azonban nem hoz létre jellemzőket, legalábbis nem a hagyományos értelemben. Ez különösen igaz, ha több lépéssel előre szeretné megjósolni az eredményt, és nem csak a következő értéket.

Ez nem jelenti azt, hogy a funkciók teljesen le vannak tiltva. Csak óvatosan kell őket használni a következő okok miatt:

  1. Nem világos, mi a valódi jövőértékek ezekre a funkciókra vonatkoznak.
  2. Ha az objektumok megjósolhatók és vannak mintázatai, mindegyikhez készíthet egy prediktív modellt.

Azonban ügyeljen arra, hogy a prediktív értékek szolgáltatásként történő használata hibát terjeszt a célváltozóba, és hibákhoz vagy torz előrejelzésekhez vezet.

Idősor-összetevők

Idősor-összetevők
Idősor-összetevők

Trend akkor áll fenn, ha a sorozat növekszik, csökken vagy állandó szinten marad az idő múlásával, tehát függvénynek tekintjük. A szezonalitás egy idősor olyan tulajdonságára utal, amely periodikus mintákat jelenít meg, amelyek állandó gyakorisággal (m) ismétlődnek, például m=12 azt jelenti, hogy a minta tizenkét havonta ismétlődik.

A szezonalitáshoz hasonló álváltozók hozzáadhatók bináris függvényként. Figyelembe veheti például az ünnepeket, különleges eseményeket, marketing kampányokat, függetlenül attól, hogy az érték külföldi vagy sem. Ne feledje azonban, hogy ezeknek a változóknak bizonyos mintákkal kell rendelkezniük. A napok száma azonban könnyen kiszámítható még jövőbeli időszakokra is, és befolyásolhatja az idősoros előrejelzést, különösen a pénzügyi területen.

A ciklusok olyan évszakok, amelyek nem fix ütemben történnek. Például a kanadai hiúz éves szaporodási jellemzői szezonális és ciklikus mintákat tükröznek. Nem ismétlődnek rendszeres időközönként, és akkor is előfordulhatnak, ha a gyakoriság 1 (m=1).

Késleltetett értékek -egy változó lemaradt értékei előrejelzőként szerepelhetnek. Egyes modellek, például az ARIMA, a Vector Autoregression (VAR) vagy az Autoregressive Neural Networks (NNAR) így működnek.

Az érdeklődésre számot tartó változó összetevői nagyon fontosak az idősorok elemzéséhez és előrejelzéséhez, viselkedésük, mintázatuk megértéséhez, valamint a megfelelő modell kiválasztásához.

Adatkészlet-attribútumok

Adatkészlet attribútumok
Adatkészlet attribútumok

Lehet, hogy hozzászokott ahhoz, hogy több ezer, millió és milliárd adatpontot vigyen be a gépi tanulási modellekbe, de ez nem szükséges az idősorokhoz. Valójában kis és közepes TS-vel is lehet dolgozni, a változó gyakoriságától és típusától függően, és ez nem hátránya a módszernek. Sőt, ennek a megközelítésnek számos előnye van:

  1. Az ilyen információkészletek megfelelnek az otthoni számítógépek képességeinek.
  2. Bizonyos esetekben végezzen idősorelemzést és előrejelzést a teljes adatkészlettel, nem csak egy mintával.
  3. A TS hossza hasznos grafikonok készítéséhez, amelyek elemezhetők. Ez nagyon fontos pont, mert a programozók az elemzési fázisban a grafikára hagyatkoznak. Ez nem jelenti azt, hogy nem dolgoznak hatalmas idősorokkal, de kezdetben kisebb TS-ek kezelésére is alkalmasnak kell lenniük.
  4. Minden adatkészlet, amely időhöz kapcsolódó mezőt tartalmaz, előnyös lehet az idősorelemzés és az előrejelzés előnyeiből. Ha azonban a programozónak nagyobb adatkészlete van, a DB (TSDB)megfelelőbb lehet.

E készletek egy része időbélyeggel, rendszernaplókkal és pénzügyi adatokkal rögzített eseményekből származik. Mivel a TSDB natív módon működik idősorokkal, ez egy nagyszerű lehetőség ennek a technikának a nagyméretű adatkészletekre történő alkalmazására.

Gépi tanulás

A gépi tanulás (ML) felülmúlhatja a hagyományos idősoros előrejelzési módszereket. Rengeteg tanulmány létezik, amelyek a gépi tanulási módszereket hasonlítják össze a TS-adatok klasszikusabb statisztikai módszereivel. A neurális hálózatok egyike azon technológiáknak, amelyeket széles körben kutattak, és alkalmazzák a TS-megközelítéseket. A gépi tanulási módszerek vezetik az idősorok alapján végzett adatgyűjtés rangsorát. Ezek a készletek hatékonynak bizonyultak, és felülmúlják a tiszta TS készleteket az M3-mal vagy a Kaggle-lel szemben.

A MO-nak megvannak a maga sajátos problémái. A funkciók fejlesztése vagy új előrejelzők létrehozása egy adatkészletből fontos lépés a számára, és óriási hatással lehet a teljesítményre, és szükséges módja lehet a TS-adatok trend- és szezonalitási problémáinak kezelésének. Ezenkívül egyes modelleknek problémái vannak azzal, hogy mennyire illeszkednek az adatokhoz, és ha nem, akkor lemaradhatnak a fő trendről.

Az idősorok és a gépi tanulási megközelítések nem létezhetnek egymástól elszigetelten. Kombinálhatók az egyes megközelítések előnyeinek kihasználása érdekében. Az előrejelzési módszerek és az idősor-elemzés jól alkalmasak az adatok trend- és szezonális adatokra való felosztására.elemeket. Ez az elemzés ezután felhasználható bemenetként egy olyan ML-modellhez, amelynek algoritmusa trendekre és szezonalitásra vonatkozó információkat tartalmaz, így mindkét világból a legjobbat nyújtja.

A problémafelvetés megértése

Példaként vegyük a TS-t egy új nagysebességű vasúti szolgáltatás utasszámának előrejelzéséhez. Például 2 év adata van (2016. augusztus - 2018. szeptember), és ezekkel az adatokkal kell megjósolnia az utasok számát a következő 7 hónapra, 2 év adataival (2016-2018) óránkénti szinten a utazó utasok száma, és számukat a jövőben meg kell becsülni.

Adatkészlet részhalmaza az idősoros előrejelzéshez:

  1. Vonat és tesztfájl létrehozása szimulációhoz.
  2. Az első 14 hónap (2016. augusztus – 2017. október) edzésadatként, a következő 2 hónap (2017. november – 2017. december) pedig tesztadatok.
  3. Aggregálja az adatkészletet napi rendszerességgel.
Adathalmaz összesítés
Adathalmaz összesítés

Végezze el az adatok vizualizációját, hogy megtudja, hogyan változnak az adott időszakon belül.

Adatvizualizáció
Adatvizualizáció

Naiv megközelítésű építési mód

A TS előrejelzéshez ebben az esetben használt könyvtár a statsmodels. A fenti módszerek bármelyikének alkalmazása előtt telepíteni kell. Lehet, hogy a statsmodels már telepítve van a Python környezetben, de nem támogatja a metódusokatelőrejelzést, ezért klónoznia kell a tárolóból, és telepítenie kell a forrásból.

Szekvenálás
Szekvenálás

Ennél a példánál ez azt jelenti, hogy az érme utazási árai stabilak a kezdetektől és a teljes időtartam alatt. Ez a módszer feltételezi, hogy a következő várt pont egyenlő az utolsó megfigyelt ponttal, és naiv megközelítésnek nevezik.

Naiv módszer
Naiv módszer

Most számítsa ki a szórást, hogy tesztelje a modell pontosságát a tesztadatkészleten. Az RMSE értékből és a fenti grafikonból azt a következtetést vonhatjuk le, hogy a Naive nem alkalmas nagy volatilitású opciókra, de stabilak esetén használatos.

Egyszerű közepes stílus

A módszer bemutatásához diagramot rajzolunk, feltételezve, hogy az Y tengely az árat, az X tengely pedig az időt (nap) jelöli.

Egyszerű közepes stílus
Egyszerű közepes stílus

Ebből azt a következtetést vonhatjuk le, hogy az ár kis árréssel véletlenszerűen növekszik és csökken, így az átlagérték állandó marad. Ebben az esetben megjósolhatja a következő időszak árát, hasonlóan az elmúlt napok átlagához.

Az előrejelzésnek ezt a módszerét a korábban megfigyelt pontok várható átlagával egyszerű átlag módszernek nevezzük.

Ebben az esetben a korábban ismert értékeket veszik, az átlagot számítják ki és veszik a következő értékként. Természetesen ez nem lesz pontos, de nagyon közel van, és vannak helyzetek, amikor ez a módszer működik a legjobban.

Egyszerű Közepesmódszer
Egyszerű Közepesmódszer

A grafikonon megjelenített eredmények alapján ez a módszer akkor működik a legjobban, ha az egyes időszakokra vonatkozó átlagérték állandó marad. A naiv módszer ugyan jobb az átlagnál, de nem minden adathalmazra. Javasoljuk, hogy minden modellt lépésről lépésre próbáljon ki, és nézze meg, hogy javítja-e az eredményt.

Moving Average Model

Mozgóátlag modell
Mozgóátlag modell

E diagram alapján arra a következtetésre juthatunk, hogy az árak a múltban többször is jelentős mértékben emelkedtek, de mára stabilak. Az előző átlagolási módszer használatához az összes korábbi adat átlagát kell venni. A kezdeti időszak árai erősen befolyásolják a következő időszak előrejelzését. Ezért az egyszerű átlaghoz képest az árak átlagát csak az elmúlt néhány időszakra vonatkozóan vegye figyelembe.

Ezt az előrejelzési technikát mozgóátlag technikának nevezik, néha "n" méretű "mozgó ablaknak" is nevezik. Egy egyszerű modell használatával a TS következő értéke a módszer pontosságának ellenőrzésére jósolható. A Naive egyértelműen felülmúlja az átlagot és a mozgóátlagot is ennél az adatkészletnél.

Az előrejelzésnek van egy változata az egyszerű exponenciális simítás módszerével. A mozgóátlagos módszerben a múltbeli "n" megfigyelések egyenlő súlyozásúak. Ebben az esetben olyan helyzetekkel találkozhat, amikor a múlt „n” mindegyike a maga módján befolyásolja az előrejelzést. Ezt a változást, amely eltérően súlyozza a múltbeli megfigyeléseket, módszernek nevezzüksúlyozott mozgóátlag.

Minták extrapolálása

Az idősor-előrejelzési algoritmusok figyelembevételéhez szükséges egyik legfontosabb tulajdonság a minták extrapolálása a betanítási adattartományon kívül. Sok ML algoritmus nem rendelkezik ezzel a képességgel, mivel általában a betanítási adatok által meghatározott régióra korlátozódnak. Ezért nem alkalmasak TS-re, amelynek célja az eredmény előrevetítése a jövőbe.

A TS algoritmus másik fontos tulajdonsága a konfidenciaintervallumok megszerzésének lehetősége. Bár ez a TS-modellek alapértelmezett tulajdonsága, a legtöbb ML-modell nem rendelkezik ezzel a képességgel, mivel nem mindegyik statisztikai eloszláson alapul.

Ne gondolja, hogy csak egyszerű statisztikai módszereket használnak a TS előrejelzésére. Egyáltalán nem így van. Számos összetett megközelítés létezik, amelyek különleges esetekben nagyon hasznosak lehetnek. Az általánosított autoregresszív feltételes heteroszedaszticitás (GARCH), a Bayes-féle és a VAR csak néhány ezek közül.

Léteznek neurális hálózati modellek is, amelyek olyan idősorokra alkalmazhatók, amelyek késleltetett prediktorokat használnak, és képesek kezelni olyan funkciókat, mint például a neurális hálózati autoregresszió (NNAR). Vannak még összetett tanulásból kölcsönzött idősoros modellek is, különösen a visszatérő neurális hálózatok családjában, mint például az LSTM és a GRU hálózatok.

Becslési mutatók és maradék diagnosztika

A leggyakoribb előrejelzési mutatók a következőkAz rms azt jelenti, amit sokan használnak regressziós feladatok megoldásánál:

  • MAPE, mert skálafüggetlen, és a hiba és a tényleges értékek arányát mutatja százalékban;
  • MASE, amely megmutatja, hogy az előrejelzés mennyire teljesít a naiv átlagos előrejelzéshez képest.

Miután egy előrejelzési módszert adaptáltunk, fontos annak értékelése, hogy mennyire képes rögzíteni a modelleket. Bár az értékelési metrikák segítenek meghatározni, hogy az értékek milyen közel állnak a tényleges értékekhez, nem értékelik, hogy a modell illeszkedik-e a TS-hez. A maradékok jó módszer ennek értékelésére. Mivel a programozó TS mintákat próbál alkalmazni, a hibák "fehér zaj"-ként viselkednek, mivel valami olyasmit jelentenek, amit a modell nem tud rögzíteni.

A „fehér zaj” a következő tulajdonságokkal kell, hogy rendelkezzen:

  1. Nem korrelált maradékok (Acf=0)
  2. A maradékok normál eloszlást követnek, nulla átlaggal (elfogulatlan) és állandó varianciával.
  3. Ha a két tulajdonság valamelyike hiányzik, van mit javítani a modellen.
  4. A nulla átlagtulajdonság könnyen tesztelhető a T-teszt segítségével.
  5. A normalitás és az állandó variancia tulajdonságait vizuálisan ellenőrizzük reziduális hisztogram vagy megfelelő egyváltozós normalitásteszt segítségével.

ARIMA modell

ARIMA – AutoRegressive Integrated Moving-Average modell, az egyik legnépszerűbb módszer a TS előrejelzésben, főlegadatok automatikus korrelációjával kiváló minőségű modellek létrehozásához.

Az ARIMA együtthatók kiértékelésénél a fő feltételezés az, hogy az adatok stacionáriusak. Ez azt jelenti, hogy a trend és a szezonalitás nem befolyásolhatja az eltérést. A modell minősége úgy értékelhető, hogy a tényleges értékek idődiagramját összehasonlítjuk az előre jelzett értékekkel. Ha mindkét görbe közel van, akkor feltételezhető, hogy a modell illeszkedik a vizsgált esethez. Fel kell tüntetnie a trendeket és a szezonalitást, ha van ilyen.

A maradékok elemzésének meg kell mutatnia, hogy a modell illeszkedik-e: a véletlenszerű maradékok azt jelentik, hogy pontos. Az ARIMA paraméterekkel való illesztése (0, 1, 1) ugyanazt az eredményt adja, mint az exponenciális simítás, a paraméterek (0, 2, 2) használata pedig dupla exponenciális simítást eredményez.

Idősoros algoritmusok az SQL Serverben
Idősoros algoritmusok az SQL Serverben

Az ARIMA beállításait az Excelben érheti el:

  1. Indítsa el az Excelt.
  2. Keresse meg az XL MINER-t az eszköztáron.
  3. A szalagon válassza ki az ARIMA elemet a legördülő menüből.

Az ARIMA modell képességeinek összefoglalása:

  1. ARIMA – Autoregresszív integrált mozgóátlag.
  2. Az idősorelemzésben használt előrejelzési modell.
  3. ARIMA paraméter szintaxisa: ARIMA (p, d, q) ahol p=autoregresszív tagok száma, d=szezonális különbségek száma és q=mozgóátlagos tagok száma.

Algoritmusok az SQL Serverben

A keresztjóslás végrehajtása az egyik fontosidősorok jellemzői a pénzügyi feladatok előrejelzésében. Ha két összefüggő sorozatot használunk, az eredményül kapott modell felhasználható az egyik sorozat eredményeinek előrejelzésére a többiek viselkedése alapján.

Az SQL Server 2008 hatékony új idősoros funkciókat tartalmaz, amelyeket megtanulhat és használhat. Az eszköz könnyen hozzáférhető TS-adatokkal, könnyen használható felülettel rendelkezik az algoritmus-funkciók szimulálásához és reprodukálásához, valamint egy magyarázó ablakkal rendelkezik, amely linket tartalmaz a szerveroldali DMX-lekérdezésekre, így megértheti, mi történik belül.

A piaci idősorok egy széles terület, ahol mélytanulási modellek és algoritmusok alkalmazhatók. A bankok, brókerek és alapok most kísérleteznek az indexek, árfolyamok, határidős ügyletek, kriptovaluta árak, állami részvények és egyebek elemzésének és előrejelzésének a bevezetésével.

Az idősoros előrejelzésben a neurális hálózat a piacok struktúráinak és trendjeinek tanulmányozása alapján kiszámítható mintákat talál, és tanácsokat ad a kereskedőknek. Ezek a hálózatok segíthetnek olyan rendellenességek észlelésében is, mint a váratlan csúcsok, esések, trendváltozások és szinteltolások. Sok mesterséges intelligencia modellt használnak pénzügyi előrejelzésekhez.

Ajánlott: