Predikcia DJIA pomocou neurónových sietí Martin Tkáč Miroslav Týnovský
DJIA explained Dow Jones Industrial Average najpopulárnejší indikátor nálady na NYSE New York Stock Exchange pomerne spoľahlivo ukazuje trend, ktorým sa uberá trh s akciami pokles či rast počíta sa denne z cien akcií 30 vybraných spoločností obchodovaných na NYSE
Popis úlohy predpovedať vývoj DJIA zmenu hodnoty za mesiac na základe faktorov, ktoré by na vývoj DJIA mohli mať vplyv ktorých mesačné hodnoty sú dostupné
Popis dát zvolené štatistiky, na základe ktorých budeme odhadovať DJIA: hospodárstvo USA (zdroj: databáza CERGE) reálna mzda, nezamestnanosť, vývoz, dovoz, index priemyselnej produkcie, objem maloobchodného predaja cena ropy zmena DJIA za predošlý mesiac dáta za roky 1993 – 2004, 143 vzorov
Použité metody Použili jsme dvě různé metody dobývání znalostí Metoda GUHA – rychlý náhled na data a vztahy mezi jednotlivými atributy Neuronové sítě – přesný odhad vývoje Dow Jones
Metoda GUHA Používáme jen dva základní kvantifikátory pro popis vztahů Fundovaná implikace – v kolika procentech případů platí při daném předpokladu daný závěr Odchylka od průměru – o kolik procent se změní platnost závěru, když platí daný předpoklad
Zpracování metodou GUHA Dvě fáze: Předzpracování dat Hledání vztahů mezi atributy Předzpracování dat – hodnoty atributů jsme rozdělili do čtyř skupin: výrazný nárůst, nárůst, pokles, výrazný pokles se snahou o rovnoměrné rozdělení
Rozdělení hodnot atributů
Výsledné hypotézy Oil Price (výrazný pokles) => Dow Jones (nárůst) Support: 17% Confidence: 86% Above average: 38% Unemployment (mírný pokles) => Dow Jones (nárůst) Support: 22% Confidence: 73% Above average: 17% Dow Jones previous (výrazný pokles) => Dow Jones (nárůst) Support: 7% Confidence: 71% Above average: 15%
Závěr – GUHA Zdá se, že existují vztahy mezi našimi atributy Tyto vztahy nejsou triviální (žádné skvělé hypotézy nevyšly) Změna DJIA zřejmě má vztah ke všem (nebo k většině) použitých atributů V hypotézách se vyskytovaly všechny atributy
Neurónové siete Cieľ: naučiť sieť približne odhadovať zmenu DJIA vyhnúť sa preučeniu - naučiť sieť zovšeobecňovať, a nie namemorovať si odpovede na predložené vzory Problém: zmena DJIA vôbec nemusí závisieť na prezentovaných dátach
Predspracovanie dát Normalizácia vstupov siete aby všetky vstupy mali približne rovnakú dôležitosť (malé či veľké perc. zmeny) Transformácia požadovaných výstupov aby extrémne hodnoty (zmeny DJIA) nespôsobovali vysokú chybu bežné hodnoty (-5% – 5%) je vhodné čo najpresnejšie zachovať
Tréning viacero sietí s rôznymi topológiami viac rôznych metód učenia neurónových sietí „early stopping“ prevencia preučenia ak sa počas učenia začne opakovane zväčšovať chyba na vybranej množine validačných dát, tak ukonči učenie
Výsledky Hodnota chyby na testovacích dátach: ani najlepšie siete nedosiahli nižšiu než 8.5 (t.j. odchýlka ± 3%); temer nezávisle na topológii či použití PCA mojím cieľom bolo 0.5 (± 0.7%) Early stopping výpočet sa zastavil vždy po 6 – 12 iteráciach, t.j. chyba na validačných dátach začala rásť temer okamžite po začatí učenia
Záver Ak medzi vstupnými dátami a zmenou DJIA existujú nejaké závislosti, tak sú pravdepodobne veľmi nejasné a nejednoznačné Neurónové siete pravdepodobne nie sú vhodné na odhadovanie takýchto (potenciálne neexistujúcich) závislostí