Kattintson, ha többet szeretne megtudni a szerzőről Maarit Widmann.
Egy teljes idősorelemző alkalmazás lefedi az a Data Science ciklus a hozzáféréstől az idősoros adatok átalakításáig, modellezéséig, kiértékeléséig és telepítéséig. Idősoros adatok esetén azonban ezekben a lépésekben a konkrét feladatok eltérnek a keresztmetszeti adatoktól. Például a keresztmetszeti adatokat a rendszer egy objektum pillanatképeként gyűjti össze egy adott időpontban, míg az idősoros adatok gyűjtése ugyanazon objektum egy adott időszakon keresztüli megfigyelésével történik. Az idősoros adatok szabályos mintái sajátos terminológiával rendelkeznek, és meghatározzák a szükséges előfeldolgozást, mielőtt az idősorok modellezésére térnének át. Az idősorok sokféle modellel modellezhetők, de bizonyos idősormodellek, mint például az ARIMA modell, a megfigyelések közötti időbeli struktúrát használják fel.
Ebben a cikkben bemutatjuk az idősoros alkalmazás elkészítésének útja során a leggyakoribb feladatokat. Végül az elméletet a gyakorlatba ültetjük egy példaalkalmazás felépítésével az Analytics platformon.
Hozzáférés az idősorokhoz
Az idősoroknak különböző forrásai és alkalmazásai vannak: napi eladási adatok a kereslet előrejelzéséhez, éves makrogazdasági adatok a hosszú távú politikai tervezéshez, okosórák érzékelőadatai az edzések elemzéséhez és még sok más. Mindezek az idősorok eltérnek például a részletességükben, szabályosságukban, tisztaságukban: Biztosak lehetünk abban, hogy az idei évre és a következő 10 évre is megvan hazánk GDP-értéke, de nem garantálhatjuk, hogy a okosóránk érzékelője stabilan teljesít bármilyen edzés során és bármilyen hőmérsékleten. Az is előfordulhat, hogy az idősoros adatok nem állnak rendelkezésre rendszeres időközönként, hanem csak véletlenszerű eseménypontokból, például betegségfertőzésekből vagy spontán ügyféllátogatásokból gyűjthetők. Az összes ilyen típusú idősoros adatban azonban az a közös, hogy idővel ugyanabból a forrásból gyűjtik őket.
Szabályosítási és tisztítási idősorozat
Ha megvannak az idősorok adatai, a következő lépés az, hogy megfelelő szemcsézettséggel egyenlő távolságra, folytonossá és tisztává tegyük azokat. A szükséges feladatok függenek az adatok eredeti alakjától és a miénktől is analitika célja. Például, ha egy termék egyhetes promócióját tervezzük, akkor részletesebb adatokra lehetünk kíváncsiak, mintha áttekintést szeretnénk kapni egy termék értékesítéséről.
osztályozás
Az idősorokat idő szerint kell rendezni. Amikor felosztja az adatokat tanítási és tesztkészletekbe, ne felejtse el megőrizni a rekordok közötti időbeli struktúrát azáltal, hogy felülről/alulról veszi az adatokat teszteléshez/képzéshez. Ha az adatok egynél több rekordot tartalmaznak időbélyegzőnként, akkor azokat időbélyeggel kell összesíteni. Például, ha naponta több rendelése van, és érdekli a napi értékesítés, akkor minden napra össze kell adnia az eladásokat. Továbbá, ha érdekli az idősorok a jelenleg az adatokban szereplőtől eltérő részletességgel (például havi eladások napi eladások helyett), akkor tovább összesítheti az adatokat a kívánt részletességgel.
Hiányzó értékek
Ha néhány időbélyeg hiányzik, be kell vezetnie őket az idősorba, hogy egyenlő távolságban legyenek. Néha a hiányzó rekordok az idősorok dinamikájának részét képezik (például egy tőzsde pénteken zár, hétfőn nyit).
Amikor bevezeti a hiányzó időbélyegeket az adatokba, a megfelelő értékek természetesen hiányoznak. Ezeket a hiányzó értékeket például lineáris interpolációval vagy mozgóátlagértékekkel imputálhatja. Ne feledje azonban, hogy a hiányzó értékek beszámításának legjobb technikája az adatok szabályos dinamikájától függ. Például, ha megvizsgálja a heti szezonalitást a napi adatokban, és hiányzik egy szombati érték, akkor valószínűleg az utolsó szombati érték a legjobb csere. Ha a hiányzó értékek nem véletlenszerűen hiányoznak, mint például a hiányzó tőzsdei záróárak hétvégén, akkor azokat egy fix értékkel helyettesítheti, amely ebben az esetben 0 lenne. Másrészt, ha a hiányzó értékek véletlenszerűek, és elég távoli múltban fordultak elő, használhatja a hiányzó érték utáni adatokat, és figyelmen kívül hagyja a régebbi adatokat.
Szabálytalan minták
A gyors ingadozások és kiugró értékek kezelésének egyik jó módja az adatok simítása. Számos technika alkalmazható, mint pl mozgó átlag és a exponenciális simítás. Ezenkívül a dobozdiagram bajuszain kívül eső értékek kivágása simítja az adatokat. Ne feledje, hogy az adatok erős szezonalitása széles körben elterjedt dobozdiagramhoz vezethet, és akkor jobb, ha feltételes dobozdiagramot használ a kiugró értékek észlelésére.
Azonban néha az idősorok csak egy nagyon szabálytalan jelenséget mutatnak! Ilyenkor megpróbálhatjuk szabályosabbá tenni az idősort egy részhalmaz kinyerésével, például úgy, hogy a teljes szupermarket eladásai helyett csak egy termék eladásait vesszük figyelembe, vagy az adatokat klaszterezzük.
Idősorok felfedezése és átalakítása
Ezen a ponton idősoros adataink olyan formában vannak, amely alkalmas a vizuális és számszerű feltárásra. A különböző ábrák és statisztikák olyan hosszú és rövid távú mintázatokat és időbeli összefüggéseket tárnak fel az idősorokban, amelyek segítségével jobban megérthetjük annak dinamikáját és előre jelezhetjük jövőbeli fejlődését.
Az idősorok vizuális felfedezése
Az idősorok feltárásának alapdiagramja a vonaldiagram (3. ábra), amely az idősor lehetséges irányát, szabályos és szabálytalan ingadozásait, kiugró pontjait, résekét vagy fordulópontjait mutatja. Ha megfigyel egy szabályos mintát az idősorában, például az italeladások éves szezonalitását, akkor minden szezonális ciklust (évet) külön-külön megvizsgálhat egy szezonális diagramon (3. ábra). A szezonális grafikonon jól látható például, hogy idén a július erősebb értékesítési hónap volt-e, mint tavaly, vagy évről évre nő a havi eladás.
Ha érdekli, hogy mi történik az évszakokon belül, például mi a medián eladások a nyári hónapokban, és mennyiben és milyen irányban változnak az eladások havonta, akkor megvizsgálhatja az ilyen dinamikákat egy feltételes mezőben (ábra 3). Egy másik hasznos diagram az idősorok feltárásához a késleltetési diagram (3. ábra). A késleltetési diagram az aktuális értékek és a múltbeli értékek közötti kapcsolatot mutatja, például a mai és a hét előtti eladásokat.
Az idősorok klasszikus dekompozíciója
A klasszikus dekompozíció, azaz az idősorok trendjére, szezonalitásaira és maradékára bontása jó támpontot ad az előrejelzéshez. Az idősor fennmaradó része, a reziduum állítólag az helyhez kötött, és előre jelezhető például egy ARIMA modellel. Ne feledje azonban, hogy ha a maradék sorozat nem stacionárius, szükség lehet néhány további transzformációra, például elsőrendű differenciálásra vagy az eredeti idősor logaritmikus transzformációjára.
Először is, ha az idősor irányt, trendet mutat, akkor az idősor detrendálható például regressziós modell illesztésével az adatokra, vagy mozgóátlag érték kiszámításával.
Másodszor, ha az idősor szabályos ingadozást – szezonalitást – mutat, az idősor ehhez igazítható. Az idősor autokorrelációs görbéjében megtalálhatja azt a késést, ahol a fő szezonalitás jelentkezik. Ha például a 7. késleltetésnél észlel egy csúcsot, és napi adatokkal rendelkezik, akkor az adatok heti szezonalitásúak lesznek. A szezonalitás módosítható az adatok különbségével abban a késésben, ahol a fő kiugrás előfordul. Ha módosítani kívánja az adatok második szezonalitását, ezt megteheti a korrigált (eltérített) idősorokra vonatkozó eljárás megismétlésével.
Végül, amikor elért egy stacionárius idősort, amely készen áll például egy ARIMA modellel történő modellezésre, elvégezheti az utolsó ellenőrzést pl. Ljung-box teszt az állóképességhez.
Idősorok modellezése és értékelése
Most áttérünk az idősor szabálytalan dinamikáját tartalmazó maradék részének modellezésére. Ezt megtehetjük az ARIMA modellekkel, gépi tanulás modellek, neurális hálózatok és ezek számos változata. Gyakran ezekkel a modellekkel modellezzük az idősor maradék részét, mert az stacionárius. Az idősorok felbontása azonban nem mindig szükséges, mert egyes modellek, mint például a szezonális ARIMA modell, nem stacionárius idősorok modellezésére is alkalmasak.
A következőkben összegyűjtjük ezeknek a különböző modellezési technikáknak néhány tulajdonságát, hasonlóságaikat és különbségeiket, hogy Ön kiválaszthassa az Ön használati esetének legmegfelelőbbet. Ne feledje azt is, hogy hasznos több modellt kiképezni, és akár egy együttest is összeállítani belőlük!
ARIMA modellek
ARIMA Az (Autoregressive Integrated Moving Average) modell egy lineáris regressziós modell a jelenlegi és múltbeli értékek (AR-rész), valamint a jelenlegi és múltbeli előrejelzési hibák (MA-rész) között. Ha a modellnek nincs nullától eltérő I-része, akkor az adatokat differenciáljuk, hogy stacionárius legyen. Az ARIMA alapmodellek azt feltételezik, hogy az idősorok stacionáriusak, és a stacionárius idősoroknak nincs hosszú távon megjósolható mintázata. A hosszú távú előrejelzések pontosságának csökkenése az előrejelzések növekvő konfidenciaintervallumában is megmutatkozik. A több adat birtoklása nem mindig jobb az ARIMA modellek betanításához: A nagy adatkészletek időigényessé tehetik egy ARIMA modell modellparamétereinek becslését, valamint eltúlozhatják a valódi folyamat és a modellfolyamat közötti különbséget.
Gépi tanulási modellek
A gépi tanulási modellek a késleltetett értékeket használják előrejelző oszlopként, és figyelmen kívül hagyják a céloszlop és az előrejelző oszlopok közötti időbeli struktúrát. A gépi tanulási modellek hosszú távú mintákat és fordulópontokat is azonosíthatnak az adatokban, feltéve, hogy a betanítási adatokban elegendő adat áll rendelkezésre e minták megállapításához. Általában minél több szabálytalanságot mutatnak az adatok, annál több adatra van szükség a modell betanításához. Gépi tanulási modell alkalmazásakor ajánlatos a maradékot modellezni. Ellenkező esetben létrehozhat egy olyan modellt, amely bonyolultabb, mint a klasszikus dekompozíciós modell, de valójában nem tanul semmi újat!
Tippek a modellválasztáshoz
Először is, bizonyos jelenségeket nehéz előre jelezni, és ilyenkor gyakran van értelme egyszerűbb modellt választani, és nem fektetni erőforrásokat valami olyan modellezésébe, amit nem lehet pontosan előre jelezni.
Másodszor, nem a modell teljesítménye az egyetlen kritérium. Ha a fontos döntések a modell eredményein alapulnak, akkor annak értelmezhetősége fontosabb lehet, mint egy kicsit jobb teljesítmény. Ennek ellenére egy neurális hálózat veszíthet egy egyszerű klasszikus dekompozíciós modellel szemben, bár valamivel jobb előrejelzést mutat.
Harmadszor, magyarázó változók hozzáadása a modellhez javíthatja az előrejelzés pontosságát. Egy ilyen modellben azonban az explikatív változókat is előre kell jelezni, és a modell növekvő összetettsége nem mindig éri meg a nagyobb pontosságot. Néha a durva becslések is elegendőek a döntések alátámasztására: Ha a szállítási összegeket tízben és százban számoljuk, akkor az előre jelzett keresletnek sem kell nagyobb részletességűnek lennie.
Modell értékelése
A modell betanítása után a következő lépés annak értékelése. A mintán belüli előrejelzésnél a teszthalmaz maga a betanító halmaz, így a modellfolyamat a modell betanításához használt adatokhoz illeszkedik. A mintán kívüli előrejelzéshez a tesztkészlet időben követi a betanítást.
Az egyik ajánlott hibamutató az idősor-modell értékeléséhez az átlagos abszolút százalékos hiba (TÉRKÉP), mivel a hibát univerzális skálán adja meg, a tényleges érték százalékában. Ha azonban a valódi érték nulla, akkor ez a mérőszám nincs megadva, és akkor más hibamérők is, mint például a négyzetes hibaRMSE), megteszi. Amit azonban gyakran javasolnak, az az, hogy NE használja R-négyzet. Az R-négyzet metrika nem illeszkedik az idősor-elemzés kontextusába, mert a hangsúly a céloszlop jövőbeni szisztematikus változékonyságának előrejelzésén van, ahelyett, hogy a múltbeli változatosságokat modellezné.
Idősorok előrejelzése és rekonstrukciója
Majdnem ott vagyunk! Az utolsó lépés a jövőbeli értékek előrejelzése és a jel rekonstrukciója.
Dinamikus előrejelzés
Ha olyan modellje van, amely hosszú távon nem tud pontos előrejelzéseket adni, a dinamikus telepítés gyakran javítja a mintán kívüli előrejelzések pontosságát. Dinamikus üzembe helyezés esetén egyszerre csak egy jövőbeli pont kerül előrejelzésre, és a múltbeli adatok ezzel az előrejelzési értékkel frissülnek a következő előrejelzés létrehozásához (5. ábra).
Trendek és szezonalitások helyreállítása
Végül, ha az előrejelzés előtt felbontjuk az idősort, vissza kell állítani a trendet és/vagy a szezonalitásokat az előrejelzésekben. Ha a szezonalitást az adatok differenciálásával korrigáljuk, akkor a jel rekonstrukcióját úgy kezdjük el, hogy értékeket adunk hozzá abban a késésben, ahol a szezonalitás előfordul. Például, ha vannak napi y adataink, ahol a szezonális különbséget a 7. késleltetésnél alkalmaztuk (heti szezonalitás), akkor ennek a szezonalitásnak a visszaállításához a következő számítást kell elvégezni az előrejelzési értékekhez yt+1, yt+2, ..., yt+h :
ahol ta képzési adatok utolsó időpontja, és h az előrejelzési horizont.
A második szezonalitás visszaállítása érdekében megismételjük a fent leírt lépést a visszaállított idősoroknál. Ha vissza akarjuk állítani a trendkomponenst az idősorba, akkor a trendet reprezentáló regressziós modellt alkalmazzuk a visszaállított idősorra.
Töltse ki az idősor alkalmazást az Analytics platformon
Végül vessünk egy pillantást arra, hogyan lehet ezeket a lépéseket a gyakorlatba átültetni Analytics-platformunk segítségével. A munkafolyamat Hozzáférés az átalakítási és modellezési idősorokhoz (elérhető a Hubon) a 6. ábra a hozzáféréstől a tisztításig, a vizuális feltárásig, a lebontásig és az idősorok modellezéséig vezető lépéseket mutatja be. E feladatok egy részéhez használjuk idősor-összetevők amelyek a munkafolyamatokat idősorokra jellemző funkciókként foglalják magukba: a kiválasztott részletességgel összesítik az adatokat, végrehajtják a klasszikus dekompozíciót és így tovább.
Ebben a példában a Minta – Szuperáruház által szolgáltatott adatok Csoportkép. Elemzésünkben az összes termék 2014-2017 közötti megrendelésére koncentrálunk – összesen 9994 rekord. Az előfeldolgozást úgy kezdjük, hogy az adatokat idősoros adatokká alakítjuk át a napi összértékesítés kiszámításával. Most már csak egy értékünk van naponta, de néhány nap hiányzik, mert ezeken a napokon nem adtak fel rendelést. Ezért ezeket a napokat bevezetjük az idősorba, és a hiányzó értékesítési értékeket fix 0 értékre cseréljük. Ezt követően havi szinten összesítjük az adatokat, és a további elemzésben figyelembe vesszük az egyes hónapok átlagos eladásait.
Vizuális feltáráshoz az adatokat éves szinten is összesítjük, és kiderül, hogy 2015 elején fordulópont van, amint azt a 7. ábra jobb oldali vonala mutatja. A bal oldali vonaldiagram az adatok éves szezonalitását mutatja: minden év végén két rendszeres csúcs van, minden év elején pedig egy alacsonyabb. Éves szezonalitást is észlelünk az adatokban, amint azt a 12-es késleltetésnél tapasztalt jelentős kiugrás mutatja a bal oldali ACF diagramban. Az idősort trendekre, szezonalitásokra és reziduumokra bontjuk, és ezeket a komponenseket a 7. ábra középső vonaldiagramja mutatja. A jobb oldali ACF diagram nem mutat szignifikáns autokorrelációt a maradék sorozatban.
Ezt követően egy ARIMA modellel modellezzük a havi átlagos eladások maradék sorozatát. A 12-es késleltetésnél történt differenciálás után az idősor hossza 36 megfigyelés. Keressük a legjobb modellt az Auto ARIMA Learner komponenssel, maximum 4 rendelési mennyiséggel az AR és MA alkatrészekhez, és legfeljebb 1 rendelhető az I alkatrészhez. A legjobban teljesítő modell alapján Akaike információs kritérium az ARIMA (0, 1, 4), és a kapott MAPE a mintán belüli előrejelzések alapján 1.153.
Végül felmérjük a modell mintán kívüli előrejelzési pontosságát. A munkafolyamat Idősorok előrejelzése és rekonstrukciója (elérhető a Hubon) a 8. ábrán látható, hogyan lehet előre jelezni a 2017-es napi eladásokat a 2014-től 2016-ig tartó havi adatok (24 megfigyelés) és a nyertes ARIMA (0,1,4) modell alapján a dinamikus telepítéssel. megközelítés. Ezt követően rekonstruáljuk a jelet, ebben az esetben visszaállítjuk a trendet és az éves szezonalitást az előrejelzési értékekre (12 havi átlagos értékesítési értékek). Összehasonlítjuk a tényleges és előrejelzett értékeket, és a MAPE értéke 0.336.
Összegzésként
Az idősorok, legyen szó egy apró objektum viselkedését nanoszekundumról nanoszekundumra mutató szenzoradatokról, a 20. századi makrogazdasági adatokról vagy valami a kettő közötti időszakról, sajátos analitikai technikákkal rendelkeznek, amelyek a hozzáférési, manipulációs és modellezési lépésekre vonatkoznak.
Ebben a cikkben bemutattuk az idősorok elemzési technikáinak alapjait, amelyek segítenek az idősoros adatokkal való munka megkezdésében.
Referenciák
[1] Chambers, John C., Satinder K. Mullick és Donald D. Smith. Hogyan válasszuk ki a megfelelő előrejelzési technikát. Harvard Egyetem, Graduate School of Business Administration, 1971.
[2] Hyndman, Rob J. és George Athanasopoulos. Előrejelzés: alapelvek és gyakorlat. OTexts, 2018.
Forrás: https://www.dataversity.net/building-a-time-series-analysis-application/
- Abszolút
- További
- elemzés
- analitika
- Alkalmazás
- alkalmazások
- AR
- cikkben
- auto
- Alapjai
- benchmark
- BEST
- Italok
- test
- Doboz
- épít
- Épület
- üzleti
- Takarításra
- Oszlop
- Közös
- összetevő
- bizalom
- országok
- Jelenlegi
- dátum
- nap
- Kereslet
- Fejlesztés
- betegség
- becslések
- esemény
- Gyakorol
- kutatás
- Ábra
- Végül
- vezetéknév
- megfelelő
- Összpontosít
- Péntek
- jövő
- GDP
- általános
- György
- jó
- diplomás
- Kezelés
- Harvard
- Harvard Egyetem
- Hogyan
- How To
- HTTPS
- Több száz
- azonosítani
- kép
- Fertőzések
- információ
- IT
- július
- nagy
- vezet
- TANUL
- tanuló
- tanulás
- szint
- vonal
- Hosszú
- gépi tanulás
- fontos
- piacára
- Metrics
- modell
- modellezés
- hétfő
- havi adatok
- hónap
- mozog
- hálózat
- hálózatok
- ideg-
- neurális hálózat
- neurális hálózatok
- nyit
- érdekében
- rendelés
- Más
- Mintás
- teljesítmény
- tervezés
- emelvény
- előrejelzés
- Termékek
- Termékek
- előléptetés
- nyilvántartások
- regresszió
- Kapcsolatok
- Tudástár
- Eredmények
- értékesítés
- Skála
- Iskola
- kiválasztott
- értelemben
- Series of
- készlet
- Szállítás
- Egyszerű
- kicsi
- okos
- Pillanatkép
- So
- kezdet
- kezdődött
- statisztika
- készlet
- részvénypiac
- benyújtott
- nyár
- támogatás
- Csoportkép
- cél
- teszt
- Az alapok
- A jövő
- idő
- felső
- Képzések
- Átalakítás
- Egyetemes
- egyetemi
- érték
- Nézz
- hét
- heti
- Mi
- Wikipedia
- belül
- Munka
- munkafolyamat
- edzés
- érdemes
- év
- év
- nulla