Mendelova univerzita v Brně
Predikce a optimalizace reálných dat pomocí algoritmů umělé inteligence Ing. Michael Štencl
Disertační práce
Školitel: Doc. RNDr. Ing. Jiří Šťastný, CSc.
Brno, 2010
Děkuji Jiřímu Šťastnému a Odinovi, za poskytnuté cenné rady a připomínky při tvorbě této práce. Poděkování patří i Honzovi Kolomazníkovi za pomoc při realizaci vícevláknových optimalizací.
3
Abstrakt Štencl, M. Predikce a optimalizace reálných dat pomocí algoritmů umělé inteligence. Disertační práce. Brno, 2010. Práce je orientována na oblast predikce a optimalizace reálných dat pomocí metod umělých neuronových sítí v rámci rozhodovacího procesu. Jedná se o hledání různých vhodných typů, topologií a učících algoritmů umělých neuronových sítí na řešení predikce reálných datových souborů. Optimalizace je v kontextu řešení práce zaměřena na použité topologie neuronových sítí, optimalizace učících algoritmů a vlastního výpočtu neuronovými sítěmi. První část práce je představuje souhrn aktuálních trendů aplikací a vývoje oblasti využití umělých neuronových sítí. V rámci prostudované literatury jsou vytipovány nejčastější modely umělých neuronových sítí pro potřeby predikce reálných dat. Následně je vymezena aplikační oblast realizací umělých neuronových sítí v rámci podpory rozhodovacího procesu. Na základě vymezení jednotlivých částí rozhodovacího procesu jsou vymezeny metody používané pro predikce reálných dat klasickými metodami. Za klasické metody jsou v práci považovány metody statistické predikce modelů časových řad. Následně jsou vymezeny metody umělých neuronových sítí a jejich použití pro predikce reálných dat. V rámci vlastní práce jsou realizovány experimenty zahrnující volbu typu, topologie, učícího algoritmu a také možnosti optimalizace umělých neuronových sítí. Vlastní realizace prezentují predikce vybraných reálných ekonomických indexů, konkrétně souboru statistik rodinných účtů a statistik přepravených komodit. Výsledky dosažené umělými neuronovými sítěmi jsou srovnány s reálnou hodnotou příslušného indexu a také s vybranými modely statistické predikce časových řad. Klíčová slova predikce, optimalizace, reálná data, ekonomické časové řady, rozhodování
4
Abstract Štencl, M. Using Artificial Intelligence Algorithms for Prediction and Optimization of Terrain Data. Dissertation Thesis. Brno, 2010. This dissertation thesis deals with the prediction and optimization of real data using artificial neural networks methods in decision-making. Usage of artificial neural networks includes finding of various suitable types, topologies and learning algorithms of artificial neural networks to solve prediction of real-world data sets. Optimization solutions in the context of work focused on neural networks used in topology optimization learning algorithms and neural networks own calculation. The first part is a summary of current trends in applications development and the utilization of artificial neural networks. The review of the literature is the selection of the most common models of artificial neural networks for prediction of real data needs. Subsequently, the implementation of the defined application of artificial neural networks in support of decision-making process is made. On the basis of determining the value of the decision making process are defined methods for prediction of real data using classical methods. As classical methods are considered methods of statistical prediction models for time series. After that, the methods of artificial neural networks and their application on prediction task are described. In the next part, experiments involving the choice of type, topology, learning algorithms and optimization possibilities of artificial neural networks is tested on real-world data sets. The implementation presents the prediction of selected realworld economic values; namely a set of household expenditures and goods transport is used. Results obtained with artificial neural networks are compared with real value of the index and also with selected models of statistical time series prediction results. Keywords prediction, optimization, real-world data sets, economical time series, decisionmaking
Prohlašuji, že jsem tuto disertační práci vypracoval samostatně s využitím literatury, která je uvedena v seznamu použitých zdrojů. Vlastní závěry, postupy, principy a další teoreticko-metodická východiska popsaná v práci jsou aplikována na reálných datových souborech popsaných v práci.
V Brně dne 30. 6. 2010
....................................................
6
OBSAH
Obsah 1 Úvod
8
2 Cíl práce 3 Současný stav aplikací neuronových sítí 3.1 Úvod do aplikací umělé inteligence . . . . . . . 3.2 Ekonomicky zaměřené aplikace neuronových sítí 3.2.1 Management . . . . . . . . . . . . . . . . 3.2.2 Marketing a marketingový výzkum . . . 3.2.3 Obchod . . . . . . . . . . . . . . . . . . 3.2.4 Finance a bankovnictví . . . . . . . . . . 3.2.5 Rešerše impaktovaných publikací . . . . 3.3 Zhodnocení současného stavu . . . . . . . . . .
11
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
4 Použité metody 4.1 Manažerské rozhodování . . . . . . . . . . . . . . . . . . 4.1.1 Zpracování informací pro manažerské rozhodování 4.2 Ekonomické časové řady . . . . . . . . . . . . . . . . . . 4.2.1 Trend . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Sezonní složka . . . . . . . . . . . . . . . . . . . . 4.2.3 Cyklická a náhodná složka . . . . . . . . . . . . . 4.3 Vybrané metody statistické predikce časových řad . . . . 4.4 Metody umělé inteligence . . . . . . . . . . . . . . . . . . 4.5 Základy umělých neuronových sítí . . . . . . . . . . . . . 4.5.1 Perceptronové sítě . . . . . . . . . . . . . . . . . 4.5.2 Způsoby učení perceptronových sítí . . . . . . . . 4.5.3 RBF sítě . . . . . . . . . . . . . . . . . . . . . . . 4.5.4 Další typy umělých neuronových sítí . . . . . . . 4.5.5 Využití umělých neuronových sítí pro predikci . .
. . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . .
5 Verifikace použitých metod na reálných úlohách 5.1 Systém přípravy vstupních dat . . . . . . . . . . . . . . . . . . . . . 5.2 Datové soubory pro experimenty . . . . . . . . . . . . . . . . . . . . 5.3 Metody vyhodnocování experimentů . . . . . . . . . . . . . . . . . 5.4 Vlastní experimenty . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.1 Komparace různých typů neuronových sítí . . . . . . . . . . 5.4.2 Možnosti optimalizace umělých neuronových sítí . . . . . . . 5.4.3 Komparace vybraného typu neuronové sítě s metodami statistické predikce . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Zhodnocení provedených experimentů a metodická doporučení
. . . . . . . .
12 13 14 14 14 15 15 16 18
. . . . . . . . . . . . . .
21 21 23 24 25 28 28 28 36 36 37 41 47 50 55
. . . . . .
57 57 59 62 63 65 81
. 84 91
OBSAH
7
7 Závěr
100
8 Použité zdroje
102
1
1
ÚVOD
8
Úvod
Aktuální vývoj směřuje k propojování informačních technologií a ostatních oblastí běžného života. Vedení firem častěji rozhoduje v podmínkách rizika. Pro snižování rizika spojeného s rozhodováním využívají společnosti specializovaných dat. Tato důležitá data, nesoucí pro podnik určitou informační hodnotu, může podnik získávat jednak ze svých interních zdrojů (controling, účetní data, zpětná vazba od zákazníků a další), a dále z vnějšího prostředí. Pro získávání dat bývá využíváno různých nástrojů. Získaná data je třeba dále zpracovávat. Mnohdy se přistupuje k tvorbě výběrových vzorků, aby se dosáhlo zjednodušení pro výpočty. Při chybném nebo nevhodném zpracování však dochází k nežádoucímu zkreslování reality. Metody umělých neuronových sítí umožňují zpracování velkých objemů dat na základě předem stanovených matematických modelů. Při správném využití lze minimalizovat zkreslení podstatných rysů reality na minimum. Využití umělých neuronových sítí v managementu a ekonomické analýze je stále více diskutovaným tématem zejména v souvislosti s požadavkem na dosažení přesnějších a sofistikovanějších výsledků. Jejich nasazení na problémy spojené zejména s počátečními kroky ekonomické analýzy, ve kterých je třeba efektivně a přesně zpracovat velké množství dat, se zdá být logickým vyústěním dlouhodobého vývoje. Manažerské rozhodování je nedílnou součástí manažerských sekvenčních funkcí (Fotr a kol., 2006). Rozhodování je spojeno s rozhodovacími problémy. Pro jejich dělení existuje mnoho přístupů, které ovlivňují např. postup a nástroje řešení, celkový čas potřebný k řešení atd. Problémy můžeme podle hlediska času dělit na dynamické a statické, podle počtu kritérií na jednokriteriální avícektriteriální rozhodování, ve spojení s řídícím stupněm na operativní, taktické a strategické. Z pohledu informatiky lze problémy dělit na algoritmizovatelné a nealgoritmizovatelné, a dále na dobře a špatně strukturované (Dostál, Rais, Sojka, 2005). Při spojení informačních technologií s podnikovými strukturami je vhodné rozčlenit rozhodovací problémy podle úrovní řízení. Operativní řízení řeší ve většině případů dobře strukturované problémy. Střední management naráží na dobře strukturované, ale i nestrukturované problémy. Vrcholový management se nejčastěji setkává se složitými, nestrukturovanými problémy řešenými za rizika a nejistoty (Fotr a kol., 2006). Informace pro rozhodování všech úrovní poskytují podnikové informační systémy, které obsahují různé moduly např. účetní systém, systém řízení vztahů se zákazníky, systémy pro podporu rozhodování nebo systémy pro řízení. Manažerské informační systémy (MIS), přesněji informační systémy pro řízení, umožňují vytváření rozsáhlých počítačových databází. Takové databáze obsahují data jak interního charakteru (složky firmy, zdroje financování aj.), tak informace externí (informace o konkurenci, dodavatelích, odběratelích, vývoji na trhu aj.) (Fotr a kol., 2006). Současně obsahují několik pohledů na data. Výše zmíněný je pohled na okolí firmy. Nutné je také udržovat časový pohled na data. Databáze obsahuje jak historická data, tak současná data, ale dobrý manažerský informační systém umí poskytnout i informace vztahující se k budoucnosti (Fotr a kol., 2006). Vytváření
1
ÚVOD
9
pohledů z minulých či současných dat není problém. Výzvou je vytvoření kvalitních předpovědí s přihlédnutím k mnohdy extrémně velkým datovým souborům. Právě zde je obrovský prostor pro využití umělé inteligence. Umělé neuronové systémy Jsou matematické modely, které se snaží o napodobení projevů inteligentního chování člověka (Simpson, 1990). Pojem umělé neuronové systémy zahrnuje umělé neuronové sítě, expertní systémy, neuropočítače a procesory pro paralelní výpočty. Umělé neuronové systémy primárně vznikly pro výzkum a reprodukci smyslové soustavy člověka, tedy řeči, zraku, čichu, hmatu, ale i myšlení a motorických schopností. Později se tyto systémy začaly využívat také pro datovou kompresi, zpracování optimalizačních úloh, rozeznávání obrazu, modelování systémů a vytváření aproximačních funkcí (Simpson, 1990). V dnešní době existuje řada prací, které se zabývají umělými neuronovými sítěmi, jejich modifikacemi, učícími pravidly a rychlejšími učícími algoritmy včetně řady aplikací. Nejvíce zájmu se soustředí na vícevrstvé (perceptronové) sítě, které jsou nejčastěji použity v úspěšných aplikacích. Díky velké variabilitě topologií a dalších parametrů umělých neuronových sítí je možné je využít pro řešení mnoha problémů. S dalším rozvojem ekonomických a manažerských disciplín (což přispívá ke sledování více indexů a hledání dalších informací), které se dostávají do výrazného obecného zájmu, se otevírají nové možnosti pro aplikace umělých neuronových sítí. Umělé neuronové sítě však nelze chápat jako jediný a ideální nástroj pro všechny problémy. V určitých typech úloh existují deterministické a rychlejší prostředky pro dosažení cíle. Pro jiné úlohy je vhodnější využít jiných metod umělé inteligence (fuzzy logika, genetické algoritmy) nebo je vhodně kombinovat. Mít potřebné informace a znalosti včas, kdekoliv a umět je využít je jednou z klíčových podmínek úspěchu manažerské práce. Obrovský náskok pak získávají ty firmy jejich manažeři se umějí nebo mají prostředky k rychlé orientaci v rozsáhlých datech, se kterými se dá dnes pracovat. Umění práce s rozsáhlými daty, informacemi a znalostmi se stává klíčovou složkou pro vytváření konkurenčních výhod a podnikatelských úspěchů zejména v dlouhodobém horizontu (Vodáček, Vodáčková, 2006). Konkurenční strategie Pro dlouhodobou pozici na trhu a zjištění prosperity je pro firmu důležité stanovit si účinnou konkurenční strategii pro získání převahy. Konkurenční strategie se odvíjejí od aktuálního stadia, ve kterém se firma nachází, a zároveň i od stavu odvětví, ve kterém firma soutěží. Konkurenční strategie zkoumá možnosti, které firmě pomohou efektivněji soutěžit, a tím upevnit její postavení na trhu. Vypracovat konkurenční strategii v podstatě znamená vypracovat širší zásady určující, jak bude podnik konkurovat, jaké by měly být jeho cíle a jaká opatření budou nezbytná k dosažení těchto cílů (Porter, 1994a). Konkurenční strategii lze chápat jako kombinaci cílů, o jejichž naplnění firma usiluje, a prostředků, které vedou k jejich dosažení. (Porter, 1994a) Podstatou formulování konkurenční strategie je uvedení podniku do vztahu k jeho prostředí. Pojem prostředí je velmi široký a zahrnuje sociální i ekonomické vlivy. Vnější vlivy
1
ÚVOD
10
působící v prostředí zasahují všechny firmy v odvětví, proto je klíčová schopnost firem vyrovnat se s nimi. Konkurence v odvětví vyrůstá z ekonomické struktury a daleko přesahuje chování současných konkurentů. Úroveň konkurence v odvětví závisí na pěti základních konkurenčních silách (Porter, 1994a): • vyjednávací vliv dodavatelů, • vyjednávací vliv odběratelů, • hrozba substitutů (služeb), • hrozba nově vstupujících firem do odvětví • a soupeření mezi firmami. Souhrnné působení těchto sil určuje potenciál konečného zisku v odvětví. Ten se dá měřit z hlediska dlouhodobé návratnosti investovaného kapitálu. S přihlédnutím ke konkurenčním silám lze stanovit cíl konkurenční strategie jako nalezení takového postavení v odvětví, kdy podnik může nejlépe čelit konkurenčním silám, nebo jejich působení obrátit ve svůj prospěch. Porter dále stanovuje tři obecné strategie pro zdolání pěti konkurenčních sil. Jedná se o prvenství v celkových nákladech, diferenciace a soustředění pozornosti (Porter, 1994b). Někdy se mohou firmy úspěšně rozhodnout pro sledování více než jednoho z uvedených přístupů. Konkurenční strategie v nových odvětvích může být naprosto odlišná oproti dosavadním zvyklostem společnosti. Jedním z hlavních rysů nového odvětví je silná nejistota kombinovaná s jistotou toho, že dojde ke změně. Strategii nelze formulovat bez explicitní nebo implicitní předpovědi vývoje. Právě zde je evidentní možnost nasazení metod umělých neuronových sítí pro explicitní predikci. Volba vlastní strategie současně úzce souvisí s její volbou a rozhodováním o příslušných změnách. V rámci maximalizace zisku a udržení konkurenční výhody vykonávají manažeři množství rozhodnutí, obecně rozhodovacích procesů. Vlastní rozhodovací proces obsahuje několik fází včetně tvorby variant, kde často dochází k odhadům budoucího vývoje vybraných indexů.
2
2
CíL PRÁCE
11
Cíl práce
Vlastní práce je orientována na oblast predikce a optimalizace reálných dat v rámci fází rozhodovacího procesu. Cílem práce je nalezení vhodných typů, topologií a učících algoritmů umělých neuronových sítí pro potřeby predikce reálných dat. Výchozím předpokladem je realizace různých modelů umělých neuronových sítí pro predikce reálných dat. Optimalizace je zaměřena na topologie umělých neuronových sítí, využití vhodných učících algoritmů a vlastního výpočtu neuronové sítě. Základním úkolem je hledání vhodných topologií, konfigurací, učících funkcí a typů umělých neuronových sítí v úlohách predikce reálných dat. Hledání příslušných algoritmů a metod zahrnuje jejich implementaci společně s testováním pro úlohy predikce nad různými datovými soubory a jejich optimalizací vzhledem k požadovaným hodnotícím kritériím. V rámci aplikační oblasti bude také provedeno srovnání vhodných metod statistické analýzy s vybranými typy neuronových sítí nad reálnými datovými soubory. Vlastní podpora manažerského rozhodování umělými neuronovými sítěmi se soustředí na rozhodovací proces, konkrétně fáze tvorby variant. Hlavní sféra zájmu je směřována na analýzy ekonomických ukazatelů, zejména ekonomické časové řady. Bude provedeno srovnání s reálnými hodnotami predikovaných indexů, které určí úspěšnost zvolené metody na základě přesnosti na výstupu. Realizace aplikací budou zaměřeny testování na reálných datových souborech. Součástí vlastního řešení bude také ověření možnosti využití navržených neuronových sítí v rámci vlastních implementací. Důležitým faktorem je rozsah zkoumané oblasti, který je v obecné rovinně velmi rozsáhlý. Klíčovými prvky pro práci jsou realizované úlohy predikce reálných dat s přihlédnutím k možným optimalizacím výpočetního procesu.
3
3
SOUČASNÝ STAV APLIKACí NEURONOVÝCH SíTí
12
Současný stav aplikací neuronových sítí
Kapitola se zaměřuje na zhodnocení současného stavu na poli využití umělých neuronových sítí v ekonomických aplikacích. Citační zdroje tvoří vědecké publikace z renomovaných žurnálů z aplikační oblasti. Většina publikací byla získána z databáze ScienceDirect v rámci plného přístupu Mendelovy univerzity v Brně (2008, 2009 a 2010).
Obrázek 3.1: Historie umělých neuronových sítí (Smith, Gupta, 2000).
Cílem kapitoly je vytvořit ucelený přehled relevantních a aktuálních publikací v oblasti využití metod umělé inteligence na vybrané ekonomické úlohy. Hlavní sféra zájmu je dána vlastním cílem disertační práce a tedy umělými neuronovými sítěmi v úlohách predikce reálných dat z ekonomické oblasti. Z přibližného počtu 1 200 dostupných publikací bylo provedeno časové omezení a to od roku 2005 po rok 2009. Jako další omezující podmínka byla stanovena úplná
3.1
Úvod do aplikací umělé inteligence
13
dostupnost článku a jeho zaměření do aplikační oblasti vlastní disertační práce. V závěru bylo vybráno asi 120 publikací, které byly dále zpracovávány dle relevance až na výsledných 60 použitých. Výsledkem je zjištění nejčastějšího typu použitých neuronových sítí vzhledem k cílové oblasti aplikací. Dále používaná metodika pro vyhodnocování výsledků provedených a publikovaných experimentů. Jako cílová oblast byla vybrána aplikace související s manažerskými funkcemi (plánování, organizování, výběr a rozmístění spolupracovníků, vedení lidí, kontrola (Vodáček, Vodáčková, 2006)), aplikace pro podporu manažerského rozhodování a aplikace z oblasti marketingového výzkumu. Toto členění odpovídá zaměření vlastních experimentů disertační práce.
3.1
Úvod do aplikací umělé inteligence
Vlastní zpracování literatury začalo komplexním přístupem pro celou oblast umělé inteligence. V rámci dalších zjištění se zájem přesunul čistě na oblast umělých neuronových sítí. Definujeme-li umělou inteligenci jako obecný pojme, který je tvořen různými metodami a technikami zaměřenými na automatizované řešení vybraných úloh. Pak za nástroje umělé inteligence považujeme zejména metody a postupy strojového učení (Mitchell, 1997), metody genetických algoritmů a umělé neuronové sítě. Při pohledu na současné aplikace strojového učení ve spojení s ekonomickými disciplínami zjistíme, že mezi úspěšně řešenými úlohami metodami strojového učení patří úlohy predikce. Brown (2004) svou publikací přesně vymezil současné problémy v oblasti predikce ekonomických časových řad. Dále je možné zmínit (ChiJie, Tian-Shyug, Chih-Chou, 2009), která pro predikci ekonomických časových řad používá kombinaci metody SVR (Support Vector Regression) a analýzy nezávislých komponent. Smíšené modely s metodou SVM pro predikci používá také (Shu-Ting, Bor-Wen, Chun-Hung, 2009) nebo (Kim, Sohn, 2009). Ti využívají pro rozhodování o udělení úvěru kombinaci metody SVM se statistickou shlukovou analýzou, resp. jednoduché predikce. Významné množství publikací se zabývá kombinací různých metod jak statistických (Shu-Ting, Bor-Wen, Chun-Hung, 2009), tak i metod strojového učení na ekonomických úlohách a velmi často také ve spojení s marketingem např. (Bose, Tian-Shyug, Chih-Chou, 2009), (Budayan, Birgonul, 2009). Právě (Bose, Tian-Shyug, Chih-Chou, 2009) přináší velmi dobrý přehled kvantitativních modelů používaných v přímém marketingu (direct marketing) z hlediska informačních systémů. Srovnání výkonnosti shlukové analýzy se samo-organizačními mapami a fuzzy logikou používající K-means metodu používá (Budayan, Birgonul, 2009). Pro predikci tržních cen použili (Sheng-Hsun, Po-An, Chun-Hung, 2009) integraci samoorganizační mapy s metodou SVR při dvoufázovém zpracování úlohy. Potvrzuje se tak trend hledání účinných kombinací více metod. Metoda SVM je dále použita i pro predikci finančních časových řad s použitím metody SVR (Chi-Jie, TianShyug, Chih-Chou, 2009), resp. metody SVM se statistickým modelem predikce
3.2
Ekonomicky zaměřené aplikace neuronových sítí
14
SARIMA(Kuan-Yu, Cheng-Hua, 2005). O definici metodologie pro dlouhodobou predikci časových řad založenou na statistických modelech a využívající SVM metodu se snaží článek (Sorjamaa, Hao, Reyhani a kol., 2007). Jedna z posledních publikací, která se zaměřuje na predikci kombinující více metod dohromady v čele s fuzzy modelováním je (Xiao, Gong, Zou, 2009). Metody predikce jsou o to zajímavější, že se zaměřují na práci s časovými řadami bilance zahraničního obchodu. Praktickou aplikaci metod strojového učení v komerčním prostředí přináší (Mostafa, 2008). Další aplikací dokazující trend v propojování metod umělé inteligence s praxí, je využití při analýze segmentace trhu (Chui-Yu, Yi-Feng, 2009). Spojení metod strojového učení s tržní segmentací ukazuje také článek (Bose, TianShyug, Chih-Chou, 2009). Na analýzu spotřebitele je zaměřen (Šušteršiča, Mramorb, Zupanc, 2009). Velmi zajímavou aplikaci přináší (Oguta, Aktasa, Alpa, Doganay, 2009). Jedná se o predikci manipulace s finančními informacemi využívající kombinaci metod strojového učení s pravděpodobnostní neuronovou sítí.
3.2
Ekonomicky zaměřené aplikace neuronových sítí
Následující části textu se zaměřuje na aplikace umělých neuronových sítí v různých zejména ekonomicky zaměřených aplikacích. Část je rozdělena na několik podsekcí. První části se zaměřují především na analýzu odborných knih. Poslední podsekce pak zpracovává především impaktované publikace z oblasti využití umělých neuronových sítí. Články jsou řazeny chronologicky od nejstarších po nejčerstvější. 3.2.1
Management
V počátcích nasazení algoritmů umělých neuronových sítí byly časté aplikace v plánování strojového času výrobních zařízení nebo plánování výrobních linek. Umělé neuronové sítě lze obecně využít především pro operace plánování a kontrolních aktivit počínaje predikcí poptávky pro plánování výroby (např. kolik musíme vyrobit výrobků, aby nevznikla ztráta), ale i plánování kontroly. O integraci marketingu a výrobních funkcí v podniku referuje (Balakrishnan, Chakravarty, Ghose, 1997). Neuronové sítě je možné využít i pro simulační modelování pro návrh efektivnějšího výrobního systému. 3.2.2
Marketing a marketingový výzkum
Úkolem moderního marketingu je co nejpřesněji identifikovat potřeby spotřebitele a jeho reakce na produkty. V první fázi nastává segmentace trhu, která rozdělí trh na skupiny podle chování spotřebitelů. Právě pro segmentaci trhu lze využít klasifikační umělou neuronovou síť, která je schopna rozdělit trh podle demografických, socio-ekonomických, zeměpisných (pravidel) ukazatelů, dále např. podle kupní síly a dalších charakteristik (Dibb, Simkin, 1991). Pro automatické rozdělení zákazníků na skupiny na základě charakteristik, lze využít samo-organizačních map (typ učení
3.2
Ekonomicky zaměřené aplikace neuronových sítí
15
umělé neuronové bez učitele). Naopak umělé neuronové sítě s učitelem lze vytrénovat pro rozlišení hranic mezi spotřebitelskými segmenty při rozdělování zákazníků na pojmenované skupiny (např. často nakupující, občasně nakupující, výjimečně nakupující) (Venugopal, Baets, 1994). Jako další aplikace neuronových sítí v marketingu lze uvést monitorování vzorového chování zákazníků v čase pro identifikaci momentu, kdy se zákazník rozhoduje o přechodu ke konkurenci. Dále například analýza reakcí spotřebitelů na reklamu a díky tomu upřesnění faktorů ovlivňujících používání bankomatů (Moutinho, Curry, Davies, Rita, 1994). 3.2.3
Obchod
Klíčem úspěchu v obchodu je správné rozhodnutí v co nejkratší době. Správná předpověď prodeje či obratu zboží zpřesňují rozhodnutí o skladových zásobách, potřeby výroby, personální politice a stanovení cen. Neuronové sítě poskytují, díky své schopnosti současně uvažovat několik proměnných (jako tržní poptávka po produktu nebo cena substitutu), kvalitní výsledky (při hodnocení přesnosti výstupu) při predikci prodejů. Komparační studie byly realizovány např. při odhadu prodejů v supermarketech, kde umělé neuronové sítě poskytovaly lepší výsledky než klasická regresní analýza nebo expertní odhad (Venugopal, Baets, 1994). Druhou oblastí, kde mohou umělé neuronové sítě přinést výhody pro obchod je analýza spotřebitelského koše. Lze tak například zkoumat skryté závislosti mezi jednotlivými produkty, kdy se obchodník snaží zjistit časové zpoždění mezi prodejem dvou produktů. Pokud je spotřebitelský koš složen ze dvou výrobků, které mají vzájemnou silnou závislost, pak obchodník může sáhnout k přesunu těchto výrobků na jiné umístění. Výrobky však mohou mít i v čase delší závislost – např. prodá-li obchodník tiskárnu a ví, že se spotřebitel vrátí za určité období pro náplň, může sáhnout k zaslání zvýhodněné ceny náplní a přednostně si zákazníka udržet před konkurencí (Bigus, 1996). Právě tyto možnosti lze řešit pomocí umělých neuronových sítí a tím poskytnout kvalitní podklady i pro manažerské rozhodování (v tomto případě operačního managementu). 3.2.4
Finance a bankovnictví
Právě finančnictví a bankovnictví patří mezi první oblasti, kde byly umělé neuronové sítě testovány. Mezi hlavní oblastí využití patří zejména predikce finančních a burzovních indexů. Umělé neuronové sítě byly úspěšně nasazeny na odhad vývoje cen (Grudnitski, Osburn, 1993), predikce směnného kurzu (Leung, Chen, Daouk, 2000). Další klasickou aplikací umělých neuronových sítí je rozhodování o udělení úvěru. Tradičně jsou tyto systémy založeny na statistických metodách. Umělé neuronové sítě však zásadně změnily pohled na tyto systémy. Společnost Hecht-Nielson vytvořila systém, který zvýšil výnosnost o 27 % naučením neuronové sítě na rozpoznání únosného a nežádoucího rizika při rozhodování o poskytnutí úvěru (Harston, 1990).
3.2
Ekonomicky zaměřené aplikace neuronových sítí
16
Nově jsou umělé neuronové sítě testovány na oblast tvorby bohatství (wealth). Dále jsou testovány pro modelování vztahů mezi dlouhodobou strategií podniku, krátkodobou finanční stabilitou a výkonem podniku (St. John, Balakrishnan, Fiet, 2000). 3.2.5
Rešerše impaktovaných publikací
Úvodník Journal of Econometrics 135 z roku 2006 přinesl kvalitní přehled metod a aplikací úloh predikce v ekonomii a finančnictví, který je věnován nositeli Nobelovy ceny Clivu Grangerovi (Swanson, Elliott, Ghysels, Gonzalo, 2005). Ten přináší historický přehled zmíněných aplikací počínaje rokem 1969 až po rok 2002. Výhody a nevýhody ve využití neuronových sítí v rozhodování za rizika a strategickém řízení s využitím nových modelů se věnuje publikace Decision-making, risk and corporate governance: New dynamic models/algorithms and optimization for bankruptcy decisions(Nwogugu, 2006). Článek je úvodem do modelování různých dynamických modelů pro predikci bankrotu a zpětné analýzy rozhodování, současně přináší systém a základ pro další výzkum v oblasti dynamických systémů a umělé inteligence. Další z komparačních studií věnující se tentokrát neuronovým sítím s vícerozměrnou regresní analýzou v oblasti modelování kapitálové struktury se věnuje (Hsiao-Tien, 2007). Věcné srovnání klasických technik dolování z dat (statistické metody nejmenších čtverců, logistická regrese, diskriminační analýza aj.) přináší (ICheng, Che-hui, 2009), který byl napsán již v roce 2007, ovšem publikace dosáhl až v roce 2009. Komparační studii neuronových sítí a neuro-fuzzy modelů v systémech DSS (systémy pro podporu rozhodování) pro predikci poptávky provedli (Efendigil, Onut, Kahraman, 2008). Výborný přehled využití aplikací umělé inteligence v systémech řízení vztahů se zákazníky uvádí (Ngai, Xiu, Chau, 2008). Spolupráci statistických metod a neuronových sítí pro zlepšení výkonu neuronových sítí při predikci sezónních časových řad přináší (Hamzacebi, 2008). Článek je zajímavý zejména pro kombinaci modelu sezónních časových řad dle BoxovyJenkinsovi metodologie a umělých neuronových sítí. Ukazuje tak na nový trend vedoucí na propojování obou vědních oborů. Možné využití neuronových sítí v architektuře inteligentní podpory rozhodování ukazuje (Phillips-Wren, Mora, Forgionne, 2007). Srovnání několika prostředků umělé inteligence nad kontrolou projektů z pohledu ukazatele finančních toků provedl (MinYuan, Hsing-Chih, Chih-Lung, 2008). Modelování stacionárních a nestacionárních ekonomických časových řad pro zvláštní model rekurentních neuronových sítí označovaných jako Dynamic Ridge Polynomial Neural Network(DRPNN) vyzkoušeli (Ghazali, Hussain, Nawi, Mohamad, 2009). Navržený model dosáhl nejvyšší schopnost aproximace nelineárních nestacionárních ekonomických časových řad. Khashei, Sohn, Bijari (2008) vytvořili hybridní model umělé neuronové sítě a metody fuzzy regrese pro predikci ekonomických časových řad. Článek potvrzuje důležitost nových kvantitativních metod pro analýzu finančních trhů v rámci rozhodování o budoucích investicích. Zajímavá publikace je také o vývoji marketingového
3.2
Ekonomicky zaměřené aplikace neuronových sítí
17
informačního systému na podporu prodeje implementujícího různé techniky dolování z dat (Chinho, Chienwen, 2009). Systém zahrnuje marketingovou analýzu trhu, nástroje pro stanovení cen. Současně využívá rozšířené shlukové analýzy pro získávání znalostí, především dolování informací o zákaznících. Pro automatizovanou klasifikaci jednotlivých produktů pak používá samo-organizační neuronovou síť. Za kvalitní publikaci z hlediska vyhodnocení přínosů experimentů využívajících neuronových sítí pro predikci nelineárních časových řade je (Balestrassi a kol., 2009). Ti v rámci testování použili metodu Designing of Experiment (DOE). Právě metoda DOE je jedna z nejdůležitějších výzkumných metodologií, která pracuje s praktickou aplikací provedených experimentů při zavádění do praxe(Balestrassi a kol., 2009). Zmíněná metoda DOE je zajímavá právě z důvodů použití při ověřování použití ARIMA modelů s různými typy umělých neuronových sítí. Právě tato kombinace je asi nejčastějším využitím smíšených modelů vůbec. DOE byla použita také v případě metody SVM pro predikci finanční časové řady (Shu-Ting, Bor-Wen, Chun-Hung, 2009). Výsledkem článku je pozitivní působení metodologie DOE při identifikaci jednotlivých faktorů a vztahů, které ovlivňují modely neuronových sítí. Díky metodologii DOE se objevil nárůst přesnosti a lepší možnosti srovnání umělých neuronových sítí s existujícími nelineárními autoregresními modely (Shu-Ting, Bor-Wen, Chun-Hung, 2009). Z hlediska projektového managementu je významná také publikace srovnávající metody stanovení ceny a časové náročnosti u vývojových projektů z oblasti informačních technologií (Berlin, Raz, Glezer, Zviran, 2009). Stanovit reálné náklady a časovou náročnost pro individuální projekty z oblasti informačních technologií patří k obtížným úlohám projektových manažerů v současné praxi. Publikace je o to cennější, že pracuje s empirickými daty z reálných společností. Studie srovnává dva různé přístupy ke stanovení doby trvání projektu a projektového řízení (plánování) odděleně. Pro stanovení obou proměnných byly použity lineární regresní modely a derivované modely založené na umělých neuronových sítích. Data byla získána z Mezinárodní standardizační společnosti pro softwarové srovnání (International Software Benchmarking Standards Group). Ke studii bylo přistupováno v mezinárodním srovnání. Srovnání probíhala na předem očištěném jednotném datovém souboru, který byl stejný pro obě metody. Jako výchozí model neuronové sítě autoři zvolili vícevrstevnou neuronovou síť se dvěma skrytými vrstvami a nelineární přenosovou funkcí. Modely neuronových sítí dosáhly lepších výsledků. V rámci zhodnocení však autoři poukázali na problém při praktickém využití. Produktoví manažeři, kteří neměli hlubší znalosti z oblasti umělé inteligence, nebyli schopni pochopit navržený koncept. Problém byl také při využití koeficientu produktivity. Hlavní námitkou bylo příliš vysoké riziko pro predikci na základě minulé produktivity. Další námitkou byla nemožnost standardizovat jednotlivé projekty a z toho odvozenou vzájemnou podobnost jednotlivých projektů. V souvislosti s disertační prací Martina Pokorného (2009), který aplikoval metodu ROC na predikci finanční tísně, lze uvést také článek zabývající se klasifikací pro predikci tržních selhání tzv. dotcom společností (Karthik Chandra, Ravi, 2009).
3.3
Zhodnocení současného stavu
18
Za dotcom společnosti jsou považovány čistě internetové společnosti, které jsou postupně na ústupu. Tyto společnosti fungují např. v USA v odlišných režimech než standardní společnosti. Je proto nutné přistupovat k analýze jejich finanční kondice odlišně než u standardních společností. Jeden z přístupů přináší právě Karthik a Ravi (2009). Ten zhodnocuje selhání predikce jejich vývoje při použití hybridních inteligentních systémů. Vedle zmíněné metody ROC byla dále aplikována vícevrstvá neuronová síť, klasifikační a regresní stromy (metoda CART), metoda SVM, logistickou regresi a metodu RF (Random Forrest). Publikace (Karthik Chandra, Ravi, 2009) nepracuje se časovými řadami, ale používá klasifikací dotcomových společností do skupin. Princip klasifikátoru byl založen ne předání datového souboru se všemi ukazateli jednotlivým implementacím výše zmíněných metod, ze kterých byly vybrány nejlepší tři. Následně se vyhodnotil nejlepší ze získaných tří a jeho výstup byl předán na výstup systému. Experimenty ukázaly, že nebyl příliš velký rozdíl mezi jednotlivými metodami. Vetší rozdíl nastal až s využitím metody ROC, která odhalila důležité znaky získané statistickým T-testem založené na zvláštním podvýběru, který významně zvýšil přesnost všech použitých technik. Autoři tak poukazují na další možnosti tvorby hybridních inteligentních systémů, ale současně upozorňují i na možné nedostatky a způsob jejich odhalení (zlepšení). (Chang, Tsai, 2008) předložili studii, která zavádí SVRGM model pro predikce založené na modelech volatility dynamických časových řad. Model SVGRM je hybridem spojující metodu učícího algoritmu SVR pro zlepšení parametrů a vyšší kontrolu nad tzv. shadow boxem pro řešení predikce časových řad. Dále spojuje statistický model GARCH do SVRMGR predikce. GARCH1 je rozšířením modelu ARCH obecně označovaných jako lineární modely volatility. Pro popsaný hybridní model byl použit na řešení problému s hromaděním volatility pro zpřesnění vystižení dynamické složky modelu časové řady. Pro ladění SVRGM/GARCH modelu, pak autoři použili vícevrstvou neuronovou síť s učícím algoritmem zpětného šíření chyby (Back propagation). Díky tomu dosáhli současného rozčlenění extrémů a volatility, což mělo za efekt zpřesnění predikce. Další články se zaměřují na přímé aplikace umělých neuronových sítí pro např. analýzu trhu a krátkodobou predikci (Bigdeli, Afshar, Amjady, 2009).
3.3
Zhodnocení současného stavu
Historický vývoj neuronových sítí sahá do počátků informačních technologií (viz. Obr. 3.1). Neuronové sítě lze dlouhodobě zaznamenat také v oblastech ekonomických, manažerských a marketingových. S důrazem na kvalitu jejich výsledků byly použity na analýzy různých časových řad (devizové kurzy, akcie, komodity, atd.), optimalizaci portfolia nebo na klasifikaci (typicky rozhodování o poskytnutí úvěru, predikce finanční tísně). Ze zmíněných úloh je po zobecnění jasná paralela k jakýmkoli dalším úlohám, na které jsou neuronové sítě využívány i v dalších odvětvích. 1
Modely ARCH a GARCH jsou součástí následující kapitoly
3.3
Zhodnocení současného stavu
19
Obecně je možné jejich použití tam, kde nejsme schopni matematicky vyjádřit daný problém, nebo mezi vstupními veličinami existují nelineární vztahy. Aplikací využívajících neuronové sítě řešící široké spektrum ekonomických úloh je dost. Žádná však nestanovuje jasnou metodu pro širší využití umělých neuronových sítí. Často také nejsou uváděny metody pro stanovení daného typu neuronové sítě. Obdobně pak není zřetelné přímé srovnání s dalšími metodami ve statistice, ale také s novými možnostmi a úlohami v managementu a ekonomii. Další zajímavostí je použití hybridních systémů, např. umělých neuronových sítí a expertních systémů (nebo v kombinaci s jinými metodami umělé inteligence). Výhodou neuronových expertních systémů třeba pro klasifikaci, je možnost naučit systém na jinou učící množinu a i pro jinou úlohu, systémy pak nepotřebují experta ani znalostního inženýra, aby plnil znalostní bázi systému. Stačí tak dostatečně velká množina vzorů „ze životaÿ.(Šnorek, Jiřina, 1996) Opomíjenou oblastí je i využití umělých neuronových sítí jako verifikačních nástrojů pro ekonomickou analýzu. Velký potenciál je také v oblasti modelování dlouhodobých strategií a dalších aplikací v managementu (viz oddíly 3.2.4 a 3.2.1). Jako příklad by mohla sloužit aplikace neuronové sítě pro predikci. Modelově se uvádí (Grudnitski, Osburn, 1993) nebo (Mařík a kol., 2003) a další, kteří využívají neuronové sítě pro odhad vývoje burzovního indexu, případně měnového kurzu. Tyto aplikace jsou však na simulaci nevhodné. Problém je spousta neovlivnitelných faktorů, které do vývoje měnových nebo akciových kurzů zasahují, což vede na zkreslení výsledného modelu a jeho odtržení od reality. Vhodnější se zdá být například predikce z pohledu managementu. Klasickou úlohou kombinující více typů problémů je např. stanovení počtu výrobků, které je potřeba vyrobit. Na začátku je nutné stanovit vhodné vstupní údaje pro učení neuronové sítě. Po naučení umělé neuronové sítě je možné odhadnout realizované prodeje a stanovit tak neztrátový počet výrobků. Obecně se jedná o predikci vývoje číselné řady. Klíčovou a mnohdy velmi opomenutou součástí aplikací, jsou metody vyžívající různých nástrojů pro určení správné interpretace výstupů získaných umělými neuronovými sítěmi. S narůstajícím množstvím dat je třeba hledat další metody nebo účinné rozšíření stávajících, které by vedly k přesnějším a vhodnějším výsledkům. Výše zmiňované příklady aplikací postihují klíčové oblasti ekonomie. Stále se ale objevují nové možnosti pro aplikace. Např. strategický management je orientován na dlouhodobé období a tlak na přesné odhady je daleko větší než u každodenních rozhodnutí. Strategické rozhodnutí ovlivňuje podnik na několik let dopředu. Zavádění metod neuronových sítí do dané oblasti, se však často omezuje pouze na tvorbu složitých matematických modelů. Tyto modely mají problém v praktickém uplatnění. S přihlédnutím k množství různých topologií neuronových sítí v kombinacích s učícími algoritmy, je třeba najít a přesně vymezit takové, které budou přínosné v praxi. Celkově se projevuje také nárůst komparačních studií srovnávající různé metody statistiky s vybranými metodami umělé inteligence. Problém bývá s použitými datovými soubory, které jsou obvykle velkých rozsahů. Ne vždy jsou však rozsáhlé
3.3
Zhodnocení současného stavu
20
datové soubory k dispozici a je nutné pracovat se soubory malých rozsahů. Z druhého pohledu celkově málo publikací zhodnocuje také vlastní přínos pro cílovou oblast a důkladnější popis použitých metod. Společným prvkem pro použité sítě jsou také použité nástroje. Často se jedná o typové řešení jednoho problému s vlastní implementací, mnohdy však popis řešení úplně chyběl a byl popsán pouze analytický model. Nabízí se tak možnost srovnání vlastního řešení s vybraným simulačním systémem.
4
POUŽITÉ METODY
4
21
Použité metody
Kapitola použitých metod je rozdělena do několika částí. V první je definováno manažerské rozhodování jako jedna z manažerských sekvenčních funkcí. Následně jsou identifikovány jednotlivé části procesu rozhodování. Část plní funkci identifikace jednotlivých aplikačních oblastí pro využití umělých neuronových sítí pro účely predikce numerických hodnot reálných dat. Druhá část se zaměřuje na zpracování informací pro rozhodovací proces, konkrétně se zaměřuje na metody statistiky pro predikci modelů časových řad. Poslední část popisuje metody klasických typů umělých neuronových sítí a plní zejména přehledovou funkci. V závěru této kapitoly jsou vymezeny konkrétní typy a metody umělých neuronových sítí pro predikci reálných dat.
4.1
Manažerské rozhodování
V úvodu (viz str. 8) je uvedeno, že manažerské rozhodování je spojeno s rozhodovacími procesy. Rozhodovací procesy definujeme jako procesy řešení rozhodovacích problémů, tj. problémů s více variantami řešení (Fotr a kol., 2006). Problém v obecné rovině vnímáme jako odchylku mezi žádoucím stavem a stavem reality. Odchylka může být nežádoucí, kdy skutečný stav je horší než žádoucí. Jak uvádí Fotr (2006) žádoucí stav můžeme odvozovat například z minulých zkušeností (například úroveň zásob, resp. rozpracované výroby, která se osvědčila). V tomto případě by ke vzniku problému vedl vzrůst zásob nebo zvýšená fluktuace pracovníků. V mnoha případech jsou však žádoucí hodnoty stavu určeny plánem. Odchylky od skutečnosti lze pak hlídat automatizovaně, vhodně definovanými kontrolními procesy a pravidly. Pro účinné kontrolní mechanismy je nutné znát strukturu rozhodovacích procesů. Fotr (2006) uvádí následující podrobné členění rozhodovacích procesů nazývané jako analytický model rozhodování: 1. Identifikace rozhodovacích problémů; získávání, analýza a vyhodnocování informací různého druhu s cílem identifikace určitých situací, které vyžadují řešení. 2. Analýza a formulace rozhodovacích problémů; hlubší poznání problémové situace, stanovení základních prvků, vyjasnění podstaty zahrnující určení příčin vzniku problému a určení cílů jeho řešení. Výsledkem je formulace rozhodovacího problému. 3. Stanovení kritérií hodnocení variant, podle kterých se budou posuzovat a hodnotit navržené varianty řešení rozhodovacího problému. 4. Tvorba variant řešení rozhodovacího problému; proces s vysokými nároky na tvůrčí aktivity s cílem nalezení směrů a formulace takových činností, které zajišťují dosažení cílů řešení daného problému. 5. Stanovení důsledku variant rozhodování; zjištění dopadů jednotlivých variant rozhodování z hlediska zvoleného souboru kritérií hodnocení.
4.1
Manažerské rozhodování
22
6. Hodnocení důsledků variant rozhodování a výběr varianty určené k realizaci; výsledkem může být buď celkově nejvýhodnější (optimální) varianta, nebo určení tzv. preferenčního uspořádání variant. 7. Realizace zvolené varianty rozhodování. 8. Kontrola výsledků realizované varianty; stanovení odchylek skutečně dosažených výsledků realizace vzhledem ke stanoveným cílům, resp. předpokládaným výsledkům řešení. Volba varianty určené k realizaci se považuje za závěrečnou etapu rozhodovacího procesu a jejím výsledkem je vlastní rozhodnutí. Souhrn etap předcházející tomuto rozhodnutí spočívá ve zpracování informací pro rozhodnutí – nazýváme jej souhrnně přípravou rozhodnutí. Prvky rozhodovacího procesu jsou cíl rozhodování, kritéria hodnocení, subjekt a objekt rozhodování, varianty rozhodování a jejich důsledky, stavy světa. Kvalitu rozhodovacích procesů ovlivňují (Fotr a kol., 2006): • stanovené cíle řešení rozhodovacího problému, jejich transformace do podoby kritérií hodnocení a uplatnění těchto kritérií při hodnocení variant a volbě varianty určené k realizaci; • množství a kvalita informací použitých k řešení rozhodovacího problému; • míra uplatnění nástrojů a poznatků teorie rozhodování při řešení rozhodovacího problému; • kvalita projektu řešení rozhodovacího problému, zda řešení problému prošlo všemi fázemi analytického modelu rozhodování; • kvalita objektu rozhodování, počet zpracovaných a koncepčně odlišných variant rozhodování i množství, přesnost a spolehlivost informací o důsledcích výsledků těchto variant; • kvalita řízení rozhodovacího procesu, vyjadřující míru využití poznatků současného managementu. V praxi existují pro výše zmíněné popisy a analýzy určité překážky. Ty brání dosažení vyšší, resp. žádoucí kvality řešení těchto problémů. Takové překážky (faktory) označujeme jak bariéry racionality (Fotr a kol., 2006). Je to například omezená schopnost člověka zpracovávat informace, kdy se otvírá příležitost pro využití umělé inteligence, která může automatizovaně prohledávat extrémně velké množství dat. Mezi dalšími bariérami racionality lze zmínit omezený rozsah znalostí a poznatků z vědních oborů nutných pro rozhodování. V tomto případě je možné využít expertních systémů. Ještě je možné uvést omezenou schopnost člověka formulovat a řešit složité rozhodovací problémy. Tuto bariéra racionality by bylo možné snížit pomocí zjednodušování problémů například zanedbáním rizika a nejistoty, stanovením omezeného počtu variant aj. Z výše uvedeného vyplývá vysoká důležitost kvalitních informací pro rozhodovací procesy. Mezi základní faktory významně ovlivňující rozsah informací potřebných pro řešení rozhodovacích problémů patří především (Fotr a kol., 2006): • významnost rozhodovacího problému, • reversibilita rozhodnutí,
4.1
Manažerské rozhodování
23
• • • • •
požadovaná přesnost a detailnost informací, dostupnost informací, časový tlak, disponibilní zdroje, styl, znalosti a dovednosti rozhodovatele. Výše zmíněné faktory jsou v praxi ovlivňovány dalšími specifiky spojenými především s chováním rozhodovatelů. Například marketingový manažer bude chápat řešení problému v oblasti návrhu marketingové strategie, zatím co informatik se bude snažit o vytvoření efektivního algoritmu pro řešení. Dalším faktorem ovlivňujícím řešení, je motivace hledat jakékoli dostatečné vysvětlení nastalé odchylky. Mnohdy díky tomu dochází ke špatné nebo nedostatečné identifikaci místa původu vzniklé odchylky. Obecně však lze tvrdit, že každé manažerské rozhodnutí je podloženo efektivním využíváním ekonomických dat jako informací pro rozhodování. V návaznosti na toto tvrzení, lze potvrdit klíčovou úlohu zpracování datových souborů a získávání informací pro manažerské rozhodování. 4.1.1
Zpracování informací pro manažerské rozhodování
Vlastnímu zpracování informací předchází jejich získávání. Možností jak získat kvalitní informace jak z hlediska struktury, tak i z časového hlediska, je několik. Za klasické metody lze považovat metody statistické analýzy dat. Za moderní nebo progresivní bývají označovány postupy založené na stromové struktuře informací, umělých neuronových sítích, netradiční vizualizaci údajů, stochastické predikci ekonomických časových řad a další (Hindls, Hronová, Novák, 2006). Další části textu se zaměřují na klasické metody (tedy statistické analýzy dat) a na metody umělých neuronových sítí. Ze zmíněných obecných metod budou popsány zejména metody požívané na predikce časových řad. Stromové struktury informací jsou základem pro řešení strukturovaných problémů, které lze snáze řešit v rámci rozhodovacího procesu. Pro tvorbu stromový struktur informací existuje celá řada standardních algoritmů (CART, CLS aj.), které usnadňují práci v této oblasti (Hindls, Hronová, Novák, 2006). Netradiční vizualizace údajů je postup založený na účinné vizualizaci množství dat pomocí grafů. Rychlý příchod obrovského množství informací do rozhodovacího procesu nutí jejich uživatele k vetší selekci údajů při zachování ekonomické reálnosti času zpracování a vyhodnocení příchozích informací. Vizualizace údajů pracuje především s metodami explorativní analýzy dat (EDA). Tyto metody však nemohou nahradit v plné míře komplexní statistickou analýzu vstupních dat (Hindls, Hronová, Novák, 2006). Avšak jejich účinná kombinace s metodami strojového zpracování může být velkým přínosem pro efektivní kompromis mezi reálným časem zpracování dat a kvalitou informací pro manažerské rozhodování. Stochastická predikce v ekonomických časových řadách je založena na standardních postupech statistické analýzy časových řad (především Boxova-Jenkinsova
4.2
24
Ekonomické časové řady
metodologie), ale také na netradičních metodách konstruovaných pro speciální rozhodovací schémata (například metody nepřímých odhadů čtvrtletních hodnot agregátů v systému národního účetnictví) (Hindls, Hronová, Novák, 2006). Časovou řadu tvoří posloupnost údajů, které jsou jednoznačně věcně a prostorově srovnatelně uspořádány za hlediska času. Její hodnoty označujeme jako yi pro časové body t = 1, 2, 3, . . . , n (Hindls, Hronová, Novák, 2006).
4.2
Ekonomické časové řady
Ekonomickou časovou řadou se rozumí řada hodnot jistého věcně a prostorově vymezeného ekonomického ukazatele, která je uspořádána v čase směrem od minulosti do přítomnosti (Artl, Artlová, 2007). Existuje několik pohledů na klasifikaci ekonomických časových řad. Jeden je podle typu sledovaného ukazatele na intervalové a okamžikové. Intervalové časové řady jsou řadami ukazatelů, jejichž hodnoty závisí na délce časového intervalu sledování (Artl, Artlová, 2007), (Hindls, Hronová, Novák, 2006). Typickým příkladem jsou extenzivní ukazatele jako objem výroby, spotřeba surovin, úhrnně vyplacené mzdy za určité období aj. Okamžikové časové řady jsou řadami ukazatelů, jejichž hodnoty se vztahují k jistým časovým okamžikům. U těchto hodnot nezávisí na délce časového intervalu sledování (Artl, Artlová, 2007). Jedná se typicky o počet nedobrovolně nezaměstnaných ucházejících se o zaměstnání přes úřady práce nebo zůstatek na běžném účtu ke konci každého kalendářního měsíce. Další pohled rozděluje ekonomické časové řady podle délky intervalu sledování hodnot, čili podle periodicity (Hindls, Hronová, Novák, 2006). Řady s ročním intervalem sledování označujeme za dlouhodobé. Mezi ně řadíme také ekonomické časové řady s intervalem sledováni delším než jeden rok. Hodnoty krátkodobých časových řad se sledují v úsecích kratších než jeden rok a lze je rozlišit na čtvrtletní, měsíční, týdenní. Pokud je interval sledování kratší než jeden týden hovoříme o frekvenčních časových řadách (Artl, Artlová, 2007). Hindls (2006) dále rozlišuje ekonomické časové řady podle způsobu vyjádření údajů časové řady na řady naturálních ukazatelů (produkce žita v tunách) a na časové řady peněžních ukazatelů (produkce žita vyjádřená v korunách). Kromě členění mají ekonomické časové řady také své typické rysy, podle kterých je lze také klasifikovat. Jedním z příkladů je časová svázanost. Časová svázanost se projevuje vyhlazeností časových řad s delším intervalem sledování. Právě časová svázanost vede k nutnosti vztahovat jednotlivé hodnoty v časové řadě ke stejně dlouhým intervalům. Tento úloh se zbývá především krátkodobými časovými řadami. Je proto nutné u takovýchto časových řad zajistit jejich srovnatelnost. k¯t (4.1) kt Pro zjištění srovnatelnosti údajů z hlediska různě dlouhých období se používá kalendářní očišťování. To je zjištěno vztahem (4.1), kde yt je hodnota sledovaného (o)
yi
= yt
4.2
25
Ekonomické časové řady
ukazatele v dílčím období roku (konkrétní měsíc), kt je počet kalendářních dní v příslušném dílčím období roku a k¯t je průměrný počet kalendářních dní v dílčím období roku. Mezi další základní charakteristiky sloužící k popisu základních vlastností časových řad patří diference různého řádu, tempo růstu a průměrné tempo růstu (Hindls, Hronová, Novák, 2006). Výše zmíněné charakteristiky však neumožňují hlubší analýzu časových řad. Proto jsou vytvářeny modely časových řad. Důvodem jejich tvorby je jak uvádí Hindls (2006) snaha postihnout koncentrovaným a uceleným způsobem jejich vývoj, a získat rámcovou představu o mechanismu chování údajů v časové řadě. Výchozí princip statistického modelování časových řad je založen na předpokladu, že jednotlivá porovnání jsou funkcí času složené z hodnot modelovaného ukazatele a náhodné složky (chyby) v čase. K popisovanému modelu se přistupuje v zásadě dvěma způsoby. Prvním je pomocí klasického (formálního) modelu. Ten popisuje formy pohybu časové řady. Nejedná se tedy o popis věcných příčin dynamiky časové řady. Klasický model vychází z dekompozice řady na čtyři složky časového pohybu. První tři tvoří systematickou část průběhu časové řady a jsou jimi složky trendová (Tt ), sezonní (St ) a cyklická (Ct ). Poslední je složka náhodná (εt ). Hindls (2006) dále uvádí dvě podoby rozložení časové řady na aditivní (4.2) anebo multiplikativní (4.3).
4.2.1
yt = Tt + St + Ct + εt = Yt + εt , t = 1, 2, 3, . . . , n
(4.2)
yt = Tt · St · Ct · εt , t = 1, 2, 3, . . . , n
(4.3)
Trend
Rozumíme jím obecnou tendenci vývoje zkoumaného jevu za dlouhé období (Artl, Artlová, 2007). Trend je výsledkem faktorů, které dlouhodobě ovlivňují hodnoty časových řad ve stejném směru. Jako příklad lze uvést technologii výroby, demografické podmínky nebo podmínky trhu v daného produktu. Trend rozlišujeme rostoucí, klesající nebo konstantní. Trend může být hladší než vlastní časová řada, ale také variabilnější. Xt = α + βt + ui , t = 1, 2, 3, . . . , n
(4.4)
Trend je možné kvantifikovat jako model (4.4), kde parametr β charakterizuje přírůstek řady Xi při změně času o jednotku t. Právě parametr β potvrzuje dynamiku časové řady. Tu lze kvantifikovat také jako absolutní přírůstek. Model můžeme označit jako lineární deterministický trend. Vedle výše zmíněné trendové funkce existují ještě další. Z mnoha trendových funkcí se vedle lineárního trendu nejčastěji pracuje s parabolickým, exponenciálním nebo modifikovaným exponenciálním (Hindls, Hronová, Novák, 2006). Obecnou metodou pro odhad parametrů trendových funkcí je metoda nejmenších čtverců. Požívá
4.2
26
Ekonomické časové řady
se v případech, kdy je trendová funkce lineární v parametrech. Metodou nejmenších čtverců lze získat odhady parametrů pro lineární a parabolické trendové funkce. Pro odhad parametrů pro exponenciální trendové funkce se používá metoda nejmenších čtverců až po provedení lineární transformace. Podstata lineární transformace pro exponenciální model trendu je uvedena ve vztazích (4.5) (Hindls, Hronová, Novák, 2006). Xt = γδ t εt , t = 1, 2, 3, . . . , n ln Xt = ln γ + ln δt + εt ,
(4.5)
kde ln δ charakterizuje přírůstek řady ln Xt při změně času t o jednotku (Hindls, Hronová, Novák, 2006). Parabolický trend je vyjádřený vztahem (4.6). Kde α, β a γ jsou neznámé parametry a t h1, ni je proměnná času. Parabolická trendová funkce je lineární z hlediska parametrů, proto lze k jejich odhadu použít opět metodu nejmenších čtverců. Tt = α + βt + γt2
(4.6)
Modifikovaný exponenciální trend se používá v situacích, kdy podíly sousedících hodnot prvních diferencí údajů analyzované řady jsou přibližně konstantní. Trendová funkce má následující podobu Ti = γ + αβ t , β > 0.
(4.7)
Kromě trendových funkcí (tzv. analytické vyrovnávání), lze časové řady popisovat adaptivně. Tento přístup počítá s délkou období výrazně kratší než je délka období, v jehož rámci bude řada vyrovnávána. To vede na nutnost postupně do výpočtů zařazovat další známá pozorování řady a tím ji opakovaně přizpůsobovat na nově přicházející data až do doby, kdy jsou vyčerpány všechny známé údaje řady. Adaptivní modely zohledňují faktor času vzhledem k datům. Často používanou metodou adaptivním modelů je exponenciální vyrovnávání. To pracuje s odlišným modelem časové řady než trendové funkce. Hindls (2006) jej zakládá na předpokladu, že v časovém okamžiku n, který představuje pozorování v přítomném čase, máme k dispozici časovou řadu empirických hodnot yn−k , k = 0, 1, . . . , n − 1. Kde k je časová proměnná, kterou chápeme jako stáří pozorovaných dat z hlediska časového okamžiku n. Vycházíme z adaptivního modelu časové řady, kdy platí yn−k = Tn−k + εn−k . Hodnotu trendové složky Tn−k popisujme vztahem (4.8). Tn−k = α0 − α1 k + α2 k 2 + · · · + (−1)k αk k k .
(4.8)
Při tomto způsobu vyrovnávání přisuzujeme každému empirickému pozorování stejnou váhu. Hindls (2006) přitom vychází z předpokladu, že pozorování blízká časovému bodu n (současnost) jsou pro odhad parametrů αk stejně tak důležitá jako
4.2
27
Ekonomické časové řady
pozorování pro poměrně vysoké hodnoty pozorování starších k, ale jsou důležitá i pro možnou konstrukci prognózy budoucího vývoje analyzovaného ukazatele. Současně se počítá s tím, že novější empirická pozorování mají větší váhu, tj. budou ovlivňovat budoucí vývoj analyzované řady více než pozorování ze vzdálenější minulosti. Za této situace se upravuje odhad parametrů αk na základě metody nejmenších čtverců o proměnnou wk . Ta vyjadřuje váhy jednotlivých údajů a je přímo úměrná věku pozorování – se vzrůstajícím věkem pozorování je váha nižší. Výše uvedený vztah (4.8) má pak tvar: n−1 X (y(n−k) − T(n−k) )2 wk .
(4.9)
k=0
Obdobný model v drobné modifikaci uvádí také Dougherty (2007). Váha wk je exponenciální funkcí typu: wk = β k , 0 < β < 1, k = 0, 1, . . . , n − 1,
(4.10)
kde definujeme proměnnou β jako exponenciální vyrovnávací konstantu. Odhady parametrů popisovaného modelu získáme minimalizací výrazu (4.11). Podle povahy trendu na délce období hovoříme o různých typ exponenciálního vyrovnávání. Je-li trend konstantní v krátkých úsecích, hovoříme o jednoduchém exponenciálním vyrovnávání. Pokud v těchto úsecích je trend lineární, jedná se o dvojité vyrovnávání. Pokud by úseky měly kvadratický trend, pak se bude jednat o trojité exponenciální vyrovnávání. Právě podle typu vyrovnávání časové řady, se příslušná soustava normálních rovnic mění na jednu rovnici (konstantním trendu). Postupnou transformací této rovnice lze dospět k výsledným výrazům pro extrapolační předpověď (4.12). n−1 X
(y(n−k) − T(n−k) )2 βk ⇒ min.
(4.11)
k=0
Pn (1) = Pn−1 (1) + (1 − β)[yn − Pn−1 (1)],
(4.12)
kde Pn (1) je první predikovaná hodnota v čase n a yn − Pn−1 (1) = et je chyba předpovědi konstruovaná v čase n − 1. K jednoduchým modelům lze zmínit ještě klouzavé průměry. Metoda klouzavých průměrů je založena na vyrovnání posloupnosti empirických pozorování řadou průměrů vypočítaných z těchto pozorování. Každý takový průměr reprezentuje určitou skupinu údajů. Při postupném výpočtu průměrů se postupuje o jedno období dopředu a zároveň vypouštíme nejstarší údaj. Pro klouzavé průměry je nutné stanovit počty pozorování, z nichž jsou jednotlivé klouzavé průměry počítány. Tento počet se stanovuje nejčastěji na základě analýzy zkoumaného jevu a nazývá se klouzavá část (Hindls, Hronová, Novák, 2006). Definujeme jej podle vztahu m = 2p + 1 pro m < n, kde m je klouzavá část, p je dílčí průměr a n
4.3
Vybrané metody statistické predikce časových řad
28
je celkový počet pozorování analyzované řady. Klouzavá část je tedy časový interval určité délky, který se posunuje po časové ose vždy o jedno pozorování. Klouzavé části se identifikují podle počítaných průměrů. 4.2.2
Sezonní složka
Je pravidelně se opakující odchylka od trendové složky, která bývá u časových řad s periodicitou kratší než jeden rok nebo rovnou právě jednomu roku. Periodické změny jsou často způsobeny především střídáním ročních období nebo například pořádáním veletrhů, kdy tiskařským společnostem výrazně roste poptávka. U některých časových řad je sezonnost patrná přímo z grafu. Průběh sezonnosti lze zachytit modelem deterministického trendu (4.13), kde Di,j je binární proměnná, která nabývá hodnoty pravda, když čas t (t h1, T i) odpovídá j-tému období v roce (t h1, S i). Jinak nabývá hodnoty nepravda. Parametry µj , j = 2, 3, 4 charakterizují sezonní složku. Hodnotami S a T označujeme počet sezon, respektive index času. Xt = α + βt + µ2 D2,t + µ3 D3,t + µ4 D4,t + ut , t = 1, 2, . . . , T.
(4.13)
Sezonnost v časové řadě může mít i nepravidelný charakter. Linearizace takové řady probíhá logaritmickou transformací a získaný model se následně diferencováním převede do výsledné podoby (Artl, Artlová, 2007). 4.2.3
Cyklická a náhodná složka
Mezi další vlastnosti časové řady patří cyklická a náhodná složka. Cyklická složka způsobuje kolísání časové řady okolo trendu v důsledku dlouhodobého cyklického vývoje s délkou vlny delší než jeden rok. Náhodná složka představuje veličinu, kterou nelze popsat žádnou funkcí času. Jejím zdrojem jsou drobné a v jednotlivostech nepostižitelné příčiny, které by měly být vzájemné nezávislé.
4.3
Vybrané metody statistické predikce časových řad
Protože je práce zaměřena na úlohy predikce, obsahuje následující část textu přehled vybraných metod statistiky pro predikci různých modelů časových řad. Popsané vlastnosti ekonomických časových řad platí pro analýzy jak jednorozměrných, tak vícerozměrných časových řad Vedle formálního modelu (viz str. 25), který pracuje pouze s popisem forem vývoje časové řady, pracuje statistika při analýze modelů časových řad s BoxovouJenkinsovou metodologií (Hindls, Hronová, Novák, 2006). Ta přistupuje k analýze časových řad přes základní prvek pro konstrukce řady, za který považuje náhodnou složku, jež může být tvořena vzájemně nezávislými náhodnými veličinami. První modely v rámci Boxovy-Jenkinsovy metodologie pracují s napozorovanými údaji časové řady a dále jsou v modelu nekorelované náhodné veličiny s nulovou střední
4.3
Vybrané metody statistické predikce časových řad
29
hodnotou a v čase konstantním rozptylem. Řadu nekorelovaných náhodných veličin označuje metodologie jako bílý šum. Na těchto veličinách je založen jeden ze základních modelu Boxovy-Jenkinsovy metodologie model klouzavých součtů, který je označován jako MA(1). Další kategorií modelů z Boxovy-Jenkinsovy metodologie jsou autoregresní modely označované AR (Hindls, Hronová, Novák, 2006). Kombinací MA a AR modelů vznikají smíšené modely označované jako ARMA (a jejich modifikace). Právě na konstrukce předpovědí pomocí smíšených modelů se zaměřuje následující část práce. Tato část textu vychází především ze dvou hlavních publikací, které se detailně věnují statistickým metodám pro práci s ekonomickými časovými řadami. Lineární modely časových řad Predikce lineárních modelů časových řad s minimální střední odchylkou vychází z modelů ARIMA a ARFIMA, které jsou blíže specifikovány v mnoha dostupných publikacích (Artl, Artlová, 2007), (Dougherty, 2007), (Meloun, Militký, 2004). Právě z tohoto důvod je část zaměřena pouze na vlastní predikci a ne na popis zmíněných modelů. Konstrukce předpovědi pracuje s předpokladem modelu φp (B)∆d Xt = Θq (B)at ,
(4.14)
kde ∆d = (1 − B)d (Artl, Artlová, 2007). Jedná se o předpoklad modelu ARIMA(p,d,q) pro predikci hodnoty XT +h . Kde T je prahem predikce a h označuje horizont predikce. Lineární průběh řady v čase (T + h) lze zapsat jako XT +h = aT +h + ψ1 aT +h−1 + · · · + ψh−1 aT +1 + ψh aT + ψh+1 aT −1 + · · · = ψ(B)aT +h , (4.15) kde ψB = φq (B)−1 ∆−d Θq (B). Předpověď hodnoty XT +h pro h ≥ 1 je konstruována v čase T . Hodnoty Xt , XT =j , . . . jsou známy a předpověď budoucí hodnoty XT +h je jejich lineární kombinací. Predikci s minimální střední čtvercovou chybou lze zapsat ve formě XT (h) = ψh aT + ψh+1 aT −1 + ψh+2 aT −2 + . . . .
(4.16)
Střední čtvercová chyba predikce je formulována jako M SE[XT (h)] = E[XT +h − XT (h)]2 , která je minimální, jestliže platí 4.16 a za předpokladu, že aT +j , j ≤ 0 E(aT +j | XT , XT −1 . . . ) = 0, j > 0 po dosazení za XT (h)
(4.17)
(4.18)
4.3
30
Vybrané metody statistické predikce časových řad
E(XT +1| XT , XT −1 . . . ) = ψh aT + ψh+1 aT −1 + ψh+2 aT −2 + . . . ,
(4.19)
což znamená, že předpověď hodnoty v čase (T + h) s minimální střední čtvercovou chybou je podmíněná střední hodnotou náhodné veličiny XT +h (Artl, Artlová, 2007). Výše definované vztahy a jejich odvození znamená, že pro stacionární časovou řadu (řada s konstantním průběhem) se vytvoří předpovědní intervaly budoucích hodnot v podobě stejně širokého pásu. Pro nestacionární časovou řadu (rostoucí nebo klesající průběh) se vytvoří rozšiřující předpovědní intervaly. XT (h) = α1 XT (h−1)+· · ·+αp+d XT (h−p−d)+aT (h)−Θ1 aT (h−1)−. . .−Θq aT (h−q) (4.20) Vlastní výpočet predikce v čase T hodnoty XT (h) na základě modelu ARIMA vychází z (4.19). Daný model se následně převede na diferenční rovnici a predikce s horizontem h konstruovaná v čase T má tvar (4.20) (Artl, Artlová, 2007). Kde XT (j) = E(XT +j | XT , XT −1 , . . . ), XT (j) = XT +j aT (j) = 0,
j ≥ 1,
j ≤ 0, j ≥ 1,
aT (j) = XT +j − XT +j−1 (1) = aT +j ,
j≤0
Předpovědi s minimální střední čtvercovou chybou na základě modelu ARFIMA lze konstruovat obdobně jako u modelu ARIMA (Dougherty, 2007). Pokud se pracuje s odhadnutým modelem ARIMA nebo ARFIMA a jsou k dispozici odhady parametrů, pak se predikce hodnot konstruují na základě modelu (4.20). Rozdíl je v širších předpovědních intervalech pro odhadovaný model než při známých parametrech. Predikce v modelech s proměnlivými režimy Změny volatility, resp. autokorelace časové řady chápeme jako změny režimu chování. Tyto režimy jsme pak schopni identifikovat statistickými metodami. Mezi modely s proměnlivými režimy jsou řazeny například modely SETAR (Self-Exciting Threshold Autoregressive), který vychází z předpokladu, že změny autokorelace časové řady se objevily v minulosti a v současnosti jsou známy, je tedy možné je identifikovat statistickými metodami. Dalším příkladem je model STAR (Smooth Transition Autoregressive ), který předpokládá, že hranice mezi dvěma režimy je dána určitou hodnotou hledané proměnné v předchozím stavu. Dále se zmiňuje model MSW (Markov-Switching) aj. (Artl, Artlová, 2007). Jedním z důvodů proč jsou konstruovány modely s proměnlivými režimy, je právě výpočet predikce časových řad. Obdobně jako u lineárních modelů, i zde se tvoří bodové a intervalové předpovědi.
4.3
Vybrané metody statistické predikce časových řad
XT = G(Xt−1 , δ) + at .
31
(4.21)
Bodové předpovědi vychází z obecného nelineárního modelu řádu jedna (4.21), kdy model obsahuje jedno zpoždění. V modelu (4.21) je G obecně nelineární funkce, δ je vektor parametrů a at je vybraná hodnota v čase. Dle Artla (2007) je optimální bodovou předpovědí podmíněná střední hodnota. Odvozeně lze optimální předpověď s horizontem h konstruovanou v čase T obecně vyjádřit jako XT (h) = E(XT +h | ΩT ),
(4.22)
kde Ωt je historie časové řady až do času T včetně (Artl, Artlová, 2007). Optimální predikce s horizontem jedna má na základě tvrzení E(aT +1 | Ωt ) = 0 tvar XT (1) = E(XT +1 | ΩT ) = G(Xt , δ). Jedná se o analogický postup konstrukce jako u lineárních modelů. Při předpovědi na další období však na rozdíl od lineárních modelů platí nerovnost E[G(Xt+1 , δ) | ΩT ] 6= G[E(Xt+1 | ΩT ), δ],
(4.23)
což znamená, že není možné zaměnit lineární operátor podmíněné střední hodnoty E s nelineárním operátorem G (Artl, Artlová, 2007). Pro predikci na dvě období tak platí vztah XT (2) 6= G[(XT (1), δ].
(4.24)
Vztahy (4.23) a (4.24) ukazují na nemožnost jednoduchého rekurzivního vztahu mezi předpověďmi s různými horizonty jako je to možné u lineárních modelů. Pro předpovědi u nelineárních modelů se uvádí několik modelů, které ji umožňují. Uzavřenou formu předpovědi lze vyjádřit jako Z∞ G(XT +1 , δ)f (XT +1 | ΩT )dXT +1 ,
XT (2) =
(4.25)
−∞
kde f (XT +1 | ΩT ) je podmíněná hustota pravděpodobnosti XT +1 za podmínky ΩT (Astriou, Hall, 2007). Požitý integrál není k dispozici v analytickém tvaru a jej nutné ho numericky aproximovat. Při konstrukci předpovědi s větším horizontem tak roste časová náročnost aproximace. Metoda také obecně vychází z normálního rozložení. Další metodou pro bodové předpovědi v modelech SETAR, je metoda založená na Normal Forecast Error(dále NFE). Pro předpověď na období h má bodová předpověď rekurzivní tvar XT (h) = Φ[ZT (h − 1)][φ0,1 + φ1,1 XT (h − 1)] + Φ[−ZT (h − 1)][φ0,2 + φ1,2 XT (h − 1)] +ϕ[ZT (h − 1)][φ1,2 − φ1,1 ]σh−1 ,
(4.26)
4.3
Vybrané metody statistické predikce časových řad
32
kde Φ[.] je distribuční funkce normovaného normálního rozdělení a ϕ[.] je hustota pravděpodobnosti normovaného normálního rozdělení. ZT (h − 1) = [c − XT (h − 1)]/σh−1 a 2 σh−1
je rozptyl předpovědní chyby eT (h − 1) = XT +h−1−XT (h−1) . Bodová předpověď je pak vážený průměr bodových předpovědí dvou režimů (vychází z podstaty modelu SETAR), kde váhy jsou rovny pravděpodobnostem. Model se v daném režimu nachází v čase (T + h − 1) za předpokladu normality a korekčního faktoru (Artl, Artlová, 2007), (Astriou, Hall, 2007). Další způsob predikce pro horizont dvě, je v literatuře ((Artl, Artlová, 2007), (Astriou, Hall, 2007)) uváděn jako Monte Carlo. Tento typ předpovědi pro druhý horizont má formu 1 XT (2) = k
Zk
G(X1 + avi δ),
(4.27)
i=1
avi
kde k je nějaké vysoké číslo a vybraná hodnota z předpokládaného rozdělení náhodné veličiny aT +1 . Intervalové předpovědi konstruované na lineárních modelech jsou typické symetrií kolem bodových predikcí. Tato skutečnost je dána normalitou podmíněného rozdělení predikované veličiny XT +h se střední hodnotou XT (h). U nelineárních modelů může být toto podmíněné rozdělení asymetrické a multimodální (Artl, Artlová, 2007). Hyndman (1995) navrhl tři způsoby konstrukce predikčních intervalů pro nelineární modely. Sα = (XT (h) − ∆, XT (h) + ∆)
(4.28)
První je symetrický interval kolem střední hodnoty 4.28, kde ∆ je takové, aby platilo P (XT +h ∈ Sα | ΩT ) = 1 − α. Druhým způsobem konstrukce je interval mezi 100(α/2)% a 100(1 − α/2)% kvantily předpovědního rozdělení Qα = (qα/2 , q1−α/2 ).
(4.29)
Poslední způsob je založený na oblasti s největší hustotou (High Density Region) 4.30, kde fa je takové, že P (XT +h ∈ HDRα | ΩT ) = 1 − α. HDRα = {XT +h | [f (XT +h | ΩT ) ≥ fα ]}.
(4.30)
Pro asymetrické rozdělení, nebo rozdělení s více mody, nejsou předpovědní intervaly symetrické, jako je tomu u lineárních modelů.
4.3
33
Vybrané metody statistické predikce časových řad
Predikce na základě modelů volatility Modely konstruované na základě míry změn určité veličiny na trhu (tedy volatility 2 ). Z ekonomického pohledu je volatilita využívána v mnoha aplikacích například oceňování opcí, analýze vztahu volatility akciového trhu a obchodním cyklem, aj. Z pohledu statistiky jsou modely volatility konstruovány zejména pro modely intervalových předpovědí, které vycházejí z lineárních a nelineárních úrovňových modelů časových řad. Předpověď s minimální střední čtvercovou chybou (kvadratickou chybou) hodnoty v čase T + h vycházející z modelu ARIMA je podmíněná střední hodnota náhodné veličiny XT +h , čili XT (h) = E(XT +h | ΩT ),
(4.31)
kde ΩT je relevantní minulá informace až do času T m který je označován jako práh predikce. Předpovědní chyba má pak následující formu eT (s) = XT +h − XT (h) =
s−1 X
ψj εT +h−j
(4.32)
j=0
a minimální střední čtvercovou chybu lze zapsat jako 2
M SE[XT (h)] = E[eT (h) ] = D[eT (h)] =
σε2
h−1 X
ψj2 ,
(4.33)
j=0
kde σε2 je nepodmíněný rozptyl procesu {εt }. Vztah (4.33) bývá označován jako nepodmíněná střední čtvercová chyba. Artl (2007) dále uvádí, že za předpokladu podmíněné heteroskedasticity je podmíněná střední čtvercová chyba předpovědi vyšší nebo nižší než nepodmíněná střední čtvercová chyba. Toto zvýšení nebo snížení je dáno rozdílem mezi nepodmíněným rozptylem procesu {εt } a v čase T očekávaným budoucím podmíněným rozptylem. Z uvedeného je možné odvodit, že bodové předpovědi konstruované na základě modelu ARMA a ARIMA jsou v případě podmíněné homoskedasticity a podmíněné heteroskedasticity identické (Dougherty, 2007). Konstrukce intervalové předpovědi je při podmíněné homoskedasticitě velmi náročná, protože rozdělení pravděpodobnostních chyb eT (h) není normální (Artl, Artlová, 2007). Aby bylo možné vypočítat podmíněnou střední čtvercovou chybu, je nutné vypočítat podmíněnou střední hodnotu budoucího podmíněného rozptylu (E(hT +h−j | ΩT )). Predikce na základě modelu VARMA a SDSR Pro konstrukce předpovědi na základě modelu VARMA se postupuje analogicky jako u modelu ARMA. Obecně modely VARMA pracují s větším množstvím informací, proto mohou v určitých situacích poskytnout kvalitnější výsledky než předpovědi modelů ARMA (ARIMA). 2 Volatilita vyjadřuje míru změn určité veličiny na trhu a obvykle se jedná o změny ceny určitého ekonomického nástroje. (Hindls, Holamn, Hronová, 2003)
4.3
34
Vybrané metody statistické predikce časových řad
Konstrukce předpovědi na základě modelu VARMA(p,q) vede na budoucí veličiny zapsané jako XT +h = (X1,T +h , X2,T +h , . . . , Xl,T +h ), které definujeme jako lineární l-rozměrný proces v čase (T + h) a následujícím tvaru (Artl, Artlová, 2007) XT +h = aT +h + Ψ1 aT +h−1 + · · · + aT +h + Ψh−1 aT +1 + Ψh aT + Ψh+1 aT −1 + · · · = =
∞ X
Ψj aT +h−j = Ψ(B)aT +h ,
(4.34)
j=0
kde Ψ(B) =
∞ X
Ψj B j .
j=0
Předpovědi veličin XT +h jsou konstruovány v čase T pro h ≥ 1 na základě známých hodnot XT , XT −1 , XT −2 , . . . . Předpověď s minimální střední čtvercovou chybou v čase T pro horizont h se zapisuje jako XT (h) = Ψh aT + Ψh+1 aT −1 + Ψh+2 aT −2 + . . . .
(4.35)
Střední čtvercová chyba těchto předpovědí má formu (Astriou, Hall, 2007) M SE[XT (h)] = E[XT +h − XT (h)]2 ,
(4.36)
který po dosazení nabývá tvar (Artl, Artlová, 2007)
XT (h) =
h−1 X j=0
0
Ψj Σa Ψj +
∞ X
0
0
0
(Ψh+j − Ψh+j )Σa (Ψh+j − Ψh+j ) .
(4.37)
j=0
Optimální předpověď nastane při minimalizaci čtvercové chyby a platí pro ni (4.35). Dále platí, že hodnoty z minulosti aT +j (j ≤ 0) jsou známé a budoucí predikované veličiny aT +j (j > 0) mají nulovou střední hodnotu (4.38). aT +j , j ≤ 0 E(aT +j | XT , XT −1 , . . . ) = (4.38) 0lxl , j > 0 platí E(aT +j | XT , XT −1 , . . . ) = Ψh aT + Ψh+1 aT −1 + Ψh+2 aT −2 + . . . .
(4.39)
Předpovědní chyby mají následující formu (Dougherty, 2007) eT (h) = XT +h − XT (h) =
h−1 X j=0
Ψj aT +h−j .
(4.40)
4.3
35
Vybrané metody statistické predikce časových řad
Výpočet předpovědi podle modelu VARMA vychází, stejně jako u jednorozměrného modelu, ze skutečnosti, že předpověď XT (h) s minimální střední čtvercovou odchylkou konstruovanou v čase T je podmíněna střední hodnota E(XT +h | XT , XT −1 , . . . ) (Artl, Artlová, 2007). Predikce v integrovaných a kointegrovaných systémech Integrované a kointegrované systémy pracují s vícerozměrnými nestacionárními časovými řadami. Nestacionarita je typická zejména pro makroekonomické časové řady. Standardní testy časových řad u nestaconárních časových řad v mnoha případech indikují významné vztahy, tyto identifikované vztahy mohou být pouze zdánlivé. (Astriou, Hall, 2007) U vícerozměrných ekonomických časových řad se rozlišují dva druhy vztahů – krátkodobé a dlouhodobé. Krátkodobé vztahy existují pouze v relativně krátkém období a časem mizí (například ovlivnění dodávky zemědělských produktů kvůli náhlým klimatickým změnám). Dlouhodobé vztahy pak trvale ovlivňují časovou řadu například pokud by se trvale zvýšila cenová hladina produktu z důvodu absence jeho substitutů na trhu. Kointegraci časových řad definujeme jako odklon směru vývoje časových řad, jejichž vývoj je teoreticky spjatý zdůvodněným ekonomickým vztahem. Pokud je tento odklon krátkodobý, časem se vytrácí a existuje mez, kterou tento odklon nepřesáhne, potom jsou časové řady v ekvilibriu. Tento stav je definován jako kointegrace časových řad. Pokud daná mez neexistuje, ze statistického hlediska časové řady kointegrované řady nejsou (Dougherty, 2007). Při konstrukci predikcí pro kointegrované systémy se pracuje s modelem VAR(p). Ten má následující formu Xt = φ1 Xt−1 + · · · + φp Xt−p + at
(4.41)
φp (B)Xt = at .
(4.42)
respektive
Výpočet předpovědi se provádí na základě vztahu XT (h) = φ1 XT (h − 1) + · · · + φp XT (h − p),
(4.43)
kde XT (j) = E(XT +j | XT , XT −1 , . . . ), XT (j) = XT +j
j ≥ 1, j ≤ 0.
Obecně se vyskytují ještě další metody konstrukce předpovědí, ale k plánovaným úpravám této části vzhledem k použitým metodám v rámci experimentů (část 5.4), je dosavadní výčet dostačující.
4.4
4.4
Metody umělé inteligence
36
Metody umělé inteligence
Umělá inteligence je obecným pojmem, který je tvořen různými metodami a technikami. Nacházejí využiti u automatizovaného řešení vybraných úloh predikcí, optimalizací, plánování, diagnostiky nebo klasifikací. K nástrojům umělé inteligence, které jsou zaměřené na řešení výše zmíněných úloh, jsou metody a postupy strojového učení (Mitchell, 1997) a metody založené na inspirací biologickými postupy. Metod strojového učení lze s výhodou použít pro řešení úloh, kde deterministické závislosti jsou natolik složité a provázané, že je buď není možné úplně vystihnout, nebo je sestavený deterministický model tak složitý, že jej není možné použít. Mezi jejich hlavní výhody patří především malá citlivost na počáteční podmínky, menší formální nároky a možnost automatizovaně zpracovávat extrémně velké datové soubory. Mezi nevýhody však patří především značná náročnost a to jak časová, tak i výpočetní. Současně lze mezi nevýhody také zařadit, že nejsme dopředu schopni stanovit, zda vybraná metoda umělé inteligence bude na danou úlohu účinná v požadované míře. Základní technikou strojového učení je prohledávání stavového prostoru. Mezi typické rysy strojového učení lze zařadit využívání znalostí, práce se symbolickými nebo strukturovanými proměnnými či aplikace poznatků z nestandardních logik. Nejtypičtější úlohou strojového učení je pomoc při dolování znalostí z dat. (Kubát, 2003) Mezi metody založené na biologických postupech řadíme především metody genetických algoritmů a umělých neuronových sítí.
4.5
Základy umělých neuronových sítí
Neuronová síť je síť mnoha navzájem propojených jednoduchých procesorů. (Mařík a kol., 2003) Graf propojení se obvykle nazývá topologie sítě. Procesory pak nazýváme neurony, protože velice zjednodušeně modelují skutečné neurony v lidské centrální nervové soustavě. Základem matematického modelu neuronové sítě je formální neuron (perceptron). Ten má podobně jako biologický neuron vstupy (v biologii nazývané dendrity). Struktura perceptronu je znázorněna na obrázku 4.1. Má n obecně reálných vstupů x1 , . . . , xn . Vstupy jsou ohodnoceny odpovídajícími obecně reálnými synoptickými váhami w1 , . . . , wn , které určují jejich propustnost. Nelineární nárůst výstupní hodnoty y = σ(ξ) při dosažení prahové hodnoty potenciálu h je dán aktivační (přenosovou) funkcí. Nejjednodušším typem aktivační funkce je tzv. ostrá nelinearita (skoková, hard limiter), která patří do skupiny sigmoidních aktivačních funkcí a můžeme být reprezentována následovně: 1 jestliže ξ ≥ h, σ(ξ) = (4.44) 0 jestliže ξ < h. Aktivační funkce může být skoková (ostrá nelinearita,hard limiter), spojitá lineární (saturated-linear function), standardní (logistická) sigmoida (standard sig-
4.5
37
Základy umělých neuronových sítí
Obrázek 4.1: Formální neuron (perceptron) (Šíma, Neruda, 1996).
moid) a hyperbolický tangens (Šíma, Neruda, 1996). Jejich průběhy jsou zobrazeny na obrázku 4.2. 1 jestliže ξ ≥ 0 y = σ(ξ) = (4.45) 0 jestliže ξ < 0 Formální úpravou lze stanovit nulový práh pro aktivační funkci σ a vlastní práh perceptronu se záporným znaménkem budeme chápat jako váhu, tzv. bias w0 = −h dalšího formálního vstupu x0 = 1 s konstantní jednotkovou hodnotou. Zjednodušeně lze říci, že práh h se nahradí fiktivním vstupem číslo nula, který má vždy hodnotu −1 a jemu příslušnou synaptickou P váhu w0 (dostáváme tak zmiňovaný bias). Tato úprava zjednoduší zápis sumy ( ) a umožní ji zapsat jako skalární součin vektoru vah synapsí (w) ~ a vektoru vstupních hodnot (~x). Matematická formulace neuronu je pak dána vztahem 4.45 (Šíma, Neruda, 1996). ξ=
n X
w i xi
(4.46)
i=0
Vážená suma (4.46) vstupních hodnot představuje vnitřní potenciál neuronu. Hodnota vnitřního potenciálu neuronu (ξ) po dosažení prahové hodnoty h indikuje výstup (stav) neuronu y. 4.5.1
Perceptronové sítě
Perceptron je nejjednodušší topologií a je základem pro pochopení fungování neuronových sítí. Neuronové sítě lze dělit podle topologií na rekurentní sítě, kdy se
4.5
Základy umělých neuronových sítí
38
Obrázek 4.2: Aktivační funkce – (1) skoková, (2) spojitá lineární, (3) standardní (logistická) sigmoida, (4) hyperbolický tangens. (Šíma, Neruda, 1996)
výstupy některých neuronů vrací zpět do sítě jako stimuly, vrstvené s perceptrony rozdělenými do vrstev a další. Jiným způsobem rozdělení je na sítě s učitelem a samoorganizující (Mařík a kol., 2003). Nejjednodušší sítí je tedy perceptron, kdy jde vlastně o jednovrstvou síť. U lineárních jednotek pak nemá význam vytvářet více vrstev, protože vrstva lineárních neuronů provádí jen lineární zobrazení. Skládáním lineárních zobrazení získáme opět pouze lineární zobrazení – ve výsledku tedy stačí pouze jedna vrstva. Perceptrony rozlišujeme na prahové (treshold units), lineární (linear units) a nelineární (non-linear units). U prahových perceptronů je aktivační funkce skoková (vzorec 4.47). Perceptron vrací na výstup buď 1, součet přesáhl prahovou hodnotu, nebo 0, nepřesáhl-li ji. 1, ξ ≥ 0 σ(ξ) = (4.47) 0, ξ < 0. Jediný prahový perceptron řeší lineárně separované problémy. Perceptron se svými synoptickými vahami (včetně prahové hodnoty) určuje nadrovinu, která separuje poloprostory podnětů. Skalární součin vstupních vektorů (~x) s vektorem vah (w) ~ nám udává vzdálenost bodu ~x od roviny w. ~ Získaná hodnota je tedy buď větší než nula – bod leží v jednom poloprostoru (perceptron reaguje), je rovna nule – leží přímo v nadrovině nebo je menší nule a leží v druhém poloprostoru. Limitem prahového perceptronu je situace, kdy nejsme schopni definovat dělící nadrovinu. Taková situace nastává například u funkce XOR. Ta je zvláštním případem paritní
4.5
39
Základy umělých neuronových sítí
Obrázek 4.3: Obecné schéma perceptronu (Šíma, Neruda, 1996).
funkce 3 . Ta vrací hodnotu jedna, pokud je počet jedničkových bitů lichý, jinak vrací nulu.Výstup tak musí měnit svou hodnotu po každé změně vstupu. Vícevrstvé sítě perceptronů dokáží řešit i lineárně neseparátní problémy. Pravdivost tohoto tvrzení lze intuitivně vyvodit následovně. Perceptron rozdělí prostor na dva poloprostory nadrovinou (reaguje na podněty nacházející se v jednom poloprostoru). Dvouvrstvá síť je schopna vymezit libovolný konvexní útvar. Každý neuron první vrstvy vymezí jeden poloprostor. Perceptron druhé vrstvy vyhodnocuje průnik poloprostorů vymezených první vrstvou. Ne vždy je tato podmínka dodržena, často však stačí aproximace konečným počtem poloprostorů. Třívrstvá síť rozezná libovolný počet konvexních útvarů. Perceptrony v první vrstvě rozdělí dva poloprostory nadrovinou. Druhá vrstva tak vymezuje konvexní množiny a perceptrony ve třetí vrstvě provádí sjednocení vymezených konvexních množin. Příklad je uveden na obrázku 4.4. Lineární perceptrony není nutné učit, protože příslušné synoptické váhy se dají přímo vypočítat. Pro výpočet vah je nutné, aby bylo vzorů méně než neuronů v síti. To vede na lineární nezávislost vzorů. Aktivační funkce je spojitá lineární: σ(ξ) = x.
(4.48)
Sítě tohoto typu nepřináší nic nového (umožňují pouze lineární zobrazení), proto je i jejich využití nízké. Nelineární perceptrony jsou nejčastěji využívaným typem neuronových sítí. Nelineární perceptrony využívají saturační aktivační funkce. Nejčastěji se jedná o dva již zmiňované typy (viz oddíl 4.5 na straně 37) – standardní sigmoidu a hyperbolický tangens. 3
Parita funkce: Nechť funkce f splňuje následující podmínku: x ∈ D(x) ⇒ (−x) ∈ D(f ).
4.5
40
Základy umělých neuronových sítí
Obrázek 4.4: Ukázka práce vícevrstvých sítí
Saturační funkce obecně transformuje součet impulsů do intervalu < 0, 1 >. Limita k nule (kladná i záporná) stoupá prudce, zatímco limita u vysokých čísel je pouze malá. Díky této vlastnosti je případný rozdíl zanedbatelný. Zmiňovaná vlastnost byla přijata právě od původních předloh preceptronů, tedy biologických neuronů. například v poušti toužíme nejvíc po vodě a je nám jedno jaké. Pokud ale netrpíme žízní, vybíráme si daleko více. První z aktivačních funkcí nelineárních perceptronů je standardní sigmoida: σ(ξ) =
1 , 1 + e−ξ
(4.49)
druhou je hyperbolický tangens: 1 − e−ξ (4.50) 1 + e−ξ Jejich grafy jsou vyjádřeny na obrázku 4.2. U třívrstvé neuronové sítě lze jako zajímavost uvést důkaz pomocí Kolmorogova teorému, že může aproximovat libovolné reálné zobrazení mezi prostorem vstupů a prostorem výstupů. Matematicky vyjádřeno to znamená, že ke každé funkci f : Rn → Rm existuje třívrstvá síť, která ji σ(ξ) =
4.5
41
Základy umělých neuronových sítí
realizuje. Kolmogorovův teorém říká, že existují spojité rostoucí funkce φij na h0, 1i tak, že každá spojitá funkce f na < 0, 1 >n může být zapsána ve tvaru: f (x1 , . . . , xn ) =
2n+1 X
n X αi ( φij (xj ))
i=1
(4.51)
j=1
kde αi jsou vhodně zvolené spojité funkce jedné proměnné (Hořejš, 1992). Dalším klíčovým faktorem vedle aktivační funkce je i topologie (ve smyslu velikosti, rozsahu) sítě. Konkrétní problém má svou vhodnou topologii. Při příliš malém rozsahu sítě, není možné správné generalizace. Síť by nebyla schopná proložit plochu všemi body příkladů. Důvodů je pro to několik. Prvním je, že reálná data obsahují vždy nějakou chybu, tedy neodpovídají přesně té závislosti, kterou chceme zjistit. Příliš velká síť by se tak naučila včetně nežádoucího šumu. Při příliš velké topologii se síť naučí odpovídat pouze na správně položené příklady. Ve zbytku prostoru by měla generalizační hyperbola nesmyslný tvar a nebyla by schopna správného rozhodnutí (například pokud se studenti učí algoritmy nazpaměť). 4.5.2
Způsoby učení perceptronových sítí
Učení (trénování, adaptace) jednoho perceptronu spočívá v nalezení takových vah, že dílčí nadrovina správně rozdělí podněty. Pro všechny podněty, na které má perceptron reagovat, postupně zkontrolujeme, zda dává perceptron správný výstup. Reagoval-li na některý podnět ~x špatně (nereagoval-li a měl), pak je třeba vektor vah w ~ stary změnit přičtením vektoru podnětu ~x, čímž dostaneme nový vektor vah w ~ novy (viz rovnice 4.52). w ~ novy = w ~ stary + ~x
(4.52)
Po úpravě již perceptron bude na takový podnět reagovat (důkaz rovnice 4.53). w ~ novy ~x = (w ~ stary + ~x)~x = w ~ stary ~x + ~x~x ≥ 0
(4.53)
Kontrolu provádíme pro všechny podněty, na které má perceptron reagovat. Výsledkem je takový vektor vah w, ~ kde nadrovina správně oddělí všechny vstupy do správného poloprostoru. Vícevrstvé sítě mohou provést libovolné zobrazení (viz důkaz 4.51). Protože přímý výpočet synoptických vah neuronů je nevhodný a často neuskutečnitelný, používáme právě učení sítě za použití sady vzorů. Trénovací množinou označujeme dvojici vektorů: T = {[~x1 , ~y 1 ], . . . , [~xP , ~y P ]}
(4.54)
kde ~x = (x1 , x2 , . . . , xm ) je vektor vstupních hodnot a ~y = (y1 , y2 , . . . , xn ) je vektor požadovaných výstupních hodnot, pro vícevrstvou neuronovou síť s m vstupními a n výstupními perceptrony (Hořejš, 1992).
4.5
42
Základy umělých neuronových sítí
Trénovací množina obsahuje V vzorů. Pokud existuje taková množina, hovoříme o učení s učitelem. Existuje tak vyšší autorita, která síti předkládá příklady dvojic vstupů a výstupů. Při nesprávné reakci sítě, informuje učitel o chybě a provede příslušnou změnu. Při učení bez učitele síť nedostává dvojice vstupů a výstupů, ale jen množinu vstupů a sama vstupy rozděluje podle podobnosti. P
E=
N
1 XX p (di − yip )2 2 p=1 i=1
(4.55)
Pro chyby na výstupu lze vypočítat celkovou chybu sítě. Ta se počítá podle vztahu 4.55, kde dpi je skutečný výstup i-tého perceptronu ve výstupní vrstvě při předložení vstupu p-tého vzoru na perceptrony vstupní vrstvy. Funkce E je určena pro měření chyby sítí s asymetrickými spoji a v literatuře se nazývá cost function (Hořejš, 1992).
Obrázek 4.5: Třívrstvá perceptronová síť s označením vah a neuronů (Hořejš, 1992).
Učení gradientním (svahovým) sestupem (gradient descent learning ) je založeno na následujícím principu. Je-li na vstupu sítě pevný vektor ~x, chyba sítě (E) je funkcí všech synaptických vah neuronů. Protože perceptronové aktivační funkce (sigmoidy) jsou derivovatelné, pak lze derivovat podle jednotlivých vah i chybu sítě. Funkci E si lze představit jako mnohorozměrnou derivovatelnou plochu, pak pro konkrétní nastavení vah se pohybujme v této ploše. Úkolem je minimalizovat chybu, tedy sejít co nejníže, za předpokladu, že osa y vyjadřuje hodnoty chyby E pro dané váhy. Postupně se pak sesouváme dolů zderivováním chyby. ∂E + α[wi − wiold ] (4.56) ∂wi Při přílišné délce chyby hrozí riziko, že se naopak dostaneme ještě výše, než jsme původně byli. Je tedy nutné postup zopakovat kratším krokem. Tímto způs∆wi = −η
4.5
43
Základy umělých neuronových sítí
obem nalezneme místo, ze kterého již další derivaci (sestup) nelze provést. Pokud je tento bod pouze lokální minimum chyby sítě, musíme hledat další bod. Jedná-li se o globálním minimum, pak máme řešení. Vztah pro přepis vah (4.56, (Hořejš, 1992)) je možné vyjádřit jako parciální derivaci chyby E podle dané váhy, vynásobenou délkou kroku. Druhý člen vztahu vyjadřuje korekci pro setrvačnost v pohybu. Metoda učení zpětného šíření chyby (tzv.Back propagation ) přinesla způsob jak efektivně měnit synoptické váhy. Uvažujeme třívrstvou perceptronovou síť (viz obrázek 4.5), kterou chceme naučit na trénovací množinu P vzorů T = {[~x1 , ~y 1 ], . . . , [~xP , ~y P ]}, kde ~x = (x1 , x2 , . . . , xm ) a ~y = (y1 , y2 , . . . , xn ). Výstupní neurony jsou označeny jako Oi , skryté neurony Vj a vstupní neurony označíme přímo hodnotami vstupů xk . Vazby wij vedou z vstupní vrstvy do skryté, vazby Wij ze skryté do výstupní vrstvy. Index i označuje výstupní neuron, index j skrytý a k vstupní. Písmeno p indexuje vzory. Při zadání vektoru ~xp na vstup sítě, skrytý neuron j obdrží vstup X hpj = wjk xpk k
po transformaci aktivační funkcí vrací výstup X wjk xpk ). Vjp = g(hpj ) = g( k
Výstupní neuron i obdrží vstup X X X wjk xpk ) hpi = Wij Vjp = Wij g( j
j
k
a po transformaci aktivační funkcí (sigmoidou) dává výstup X X X wjk xpk )). dpi = g(hpi ) = g( Wij Vjp ) = g( Wij g( j
j
k
Prahy neuronů zadáváme jako zvláštní vstupní neurony nastavené na −1. Celkovou chybu sítě E můžeme po dosazení vyjádřit jako E[w] =
X X 1X p [yi − g( Wij g( wjk xpk ))]2 . 2 pi j k
Což může být spojitá diferenciální funkce všech vah (Hořejš, 1992). Díky tomu lze použít metodu gradientního (svahového) sestupu pro nalezení správných vah. Změnu vah pro výstupní neurony lze označit jako vztahy 4.57. ∆wij = −η
X p p ∂E =η δi Vj ∂Wij
(4.57)
4.5
44
Základy umělých neuronových sítí
Pro změnu vah u vnitřních neuronů si pro zjednodušení zavedeme chybu vnitřního neuronu (4.58), která je závislá na sklonu sigmoidy v místě hodnoty vstupu do neuronu hpj a na chybách neuronů, do kterých posílá svůj výstup, násobených příslušnými vahami spojů. X δjp = g 0 (hpj ) Wij δip (4.58) i
Dostáváme pak vztah 4.59. Při bližším pohledu je patrné, že vztahy 4.57 a 4.59 jsou až na definici 4.58 stejné. X p p (4.59) ∆wjk = η δj x k p
Obecně lze zapsat pro libovolný počet vrstev vztah pro změnu vah jako X ∆wpq = η δoutput × Vinput p
kde q je neuron, ve kterém vazba začíná a v p končí, V je potom výstup neuronu q (Hořejš, 1992). Význam δ závisí na tom, o kterou vrstvu se jedná. Chyba výstupních neuronů se spočítá z rozdílu mezi skutečným a požadovaným vstupem, a pak se zpětně předává (šíří) vnitřním neuronům, přičemž se násobí hodnotou váhy spoje. Váhy spojů se tak používají dvakrát (při šíření signálu jedním směrem a při šíření chyby směrem druhým) (Šnorek, Jiřina, 1996). V praxi však nastavení vah provádíme postupně. Síti se předloží jeden vzor, upraví se všechny váhy a pak se teprve předloží další vzor. Vzory je vhodné vybírat náhodně, což zaručí náhodnou cestu prostorem a umožňuje i jeho širší prozkoumání. Výhodou metody zpětného šíření je, že pro výpočet změny konkrétní váhy potřebujeme jen hodnotu šířené chyby (δ) na jednom jejím konci a hodnotu přenášeného signálu V na konci druhém. To vede na paralelní výpočet metodou Back propagation (Hořejš, 1992). 1 2 3 4 5 6 7 8 9 10
random initialization of weights; repeat repeat choose_pattern_from_training_set; put_chosen_pattern_in_input_of_network; compute_outputs_of_network; compare_outputs_with_required_values; modify_weights; until all_patterns_from_traning_set_are_chosen; until total_error < criterion;
Pseudokód zpětného učení (Back propagation) (Šťastný, Minařík, 2006).
4.5
45
Základy umělých neuronových sítí
Učící algoritmus Back propagation Na dříve (4.5.2) popsaný algoritmus Back propagation je také nutné se podívat z pohledu výpočetní složitosti. Máme-li n strojů, výpočet chyby E stojí n operací. Výpočet n derivací tak spotřebuje n2 operací. Pomocí metody Back propagation nám postačí n operací pro změnu hodnoty všech vah. Jako aktivační funkce pro Back propagationse používají funkce σ1 (h) =
1 1 + e−λh
a σ2 (h) = tan h(λh), protože jejich derivace je snadné vyjádřit pomocí jich samých jako σ10 (h) = λg1 (1 − g1 ) a σ20 (h) = λ(1 − g22 ). Pro neurony s výstupem 0/1 a pro λ = 1 lze rovnici zapsat v následujícím tvaru δip = (yip − dpi )dpi (1 − dpi ) Algoritmus Back propagation vyjádřený pomocí pseudojazyka ukazuje, že vlastní zpracování lze i symbolicky snadno popsat. Učící algoritmus Levenberg-Marquardt Levenberg-Marquardtova metoda přináší numerické řešení minimalizačního problému libovolné (především nelineární) funkce. Tato optimalizace je uskutečňována přes stavový prostor parametrů použité funkce. Obecně se jedná o alternativu Gauss-Newtonovy metody při hledání minima funkce. Levenberg-Marquardtův učící algoritmus patří mezi jedny z nejefektivnějších a nejrychlejších učících algoritmů pro perceptronové neuronové sítě (Hagan, Menhaj, 1994), (Sotirov, 1994). Algoritmus je aplikací iterativního přístupu, při kterém je hledáno minimum vícerozměrných funkcí. Tyto funkce jsou vyjádřeny jako čtvercová suma nelineárních funkcí proměnných (Sotirov, 1994). V podstatě se jedná o variaci Gauss-Newtonovy metody (Rektorys, 1995). Ta využívá pro optimalizaci Hessovu matici. Kterou vyjádříme jako ∂2f ∂2f ∂2f . . . 2 ∂x1 ∂x2 ∂x1 ∂xn ∂x ∂ 2 f1 ∂2f ∂2f ∂x2 ∂x1 . . . 2 ∂x ∂x2 2 ∂xn (4.60) H(f ) = .. .. .. . . . ∂2f ∂2f ∂2f ... ∂xn ∂x1 ∂xn ∂x2 ∂x2 n
kde x jsou hodnoty funkce f (x). Předpokladem pro Hessovu matice je existence všech druhých parciálních derivací funkce f (x). Levenberg-Marquardtův učící algoritmus aproximuje Hessovu matici přes Jacobiho matici jako H = JT J
(4.61)
4.5
46
Základy umělých neuronových sítí
kde J je Jacobiho matice. Aproximací Hessovy matice tak dochází ke zrychlení výpočtu a optimalizaci výpočetní rychlosti při učení vícevrstvé perceptronové sítě, u kterých se typicky využívá suma čtverců jako výkonnostní funkce (Hagan, Menhaj, 1994). Gradient pro aproximované Hessovy matice 4.61 se vypočítá jako g = JT e
(4.62)
kde J je Jacobiho matice, která obsahuje první derivace chyby sítě s ohledem na nastavené váhy a bias neuronů, a e je vektor chyb neuronové sítě (Hagan, Menhaj, 1994), (Sotirov, 1994). Tvar Jacobiho matice pro jeden neuron je vyjádřena vztahem 4.63, kde w je vektorem vah neuronů, w0 je bias příslušného neuronu a ε je vektor chyb. ∂ε1 ∂ε1 ∂ε1 . . . x . . . x n ) 1 1 ( 1 ∂w1 ∂wn ∂w0 . .. .. .. .. .. J = .. = (4.63) . . . . . ∂εp ∂εp ∂εp x( 1p ) . . . x( np ) 1 . . . ∂wn ∂w ∂w 1
0
Nová hodnota pro váhy při aproximaci je následně stanovena jako wk+1 = wk − [J T J + µI]−1 J T εk
(4.64)
kde µ je skalární hodnota nazývaná Levenbergův nárazníkový faktor, podle jehož hodnoty se provádí další výpočet. V případě, že je skalární hodnota µ rovna nule, algoritmus využije pro výpočet aproximaci Hessovy matice. Je-li µ větší než nula, je pro další výpočet použita metoda gradientního sestupu. Dochází tak ke zrychlení algoritmu využitím aproximace k Hessově matici. V průběhu učení dochází k minimalizaci výkonnostní funkce, kdy hodnota µ klesá s každou iterací a roste pouze když by byla navýšena hodnota výkonnostní funkce (MathWorksTM, 2005). Zjednodušeně tak lze algoritmus popsat jako aproximaci s různými hodnotami nárazníkového faktoru pro případy, kdy klesá celková chyba sítě vyjádřená sumou čtverců. Celý proces popisují následující kroky 1. je vypočítána Jacobiho matice, 2. vypočítá se příslušná chyba gradientu (4.62), 3. je provedena aproximace Hessovy matice (4.61), 4. jsou vypočítány hodnoty pro váhy (4.64), 5. na základě Levenbergova nárazníkového faktoru jsou přenastaveny původní váhy, 6. přepočítána čtvercová chyba sítě s novými hodnotami vah, 7. neklesá-li čtvercová chyba sítě, jsou hodnoty přenastavených vah vráceny na původní hodnotu předchozích iterací a je přenastavena hodnota µ, 8. klesla-li chyba sítě je snížena hodnota µ. V situaci, kdy by chyba neklesla po několika iteracích je algoritmus ukončen díky velké hodnotě µ. Jedna z hlavních nevýhod Levenberg-Marquardtova učícího algoritmu je vysoká citlivost na výchozí nastavení jednotlivých vah. V případě příliš odlehlých dat to pak může vést na přeučení sítě.
4.5
Základy umělých neuronových sítí
47
Obrázek 4.6: Topologie RBF sítě
4.5.3
RBF sítě
Jedná se o modely dopředných sítí s jednou skrytou vrstvou obsahující tzv. lokální jednotky. Tyto jednotky se chovají v jistém smyslu jako perceptrony. Lokální jednotky mají relevantní výstup lokalizován do okolí bodu určeného svými parametry, na rozdíl oproti perceptronovým sítím, které rozdělují vstupní prostor na podprostory v nichž má výrazně odlišné hodnoty výstupu (Šíma, Neruda, 1996).
Obrázek 4.7: Aktivační funkce RBF sítě (Kecman, 2001)
Sítě typu RBF jsou vlastně vícevrstvé neuronové sítě s lokálními jednotkami na místo perceptronů. Zkratka RBF vznikla z anglického Radial Basis Functions, tedy tzv. radiální bazická funkce (používá se pouze zkratka RBF sítě ). Ta byla využívána v numerické matematice pro aproximaci a interpolaci dat. Při hledání vhodné (podle různých hledisek) funkce pro aproximaci konkrétních dat se často pracuje s určitou konkrétní funkcí, příp. tvarem funkce. Často se jedná o lineární kombinaci tzv. bazických funkcí, zde radiální funkce. Průběh takové radiální funkce je naznačen na obrázku 4.7.
4.5
48
Základy umělých neuronových sítí
Radiální funkci je tedy funkce určená významným bodem, která pro argumenty se stejnou vzdáleností od tohoto středu dává stejné funkční hodnoty. Pracujeme-li s dvojrozměrným vstupním prostorem a euklidovskou metrikou, pak množiny se stejnou funkční hodnotou tvoří kružnice – hovoříme o radiálních funkcích (viz obrázek 4.8) (Šíma, Neruda, 1996). Konkrétněji si lze RBF síť představit jako třívrstvou neuronovou síť (viz obrázek 4.6), kde vstupní vrstva neuronů slouží pouze k přenosu vstupních hodnot. Druhá (skrytá) vrstva je složena z tzv. RBF jednotek, které realizují jednotlivé radiální funkce. Třetí, výstupní vrstva je lineární (Šíma, Neruda, 1996), (Kecman, 2001).
Obrázek 4.8: Zobrazení středů při učení RBF sítě
RBF jednotka je má n reálných vstupů x = (x1 , . . . , xn ), z nichž každý má přiřazenu váhu ci . Dále má jeden reálný výstup y a může mít další parametr b, který se nazývá šířka. Oproti vícevrstvé neuronové síti má znatelně odlišnou aktivační funkci. Vnitřní potenciál ξ se nepočítá jako skalární součin w · x, ale je to vzdálenost vstupního vektoru x od středu c (často dělená šířkou b, viz vztah 4.65). ξ=
kx−ck b
y = σ(ξ)
(4.65) (4.66)
Výstupní hodnota je získána aktivační funkcí σ na potenciál ξ. RBF síť provádí dvě odlišné transformace. První z nich je nelineární transformace a je realizována RBF jednotkami. Druhá vede z prostoru skrytých RBF jednotek do výstupního prostoru, je lineární a zabezpečují ji výstupní neurony sítě. Protože formálně je RBF druhem dopředné sítě (podobně jako vícevrstvý perceptron), můžeme použít k jejímu učení modifikaci metody zpětného šíření. Analogicky lze vyjádřit parciální derivace chybové funkce vzhledem ke všem parametrům sítě a pak je postupně spočítat. Jelikož RBF sítě mají pouze jednu skrytou vrstvu,
4.5
Základy umělých neuronových sítí
49
Tabulka 1: Přehled aktivačních funkcí pro RBF sítě (Šíma, Neruda, 1996)
lineární
gaussova
σ(z) = z σ(z) = z 2 lg x σ(z) = (z 2 + β)α , β ≥ 0, 0 < α < 1 z 2 σ(z) = e(− β ) , β ≥ 0
je pro ně gradientní algoritmus výrazně jednodušší než pro sítě s více skrytými vrstvami (Šnorek, Jiřina, 1996). Algoritmus zpětného šíření zachází se všemi parametry sítě stejným způsobem. V případě RBF topologie mají různé skupiny parametrů odlišný význam vzhledem k funkci sítě. Bylo proto nutné vytvořit nový algoritmus, složený ze tří fází, v nichž se v každé určují hodnoty jiné skupiny parametrů (Moody, Darken, 1989). V průběhu učení postupujeme v síti vzhůru a postupně se zabýváme souřadnicemi středů jednotek, jejich šířkami a na závěr koeficienty lineární kombinace. Učení RBF sítě tak lze rozepsat do následujících kroků: 1. spočítej středy cj pomocí x(t) , 2. spočítej šířky bj , 3. spočítej váhy wsj pomocí (x(t) , y (t) ), pro tréninkovou množinu na vstupu {(x(t) , d(t) ), t = 1, 2, . . . , k} a výstupy cj (středy), bj (šířky) a wsj (váhy). Třetí krok je učení s učitelem, které adaptuje váhy mezi skrytou a výstupní vrstvou. Protože se jedná o koeficienty lineární kombinace, je učení také lineární a není třeba jej šířit do nižších vrstev, protože jejich váhy jsou fixovány (Šíma, Neruda, 1996). Právě velikost rádiusu (neboli šířka) může významně ovlivňovat výsledky aproximace. Platí, že čím větší šířka rádiusu, tím větší vliv mají jednotlivé neurony (Kecman, 2001). Při učení RBF sítě tak dochází ke hledání optimální (dáno přesností) šířky vzhledem k jednotlivým spočítaným středům. Učení je ve výsledku jednodušší, ale závislé na předchozích krocích. Úkolem první fáze učení je umístit h středy RBF jednotek, tj. určit hodnoty vah mezi vstupní a skrytou vrstvou. To je možné provádět několika způsoby. První z metod je rovnoměrné pravidelné rozmístění středů jednotek po vstupním prostoru. To je vhodné pro rovnoměrně rozmístěná vstupní data. Prakticky tomu tak je při použití trénovacích vzorů, které byly pravidelně sbírány nebo měřeny. Další jednoduchou možností je vybírání h náhodných tréninkových vzorů a umístění středů RBF jednotek na jejich výstupní části. Tento způsob již v určitém smyslu i mapuje rozložení dat. Ze složitějších možností je nutné zmínit především vybírání optimálních vzorů a přiřazování jejich souřadnice středům. Jejich výběr není náhodný, ale používá se metoda ortogonálních nejmenších čtverců pro minimalizaci chyby sítě (Šíma, Neruda, 1996). Poslední skupinou rozmístění tréninkových vzorů je samoorganizace (blíže na str. 52).
4.5
50
Základy umělých neuronových sítí
σ(x) = e−(
kx−ck 2 ) b
(4.67)
Druhá fáze učení slouží k nastavení dalších parametrů RBF jednotek, existují-li, či jsou adaptovány. Při rovnoměrném rozložení středů po vstupním prostoru, nemá adaptace příliš smysl. Nejčastěji jsou využívány Gaussovy radiální bazické funkce (definované jako vztah 4.67).
Obrázek 4.9: Aproximace pomocí RBF sítě (Kecman, 2001).
Při učení s učitelem (jako třetí fáze) zbývá nastavit váhy wsr lineární kombinace. (t) To je zajištěno minimalizací obvyklé chybové funkce (vztah 4.68). Kde ds je hodnota (t) požadovaného výstupu, ys označuje aktuální výstup sítě (resp. s-té výstupní jed(t) notky) po předložení vstupního vektoru xs , W = (w)q r, q = +, . . . , m; r = 1, . . . , h. k
m
1 X X (t) (d − ys(t) )2 E= 2 t=1 s=1 s
(4.68)
Obdobně jako u vícevrstvých neuronových sítí existuje více algoritmů pro implementaci učení RBF sítí. Jedním ze standardně implementovaných je algoritmus K-means. V rámci publikace (Štencl, Šťastný, 2009) byl jako učící algoritmus použit algoritmus APC-III. Při aproximaci tak dochází ke hledání nejlepších hodnot, tedy nejlépe aproximovaných, posuny středů, jak je tomu naznačeno na obrázku 4.9. Vlastní aproximovaná hodnota pro nový středový bod je pak nalezena sumou výstupních hodnot RBF funkcí multiplikovanou hodnotou vah spočítanou pro každý neuron. Díky tomu jsou výsledky dosažené RBF sítěmi stabilnější pro různé konfigurace sítě, než je tomu u vícevrstvých perceptronových sítí. 4.5.4
Další typy umělých neuronových sítí
Hopfieldův model Hopfieldova síť patří mezi modely využívající asociativní paměť. Na rozdíl od klasických pamětí, kde vyhledáváme položku v paměti podle
4.5
51
Základy umělých neuronových sítí
adresy, u asociativní paměti vybavení příslušné informace probíhá na základě její částečné znalosti (asociace) (Šíma, Neruda, 1996). Přirovnání najdeme například u databázových systémů, kde k vyhledání celého záznamu, postačí znalost určitých jeho položek. V zásadě se rozlišují dva typy asociativní paměti: autoasociativní a heteroasociativní. Autoasociativní paměť upřesňuje nebo zkvalitňuje vstupní informaci (například při pohledu na černobílou fotografii si ji vybavíme v barvách). U heteroasociativní paměti dochází k vybavení určité sdružené informace na základě vstupní asociace (vzpomeneme si, kdo byl na fotografii) (Šíma, Neruda, 1996).
Obrázek 4.10: Topologie Hopfieldovy sítě
V této části se omezím pouze na nejznámější Hopfieldovu síť. Hopfieldův model neuronové sítě využívá autoasociativní paměť. Síť je tvořena neurony, které jsou spojeny symetrickými spoji každý s každým (viz obrázek 4.10). V základním modelu se nepracuje s biasy, tj. všechny prahy neuronů jsou nulové a žádný neuron není spojen sám se sebou, tzn. odpovídající váhy wij = 0, j = 1, . . . , n jsou nulové. Učení je založeno na předložení vzoru, například černobílý obrázek, přiřadíme jeho pixely na neurony a nastavíme černou na −1 a bílou na +1. Odpovídá to dvěma stavům neuronů – neaktivovaný (−1) a aktivovaný (+1). S těmi se provádí prahový součet (4.69) X Si = sgn( wi jSj − µi ) j
sgn(x) =
1, x ≥ 0 −1, x < 0
(4.69)
4.5
52
Základy umělých neuronových sítí
Učení v Hopfieldově síti Proces učení je řízen Hebbovým zákonem. Ten říká, že změna synaptické váhy spoje mezi dvěma neurony je úměrná jejich souhlasné aktivitě, tj. součinu jejich stavů (Šíma, Neruda, 1996). T = {xk | xk = (xk1 , . . . , xkn ) ∈ {−1, 1}n , k = 1, . . . , p}
(4.70)
Tréninková množina obsahuje p vzorů (4.70), z nich každý je zadán vektorem bipolárních stavů vstupních, resp. výstupních, neuronů, které v případě autoasociativní paměti splývají. Adaptivní dynamika podle hebbova zákona probíhá v p diskrétních krocích, ve kterých jsou síti postupně předkládány tréninkové vzory, podle nichž se přizpůsobují (adaptují) synoptické váhy (Šíma, Neruda, 1996). Výsledek pak potvrzuje tvrzení, že synoptické spojení mezi dvěma neurony, které jsou aktivovány ve stejnou chvíli, se posiluje (Hebb, 1961). Učení v Hopfieldově síti je možné rozložit do několika fází. Na začátku jsou všechny váhy synoptických spojení inicializovány na nulu. Následně se neuronům přiřadí hodnoty {+1, −1}. Dojde ke změně všech vah tak, že pokud spojuje neurony se stejnou hodnotou, zvýší se hodnota váhy o jedničku, jinak se hodnota váhy o jedničku sníží. Obdobně se postupuje s dalším vzorem. Po naučení hodnota váhy vyjadřuje rozdíl počtu vzorů, u kterých se jí spojené neurony shodly svými hodnotami, a počtu vzorů, ve kterých se neshodly (Šíma, Neruda, 1996). Vybavování v Hopfieldově sítí je založeno na opakování následujícího postupu. Vybereme náhodně jeden neuron. Hodnoty ostatních neuronů vynásobíme synaptickými váhami, sečteme a pokud výsledek bude nezáporný, přiřadíme neuronu hodnotu +1, jinak −1. Starou hodnotu vypouštíme a pracujeme s novou. Výsledek se pak zastaví v některém z naučených vzorů. Klíčové je pak postupné zpracování neuronů jednoho po druhém. V opačném případě nejsme schopni zaručit konečnost. Tu lze dokázat zavedením energetické funkce (4.71) (Hořejš, 1992). X E=− wij Si Sj (4.71) ij
Energetickou funkci lze zavést pouze u sítě se symetrickými váhami. Měří energii systému a platí, že vždy klesá nebo zůstává stejná, pokud se systém vyvíjí podle svého dynamického pravidla. V případě práce s binární Hopfieldovou sítí, je stav sítě binárním číslem. Pracujeme tedy s konečnou množinou stavů. Když pak síť mění svůj stav, klesá její energetická funkce a proto nemůže dojít k zacyklení. Po konečném počtu kroků se musí dostat do stavu, kdy žádné změny neuronů nemohou neproběhnou – konečný stav. Na rozdíl od vícevrstvých sítí tak Hopfieldova síť neodpovídá okamžitě. Potřebuje určitý čas k ustálení do stabilního stavu. Kromě základního modelu existují jeho rozšíření, které umožňují používat místo binárních reálné hodnoty (Mařík a kol., 2003), nebo které si místo jednotlivých stabilních stavů pamatují celé sekvence stavů (Mařík a kol., 2003). Jak je již naznačeno v předchozí části (viz str. 49) samoorganizace je učení bez učitele. Využívá se soutěžní strategie učení. Společným principem těchto modelů je,
4.5
Základy umělých neuronových sítí
53
že výstupní neurony sítě spolu „soutěžíÿ o to, který z nich bude aktivní. Na rozdíl od výše zmíněných principů je tedy v určitém čase aktivní pouze jeden neuron (Šíma, Neruda, 1996). Asi nejdůležitější neuronovou architekturou vycházející ze soutěžního učení je Kohonenova samoorganizační mapa (Self-Organizing Map). Kohonenovy samoorganizační mapy Samoorganizační mapa je tvořena vrstvou n vstupních neuronů, které slouží jen k načtení podnětů představovaných nprvkovými vektory ~x = (x1 , . . . , xn ) a druhou vrstvou Kohonenových neuronů. Ty jsou vzájemně spojeny vazbami laterální inhibice (Hořejš, 1992). Laterální znamená vrstvový, inhibice působení, které něco snižuje. Volně přeloženo lze říci, že laterální inhibice je vzájemné tlumení v rámci vrstvy (Šíma, Neruda, 1996). Při laterální inhibici jsou neurony v jedné vrstvě propojeny navzájem tak, že každý neuron kladnou vazbou sám na sebe a zápornou (inhibiční) vazbou na ostatní neurony. Aktivovaný neuron tak svojí vlastní aktivaci posiluje, zatímco aktivaci ostatních neuronů tlumí. Výsledkem tak je, že nejsilněji aktivovaný neuron utlumí všechny ostatní a zůstane jediným aktivovaným neuronem. Tento princip se používá tehdy, když mnoho neuronů reaguje na stejný podnět a my chceme zjistit, který z nich zareagoval nejvíce. (Hořejš, 1992)
Obrázek 4.11: Typické uspořádání Kohonenovy sítě
Struktura neuronu v Kohonenově síti je odlišná od neuronu v perceptronové síti. Počet vstupů, které přicházejí do neuronu, je roven počtu vstupů do Kohonenovy sítě. Váhy těchto vstupů zakódují vzory, které reprezentují vzory obdobně jako u perceptronu. Rozdíl je v tom, že vlastní přenosovou funkci neurony Kohonenovy sítě de facto nemají. Neuron však provádí pouze výpočet vzdálenosti (odchylky)
4.5
54
Základy umělých neuronových sítí
předloženého vzoru od vzoru zakódovaného ve vahách daného neuronu podle vztahu 4.72. d=
N −1 X
(t)
(t)
[xi − wi ]2 ,
(4.72)
i=0 (t)
(t)
kde xi jsou vstupy vektoru vzorů a wi jsou odpovídající váhy, které jsou zakódované vzory. Výstup neuronu pak lze označit jako d (Šnorek, Jiřina, 1996). Výstupní neurony jsou mezi sebou vzájemně propojeny, ale jen se sousedícími neurony. Každý vstup je spojen s každým neuronem mřížky. Každý neuron na mřížce je pak výstupem. Počet výstupů je roven počtu neuronů. Počet neuronů přímo závisí na konkrétní aplikaci a je prakticky libovolný (Šnorek, Jiřina, 1996). Obecně však platí čím větší počet neuronů, tím je pokrytí vstupního prostoru lepší, ale roste výpočetní čas. Kohonenova síť je tedy aktivována vstupním vektorem ~x, resp. vstupní vektor aktivuje všechny neurony. Hodnota excitace (kladné vazby) je dána skalárním součinem ~xw. ~ Největší excitaci má ten neuron, který je nejblíže vstupu. Kohonenovy neurony se tedy navzájem ovlivňují laterální inhibicí, takže po krátké době se ustálí ve stavu, kdy je aktivní pouze jeden neuron a to ten, který byl nejblíže vstupu. Výsledkem tedy je, že v Kohonenově síti reaguje na vstup jen ten neuron, který je vstupu nejblíže. Důležité je i rozmístění neuronů v prostoru vstupů. Při vzniku sítě, jsou neurony shromážděny blízko sebe někde v prostoru (zde na tzv. hyperkouli ). Po příchodu vstupu ~x nejvíce zareaguje neuron s příslušným vektorem synoptických vah w. ~ Tento vybraný neuron se adaptuje podle předpisu 4.73. w ~ new = w ~ old + α(~x − w ~ old )
(4.73)
Neuron se tak přesune směrem k bodu představujícímu vstup. O kolik záleží na parametru α. Při malém α se síť učí rychle, ale kvůli novým poznatkům zapomíná staré, při velkém α naopak. Jedná se o tzv. konflikt stability a plasticity (Hořejš, 1992). Kohonenova síť se učí za provozu. Nemá fázi učení a fázi používání jako předchozí topologie. Smyslem Kohonenovy stě je vystihnout charakter množiny vstupů. Množina vstupů tvoří na hyperkouli shluky, tzv. clustery. Je-li stejný počet shluků jako Kohonenových neuronů, každý neuron se usídlí ve středu příslušného shluku a stává se jeho typickým zástupcem. Kohonenova síť se používá pro třídění vstupů do skupin (klasifikace), které si sama volí. Nedostatkem Kohonenových sítí je potřeba předem zvolit počet neuronů (Hořejš, 1992). Counterpropagation Pracuje na principu zpětné vazby podobně jako Back propagation. Jedná se však o hybridní síť, která je složená z Kohonenovy sítě nadstavenou o další vrstvu výstupních neuronů, které se učí Grossbergovým algoritmem.
4.5
Základy umělých neuronových sítí
55
Topologie sítě má podobu hvězdy (viz obrázek 4.12), protože její spoje se sbíhají ze vstupních neuronů do jednoho Kohonenova neuronu (tzv. instar ) a spoje vycházející z Kohonenova neuronu ke Grossbergovým neuronům (tzv. outstar ).
Obrázek 4.12: Topologie counterpropagation (Hořejš, 1992)
Princip práce se dá popsat následovně. Na vstup a výstup vložíme tréninkovou dvojici (~x, w). ~ V Kohonenově síti zareaguje jeden neuron, který vyšle impuls přes outstar k horní vrstvě Grossbergových neuronů. Impuls je vynásoben synaptickými vahami outstar. Výstup sítě se porovná s požadovaným výstupem ~y a modifikují se outstar podle Grossbergova pravidla (4.74) (Hořejš, 1992). w ~1 = w ~ + β(~y − w) ~ ·k
(4.74)
To znamená, že síť vlastně vytváří průměrnou odpověď na členy každého shluku. Kohonenova vrstva rozděluje vstupy do shluků a na všechny vstupy z jednoho shluku zareaguje vždy ten stejný neuron. Grossbergova vrstva vyrábí pro shluk takovou odpověď, která vznikla postupným spojením výstupních vektorů ~y příslušným vstupům ve shluku. Síť se obdobně jako u Kohonenova typu učí za pochodu. Učení lze zastavit nastavením parametrů α a β na nulu. Counterpropagation bývá díky své rychlosti využívána i pro orientaci před samotným Back propagation (Hořejš, 1992). 4.5.5
Využití umělých neuronových sítí pro predikci
Úlohy predikce lze rozdělit na dva základní typy – ty u kterých známe zákonitosti, pak jednoduše použijeme příslušnou rovnici a problém převedeme na identifikační úlohu, tedy stanovení parametrů této rovnice (pak se však již de facto nejedná o predikci). Druhým typem jsou úlohy, kde zákonitosti neznáme. U takových úloh se používají různé druhy regresí a dalších metod. Ty jsou však odkázány na volbu určitého druhu závislosti, kterou se dosavadní průběh aproximuje a předpokládá se, že nalezenou aproximaci lze proložit do budoucnosti (Šnorek, Jiřina, 1996). Nutnost zvolit určitý druh závislosti částečně odpadá při použití umělých neuronových sítí, které tak můžou fungovat jako nelineární extrapolátor. Odhad minulou
4.5
Základy umělých neuronových sítí
56
hodnotou je výhodný tam, kde se děj mění pomalu a jedná se o krátkodobou predikci (Šnorek, Jiřina, 1996). U finančních aplikací se často využívá klouzavý průměr. Sleduje se kde se křivka kurzu a klouzavého průměru protnou. Jestliže klouzavý průměr protne křivku kurzu směrem shora dolů, je to impulsem k prodeji, v opačném případě k nákupu akcií. (Šnorek, Jiřina, 1996) Povaha predikce závisí na datech, která jsou k dispozici. Výchozími daty může být • jednoduchá časová řada (je-li tato řada dostatečně dlouhá a hustá, lze z ní predikovat na různě dlouhou budoucnost) • jednoduchá řada a doplňující informace (průběh derivace, údaje doplňující časovou řadu, aj.) • několik časových řad příbuzných veličin (například akcie podniků z jednoho odvětví) • speciální výběr parametrů (obecná aproximace funkce několika proměnných) (Šnorek, Jiřina, 1996) Velkou výhodou umělých neuronových sítí je schopnost učení s učitelem. Tedy učení se na vzorech a schopnost vystihnout nelineární závislosti. Nevýhodou je, že zpravidla nelze odhadnout velikost chyby nebo stanovit interval spolehlivosti. Na druhou stranu je možné neuronovou síť vytrénovat na požadovanou hodnotu chybové funkce. V případě neuronových sítí se jedná de facto o bodové předpovědi, kde interval spolehlivosti není nutné stanovavat. Pro predikci umělými neuronovými sítěmi je nejčastěji používána vrstvená neuronová síť. Máme-li časovou posloupnost x1 , x2 , . . . , xT , xT +1 , kde prvky xi (pro i =1, . . . , T ) známe, pak pro zvolené m T vkládáme na vstup sítě vždy m-tici známých hodnot a pomocí m+1 hodnoty na výstupu trénujeme síť neboli učíme síť (Mařík a kol., 2003). Konfigurace vícevrstvých neuronových sítí obsahuje nastavení mnoho faktorů, které mohou významně ovlivnit realizované výsledky. Dalším typem použitým pro predikce numerických hodnot je síť typu RBF. Pro realizace experimentů byly použity poslední dva zmíněné typy sítí – vícevrstvá neuronová síť a síť typu RBF.
5
VERIFIKACE POUŽITÝCH METOD NA REÁLNÝCH ÚLOHÁCH
5
57
Verifikace použitých metod na reálných úlohách
Stanovené metody je nutné prověřit na skupině různých datových souborů. Cílem takových verifikací je nalézt společné prvky a snaha o zobecnitelnost použitých technologií a postupů. Pro experimenty byly použity tři datové soubory, z nichž dva reprezentují reálná data zpracovaná Českým statistickým úřadem a třetí soubor představovala data simulující ekonomickou časovou řadu. První datový soubor je tvořen statistikami rodinných účtů klasifikovaných dle platných metodik Českého statistického úřadu v souladu s metodikami Eurostatu (Eurostat, 2009). Soubor je detailně popsán níže. Obdobou je druhý datový soubor obsahující časové řady zpracované Českým statistickým úřadem a tvoří jej naturální ukazatele nákladní dopravy České Republiky. Stejně jako první datový soubor, je i druhý datový soubor popsán detailněji níže Třetí soubor tvoří generovaná data simulující ekonomickou časovou řadu. Nejedná se o náhodně generovaná data, ale hodnoty náhodně zvoleného ekonomického ukazatele upravené o náhodnou složku. Třetí datový soubor je detailně popsán u experimentů, kdy byl použit. Vlastnímu srovnání metod předchází představení vlastní implementace systému pro přípravu vstupních dat, který byl součástí vlastní práce.
5.1
Systém přípravy vstupních dat
Projekt věnovaný přípravě časových řad pomocí filtrace dat terénního výzkumu pro následné zpracování neuronovými sítěmi v ekonomických aplikacích byl podpořený v roce 2008 IGA PEF Mendelovy univerzity v Brně (projekt 7/2008). Data jsou v současnosti často upravována v kancelářských aplikacích. Jejich další uchování je většinou na pevném disku zpracovatele. Rozhodně se nejedná o ucelený systémový přístup, který by vedl na jejich kvalitativní uchování a umožnil využití již zpracovaných dat v komfortní podobě. Využívání kancelářských aplikací je také limitováno nástroji pro standardizaci a normalizaci dat. Kvalitní zdroj standardizovaných vstupů pro neuronové sítě je základem pro jejich efektivní využívání. Centralizované úložiště dat je úzce spojeno s aplikací pro automatizovanou filtraci a standardizaci vstupních dat. Obojí jsou základem celkového konceptu (viz 5.1) několika aplikací, které mají umožnit efektivní a komfortní práci při řešení vybraných úloh s pomocí umělých neuronových sítí. Výsledná aplikace podporuje kromě standardizace časových řad, také podporu pro standardizaci a normalizaci vstupních dat pro klasifikační úlohy. Vlastní implementace je realizována v jazyce PHP. Vlastní aplikace je z představeného konceptu absolutně nezávislá na výpočetním systému. Import dat je umožněn také přímo z jiné databáze. Pro korektní import je nutné dodržet určité zásady spojené se správnou syntaxí vstupních souborů. Pro úlohy predikce musí zdrojový soubor obsahovat příslušnou časovou řadu. Ta je po kontrole a zpracování uložena do nové tabulky v databázi.
5.1
Systém přípravy vstupních dat
58
Normalizační aplikace pracuje s numerickými hodnotami. Řešení se nachází v beta stadiu. Aplikace umožňuje import a standardizaci časových řad dle předloženého formátu. Aplikace podporuje standardní formáty .txt, .csv, ale také soubory prostředí Matlab (.m).
Obrázek 5.1: Schéma realizace testovacího systému
Celkový koncept aplikace je zobrazen na obrázku 5.1 a představuje schéma realizace systému. Systém umožňuje snadnou pře-nastavitelnost jednotlivých konfigurací různých umělých neuronových sítí. Realizací výpočetního systému, přesněji jeho jádra, pokračuje práce na celkovém konceptu. Projekt realizace jádra systému pro výpočet neuronovými sítěmi byl podpořen IGA PEF Mendelovy univerzity v Brně pro rok 2009 (č. p. 3/2009) přímo navazuje na předchozí filtrační a standardizační aplikaci popisovanou v předchozích odstavcích. Cílem projektu je návrh a implementace jádra výpočetního systému zohledňujícího více topologií neuronových sítí včetně příslušných učících algoritmů. Projekt nemá implementovat všechny známé typy neuronových sítí, jeho úkolem je zaměření se na úlohy predikce a s ní často spojené i optimalizace vybraných problémů. Aplikaci je nutné dále rozšiřovat až po výsledné řešení, které má v budoucnu dát uživatelům možnost komfortně pracovat s neuronovými sítěmi a je součástí praktického výstupu této disertační práce. Realizace řešení je určena pro operační systém UNIX, tak aby bylo možné v další fázi s neuronovými sítěmi pracovat přes rozhraní internetového prohlížeče. Projekt byl úspěšně obhájen a nyní se nachází v testovací fázi, kdy je dále rozšiřována jeho použitelnost.
5.2
5.2
Datové soubory pro experimenty
59
Datové soubory pro experimenty
Jako datové soubory pro experimenty byly použity výše zmíněné tři datové soubory. První soubor, statistik rodinných účtů zpracované dle klasifikace Eurostatu, který je dostupný díky spolupráci s Ústavem marketingu a obchodu PEF Mendelu v Brně. Druhý, který představuje naturální ukazatele nákladní dopravy České Republiky a je zařazen díky spolupráci s kolegou Ing. Viliamem Lendelem, Ph. D. z Katedry manažérských teórií Žilinské univerzity. Třetí soubor pak obsahuje data simulující hodnoty ekonomické časové řady. Statistika rodinných účtů Statistika rodinných účtů (SRÚ) sleduje hospodaření soukromých domácností – poskytuje informace o výši jejich vydání a struktuře spotřeby. Dále informace o odlišnostech spotřeby v domácnostech uspořádaných podle rozličných hledisek nebo o vlivu různých faktorů (např. pohyb cen, situace na trhu) na strukturu vydání a spotřební zvyklosti domácností, které nelze získat z jiných zdrojů. Šetření je prováděno u souboru 3 000 domácností vybraných záměrným kvótním výběrem (Český statistický úřad, 2009). Tato skutečnost do jisté míry omezuje možnost zobecnění údajů na celou populaci. Složení zpravodajského souboru SRÚ se operativně mění tak, aby aktuálně postihovalo posun základních atributů domácností (jejich složení, ekonomickou aktivitu, úroveň příjmů apod.). SRÚ je v podstatě jediným zdrojem informací o vydáních domácností ve vazbě na jejich příjmy. Čistý peněžní příjem je v rámci souboru vázán přímo k výdajům domácností. Není tak korektní vyvozovat odtud závěry o vývoji příjmů domácností v celé republice (Český statistický úřad, 2009). V České republice se pro třídění spotřebních vydání od roku 1999 používá klasifikace CZ-COICOP „Klasifikace individuální spotřeby podle účeluÿ. Klasifikace je třístupňová, má 14 oddílů, 58 skupin a 157 tříd. Byla vytvořena v rámci transformace klasifikační soustavy mezinárodního standardu COICOP (Classification of Individual Consumption by Purpose). Díky tomu je zajištěna možnost mezinárodního srovnání statistických ukazatelů a je závazná pro všechna statistická zjišťování prováděná podle zákona č. 89/1995 Sb., o státní statistické službě. Ve statistice rodinných účtů existují dva druhy souborů – základní a doplňkový. Základním souborem je 3000 českých domácností, které jsou vybírány tak, aby jejich složení odpovídalo struktuře domácností v České republice podle sociálních skupin, počtu nezaopatřených dětí (u domácností důchodců počtu členů) a výše čistého peněžního příjmu na osobu. Základním výběrovým znakem je skupina domácnosti, odvozená od ekonomické aktivity a postavení v zaměstnání osoby v čele domácnosti. Domácnosti s ekonomicky aktivní osobou v čele jsou tříděny podle jejího postavení v zaměstnání, u domácností zaměstnanců i podle jejího vzdělání. Domácnosti s ekonomicky neaktivní osobou v čele se v dalším stupni člení v závislosti na tom, zda je některý z dalších členů domácnosti ekonomicky aktivní, nebo jestli je v čele domácnosti důchodce.
5.2
Datové soubory pro experimenty
60
Pro tři nejvýznamnější skupiny domácností se používají ještě další výběrová kritéria, a to: • čistý peněžní příjem na 1 člena domácnosti a počet nezaopatřených dětí pro domácnosti zaměstnanců a domácnosti osob samostatně výdělečně činných. • důchod na 1 člena domácnosti a počet členů (u jednočlenných domácností také pohlaví osoby) pro domácnosti důchodců bez ekonomicky aktivních členů. Výběrový znak velikost obce a druh domu se týká všech skupin domácností. Samostatné kvóty podle velikosti obce a druhu domu jsou předepsány pro výše uvedené nejvýznamnější skupiny domácností, zatímco zbývající skupiny se pro tento výběrový znak slučují do jedné kategorie. Výše zmíněná charakteristika je v plném znění uvedena v souborech Českého statistického úřadu (Český statistický úřad, 2009). Doplňkový soubor zahrnuje 400 domácností a vznikl z důvodů potřeby zabezpečit údaje za domácnosti s minimálními příjmy, které jsou sice zastoupeny i v základním souboru, ale jejich malý počet nezajišťuje dostatečnou reprezentativnost. Data v souborech jsou klasifikována do skupin, ze kterých jsou následně vytvářeny časové řady. Výdaje domácností na individuální spotřebu jsou zatříděny do 12 oddílů. Obsah jednotlivých výdajových položek spotřebních vydání je následující: (Toufarová, 2008) 1. Potraviny a nealkoholické nápoje – pekárenské výrobky, obiloviny; maso; ryby; mléko, sýry a vejce; oleje a tuky; ovoce; zelenina; cukr, marmeláda, med, čokoláda, cukrovinky a cukrářské výrobky; potravinářské výrobky a přípravky; káva, čaj a kakao; minerální vody, nealkoholické nápoje a šťávy. Od roku 2006 zapisuje vydání za tuto položku domácnost podrobně pouze dva měsíce v roce, v ostatních měsících sděluje jen celkovou sumu těchto vydání. Podrobné údaje za tyto komodity jsou proto od roku 2006 publikovány pouze v ročních výsledcích. 2. Alkoholické nápoje a tabák – lihoviny; víno; pivo (vč. nealkoholického); míchané nápoje s alkoholem, tabák a tabákové výrobky 3. Odívání a obuv – oděvní materiály; oděvy (prádlo, konfekce, vč. zakázkových oděvů, punčochy a ponožky); oděvní doplňky a textilní galanterie; čištění, opravy a půjčování oděvů, obuv všeho druhu (vč. zakázkové); opravy a půjčování obuvi 4. Bydlení, voda, energie, paliva – nájemné z bytu, běžná údržba a drobné opravy bytu, dodávka vody a jiné služby související s bydlením, elektrická a tepelná energie, plyn, paliva, základní bydlení 5. Bytové vybavení, zařízení domácnosti; opravy – nábytek, bytové zařízení, podlahové krytiny, bytový textil, ložní a stolní prádlo, přístroje a spotřebiče pro domácnost včetně oprav, nádobí a kuchyňské potřeby, výrobky pro dům a zahradu, zboží a služby pro běžnou údržbu domácnosti, 6. Zdraví – léčiva a zdravotnické prostředky, ambulantní zdravotní péče, ústavní zdravotní péče, 7. Doprava – nákup osobních dopravních prostředků, dopravní služby
5.2
Datové soubory pro experimenty
61
8. Pošty a telekomunikace – poštovní služby, telefonní a telefaxová zařízení, telefonické a telefaxové služby, 9. Rekreace a kultura – zařízení a vybavení audiovizuální, fotografická a pro zpracování dat; další výrobky dlouhodobé spotřeby pro rekreaci a kulturu, ostatní výrobky pro rekreaci, domácí zvířata, rekreační a kulturní služby; noviny, knihy, papírenské zboží; dovolená s komplexními službami, 10. Vzdělávání – předškolní a základní vzdělávání; střední vzdělávání; pomaturitní nástavbové vzdělávání; vyšší a vysokoškolské vzdělávání; vzdělávání nedefinované stupněm, 11. Stravování a ubytování – stravovací a ubytovací služby, 12. Ostatní zboží a služby. Do individuální (konečné) spotřeby se nezahrnují investiční výdaje na výstavu, resp. rekonstrukci domu nebo bytu a výdaje spojené s péčí o užitkovou zahradu a užitková zvířata. Tyto výdaje nejsou v CZ-COICOP zařazeny, proto byly vyčleněny do zvláštního oddílu vydání neklasifikovaných jako spotřební výdaje. Jako období pozorování bylo vybráno rozmezí let 1999-2008. Soubory obsahují čtvrtletní údaje. Statistiky přepravených komodit Indexy ve statistice přepravených komodit pro nákladní dopravu jsou součástí souborné statistiky oblasti dopravy a skladování – poskytují údaje o přepraveném zboží celkem v tisících tun. Použité časové řady zachycují data za jednotlivá čtvrtletí od roku 1997 až po současnost. Ukazatele celkově přepraveného zboží slouží pro analýzy krátkodobého vývoje a možné predikce budoucího vývoje v jednotlivých odvětvích. Zdrojem dat je měsíční statistické zjišťování SP 1-12 s přílohami, které je společné pro odvětví obchodu, ubytování, stravování, dopravy a skladování, informačních a komunikačních činností a tržních služeb (Český statistický úřad, 2010). Kritérium pro plošné zařazování jednotek do výběru je aplikováno i v průběhu sledovaného roku, základní a výběrový soubor je tudíž pravidelně aktualizován o nově vzniklé jednotky odpovídající tomuto kritériu. Do souboru jsou zahrnovány jednotky z Registru ekonomických subjektů. Výběrová data jsou definována velikostí jednotky (počtem zaměstnanců) a převažující činností. Plošně jsou do výběru zařazovány jednotky s 50 a více zaměstnanci a také ty jednotky, kterých je v základním souboru méně než 50. V ostatních skupinách podniků je používán proporcionální výběr související s velikostí tržeb známých z administrativního zdroje dat (Český statistický úřad, 2010). Použitý datový soubor je řazen mezi časové řady nákladní dopravy. Statistika přepravy celkem je uváděna v tisících tun a má následující skupiny (Český statistický úřad, 2010): 1. Železniční nákladní doprava • přeprava zboží dle komodit (tuny) • přeprava zboží dle komodit (tunokilometry) 2. Silniční nákladní doprava • přeprava zboží podle komodit (tuny)
5.3
Metody vyhodnocování experimentů
62
• přeprava zboží podle komodit (tunokilometry) 3. Vnitrozemská vodní nákladní doprava • přeprava zboží dle komodit (tuny) • přeprava zboží dle komodit (tunokilometry) 4. Letecká nákladní doprava - výkony letišť ČR 5. Přeprava ropy potrubní dopravou V rámci dalšího členění byl vybrán soubor Silniční nákladní přepravy a přeprava zboží podle komodit (tuny). Soubor obsahuje dělení jednotlivých přepravených na přepravu zboží celkem (uváděno v tisících tun), přepravní výkony (uváděno v milionech tunokilometrů) a průměrné přepravní vzdálenosti (kilometry). Každá z kategorií je členěna na vnitrostátní a mezinárodní přepravu. Mezinárodní přeprava je následně dále členěna na dovoz, vývoz, přepravu ve třetích zemích (vozidla registrovaná v ČR) a tranzit přes ČR. Poslední dvě sledované kategorie tvoří ukazatele podle způsobu provozování dělné na na vlastní účet a na cizí účet. Časová řada použitá pro vlastní experimenty představuje souhrnně uváděnou hodnotu pro zboží celkem. Použitý datový soubor obsahuje pozorování v rozmezí let 1997-2008. Soubory obsahují čtvrtletní údaje.
5.3
Metody vyhodnocování experimentů
Důležitým kritériem při vyhodnocování funkčnosti a použitelnosti neuronové sítě je možnost měřitelné verifikace. Pro účely testování lze verifikaci 4 definovat jako kontrolu, zda je síť správně zkonstruována. Současně lze zadefinovat také pojem validace, jako určení, zda je zkonstruovaná správný typ sítě vzhledem k jejímu použití. Při využití umělých neuronových sítí jako aproximačního nástroje (což jsou fakticky i úlohy predikce) jsou používány standardní nástroje statistického měření chyby(Taylor, 2005): • Průměrná absolutní procentní chyba (MAE), • Průměrná kvadratická chyba (střední čtvercová chyba, MSE), • Procento úrovně klasifikace (PG), • další. Taylor (2005) uvádí, že neexistuje žádné reference ve volbě příslušné metody. V literatuře je často používána metoda průměrné kvadratické chyby (MSA) v různých obměnách, např. minimální MSE. U vlastních experimentů je použita metoda průměrné kvadratické chyby (MSE). Pro objektivní srovnání umělých neuronových sítí je dále nutné otestovat generalizační schopnost sítě, čili je-li síť schopna úspěšné predikce s daty, které nebyli použity při trénování sítě. Na základě výše uvedeného lze definovat tři typy chyb. První, tzv. pravá chyba, kterou Taylor (2005) definuje jako asymptoticky velké číslo nových hodnot, které spadají do požadované odchylky aktuálního rozložení. Dále druhá, tzv. patrná chyba, která vzniká při validaci sítě stejným datovým souborem 4
Jedná se o vlastní úpravu originálních definic z publikace (Taylor, 2005)
5.4
Vlastní experimenty
63
jako je tréninkový. A třetí typ chyby, testovací, která vzniká při validaci sítě datovým souborem jiným než tréninkovým. Současně Taylor (2005) uvádí, že většina systémů není schopna stanovit první typ chyby, ten je pak stanoven na základě druhého a/nebo třetího typu chyby. Pro validaci se pak používá tzv. train-and-test metoda. V upravené podobě metoda dělí datový soubor na tři části: • trénovací sadu, • sadu pro zastavení učení (používané během učení), • a sadu pro test výkonu pro validaci natrénované sítě. Každá ze sad má svou funkci. Sada pro zastavení učení má za úkol zabránit přeučení sítě. Cílem této metody je zvýšit generalizační schopnosti neuronových sítí. Druhou metodou pro validaci neuronových sítí při chybějících datech je crossvalidation (Taylor, 2005). Ta rozděluje data na jednotlivé dílčí soubory. Při vytvoření k různých neuronových sítí, je použito k-1 datových souborů pro učení sítě a je vyhrazena skupina dat pro validaci k-té sítě. Obecně je celý datový soubor rozdělen na více částí o velikosti n. Neuronová síť je následně trénována na zbývající data odpovídající rozdílu n-k a je testován na body mimo soubor k. Následně jsou během testování přesunuty všechny body z množiny n po otestováni (Hastie, Tibshirani, Friedman, 2001). Ve vlastní práci jsou použity obě techniky pro validaci a testování neuronových sítí.
5.4
Vlastní experimenty
Experimenty jsou rozděleny do dvou hlavních skupin. První skupinu tvoří experimenty zaměřené na různé typy, topologie a učící algoritmy umělých neuronových sítí pro potřeby predikce reálných dat. Metodicky je první skupina rozdělena na stanovení topologie sítě (zaměřeno na vícevrstvé perceptronové sítě), volbu přenosové (aktivační) funkce, testování vybraných učících algoritmů pro úlohy predikce (optimalizace učícího procesu), srovnání různých typů neuronových sítí. Součástí první hlavní skupiny jsou také možnosti optimalizace neuronových sítí. Experimenty byly vyhodnoceny z několika hledisek blíže specifikovaných v rámci každého experimentu. Metodický postup při experimentech vychází z cíle práce a dále vlastní metodiky práce. Druhá skupina z hlavních experimentů je zaměřena na komparaci vybraných neuronových sítí s metodami statistické predikce. Pro připravené datové soubory byl proveden experiment predikce popsané časové řady dle vybraného modelu. Dosažené výsledky jsou následně srovnány s výsledky dosaženými při predikci (přesněji aproximaci a extrapolaci) identických časových řad na stejném období. Pro objektivní srovnání jsou následně hodnoty získané statistickými metodami a vypočítané umělými neuronovými sítěmi porovnány s reálnými údaji pro daná období.
5.4
Vlastní experimenty
64
Cílem experimentů bylo provést objektivní komparaci dosažených výsledků nad stejnými datovými soubory rozdílnými metodami. Současně je také nutno zdůraznit problémy spojené s predikcemi reálných dat. Mezi hlavní problémy patří délka časové řady, přesněji při použití příliš krátkých časových řad se kvalita predikce při použití klasických metod snižuje. Další motivací je také automatizace analytických procesů, ale také nároky na metodicko-teoretický aparát a hloubku znalostí nutných pro využití zkoumaných metod. Programové prostředky experimentů Jako programová prostředí pro experimenty byly stanoveny dvě. Pro experimenty s neuronovými sítěmi je použito prostředí Matlab s nadstavbou Neural Network Toolbox. Protože experimenty probíhaly průběžně po dobu tří let, bylo vždy využito nejvyšší dostupné verze za udržení konzistence testů. Každá skupina experimentů probíhala vždy na jedné verzi. V úvodních fázích byly zvažovány i další prostředí (zejména open-source řešení), ale v průběhu experimentů se prostředí Matlab ukázalo jako nejvhodnější z několika důvodů. Jedním z hlavních byla vysoká kvalita implementací a použitých algoritmů neuronových sítí přímo v prostředí Matlab, dále možnost vytvoření a spouštění vlastních algoritmů, ale také vysoká popularita zjištěná při dlouhodobém studiu odborných článků při zpracování rešeršní části. Současně k rozhodnutí přispěla i znalost prostředí Matlab odborníky z neinformatických oblastí, zejména ekonomie a managementu. Pro testování statistických metod bylo použito prostředí Gretl (zkratka Gnu Regression, Econometrics and Time-series Library), které je přímo vyvíjeno pro práci s časovými řadami využitím statistických a ekonometrických metod. V rámci prostředí jsou implementovány metody predikce dříve popsaných metod ARMA v lineární i nelineární podobě (odpovídají obecné Boxově-Jenkinsově metodologii). Prostředí Gretl je volně dostupné pod licencí GNU General Public License (GPL) a jedná se o soubor ekonometrických funkcí. Prostředí je neustále rozvíjeno a nyní obsahuje širokou paletu ekonometrických nástrojů od metod odhadu na bázi metody nejmenších-čtverců, přes vektorové autoregresní funkce a vektorové korekce chyb. Dále vybrané metody nejbližších sousedních intervalů (např. probit, ARIMA, GARCH), které jsou poskytovány i nativně, vícekriteriální metody odhadu lze provádět uživatelsky pomocí generické maximální věrohodnosti nebo nelineární GMM metody. Prostředí Gratl bylo mj. představeno v odborném periodiku Journal of Statistical Software5 (Rosenblad, 2008). Technické prostředky pro experimenty Pro udržení integrity testů a objektivní srovnatelnosti při výkonnostním srovnáváním byly také monitorovány probíhající systémové a uživatelské procesy. Ty byly omezeny pouze na procesy spjaté s bezproblémovým a stabilním během operačního systému i spuštěného prostředí. Metodika vyhodnocování jednotlivých testů je volena nezávisle na zvoleném technickém vyba5
Dostupný z
5.4
Vlastní experimenty
65
vení. Při sledování výkonnosti jednotlivých algoritmů je jako srovnávací parametr volena celková chyba sítě, případně celkový počet epoch. 5.4.1
Komparace různých typů neuronových sítí
První skupina experimentů vychází z testování různých typů neuronových sítí na stejných datových souborech. Srovnání jsou zaměřená na přesnost výstupu, dále výpočetní a časovou náročnost a zohledněna musí být i chyba výsledné predikce. Výsledky jednotlivých typů sítí byly porovnány jednak mezi sebou. Současně bylo provedeno porovnání predikce se stejnou délkou intervalu s reálnými daty z dalších pozorování zveřejněných Českým statistickým úřadem, pro vstupní soubor statistiky rodinných účtů časových řad konstruovaných z vybraných výdajových položek, resp. statistik přepravených komodit pro nákladní dopravu. Experiment 1 První skupina experimentů byla zaměřena na testování přístupů pro stanovení počtu neuronů ve skrytých vrstvách a vlastnímu počtu skrytých vrstev. Experiment pracuje s vícevrstvou neuronovou sítí v různých architekturách a výsledky jsou ověřovány cross-validací. Tento přístup umožňuje systematický přístup ke stanovení topologie sítě. Cílem experimentu bylo otestovat jednotlivé přístupy pro volbu topologie sítě pro jejich použití se zvolenými datovými soubory. Datový soubor pro experiment tvořily časové řady reprezentované hodnotami statistiky přepravených komodit po českých silnicích (tedy druhý datový soubor). Vstupní časová řada byla pro potřeby experimentu standardizována na hodnoty v intervalu < −1; 1 >. Délka celého souboru byla tvořena 32 pozorováními, které odpovídají čtvrtletním záznamům mezi roky 2000 a 2008. Pro účely testů byl datový soubor rozdělen na trénovací a validační soubor. Trénovací data tvořily čtvrtletní údaje v rozmezí let 2000 a 2007. Validační soubor byl zvolen s jednoletým posunem, tedy čtvrtletní údaje v rozmezí let 2001 a 2008. Metodika experimentu spočívala v testování různých konfigurací vícevrstvé neuronové sítě. Pro stanovení počtu neuronů a počtu skrytých vrstev neexistuje žádný zaručený postup. Hastie (2001) uvádí, že typický počet neuronů ve skrytých vrstvách je v rozmezí 5 až 100. V případě práce s reálnými daty platí obecné pravidlo použití rozsáhlejších topologií sítí ovšem s dodržením principu Occamovy (Ockhamovy) břitvy (Izenman, 2008). V aplikaci na topologie neuronových sítí ji Izenman definoval jako nutnost udržení co nejjednoduššího modelu při zachování schopnosti kvalitní generelizace. Rozsáhlejší topologie se používají z důvodu lepší aproximace nelinearit v datech. Jako jeden z možných přístupů stanovení kvalitní topologie sítě (tedy počtu skrytých vrstev a počtu neuronů ve skrytých vrstvách) je použití crossvalidace (Hastie, Tibshirani, Friedman, 2001), (Izenman, 2008).
5.4
Vlastní experimenty
66
Obrázek 5.2: Srovnání normalizované čtvercové chyby pro různé topologie třívrstvé neuronové sítě
5.4
67
Vlastní experimenty
Mezi další metody stanovení počtu neuronů patří mimo jiné také stanovení na základě testování a zkušeností tvůrce sítě (Hastie, Tibshirani, Friedman, 2001). V případě prvního experimentu byl zvolen přístup pro stanovení počtu skrytých vrstev a počtu neuronů ve skrytých vrstvách prostřednictvím cross-validace. Testy byly zaměřeny na topologie s jednou a dvěma skrytými vrstvami. Pro trénování byla použita implementace MLP sítě s učícím algoritmem Back propagation v prostředí Matlab (funkce traingb). Jako kritéria pro zastavení procesu učení byla určena tři kritéria: • hodnota celkové chyby sítě měřená průměrnou kvadratickou chybou (požadovaná hodnota chyby byla stanovena na 0,001); • celkový počet epoch trénování sítě (maximálně 1000 epoch); • požadovaná hodnota gradientu učící funkce (hodnota 0,001). Jako kritérium srovnání pro validaci byla následně použita normalizovaná průměrná kvadratická chyba NMSE (5.1), kde σ 2 je rozptyl požadovaného výstupu di , xi jsou hodnoty vstupního vektoru a N je počet vzorů. N 1 X (xi − di )2 N M SE = N σ 2 i=1
(5.1)
Pro první skupinu, MLP síť s jednou skrytou vrstvou, byl stanoven výchozí počet neuronů na 60. Podle výsledku cross-validace se ustálily tři topologie s jednou skrytou vrstvou. První s 35 neurony ve skryté vrstvě, následně s 30 a 25 neurony ve skryté vrstvě. Obrázek 5.2 prezentuje výsledky provedené validace. Jednotlivé linky prezentují odchylky při porovnání validovaných hodnot s reálnými (standardizovanými) hodnotami. Nejlepšího výsledku dosahovala MLP síť se 30 neurony ve skryté vrstvě, kde požadovaná chyba byla nejblíže nulovým hodnotám. Při učení této sítě také bylo dosaženo požadovaného zastavovacího kritéria stanoveného chybou sítě. MLP síť s 25 neurony dosahovala vyšší standardizované MSE při validaci a učení této sítě bylo ukončeno dosažením maximálního počtu epoch. Klíčové kritérium cílové chyby sítě nebylo dosaženo (hodnota chyby sítě při zastavení učení byla 0,00122), ovšem rozdíl byl velmi malý. Tyto faktory se ve výsledku projevily také při validaci. Poslední síť se 35 neurony ve skryté vrstvě dosáhla při učení požadované celkové chyby sítě po velmi krátké době, což ukázalo na její přetrénování. Při validaci se pak projevilo kolísání způsobené právě jejím přetrénováním. Druhou skupinu testů tvořily sítě se dvěma skrytými vrstvami. Výsledek srovnání je na obrázku 5.3. Nejlepšího výsledku při srovnání validace dosáhla síť s 20 skrytými neurony ve dvou skrytých vrstvách. Stejně jako v prvním případě jednotlivé linky prezentují rozdíly mezi vypočítanou hodnotou při validaci a reálnou (standardizovanou) hodnotou. Na obrázku 5.3 jsou odchylky validovaných dat od požadovaných reprezentovány plnou červenou čárou. Odchylka validovaných dat je celkově velmi malá. Interval normalizované průměrné kvadratické chyby je < −0, 07; 0, 07 >.
5.4
Vlastní experimenty
68
Obrázek 5.3: Srovnání normalizované čtvercové chyby pro různé topologie neuronové sítě
5.4
Vlastní experimenty
69
Nejlepšího výsledku (tj. nejmenší normalizované průměrné kvadratické chyby) u validovaných dat dosáhla síť s 20 neurony ve dvou skrytých vrstvách. Při bližším pohledu na obrázek 5.3 je vidět největší výkyv u lokálního minima reálných dat. To může poukazovat na drobné přeučení sítě, které lze odstranit postupným odebíráním jednotlivých neuronů ve skrytých vrstvách, tzv. regularizací neuronové sítě. Více se řešení problémů s uvíznutím v lokálním minimu věnuje také publikace (Šťastný, Štencl, 2008). Pro zajímavost je ve srovnání (Obr. 5.3) uvedena také třívrstvá síť s 25 neurony ve skryté vrstvě, ta nedosahuje kvalit sítí se čtyřmi vrstvami. Vyhodnocení Experimentu 1 Cílem experimentu bylo otestovat jednotlivé přístupy pro volbu topologie sítě pro jejich použití se zvolenými datovými soubory. Z uvedených přístupů ke stanovení počtu skrytých vrstev a počtu neuronů ve skrytých vrstvách byl aplikován přístup pomocí cross-validace. Nevhodné by bylo použití přístupu cross-validace ke stanovení parametru ladění sítě (tomu tak nebylo v případě testů v Experimentu 1), kdy by docházelo k ladění i stanovení struktury sítě stejnou metodou na podobných datech. Výhodou je pak selektivní přístup ke stanovení rozsahu sítě při menších zkušenostech tvůrce sítě. Při vyhodnocování obou skupin testů je zajímavé se zaměřit na interval normalizované průměrné kvadratické chyby. Pro první sadu testů se hodnoty chyby pohybovaly v intervalu < −0, 15; 0, 15 >. U druhé sady testů se interval chyby zúžil na < −0, 07; 0, 07 >. Zlepšení validovaných výsledků u druhých topologií je tak téměř dvojnásobné. V prvním případě nejlepších výsledků dosáhla síť se 30 neurony v jedné skryté vrstvě, oproti tomu ve druhém případě dosáhla lepších výsledků síť s 20 neurony ve dvou skrytých vrstvách. Na základě provedených testů je možné konstatovat, že pro datové soubory reálných dat menšího rozsahu, je vhodnější volit více skrytých vrstev s menším počtem neuronů v jednotlivých skrytých vrstvách při volbě stejných aktivačních funkcí. Experiment 2 Druhá skupina realizovaných experimentů byla zaměřena na volbu přenosové funkce. Experiment byl rozdělen na dvě hlavní skupiny testů. První část testů byla realizována se simulovaným modelem hodnot reálné ekonomické časové řady. Druhá část testů pak sloužila pro ověření dosažených výsledků a stanovených závěrů na reálných datech. Cílem experimentu je ověření nelineárních přenosových funkcí při predikci ekonomických časových řad. První sada testů byla provedena se simulovaným modelem ekonomické časové řady. Použitý datový soubor obsahoval jednu časovou řadu, kterou tvořily generovaná data náhodně zvoleného ekonomického ukazatele upraveného o náhodnou složku. Rozsah souboru činil celkově 40 pozorování, kdy rozdíl extrémů v absolutní hodnotě činil 3 jednotky. Pro predikci byla vybrána třívrstvá neuronová síť s učícím algoritmem zpětného šíření chyby (Back propagation).
5.4
Vlastní experimenty
70
Obrázek 5.4: Srovnání přenosových funkcí vícevrstevné neuronové sítě (Šťastný, Štencl, 2008)
5.4
Vlastní experimenty
71
Požadovaná délka predikce byla stanovena na pět období bez stanovené přesnosti. Jako srovnávací hledisko byla použita hodnota chybové funkce měřená průměrnou kvadratickou chybou (MSE). Řešení prvního testu bylo rozděleno do několika fází. V první fázi bylo nutné provést analýzu vstupní časové řady. Na základě provedené analýzy vstupní časové řady proběhl odhad topologie a prvotní naučení MLP sítě. Po prvotním naučení výchozí konfigurace MLP sítě bylo možné provádět změny v nastavení a hledat vhodnou konfiguraci vzhledem k požadovanému výstupu. V závěrečné fázi bylo provedeno srovnání dvou použitých umělých neuronových sítí se stejnou konfigurací na stejných vstupních datech ovšem s rozdílnou aktivační funkcí. V první konfiguraci měla síť 15 neuronů ve skryté vrstvě. Výsledkem prvotního naučení byla výrazně přeučená MLP síť. Jako kritéria pro zastavení trénování sítě byla stanovena cílová hodnota chybové funkce (měřena prostřednictvím MSE) na 0,01 a maximální počet epoch trénování sítě na 1000 epoch. Při testování dalších topologií a konfigurací se konfigurace sítě ustálila na 10, resp. 5, neuronech ve skryté vrstvě. Při použití lineární aktivační funkce se hodnota chybové funkce při trénování ustálila na hodnotě 0,85462 při dosažení maximálního počtu epoch trénování sítě. Pro potřeby predikce hodnoty na pět období bylo upraveno kritérium pro zastavení učení sítě definované cílovou hodnotou chybové funkce na hodnotu 0,1. Při následném opakování trénování sítě se proces zastavoval vždy na celkovém počtu epoch trénování sítě při konstantní hodnotě chybové funkce, čímž bylo trénovaní MLP sítě s lineární aktivační funkcí ukončeno. Po změně konfigurace sítě pokračovaly testy s nelineární aktivační funkcí na identickém datovém souboru. Při použití MLP sítě s nelineární aktivační funkcí a 10 neurony ve skryté vrstvě se hodnota chybové funkce při trénování ustálila na hodnotě 0,23124 při dosažení maximálního počtu epoch trénování sítě. Síť s pěti neurony dosahovala maximálního počtu epoch trénování s chybou 0,25471. Následně byla provedena validace natrénovaných sítí na simulovaných datech pro úlohu predikce na pět následujících kroků. Výsledek validace je na obrázku 5.4. Srovnání ukazuje, že obě neuronové sítě (jedna s lineární přechodovou funkcí, druhá s nelineární přechodovou funkcí) aproximují průběh vstupní časové řady s drobnými odchylkami. Do grafického srovnání byla zařazena MLP síť s nelineární aktivační funkcí s 10 neurony ve skryté vrstvě z důvodu nižší hodnoty chybové funkce. Vlastní predikce začíná hodnotou 41 (osa x reprezentuje veličinu čas, konkrétně kvartály). Pro čas s hodnotou 40 je patrné nadhodnocení vypočítané hodnoty MLP sítí s lineární aktivační funkcí. To ukazuje na přeučenou MLP síť. Při srovnání výsledné predikce pěti hodnot vykazují obě sítě obdobný trend. MLP síť s nelineární aktivační funkcí aproximuje celý průběh časové řady kvalitativně lépe. Vlastní počátek predikce (zmiňovaný bod 40 na ose x ) má stejný bod, tedy vypočítaná hodnota se shoduje s reálnou.
5.4
Vlastní experimenty
72
Obrázek 5.5: Srovnání různých architektur vícevrstevné neuronové sítě (Lendel, Štencl, 2010)
5.4
Vlastní experimenty
73
V tomto konkrétním případě je také nutné zohlednit povahu datového souboru. V kombinaci s vlastnostmi použité časové řady a s přihlédnutím k extrému chybové funkce se potvrzují lepší výstupní hodnoty umělé neuronové sítě v konfiguraci s nelineární přenosovou funkcí. Protože předchozí příklad pracoval se simulovanými daty, bylo vhodné otestovat vybrané topologie MLP sítě z předchozího testu také na reálných datech. Pro ověření volby přenosové funkce na reálných datech byl proveden test MLP sítě s jednou skrytou vrstvou, různým počtem neuronů ve skryté vrstvě a nelineární aktivační funkcí. Pro ověřovací test byla použita MLP síť s pěti, resp. deseti, neurony v jedné skryté vrstvě. Jako učící algoritmus byl použit Back propagation (stejně jako v předchozím případě). Datový soubor pro ověření tvořily záznamy ze statistiky přepravených komodit. Soubor pro test obsahoval čtvrtletní údaje mezi roky 1997 a 2008 přepravených komodit po českých silnicích v tisících tun. Predikce byla stanovena pro všechny kvartály roku 2008. Srovnávací období pro aproximaci dat začíná prvním čtvrtletím roku 1999 (posun z důvodů trénování sítě na hodnoty predikce) a končí posledním čtvrtletím roku 2007. Vzhledem k dostupnosti reálných dat pro predikované hodnoty všech kvartálů roku 2008 bylo provedeno srovnání vypočítaných hodnot (predikovaných hodnot neuronovými sítěmi) s reálnými hodnotami sledovaného indexu. Jako kritéria pro zastavení trénování byla stanovena hodnota chybové funkce (počítané při trénování MLP sítě pomocí průměrné kvadratické chyby) na hodnotu 0,1, identicky jako v prvním testu a maximální počet tréninkových epoch byl stanoven na 1000 epoch. V prvním souboru testů byla trénována MLP síť s 5 neurony ve skryté vrstvě. Proces trénování sítě byl ukončen dosažením maximálního počtu epoch při ustálené hodnotě chybové funkce 0,25 (vyšší chyba). Druhá MLP síť měla ve skryté vrstvě 10 neuronů a rovněž u ní skončil proces trénování na kritériu maximálního počtu epoch. Chybová funkce MLP sítě s 10 neurony byla při zastavení trénování nastavena na hodnotu 0,2. U sítě s deseti neurony byl však patrný klesající trend a při dalším testování dosáhla síť kritéria požadované chyby při 1250 epoše, což naznačovalo možné přeučení sítě. Následně byla provedena validace natrénovaných sítí na simulovaných datech pro úlohu predikce na čtyři čtvrtletí roku 2008. Výsledek validace je na obrázku 5.5. Obě sítě prokázaly dobrou schopnost aproximace reálných hodnot. Při validaci se také v obou případech pozitivně projevila nízká hodnota chybové funkce. Při pohledu na přesnost aproximace poslední hodnoty se ukazuje problém přeučení MLP sítě s deseti neurony. Sítí vypočítaná hodnota je větší než reálná, což se následně projevuje při predikci hodnoty ve čtvrtém čtvrtletí roku 2008, kdy vypočítaná hodnota prudce stoupá oproti reálným hodnotám zatímco hodnota predikovaná MLP sítí s pěti neurony správně zachycuje klesající trend reálných dat. Vyhodnocení Experimentu 2 Cílem experimentu je ověření nelineárních přenosových funkcí při predikci ekonomických časových řad. V rámci experimentu pro-
5.4
74
Vlastní experimenty
bíhalo testování vícevrstvých neuronových sítí (MLP) ve stejných topologiích při použití různých typů aktivačních funkcí. Primární zaměření směřovalo na využití nelineárních aktivačních funkcí na různé soubory reálných či pseudo-reálných (první případ datového souboru simulujícího ekonomické hodnoty) datových souborů. V první části experimentu probíhalo stanovení počtu skrytých vrstev a počtu neuronů při použití různých aktivačních funkcí. Testy byly ukončeny výslednou validací při použití stejných topologií. Na základě zjištění dosažených v předchozích testech byly provedeny testy predikce na reálném datovém souboru při nezměněných podmínkách. Z testovaných sítí byly vybrány dvě konfigurace s pěti, resp. deseti neurony v jedné skryté vrstvě. Při validaci zmíněných sítí bylo provedeno srovnání predikovaných hodnot s reálnými hodnotami daného indexu přepravy komodit po českých silnicích. Z testovaných sítí byly vybrány dvě konfigurace s pěti, resp. deseti neurony v jedné skryté vrstvě. Při validaci zmíněných sítí bylo provedeno srovnání predikovaných hodnot s reálnými hodnotami daného indexu přepravy komodit po českých silnicích. Srovnání absolutních hodnot MLP sítí s reálnými údaji přináší tabulka 2. Tabulka 2: Porovnání predikovaných hodnot MLP sítěmi s reálnými hodnotami příslušného indexu
Prostředek Reálná hodnota MLP síť (5 n.) MLP síť (10 n.)
Hodnota MSE – 0,25 0,20
Čas – čtvrtletí roku 2008 Q1 Q2 Q3 Q4 81114,28 123655,91 121916,50 105168,08 78168,42 125554,87 123592,85 120519,76 76738,59 124377,81 122832,56 124080,45
Na základě provedených testů je možné konstatovat, že pro datové soubory reálných dat menšího rozsahu použité při testování v rámci experimentu 2, bylo vhodnější volit topologie s menším počtem neuronů v skryté vrstvě při volbě nelineárních aktivačních funkcí. Současně se při validaci ukázalo, že při trénování sítě není vždy efektivní snaha o co nejlepší vystižení vstupních dat. MLP síť s větší chybou dosáhla při validaci kvalitnějších výsledků predikovaných hodnot než síť s nižší chybou. Dané konstatovaní však není možné generalizovat pro obecnou formu. Experiment 3 Skupina testů v rámci Experimentu 3 byla zaměřena na optimalizaci trénování MLP sítě pro predikci reálných dat. Experiment byl opět rozdělen na více částí. První část pracuje s MLP sítí v různých architekturách, které byly odvozovány pomocí cross-validace (obdobně jako v případě prvního experimentu). V další fázi proběhlo testování různých učících algoritmů při trénování MLP sítě pro účely predikce vývoje zvoleného indexu. Konkrétně se jednalo o srovnání účinného, ale i univerzálního algoritmu Back propagation s algoritmem Levenberg-Marquardt. Cílem experimentu bylo srovnat účinnost optimalizace procesu trénovaní sítě při použití různých algoritmů vzhledem k následné predikci hodnot reálných dat.
5.4
Vlastní experimenty
Obrázek 5.6: Srovnání různých učících algoritmů vícevrstvé neuronové sítě
75
5.4
Vlastní experimenty
76
Datový soubor pro experiment tvořily reálná data ze statistik rodinných účtů. Časové řady byly konstruovány z vybraných výdajových položek. Výsledná predikce byla provedena na validačním souboru. Vstupní časovou řadu tvořilo 28 pozorování z rozmezí let 2000 až 2007. Požadovaná délka predikce byla stanovena na 3 následující období, což odpovídá prvním třem čtvrtletím roku 2008. Díky disponibilitě reálných dat pro příslušné období byly porovnány predikované hodnoty jednotlivých sítí s reálnými daty. Hodnoty vstupní časové řady byly pro potřeby experimentu standardizovány na hodnoty v intervalu < 0; 1 >.
Obrázek 5.7: Graf výkonu trénování MLP sítě s algoritmem Levenberg-Marquardt
Trénovací data tvořily náhodně vybrané dílčí indexy z použitého datového souboru. Vstupní datový soubor byl konkrétně rozdělen na trénovací soubor (70 % vstupního datového souboru) a testovací soubor (zbývajících 30 % datového souboru). Vlastní trénovací soubor byl dále rozdělen na vlastní trénovací sadu (80 % dat) a validační soubor (zbývajících 20 % trénovacího souboru). Validační datový soubor pro výslednou predikci je tvořen souhrnným indexem výdajových položek statistik rodinných účtů.
5.4
Vlastní experimenty
77
Jako srovnávací hledisko byla použita hodnota chybové funkce měřená průměrnou kvadratickou chybou (MSE) a počet epoch nutných pro natrénovaní sítě. Dalším srovnávacím kritériem byla přesnost na výstupu predikce pro validační soubor. V první fázi byla použita vlastní implementace MLP sítě s učícím algoritmem Back propagation spouštěná přes prostředí Matlab (verze r2010a). Konfigurace použité MLP sítě pro učící algoritmus Back propagation byla odvozena pomocí dříve definované metody cross-validace. Výsledná použitá architektura měla 20 neuronů v jedné skryté vrstvě. Vlastní trénovací proces sítě skončil po 890 epochách při ustálené průměrné kvadratické chybě (MSE) 0,01. MLP síť s algoritmem Back propagation prokázala velmi dobrou schopnost aproximovat použitá data. Při validaci datovým souborem souhrnného indexu (srovnání na obrázku 5.6) je vidět i slušné vystižení trendu vývoje reálných dat. Ve druhé fázi byla testována MLP síť s algoritmem Levenberg-Marquardt, implementovaným v prostředí Matlab jako funkce trainlm. Jak bylo uvedeno dříve (viz strana 45) Levenberg-Marquardtův učící algoritmus patří mezi nejefektivnější učící algoritmy MLP sítí. Algoritmus je navržen pro práci s MLP sítěmi menšího rozsahu. Dochází tak k optimalizaci rozsahu sítě při stejných generalizačních schopnostech sítě. Výsledná konfigurace sítě odvozená cross-validací obsahovala 10 neuronů ve skryté vrstvě. Obrázek 5.7 ukazuje výkon zvolené MLP sítě ve zmíněné konfiguraci, kde osa x reprezentuje epochy trénování sítě a osa y reprezentuje průměrnou kvadratickou chybu (MSE) sítě. Síť dosáhla nejlepšího výkonu při trénování sítě ve 20 epoše trénování sítě. Hodnota chyby měřené průměrnou kvadratickou chybou (MSE) byla 0,0058. Srovnání validace na hodnotách souhrnného indexu výdajových položek statistik rodinných účtů je vidět na obrázku 5.6. V případě sítě s LevenbergMarquardtovým algoritmem jsou vidět náznaky přeučení sítě. Při srovnání obou architektur je vidět rozdíl zejména v rozsahu počtu neuronů ve skrytých vrstvách. Při práci s algoritmem Back propagation se potvrdily závěry z experimentu 1. Síť s větším počtem neuronů je schopna lépe aproximovat (a tím i vystihnout nelinearity) hodnoty reálných dat. V případě výsledku predikce sítí s LevenbergMarquardtovým algoritmem je zajímavá především zpřesněná predikce s narůstající délkou kroku predikce. S přihlédnutím k výkonnostním parametrům, kdy síť s Levenberg-Marquardtovým algoritmem potřebovala pouhých 20 epoch trénování k dosažení požadované hodnoty MSE, je zřetelná optimalizace učícího procesu a vysoký výkon zvoleného učícího algoritmu. Pro další testování výkonu by bylo nutné předložit naučené síti delší časové řady, např. frekveční ekonomické časové řady, kdy by se naplno mohla projevit síla Levenberg-Marquardtova algoritmu. Vyhodnocení Experimentu 3 Cílem experimentu je srovnat účinnost optimalizace procesu trénování sítě při použití různých učících algoritmů vzhledem k následné predikci hodnot reálných dat. Experiment byl proveden s MLP sítí a dvěma typy učících algoritmů. Prvním byl učící algoritmus Back propagation ve vlastní implementaci a druhým byl algoritmus Levenberg-Marquardt jehož implementace je součástí pros-
5.4
78
Vlastní experimenty
tředí Matlab (verze r2010a). Vlastní implementace byla rovněž spouštěna přes prostředí Matlab. Následně bylo provedeno srovnání výsledků trénovacích fází MLP sítí. Sledovanými kritérii byl počet epoch nutný k naučení sítě a celková chyba sítě měřená prostřednictvím průměrné kvadratické chyby (MSE). Větší přesnosti za kratší dobu dosáhla síť s Levenberg-Marquardtovým algoritmem. Tabulka 3: Porovnání predikovaných hodnot MLP sítěmi a reálných hodnot příslušného indexu
Prostředek
Hodnota MSE Reálná hodnota – Back propagation 0,01 Levenberg-Marquardt 0,0058
Čas – čtvrtletí roku 2008 Q1 Q2 Q3 8647,00 9417,00 9521,00 8630,06 9134,15 9185,76 9404,0 9421,7 9513,6
Poslední krok experimentu představoval validaci naučených sítí na reálném datovém souboru. Ten představoval index spotřeby a délka predikce byla stanovena na tři čtvrtletí roku 2008. Přímé srovnání predikovaných hodnot při validaci je uvedeno v tabulce 3. Hodnoty uváděné v tabulce jsou v absolutním vyjádření. Z přehledu je patrná velmi dobrá schopnost predikce obou sítí. Současně se projevuje možné přeučení MLP sítě s algoritmem Levenberg-Marquardt, kdy jím vypočítaná hodnota pro první čtvrtletí je výrazně vyšší. Projevuje se tak výrazná citlivost MLP sítí na použitá data. Za velmi přesné pak lze označit hodnoty v dalších predikovaných obdobích. Na základě zjištění dosažených v předchozích testech byly provedeny testy predikce na reálném datovém souboru při nezměněných podmínkách. Obě sítě ukončily proces trénování shodně na dosažení zastavovacích kritéria definovaném chybou sítě. Při testech se projevila síla algoritmu Levenberg-Marquardt při učení sítě a schopnost predikce na delší období. Současně je však nutné konstatovat, že algoritmus Back propagation v celkovém porovnání prokázal lepší schopnost generelizace. Jako možný problém se projevila citlivost MLP sítí na různé změny v konfiguracích sítí. Je proto nutné otestovat další typy neuronových sítí. Experiment 4 Čtvrtá skupina experimentů byla zaměřena na srovnání dvou typů neuronových sítí. Prvním typem byla vícevrstvá neuronová síť s algoritmem zpětného šíření (Back propagation), která byla použita při testování v rámci experimentu 2. Jako druhý typ sítě byla použita síť radiálních bazických funkcí (RBF). Experiment byl rozdělen do několika fází testování. Protože síť typu RBF je odlišným typem sítě, byly pro odvození její architektury použity různé přístupy. Cílem experimentu je ověřit metodu corss-validace na odvození architektury sítě pro síť typu RBF a dosažené výsledky otestovat na vybraném datovém souboru při predikci budoucích hodnot.
5.4
Vlastní experimenty
79
Obrázek 5.8: Srovnání různých typů neronových sítí (MLP a RBF) (Štencl, Šťastný, 2009)
5.4
Vlastní experimenty
80
Hodnoty získané při validaci RBF sítě jsou následně porovnány s hodnotami získanými při validaci vybrané MLP sítě. Pro dodržení objektivního srovnání byl použit datový soubor simulace ekonomické časové řady. Na základě předchozích experimentů je také možné konstatovat, že zvolená MLP síť predikovala hodnoty kvalitně i v předchozích případech, proto lze na základě tohoto srovnání vyvodit příslušné závěry. Jako hodnotící kritéria pro vyhodnocení testů byla stanovena celková chyba sítě (měřená MSE a stanovená na hodnotu 0,01), maximální počet epoch učení (1000 epoch) a přesnost na výstupu měřená v absolutní hodnotě komparací obou sítí pomocí průměrné kvadratické chyby. Požadovaná délka predikce byla stanovena na pět budoucích období. Pro odvození architektury byla použita metoda cross-validace. Ta se však v tomto případě neukázala jako účinná. Výsledkem metody cross-validace byla architektura sítě s vysokým počtem neuronů. Pro takovou architekturu se nijak nesnižovala celková chyba sítě. Na základě provedené analýzy dat byla následně odvozena architektura s 20 RBF jednotkami ve skryté vrstvě a jako aktivační funkce byla použita Gaussovská funkce (viz obrázek 4.7 na straně 47). S příslušnou architekturou byla následně provedena sada testů a validace naučené RBF sítě. Po prvotním naučení a validaci výchozí konfigurace RBF sítě byl počet neuronů snížen na 15 RBF jednotek v jedné vrstvě. Prvotní testování RBF sítě probíhalo se standardní implementací RBF sítě v prostředí Matlab. V rámci dalších testů byla připravena teké vlastní implementace RBF sítě (Štencl, Šťastný, 2009) spouštěná přes prostředí Matlab. Provedené testy s trénováním sítě končily při splnění zastavovacího kritéria učení definovaného celkovou chybou sítě na hodnotě 0,1. Příslušné chyby bylo dosaženo při 250 epochách učení. V rámci testů při trénování RBF sítě byl rovněž proveden test se snížením hodnoty požadované chybové funkce na 0,001. To v dané konfiguraci vedlo na ukončení trénovaní na maximální počet epoch. Současně tak byly otestovány i další topologie (přidáním neuronů s RBF jednotkami). Při trénování pak RBF síť dosáhla i nově nastaveného kritéria po 400 epochách. Problém následně nastal při simulaci dat, kdy hodnoty vypočítané sítí byly příliš vysoké a síť celkově vykazovala znaky přeučení. Současně také energetická funkce sítě měla výrazně vyšší hodnotu než v případě menší topologie. Současně se ukázalo, že při změnách konfigurace RBF sítě nedocházelo k výraznému kolísání jednotlivých trénovacích hodnot (celková chyba sítě, energetická funkce) jako v případě MLP sítí. Pro lepší aproximaci byla otestována také vlastní implementace6 trénovacího algoritmu APC III. Výsledkem byla delší fáze učení dané konfigurace. Při stanoveném zastavovacím kritériu celkové chyby sítě na hodnotě 0,1 bylo provedeno 630 epoch. Následně byla provedena validace příslušné naučené sítě. U té se projevilo drobné kolísání kolem ideálních (reálných) hodnot při aproximaci. Naměřená chyba na výstupu pak nabyla hodnoty 0,6973. Tato hodnota je ve srovnání s MLP sítí 6
Vlastní implementace se nyní nachází ve fázi odlaďování.
5.4
Vlastní experimenty
81
s 10 neurony ve skryté vrstvě vyšší. Přímé srovnání je na obrázku 5.8. Ten zobrazuje výsledky validace použitých neuronových sítí na testovaném datovém souboru. Při obecném vyhodnocení provedené validace je vidět, že ani jedna ze sítí přesně neaproximuje průběh simulovaných hodnot. Obě však postihují trend validovaného souboru. Právě schopnost přesného vystižení trendu RBF sítí je u tohoto typu sítě zajímavostí. Vzhledem ke struktuře sítě nabývají často aproximované hodnoty RBF sítí u počátečních hodnot vysokých odchylek, které se blíží šumům. S postupnou délkou vypočítaných hodnot se následně aproximace zpřesňuje. Vyhodnocení Experimentu 4 Cílem experimentu bylo ověřit metodu corssvalidace na odvození architektury sítě pro síť typu RBF a dosažené výsledky otestovat na vybraném datovém souboru při predikci budoucích hodnot. Při stanovení architektury sítě se metoda cross-validace neukázala jako účinná na rozdíl od předchozích experimentů. Topologie sítě tak byla odvozena analyticky a testováním. Po prvním natrénování byla postupně odvozována nová konfigurace RBF sítě. V dalších fázích byla nalezena konfigurace splňující požadovaná kriteria pro skončení trénovacího procesu. RBF síť příslušného kritéria dosáhla po několika násobně kratší době trénování než v případě vícevrstvé neuronové sítě testované v rámci druhého experimentu. Rychlost byla v tomto případě vyjádřena počtem epoch nutných pro dosažení požadované hodnoty celkové chyby sítě. Dále je nutné konstatovat, že RBF sítě na rozdíl od MLP sítí dosáhly při trénování zastavovacího kritéria definovaného celkovou chybou sítě. Při testování se také prokázala vyšší odolnost RBF sítí na změny konfigurací. V rámci testů byla také prověřena vlastní implementace RBF sítě spouštěná přes prostředí Matlab, která dosahovala srovnatelných výsledků se standardními funkcemi prostředí. Vlastní implementace je dále testována. I přes drobné nedostatky experiment prokázal možnost využití RBF sítě pro predikci pro daný model časové řady tím, že síť aproximovala vypočítané hodnoty na úrovni hodnot získaných vícevrstvou neuronovou sítí s nelineární přenosovou funkcí. Na rozdíl od vícevrstvé sítě splnila podmínky pro zastavení trénování na úrovni požadované celkové chyby sítě. Vyšší chyba u validace pak směřuje na další testování s různorodými daty. 5.4.2
Možnosti optimalizace umělých neuronových sítí
Pro řešení problémů optimalizace je nejčastěji využívána Hopfieldova síť. (Mařík a kol., 2003) Výhodná je díky skutečnosti, že po konečném čase dosáhne lokálního minima energie. Obecně však nepůjde o minimum globální, protože síť se může stabilizovat, což se využívá k řešení optimalizačních úloh a to jak NP-těžkých, tak i NP-úplných. Hlavním cílem optimalizační úlohy pomocí Hopfieldova modelu je nalézt vzájemně jednoznačnou korespondenci mezi stavem úlohy (v jejím stavovém prostoru) a stavem sítě. To lze dosáhnout vyjádřením hodnot proměnných jako hodnoty
5.4
Vlastní experimenty
82
neuronů x. Dále je třeba určit vztah mezi účelovou funkcí úlohy a energií Hopfieldovy sítě. Díky konstruktivnímu způsobu nalezení lokálního minima energie sítě je pak možné nalézt jiné vyhovující řešení úlohy. Při hledání potřebných závislostí obvykle vystačíme s binárními perceptrony, pro úspěšný průběh konvergence z počátečního stavu sítě potřebujeme často spojitou a ne diskrétní síť. Hodnoty stavů (výstupů) jsou schopny zachycovat libovolná reálná čísla z předem daného intervalu. Hopfieldova síť se často používá pro řešení úloh z teorie ohodnocených grafů, ale také např. na řešení problému obchodního cestujícího. Vlastní oblast optimalizační úloh je však natolik rozsáhlá, že ji není možné v této práci postihnout. Jak je zmíněno výše, Hopfieldových sítí je využíváno zejména pro optimalizační úlohy (maximalizační nebo minimalizační). Aproximovaná data je však možné optimalizovat ještě z dalších pohledů. Mezi první z nich patří zejména optimalizace topologie neuronové sítě, dále použití optimalizačních učících algoritmů a dalších. S přihlédnutím k provedeným experimentům v předchozí části textu, je možné poukázat na rozdíly při použití určitého počtu neuronů ve skryté vrstvě a vlastní počet skrytých vrstev. Dochází tedy k optimalizaci topologie sítě. I vlastní trénování neuronové sítě je minimalizační úlohou celkové chyby neuronové sítě. Další optimalizace je v použitém učícím algoritmu, například třetí experiment s použitím učícího algoritmu Levenberg-Marquardt. V neposlední řadě je pak možné provádět optimalizace na úrovni vlastního výpočtu. Jako srovnání k provedeným testům obsahuje následující část práce test s optimalizací vícevrstvé neuronové sítě realizované více-vláknovým výpočtem. Optimalizace více-vláknovým výpočtem Pro optimalizaci více-vláknovým výpočtem byl použit Java framework pro umělé neuronové sítě Joone7 . Použitá funkce byla spouštěna z prostředí Matlab, který také řídil průběh vlastního výpočtu. Výpočet byl prováděn na výpočetní stanici s procesorem Intel Core i5 s frekvencí 2,66 GHz a 8 GB paměti. Cílem testů je identifikovat hlavní ukazatele více-vláknových optimalizací na predikci reálných dat. Podmínky byly identické s testy v rámci experimentů předchozí části textu. Pro více-vláknové výpočty bylo nutné zvolit větší rozsah topologie MLP sítě. S přihlédnutím k výsledkům prvního experimentu, lze očekávat kvalitnější schopnost aproximace dat. Současně by měl více-vláknový výpočet umožnit rychlejší výpočet (hodnota nižší než maximální počet epoch) s větším rozsahem sítě. Na základě provedené cross-validace byla pro testování zvolena síť se třemi vrstvami s 5 neurony v první skryté vrstvě (lineární aktivační funkce), 15 neurony ve druhé skryté vrstvě (aktivační funkce sigmoida), 5 neurony ve druhé skryté vrstvě (aktivační funkce sigmoida) a jeden neuron ve výstupní vrstvě. Jako hodnotící kritéria trénování byla zvolena celková chyba sítě (stanovena na požadovanou hodnotu 0,001) a maximální počet epoch trénování sítě (1000 epoch).
7
Dostupný na
5.4
Vlastní experimenty
Obrázek 5.9: Predikce komodit přepravených po železnici (normalizovaná podoba)
83
5.4
Vlastní experimenty
84
Hodnotícím kritériem pro validaci byla přesnost na výstupu měřená průměrnou kvadratickou chybou. Datový soubor pro testování tvořily údaje souboru statistiky přepravených komodit. Pro validaci byly zvoleny údaje přepraveného zboží po železnicích, které byly standardizovány na interval < 0; 1 >. Délka validačního souboru činila 35 pozorování (poslední hodnotou je druhé čtvrtletí roku 2007). Predikce byla stanovena na 5 budoucích hodnot. Výsledné predikované údaje jsou porovnány s reálnými hodnotami. Proces trénování přesáhl požadovaných 1000 epoch a byl zastaven dosažením požadované celkové chyby sítě při hodnotě 0,00098 při 1320 epoše. Následná validace reálnými daty prokázala schopnost predikovat s průměrnou kvadratickou chybou 0,0012, která odpovídá požadavku. Výsledek srovnání validace je na obrázku 5.9. Pozitivním přínosem je jednoznačně schopnost natrénované sítě úspěšně predikovat vývoj trendu reálných hodnot i když se vzrůstající chybou. Výsledný celkový počet epoch při trénování může být způsoben povahou trénovacích dat. Pro sítě většího rozsahu je vhodnější použití rozsáhlých datových souborů, kde se projeví aproximační schopnosti neuronové sítě. Více-vláknový výpočet byl rovněž použit pro srovnání predikovaných hodnot umělými neuronovými sítěmi a vybranými metodami statistické predikce. 5.4.3
Komparace vybraného typu neuronové sítě s metodami statistické predikce
Cílem těchto experimentů je objektivně srovnat vybranou neuronovou síť v přesně stanovené konfiguraci s příslušnou metodou statistické predikce na základě přesnosti předpovědi (tedy výstupu). Postup experimentů byl stanoven následovně. V obecné rovině se jedná o dvě hlavní skupiny experimentů podle použitých reálných datových souborů. Datové soubory jsou identické se soubory použitými při testování metod umělých neuronových sítí, aby bylo možné provést jejich objektivní srovnání. První datový soubor tvoří Statistiky rodinných účtů. Druhý datový soubor pro experimenty tvoří Statistiky silniční nákladní dopravy v České Republice. Experimenty jsou složeny z několika dílčích kroků. V prvním proběhne konstrukce modelu časové řady dle stanovené metodiky. Na základě použitého modelu bude provedena predikce příslušného indexu pro srovnávaná období. Tato období odpovídají provedené predikci umělými neuronovými sítěmi u příslušných datových souborů v předchozí části této kapitoly. Po stanovení predikce pro vybraný model je v druhé části každého experimentu provedeno odvození modelu časové řady na základě aplikace metody X-12-ARIMA (blíže specifikována níže v textu). Takto stanovené predikce jsou následně v absolutním vyjádření srovnány s výsledky získané umělými neuronovými sítěmi. Tato přímá komparace je dále vyhodnocena vzhledem k reálným hodnotám z datových souborů. Po vyhodnocení výsledků je v závěru části věnované experimentům provedeno vyhodnocení dosažených výsledků.
5.4
Vlastní experimenty
85
Obrázek 5.10: Výsledek statistické analýzy časových řad dle metodiky X-12-ARIMA (výstup prostředí Gretl)
Metoda X-12-ARIMA8 je implementována jako nadstavba prostředí Gretl a zjednodušeně řečeno se jedná o automatizované stanovení modelu časové řady dle Box-Jenkinsovy metodologie a následného stanovení predikce pro zadaná období. Slouží jako alternativní způsob pro stanovení ARMA modelů pomocí nativního kódu. Spočívá v sezónním očištění vstupního datového souboru zadávaného jako časová řada. Vlastní metoda byla vyvinuta a je dále rozvíjena Statistickým úřadem U. S. A9 , který ji používá na sezónní očišťování. Prostředí Gretl obsahuje X12-ARIMA modul, který je schopen externě používat program X-12-ARIMA. Po provedení očištění programem X-12-ARIMA, je vstupní soubor vrácen zpět do prostředí Gretl pro další možné analýzy. Gretl pak automaticky provede výběr vhodného modelu statistické řady na základě provedené analýzy a sezónního očištění vstupní řady. Vlastní výstup provedené analýzy jo poměrně rozsáhlý analytický soubor, který obsahuje (mimo jiné) také hodnoty predikce pro předem definovaná období. 8 9
Oficiální stránky X-12-ARIMA dostupné na
5.4
86
Vlastní experimenty
Experimenty 1, datový soubor Statistiky rodinných účtů Dle výše stanové metodiky experimentů byla nejprve provedena vlastní analýza se standardními postupy v prostředí Gretl. Následně byla provedena automatizovaná analýza metodou X12-ARIMA. Vstupní časová řada je tvořena údaji spotřebních výdajů domácností (datový soubor Statistiky rodinných účtů). Tabulka 4: Predikce spotřebních výdajů domácností, model ARIMA
Období
Hodnota predikce 2008/Q1 8870.04 2008/Q2 8844.51 2008/Q3 8819.47
Standardní chyba 445.357 496.357 540.894
Konfidenční interval (95 %) nižší vyšší 7722.87 10017.20 7565.98 10123.04 7426.22 10212.72
Metodou X-12-ARIMA byla nejprve provedena analýza trendů vstupní časové řady, rozdělení na náhodnou a cyklickou složku. Obrázek 5.10 je tvořen třemi grafy. První ukazuje hodnoty původní časové řady (červená linka) a sezónně očištěné hodnoty časové řady (modrá linka). Tabulka 5: Predikce spotřebních výdajů domácností, metoda X-12-ARIMA
Období
Hodnota predikce 2008/Q1 8464.19 2008/Q2 9112.98 2008/Q3 9213.05
Standardní chyba 108.460 133.251 158.756
Konfidenční interval (95 %) nižší vyšší 8251.62 8676.77 8851.81 9374.15 8901.89 9524.20
Pro očištění bylo použito multiplikativní sezónní očištění. Osa x je tvořena absolutními hodnotami časové řady, kterou tvoří spotřební výdaje českých domácností, osa y reprezentuje jednotlivá čtvrtletí sledovaných let. Druhý graf znázorňuje odhadovaný trend obsažený v časové řadě. Poslední graf prezentuje identifikaci nepravidelné složky. Tabulka 6: Srovnání predikce statistickými modely a umělými neuronovými sítěmi
Období
Reálné hodnoty 2008/Q1 8647.00 2008/Q2 9417.00 2008/Q3 9521.00
ARIMA
X-12-ARIMA
8870.04 8844.51 8819.47
8464.19 9112.98 9213.05
MLP síť BP LM 8630.06 9404.00 9134.15 9421.70 9185.76 9513.60
Na základě provedené analýzy je následně provedena predikce pro tři následující čtvrtletí roku 2008. V tabulce 5 jsou uvedeny hodnoty predikce časové řady dle
5.4
87
Vlastní experimenty
automatizované metody X-12-ARIMA. Přesnost konfidenčního intervalu byla stanovena na 95 %. V rámci provedené analýzy proběhlo 5 iterací modelu ARIMA a v každé iteraci 7 funkčních vyhledávání. Při srovnání dosažených výsledků vykazuje lepší účinnost automatizovaná metoda X-12-ARIMA.
Obrázek 5.11: Predikce stanovená modelem ARIMA
Hodnoty vypočítané statistickou analýzou je nutné porovnat s výsledky dosaženými umělými neuronovými sítěmi. Srovnání je uvedeno v tabulce 6. Nejbližší hodnoty jsou v textu vyznačeny tučně. Ve druhé fázi bylo také provedeno srovnání výsledků ARIMA modelu s optimalizovanou MLP sítí. Výsledek je uveden v následující tabulce (hodnota nejbližší reálné je opět zvýrazněna tučně). Tabulka 7: Srovnání predikce statistickými modely a optimalizovanou MLP sítí
Období Reálné hodnoty 2008/Q1 8647,00 2008/Q2 9417,00 2008/Q3 9521,00
ARIMA 8870,04 8844,51 8819,47
X-12-ARIMA 8464,19 9112,98 9213,05
MLP síť (MT) 8790,24 9158,46 9835,80
Lepší výsledek metody X-12-ARIMA v posledním čtvrtletí lze přisuzovat celkově podhodnocené predikci modelem ARIMA.
5.4
Vlastní experimenty
88
Obrázek 5.12: Výsledek statistické analýzy časových řad dle metodiky X-12-ARIMA (výstup prostředí Gretl)
Experimenty 2, datový soubor Statistiky přepravených komodit Obdobně jako u prvního experimentu, i v druhém případě byla metodika stejná. Nejprve byl stanoven ARIMA model pro vstupní časovou řadu tvořenou čtvrtletními údaji o přepraveném zboží po českých silnicích. Po stanovení modelu byla následně vypočtena predikce pro jednotlivá čtvrtletí roku 2008. Metodou X-12-ARIMA byla nejprve provedena analýza trendů vstupní časové řady, rozdělení na náhodnou a cyklickou složku. Obrázek 5.12 je tvořen třemi grafy. První ukazuje hodnoty původní časové řady (červená linka) a sezónně očištěné hodnoty časové řady (modrá linka). Tabulka 8: Predikce přepravených tun po českých silnicích, model ARIMA
Období 2008/Q1 2008/Q2 2008/Q3 2008/Q4
Hodnota Standardní Konfidenční interval (95 %) predikce chyba nižší vyšší 109927.9134 20214.6971 57858.3043 161997.5226 111027.2593 21332.0247 56079.6050 165974.9135 111756.0096 21804.9111 55590.2807 167921.7385 112239.0942 22009.4980 55546.3842 168931.8042
5.4
89
Vlastní experimenty
Obrázek 5.13: Predikce stanovená modelem ARIMA
Pro očištění bylo použito multiplikativní sezónní očištění. Osa x je tvořena absolutními hodnotami časové řady, kterou tvoří spotřební výdaje českých domácností, osa y reprezentuje jednotlivá čtvrtletí sledovaných let. Druhý graf znázorňuje odhadovaný trend obsažený v časové řadě. Poslední graf prezentuje identifikaci nepravidelné složky. Na základě provedené analýzy je následně provedena predikce pro tři následující čtvrtletí roku 2008. V tabulce 9 jsou uvedeny hodnoty predikce časové řady dle automatizované metody X-12-ARIMA. Přesnost konfidenčního intervalu byla stanovena na 95 %. V rámci provedené analýzy proběhly 3 iterace modelu ARIMA, v každé iteraci proběhly 4 funkční vyhledávání. Při srovnání dosažených výsledků vykazuje lepší Tabulka 9: Predikce přepravených tun po českých silnicích, metoda X-12-ARIMA
Období 2008/Q1 2008/Q2 2008/Q3 2008/Q4
Hodnota predikce 74466.66 127976.08 131147.22 118534.47
Standardní chyba 13454.712 13791.855 14120.951 14442.550
Konfidenční interval (95 %) nižší vyšší 48095.91 100837.41 100944.54 155007.62 103470.66 158823.77 90227.59 146841.35
5.4
90
Vlastní experimenty
Tabulka 10: Srovnání predikce statistickými modely a umělými neuronovými sítěmi
Období 2008/Q1 2008/Q2 2008/Q3 2008/Q4
Reálné ARIMA X-12-ARIMA hodnoty 81114.28 109927.91 74466.66 123655.91 111027.26 127976.08 121916.50 111756.01 131147.22 105168.08 112239.09 118534.47
MLP síť (5) 78168.42 125554.87 123592.85 120519.76
účinnost automatizovaná metoda X-12-ARIMA. Hodnoty vypočítané statistickou analýzou je nutné porovnat s výsledky dosaženými umělými neuronovými sítěmi. Srovnání je uvedeno v tabulce 10. Nejbližší hodnoty jsou v textu vyznačeny tučně.
6
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
91
Zhodnocení provedených experimentů a metodická doporučení
Následující text se věnuje vyhodnocení vlastních experimentů a stanovení jejich přínosu. V rámci vyhodnocení experimentů jsou diskutovány také hlavní problémy spojené s jednotlivými metodami z mnoha hledisek. Jsou zohledněny problémy s datovými soubory (předzpracování dat, mohutnost datového souboru). Po vyhodnocení experimentů se dále diskutuje použití testovaných metod v rámci rozhodovacího procesu v managementu, kde bylo identifikováno několik fází pro využití neuronových sítí jako alternativní metody pro stanovení variant. Současně jsou vytipovány hlavní oblasti praktického využití dosažených výsledků. Zhodnocení experimentů Provedené experimenty byly zaměřeny na oblasti definované v rámci cíle práce. Vztahovaly se na hledání a testování různých typů, topologií a učících algoritmů pro potřeby predikce a optimalizace reálných dat. V souladu s cílem práce bylo částí práce testování k potřebě predikce reálných ekonomických časových řad. Jedním z hlavních problémů spojených s reálnými ekonomickými časovými řadami, konkrétně s použitými soubory, byla délka sledování. Ta se u použitých indexů pohybuje mezi 30 a 40 pozorováními, vzhledem potřebě k použití několika datových souborů se tak jedná o poměrně krátké řady. V literatuře se standardně pracuje se soubory desetinásobně většími. Vlastní experimenty zahrnovaly také optimalizace topologie sítě vzhledem k řešenému problému a dále optimalizace učícího procesu vzhledem k celkové chybě sítě. Vlastní optimalizace procesu učení sítě reprezentuje minimalizační úlohu pro snižování celkové chyby sítě. Do této optimalizace je třeba zahrnout také fakt, že výstup neuronové sítě tvoří vypočítané hodnoty, které jsou aproximovány na vstupní data. Vlastní predikci aproximovaných hodnot tak lze chápat jako extrapolaci optimalizovaných hodnot. Jednotlivé experimenty jsou řazeny tématicky. Tento fakt do jisté míry vysvětluje použití různých datových souborů pro různé skupiny testů. Vlastní volba jednotlivých skupin experimentů reflektuje všechny fáze návrhu a ladění neuronových sítí pro jejich praktické využití. Jenou z hlavních úloh při návrhu neuronové sítě je volba topologie, následuje volba aktivačních funkcí a učících algoritmů. Po prvotním naučení sítě je třeba (na základě zjištěných výsledků) konfiguraci použité sítě zoptimalizovat pro dosažení lepších výsledků. Použité typy neuronových sítí vycházely ze studia odborných článků a jejich detailní popis byl popsán v rámci kapitoly použitých metod. Pro srovnatelnost dosažených výsledků pak byla použita obecně známá metoda průměrné kvadratické chyby (MSE). Výsledky provedených experimentů bylo nutné hodnotit z několika hledisek. Prvním hlediskem byl přínos výstupu provedeného experimentu. Nejsilnějším argumentem pro použití metod byly konzistentní výsledky různých typů neuronových sítí ověřených v rámci validací. Dalším hodnotícím hlediskem byla možnost naučit sítě na požadovanou přesnost (definovanou celkovou chybou sítě při procesu učení
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
92
sítě) neuronové sítě na výstupu. Každá z použitých metod obsahuje konkrétně definovanou měřitelnou chybu, v případě vlastních experimentů byla použita metoda průměrné kvadratické chyby. Následná přímá komparace byla provedena buď v rámci použitých metod (srovnání různých konfigurací a typů neuronových sítí), nebo přímo s reálnými hodnotami použitých indexů. V poslední fázi bylo také provedeno srovnání z hlediska odchylky (v absolutním vyjádření) vypočítaných hodnot a reálných hodnot mezi klasickými metodami a použitými metodami neuronových sítí. Tato srovnání jsou součástí další sekce vlastní práce, kde byly použity nelineární varianty metod ARMA. Testy v rámci první skupiny experimentů odpovídaly stanovení vhodné topologie neuronové sítě. Na stanovení vhodné topologie byl použit jeden z mála selektivních přístupů prostřednictvím popsané metody cross-validace. Jako datový soubor pro testování byly použity reálná data souboru statistik přepravených komodit po českých silnicích. Na základě výsledků cross-validace byly stanoveny testovací topologie vícevrstvé neuronové sítě. Výsledkem testu bylo použití menšího počtu neuronů ve více skrytých vrstvách při aproximaci reálných dat menšího rozsahu. S dalšími experimenty bylo možné výsledek prvního experimentu potvrdit pro typ vícevrstvé neuronové sítě. Z hlediska naplnění cíle práce tak byla vybrána a otestována selektivní metoda pro stanovování topologie vícevrstvé neuronové sítě. Při bližším pohledu na testy v rámci experimentu je také patrná možnost volby prvotní topologie (přesněji počtu neuronů ve skryté vrstvě) na úrovni 50 % až 70 % počtu pozorování použitého datového souboru. Současně však nelze jednoznačně stanovit ideální topologie vzhledem k povaze použitého datového souboru. Ve druhé skupině experimentů byly porovnány různé aktivační funkce. Experiment byl rozdělen do dvou částí. V první části se pracovalo s datovým souborem simulujícím ekonomickou časovou řadu. Mohutnost souboru byla stanovena 40 pozorováními a obsahovala odlehlé hodnoty lokálních extrémů. Jako typ sítě byla použita vícevrstvá neuronová síť s učícím algoritmem Back propagation. V první části byly otestovány lineární a nelineární aktivační funkce. Přínosem prvních testů byl fakt, že pro použitý datový soubor je vhodnější použití menšího počtu neuronů. Při použití shodného počtu neuronů (při různých přenosových funkcích) se aproximované hodnoty zlepšily o téměř 0,6 (měřeno průměrnou kvadratickou chybou). Při změně konfigurace na 15 neuronů pak již síť vykazovala známky přeučení. Disponovala příliš velkou energií a hodnoty byly větší než požadované. Při pohledu na predikci obě sítě vystihly pokračující trend včetně většího poklesu sledované hodnoty k úrovni lokálního minima. Pro nezávislé ověření první sady testů byla provedena predikce s využitím nelineární aktivační funkce na reálných datech ze statistik přepravených komodit. Topologie sítě byla zvolna stejně jako v prvních testech. Při validaci sítě prokázala lepší schopnost predikce vícevrstvá síť menšího rozsahu. Celkovým výsledkem experimentů pak bylo konstatování volby menšího rozsahu topologie při použití nelineárních aktivačních funkcí. Z hlediska cíle práce se také ukázala citlivost vícevrstvé neuronové sítě na změny její konfigurace. Z obecného pohledu se pak jedná o zajímavý výsledek, kdy výsledná predikce reálných hodnot (v rámci validace)
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
93
dosáhla v obou případech kvalitativně srovnatelných výsledků s reálnou hodnotou. Jako vyústění předchozích experimentů byly testy v rámci třetí skupiny experimentů. Ta se zaměřovala na poslední z klíčových činností spjatých s architekturou neuronové sítě, na učící algoritmy. Při předchozích testech byl použit obecný, ovšem účinný, algoritmus Back propagation. V rámci optimalizace procesu trénování sítě byl použit algoritmus Levenberg-Marquardt. Jeho optimalizace spočívá ve zkrácení doby trvání učícího procesu (přesný popis je součástí kapitoly použitých metod). Jako datový soubor byl použit soubor statistik rodinných účtů, který tvořilo 28 pozorování. Vlastní soubor byl kratší než ostatní a cílem bylo prověřit kvalitu predikce měřenou průměrnou kvadratickou chybou při predikci na 3 následující období. Vlastní porovnání bylo provedeno v absolutních hodnotách proti reálným hodnotám indexu. V rámci procesu testování se ukázala výhoda algoritmu LevenbergMarquardt, který dosáhl požadované hodnoty chybové funkce při 20 epoše trénování sítě s postupným poklesem chyby. Neuronová síť s algoritmem Back propagation dosáhla na stejnou hodnotu chybové funkce po 890 epochách. Při porovnaní výsledků validace byla síť s algoritmem Levenberg-Marquardt přesnější na pozdější kroky predikce. Vlastní adaptaci na použitá reálná data však měl univerzální Back propagation. Oba výsledky reálné aplikace jsou kvalitativně velmi silné. Odchylka u predikovaných dat se pohybuje v řádech desítek jednotek od reálných hodnot. Přínosem je také vlastní implementace trénovacího algoritmu Back propagation, spouštěného přes prostředí Matlab. Jako poslední skupina experimentů bylo provedeno srovnání dvou typů neuronových sítí. Pro objektivní srovnání byla použita dříve realizovaná vícevrstvá neuronová síť a síť typu RBF. Cílem bylo porovnání schopnosti adaptace obou sítí na ekonomické časové řady a také ověření metody cross-validace pro odvození správného počtu RBF jednotek pro síť stejného typu. Pro možnost srovnání byly opět dodrženy stejné hodnoty pro kritéria srovnání. Při trénování se RBF síť ukázala jako efektivnější. Současně byla otestována také schopnost adaptace při změně topologie a parametru požadované celkové chyby sítě. RBF síť tak bylo možné natrénovat na přesnější vypočítané hodnoty za nižší počet epoch než u vícevrstvé sítě. Při testech se také ukázala menší citlivost RBF sítě na změny konfigurace. Celkově tak prokazovala kvalitní výsledky z pohledu měřené citlivosti na výstupu. V rámci testování byly provedeny také testy s vlastní implementací RBF sítě spouštěné přes prostředí Matlab. Při validaci pak RBF síť predikovala požadované hodnoty na úrovni vícevrstvé neuronové sítě. Na základě zjištění v experimentech s neuronovými sítěmi a různými topologiemi byla provedena realizace výpočtu neuronové sítě prostřednictvím vícevláknového výpočtu. Jedná se o optimalizaci na úrovni výpočtu neuronové sítě. Topologie sítě byla odvozena pomocí metody cross-validace (jednalo se o vícevrstvou síť, kde se metoda osvědčila). Pro testování i validaci byl opět použit datový soubor reálných dat menšího rozsahu. Požadovaný krok predikce byl stanoven na 5 období. Předpokladem měla být kratší doba učení (méně než stanovených 1000 epoch) při dosažení požadované celkové chyby sítě na úrovni 0,001. Tento předpok-
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
94
lad se nepotvrdil, protože síť dosáhla požadované chyby při 1320 epoše. Natrénovaná síť však prokázala velmi dobrou schopnost aproximace reálných hodnot a i kvalitní predikci na delší období. Více-vláknový výpočet byl realizován přes vlastní implementaci sítě v rámci Java frameworku Joone. Implementace byla spouštěna přes prostředí Matlab. Celkovým přínosem provedených experimentů jsou realizace úloh predikce nad reálnými daty. Vlastní realizace rovněž zahrnovaly možnosti optimalizací při práci s neuronovými sítěmi. Dalším přínosem bylo také otestování vlastních implementací vybraných modelů neuronových sítí. Realizované sítě celkově prokázaly schopnost adaptace na reálná data prezentovaná malými soubory dat. I přes tento fakt bylo možné zkonstruovat kvalitní predikce, které se mnohdy výrazně nelišily při porovnání s reálnými hodnotami pro příslušná období. V další fázi vlastní práce bylo nutné provést komparaci dosažených výsledků s metodami statistické predikce. Cílem komparace bylo objektivně srovnat a de facto druhotně zvalidovat výsledky predikcí získaných prostřednictvím naučených neuronových sítí. Komparace probíhala na identických datových souborech. Pro statistické zpracování bylo použito prostředí Gretl, které implementuje pokročilé funkce pro statistickou analýzu časových řad. Experimenty byly rozděleny do několika fází. V první fázi bylo použito ruční zpracování pomocí nelineárního modelu ARMA. Prostředí Gretl však nabízí také automatizované zpracování analýzy časové řady prostřednictvím nadstavby X12-ARIMA. Automatická analýza tvořila druhý krok statistické analýzy. V obou případech byla nejdříve provedena konstrukce příslušného modelu. Pro použité datové soubory bylo použit model ARMA v nelineární podobě. S příslušným modelem byla následně stanovena predikce pro tři následující období. Následně byly vyhodnoceny dosažené výsledky prostřednictvím obou metod a bylo provedeno srovnání s výsledky dosaženými umělými neuronovými sítěmi. V rámci provedených srovnání prokázaly neuronové sítě v přímém srovnání přesnější hodnoty. Statistické metody predikce nestanovují pouze jednu hodnotu (jako je tomu u neuronových sítí), ale současně také interval ve kterém se s udávanou přesností hodnota bude nacházet. Při průběžném zpřesňování intervalu se však hodnoty odchylovaly od reálných hodnot daného indexu. Pro použité datové soubory tak neuronové sítě poskytly přesnější hodnoty predikce. Při využití základních modelů časových řad lze konstatovat lepší adaptabilitu neuronových sítí než tomu bylo u statistických metod, které jsou běžně používány. Na základě výsledků a zkušeností získaných v předchozích experimentech byla provedena realizace smíšeného modelu metod statistiky a neuronových sítí. Dosažené výsledky však kvalitativně nedosahovaly srovnatelné úrovně s realizovanými neuronovými sítěmi. V rámci smíšeného modelu bylo provedeno otestování kombinace statistických modelů vedoucích na intervalové předpovědi (viz 4.3, str. 30) a podle nich zpřesňování konfigurace neuronové sítě. Použitá metoda cross-validace a postupného testování byla pro použité datové soubory efektivnější s přesnějšími výsledky.
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
95
Použité nástroje a prostředky V rámci vlastního řešení byla také vytvořena databáze normalizovaných vstupů pro neuronové sítě. Na začátku řešení bylo také zvažováno vytvoření vlastního programového prostředí pro testování vlastních implementací neuronových sítí. V průběhu prací na experimentech se však ukázalo, že by se jednalo o neefektivní řešení z hlediska širšího využívání. To je dáno dalším vývojem prostředí Matlab, které ve svých dalších verzích přineslo velmi kvalitní implementace vybraných algoritmů. Současně však umožňuje spouštění vlastních implementací i s využitím funkcí implementovaných v Matlabu. Při výběru vhodného prostředí byl kladen důraz na implementaci v prostředí operačního systému UNIX z důvodu možného dalšího využití nástroje jako prostředku pro výpočetní server. V rámci použitých prostředků pro experimenty byly, kromě definovaného prostředí Matlab, testovány i další prostředí. Na srovnání s vícevláknovými výpočty byl testován Stuttgart Neural Network Simulator 10 . Výsledný framework Joone ve spolupráci s Matlabem však přinesl kvalitnější výsledky. SNNS navíc již není v současnosti dále vyvíjeno. Dalším prostředím pro provádění experimentů bylo testováno prostředí Weka11 (Witten, Eibe, 2005). Weka je otevřeným systémem a je vyvíjena v jazyce Java. Díky otevřenému kódu umožňuje přímé úpravy jednotlivých implementací neuronových sítí. I zde ve výsledku převážil Matlab svou kvalitou a podporou. Přínosem je možnost dosáhnout kvalitních výsledků realizací i v simulačním prostředí. Požité prostředí Matlab navíc umožnilo i spouštění vlastních implementací dalších algoritmů, takže bylo možné srovnat výkon vlastních algoritmů za nezměněných podmínek. Podstatné výsledky Z provedených experimentů je nutné vyzdvihnout provedené predikce reálných dat. Nejedná se o jednu reálnou aplikaci, ale skupinu kvalitních predikcí realizovaných na reálných datech. Vzhledem k cíli práce byly provedeny realizace predikce i optimalizace s použitím simulačního prostředí, které však umožnilo i testy vlastních implementací. Přínosem je rovněž realizace predikce použitím sítě typu RBF ve vlastní modifikaci učícího algoritmu a také provedené srovnání více-vláknového výpočtu. Velká část realizací byla také publikována v odborných periodikách (Štencl, Šťastný, 2009), (Lendel, Štencl, 2010) a vzbuzovala pozitivní ohlasy při prezentacích na vybraných vědeckých konferencích (Štencl, Popelka, Šťastný, 2009), (Štencl, Šťastný, 2010). Vybrané experimenty byly také srovnány i s dalšími metodami umělé inteligence, např. v případě publikace (Štencl, Popelka, Šťastný, 2009), která přináší srovnání výsledků získaných pomocí sítě RBF a genetických algoritmů. Na základě vybraných publikací pak byla navázána spolupráce s dalšími institucemi, která dále pokračuje. V rámci vlastní práce vznikla aplikace pro standardizaci a normalizaci datových souborů pro jejich další využití v dalších výzkumech. Současně je také nutné 10 11
http://www.nada.kth.se/∼orre/snns-manual/ http://www.cs.waikato.ac.nz/ml/weka/
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
96
přihlédnout ke komparaci se klasickými metodami, kdy se ukázala lepší schopnost adaptace neuronových sítí na základní modely časových řad. Mezi další zajímavé výsledky je nutné zařadit prokázanou schopnost neuronových sítí zachytit prudký pokles predikovaného indexu. Jako přínos je také nutno vidět komplexní zpracování tématu a začlenění umělých neuronových sítí mezi metody tvorby alternativ v rámci podpory manažerského rozhodování. Díky dosaženým kvalitním výsledkům predikcí při použití prostředí Matlab se zvyšuje použitelnost neuronových sítí i mimo oblast informatiky, přesněji pro uživatele ne-informatiky. Význam pro teorii a praxi Z hlediska celkového vývoje umělé inteligence lze v budoucnosti očekávat nárůst reálných aplikací. V současnosti jsou reálné aplikace známé především v oblasti automatizace výroby nebo strojového zpracování. Vzhledem k použití naučených neuronových sítí, kdy pro uživatele fungují jako černá skříňka, je možné si představit jejich využití i v běžném životě v rámci podpůrných aplikací. Ve spojení s dalšími metodami umělé inteligence pak lze budovat hybridní systémy, které jsou schopny autonomního fungování. V rámci tohoto hlediska vyplývá další důležitý aspekt – časová náročnost na řešení jednotlivými metodami. Na jejím základě je také možné vyhodnotit efektivnost jednotlivých přístupů vzhledem k rozsahu vstupního souboru. Při srovnání hlediska časové náročnosti na zpracování mají neuronové sítě výhodu prakticky nulové náročnosti na vstupní podmínky. Na základě principu práce neuronové sítě není nutné data nijak upravovat, kromě jednoho případu. Pro efektivnější fungování neuronových sítí a tím i dosažení lepších výsledků predikce dochází k úpravě vstupních dat na zvolený interval, nejčastěji v rozmezí < −1; 1 >, respektive < 0; 1 >. Tato úprava vstupních dat je dána rozsahem aktivačních funkcí a lepší schopnosti aproxiamce dat na daném intervalu. Součástí všech experimentů jsou vyhodnocení provedených testů a realizací. Cílem jednotlivých dílčích testování bylo stanovení přínosu jednak z hlediska použití nových metod v praxi, ale také faktické podložení komplexního řešení realizovaného v této práci. Na základě vyhodnocených experimentů a získaných zkušeností při jejich realizaci bylo možné formulovat přesnější metodický postup pro řešení podobných problémů v budoucnosti. Ten sestává ze stanovení vhodné topologie sítě, použité aktivační funkce a učícího algoritmu. Pro vícevrstvé neuronové sítě byla popsána a otestována metodika cross-validace v podmínkách použitých reálných datových souborů. Příslušnou metodiku se nepodařilo ověřit i pro další typy neuronových sítí. Významem pro teorii i praxi bylo vytvoření (navržení vhodné topologie k typu sítě pro různá reálná data) a naučení příslušné neuronové sítě, která dosáhla kvalitních výsledků (z hlediska přesnosti výstupu) na různých reálných datových souborech. Následné porovnání s modely statistické predikce prokázalo kvalitu dosažených výsledků. U provedeného srovnání se také ukázala další výhoda neuronových sítí, dříve zmíněná nenáročnost na vstupní podmínky. Zatímco ve statistice je nutné
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
97
nejprve provést důkladnou analýzu datového souboru a následně z něj vytvořit konkrétní model časové řady, který je přímo závislý na následně použité metodě predikce. Aktuální trend v aplikační oblasti ukazuje na kombinace klasických metod s novými přístupy. Vzniká tak prostor pro využití metod umělých neuronových sítí jako alternativní metody pros stanovení predikce reálných hodnot. Jeden z výstupů práce byla také snaha o nalezení vhodné kombinace statistických metod s neuronovými sítěmi na úlohy predikce reálných datový souborů. Právě na těchto modelech je velmi náročné použití statistických metod a konstruují se především bodové předpovědi pro jedno konkrétní období. Vlastní model neprokázal zlepšení dosažených výsledků pro použité datové soubory. Příčinou mohla být povaha a mohutnost použitých souborů reálných dat. Obecným přínosem provedených experimentů neuronových sítí pro podporu manažerského rozhodování je tvorba dalších variant řešení rozhodovacího problému. Dobře natrénovaná neuronová síť je schopna předložit rozhodovatelům v krátké době výsledky. Vzhledem k odpovědnosti manažera za svá rozhodnutí nelze očekávat, že by nestrukturované rozhodovací problémy byly řešeny automatizovaně. Vytvoření dalších variant, které by rozhodovateli nabídly jiný úhel pohledu, je však mnohem cennější než snaha o automatizaci jeho práce. V rámci provedených experimentů byly stanoveny vhodné typy, topologie a učící algoritmy neuronových sítí pro úlohy predikce reálných dat. Současně bylo provedeno testování optimalizace procesu návrhu topologie neuronové sítě, optimalizace učícího procesu a jejich výsledky byly vyhodnoceny. V souladu s cílem práce bylo také provedeno srovnání s vybranými metodami statistických modelů pro predikci časových řad, které bylo následně vyhodnoceno. Možnosti uplatnění a souvislosti Rozhodování manažera je součástí jeho každodenních činností a prostupuje celou organizační strukturou každé společnosti. Pro správné rozhodnutí musí manažer disponovat co největší informovaností. Díky rychlému vývoji informačních technologií je dnes nutné zpracovávat velká množství dat, ale současně také mnohdy pracovat s malými soubory. Predikce různých cenových a dalších indexů jsou již standardně součástí podkladových dat a dílčích zpráv. Často však nastávají situace, kdy manažer nemá dostatek podkladů pro rozhodnutí a jsou tak použity různé alternativní metody pro jejich stanovení. V rámci metodiky práce bylo identifikováno množství oblastí rozhodovacího procesu, kde by bylo možné nasadit naučené neuronové sítě pro zpřesnění informací zejména v oblasti efektivního zpracování ekonomických dat. V rámci prostudované literatury se většina autorů zaměřuje na aplikace v rámci systémů podpory rozhodování (DSS). S přihlédnutím k provedeným realizacím a způsobu práce umělých neuronových sítí je logickým vyústěním volba fuzzy metod případně hybridních systémů. Společným prvkem při začleňování metod umělé inteligence do DSS je snaha o přenesení rozhodování na realizovaný informační systém nasazený v podniku. To však z podstaty manažerských funkcí není možné úplně
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
98
zrealizovat. Manažer nese osobní odpovědnost za provedené rozhodnutí. Z těchto důvodů předchází vlastnímu rozhodnutí skupina činností, kterou lze souhrnně označit za přípravu rozhodnutí. Pohled globální ekonomiky nás zahlcuje přemírou informací. Často je tak nutné zpracovat buď enormně velké množství dat, což je časově velmi náročné, a nebo naopak pracovat se soubory s chybějícími daty. Mezi soubory s chybějícími daty lze zařadit také soubory s malou mohutností. Z faktorů významně ovlivňujících rozsah informací se uvádí např. požadovaná přesnost, dostupnost informací. Požadovanou přesnost lze u neuronových sítí vystihnout požadovanou celkovou chybou sítě při jejím trénování. Podstata fungování neuronových sítí umožňuje automatizované zpracování rozsáhlých souborů dat. Vlastní realizace v práci ovšem poukázaly také na možnost využití umělých neuronových sítí na souboru menšího rozsahu. Díky tomuto zjištění je tak možné také uvažovat o využití neuronových sítí v rámci analytických nástrojů na úrovni operačního managementu. Současně se však nedá vyloučit použití statistických metod. Rozhodovací proces je však třeba diverzifikací různými metodami zpracování dat zpřesňovat. Vhodná je tedy kombinace obou přístupů. Při rozhodování na úrovni operačního managementu je dobré neopomenout běžnou praxi v malém a středím podnikání. S postupným vývojem české ekonomiky se hranice pro malé a střední firmy neustále posunuje. Firma importující potraviny musí přesně odhadovat prodaná množství. Často tyto objednávky realizuje řídící pracovník s pouze základními přehledy pouze v meziročním srovnání byť disponuje mohutnějšími datovými soubory. V lepším případě používá některý z tabulkových editorů, kde se snaží o odhad trendu pomocí základních nástrojů. Tento proces velmi hrubého odhadu by bylo možné nahradit naučenou neuronovou sítí. V realizovaných experimentech byla vidět schopnost naučené neuronové sítě kvalitně aproximovat data a stanovovat predikce na pět období dopředu. Naučená neuronové síť by bylo možné implementovat mezi alternativní analytické nástroje. Při překročení stanovené přesnosti na výstupu ve více případech by bylo nutné síť přeučit. Obecně tak lze doporučit použití neuronových sítí v rámci jednotlivých fází rozhodovacího procesu. Pro nasazení metod neuronových sítí je třeba mít na paměti nutnost přeučování sítě. Celkový proces nového natrénování sítě je však možné kombinovat s různými dalšími technikami. Ve vlastní práci byla pro odvození vhodné topologie použita metoda cross-validace. Se správně připravenými datovými soubory by bylo možné metodu naimplementovat automatizovaně. To je i oblast dalšího pokračování vlastní práce. Jako další uváděnou metodu pro stanovení počtu neuronů lze zmínit genetické algoritmy. Právě při pohledu na provedené experimenty ve vlastní práci je možné identifikovat hlavní problém při použití neuronových sítí z hlediska automatizovaného zpracování. Zcela jistě se jedná o proces trénování sítě, pomineme-li mohutnost použitých datových souborů. Problém s mohutností datových souborů lze označit za obecný problém i při použití metod statistiky. Problém trénování je spojen se dvěma rovinami. První jsou znalosti a zkušenosti nutné pro kvalitní natrénování (včetně volby dalších typů sítí) neuronové sítě s požadovanou přesností výstupu. Druhým problémem je výpočetní náročnost procesu tréno-
6
ZHODNOCENí PROVEDENÝCH EXPERIMENTŮ A METODICKÁ DOPORUČENí
99
vání. Ani jeden z těchto problémů nelze zatím účinně eliminovat. Pracovat však lze s naučenou neuronovou sítí. Z pohledu uživatele jsou natrénované neuronové sítě černou skříňkou, která mu vrací požadované údaje. Mnohdy tak ani neví, že pracuje s neuronovou sítí. Souhrnně je možné vyhodnotit nasazení neuronových sítí i v rámci malých a středních firem jako reálné. Nelze očekávat jejich primární použití jako hlavních nástrojů v rámci rozhodovacího procesu, ale je nutné předpokládat nárůst jejich využívání i ve spojení s dalším rozvojem oblasti neuronových sítí. Tento rozvoj směřuje na použití nových typů sítí s průběžným učením.
7
7
ZÁVĚR
100
Závěr
Práce představuje komplexně zpracované téma použití umělých neuronových sítí pro úlohy predikce a optimalizace reálných dat. Konkrétně se jedná o zpracování tématu využití umělých neuronových sítí jako podpory rozhodování, respektive využití umělých neuronových sítí v rámci tvorby variant v rozhodovacím procesu. Práce sestávala v hledání a ověření vhodných typů, topologií a učících algoritmů umělých neuronových sítí pro účely predikce reálných dat. Výsledky provedených experimentů ukázaly dobré schopnosti použitých neuronových sítí pro predikci reálných dat. V rámci provedených experimentů byly ověřeny různé topologie vícevrstvých neuronových sítí, dále srovnání vybraných typů neuronových sítí a otestovány různé typy učící algoritmů. Dosažené výsledky byly následně srovnány s vybranými modely statistické predikce časových řad. V rámci provedených experimentů byly také otestovány vlastní implementace vybraných algoritmů včetně více-vláknové optimalizace výpočtu neuronové sítě. Experimentům předcházelo zpracování dostupné literatury, které pomohlo vymezit použité metody a současné trendy v oblasti predikce reálných dat. V přehledu současného stavu bylo zpracováno na šedesát publikací dostupných v databázi vědeckých publikací ScienceDirect. Vlastnímu přehledu předcházelo zpracování téměř sto dvaceti impaktovaných publikací zaměřených na predikce reálných dat z oblasti managementu, marketingu, obchodu a financí. V rámci specifikace cílové oblasti pro aplikace byl přesně vymezen pojem manažerské rozhodování, kde byla nastíněna aplikační oblast pro využití metod umělých neuronových sítí. Součástí kapitoly je také přehled statistických metod a modelů pro predikci časových řad. Následovalo vymezení pojmu umělá inteligence a zařazení metod umělých neuronových sítí. Na základě literárního přehledu jsou komplexně popsány vybrané typy umělých neuronových sítí, včetně způsobu jejich práce a učících algoritmů. V závěru kapitoly jsou specifikovány typy neuronových sítí používaných pro predikci časových řad. Součástí výsledků je také vlastní databáze datových souborů včetně aplikace pro přípravu datových souborů používaných jako vstupy pro neuronové sítě. Implementace systému byla podpořena z projektů Interní grantové agentury PEF MENDELU v Brně. Vlastním experimentům předchází popis použitých datových souborů obsahující reálná data. První datový soubor tvoří statistiky rodinných účtů zpracovaných metodikou Eurostatu. Druhý soubor reálných dat je tvořen statistikami přepravených komodit nákladní dopravy. Třetí část páté kapitoly tvoří popis metod vyhodnocování vlastních experimentů. Za hlavní srovnávací kritérium byla zvolena průměrná kvadratická chyba (MSE). Poslední část páté kapitoly je složená ze tří hlavních částí a popisuje konkrétní realizace vlastních experimentů. Jako kritéria hodnocení experimentů (kromě zmíněné MSE) s umělými neuronovými sítěmi byla stanovena celková chyba sítě a maximální počet epoch. První experimenty jsou soustředěny na testy s různými topologiemi neuronových sítí při predikci. Druhá skupina experimentů byla zaměřena
7
ZÁVĚR
101
na volbu aktivačních funkcí a testování citlivosti vícevrstvých neuronových sítí na změny konfigurací sítí. Třetí skupina experimentů prezentuje optimalizaci procesu učení sítě volbou různých učících algoritmů. Sítě naučené různými algoritmy jsou následně validovány na reálných ekonomických datech. Poslední skupina experimentů byla zaměřena na testování různých typů neuronových sítí při úlohách predikce. Vybrané výsledky z těchto experimentů byly publikovány v odborných časopisech a na vědeckých konferencích. Hlavním přínosem této části textu jsou vlastní realizace umělých neuronových sítí včetně vlastních implementací vybraného učícího algoritmu a typu sítě spouštěných prostřednictvím Matlabu. Jedná se o konkrétní realizace nad popsanými datovými soubory reálných dat. Na základě výsledků dosažených v rámci experimentů byla provedena vlastní implementace a realizace vícevrstvé neuronové sítě pro úlohy predikce reálných dat optimalizovaná více-vláknovým zpracováním. Výsledky dosažené více-vláknový výpočtem bylo vhodné rovněž srovnat s výsledky vybrané metody statistického modelu predikce. V rámci poslední skupiny experimentů jsou popsány realizované statistické analýzy datových souborů, z nich vytvořených modelů časových řad a výsledky konstruovaných predikcí. Dále je provedeno srovnání predikovaných hodnot pomocí statistických modelů s hodnotami predikce umělých neuronových sítí. Poslední skupina experimentů navazuje na předchozí. Pro statistickou analýzu bylo použito prostředí Gretl, které implementuje pokročilé metody statistického zpracování časových řad. Hlavním přínosem této sekce bylo přímé srovnání výsledků predikce reálných dat pomocí umělých neuronových sítí a modely statistické predikce. V přímém srovnání predikovaných hodnot měly neuronové sítě přesnější hodnoty než statistické modely predikce. Součástí vyhodnocení provedených experimentů je také uvedení podstatných výsledků, význam pro teorii a praxi. Poslední část přináší možnosti uplatnění a souvislostí v rámci podpory manažerského rozhodování.
8
POUŽITÉ ZDROJE
8
102
Použité zdroje
Artl, J. Artlová, M. Ekonomické časové řady. 1. vydání. Praha: Grada, 2007, ISBN 80-247-1319-9. Astriou, D. Hall, S. Applied Econometrics. A modern approach. New York: Palgrave MAcmillan, 2007, 397 pp., ISBN 978-0-230-50640-4. Balakrishnan, N. Chakravarty, A. Ghose, S. Role of design-philosophies in interfacing manufacturing with marketing. [online]. Soubor formátu PDF. European Journal of Operational Research (1997) 103-453. [cit. 2008-03-12]. Dostupné na: . Balestrassi, P. P. Popova, E. Paiva, A. P. Marangon Lima, J.W. Design of experiments on neural network’s training for nonlinear time series forecasting. Neurocomputing 72 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi12 :10.1016/j.neucom.2008.02.002. Berlin, S. Raz, T. Glezer, Ch. Zviran, M. Comparison of estimation methods of cost and duration in IT projects. Information and Software Technology 51 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.infsof.2008.09.007. Bigdeli, N. Afshar, K. Amjady, N. Market data analysis and short-term price forecasting in the Iran electricity market with pay-as-bid payment mechanism. Electric Power Systems Research 79 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.epsr.2008.12.001. Bigus, J. Data Mining with neural networks. 2. vydání. New York: McGraw-Hill, 1996. ISBN 7-005-7796. Bose, I. Chen, X. Quantitative models for direct marketing: A review from systems perspective. European Journal of Operational Research (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.ejor.2008.04.006. Brown, R. G. Smoothing, Forecasting and Prediction of Discrete Time Series. Phoenix: Dover Publications. 2004. ISBN 978-0486495927. Budayan, C. Birgonul, M.T. Comparing the performance of traditional cluster analysis, self-organizing maps and fuzzy C-means method for strategic grouping. Expert Systems with Applications (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2009.04.022. Český statistický úřad Statistika rodinných účtů (vydání a spotřeba domácností). [online]. Soubor formátu HTML. [cit. 2009-22-04]. Dostupné na: . Český statistický úřad Statistika Doprava, informační a komunikační činnosti (naturální ukazatele). [online]. Soubor formátu HTML. [cit. 2010-22-03]. Dostupné na: . 12
DOI je jednoznačný identifikátor ScienceDirect, k dohledání se zadává jako poslední parametr do url . Např. http://dx.doi.org/10.1016/j.ejor.2008.04.006
8
POUŽITÉ ZDROJE
103
Deboeck, G. Kohonen, T. Visual Exploration in Finance. 2. vydání. London: Springer-Verlag, 2000. ISBN 3-540-76266-3. Dibb, S. Simkin, L. Targeting segments and positioning. [online]. Soubor formátu PDF. International Journal of Retail and Distribution (1991). [cit. 2008-03-12]. Dostupné na: . Dostál, P. Rais, K. Sojka, Z. Pokročilé metody manažerského rozhodování. 1. vydání. Praha: Grada Publishing, a. s., 2005. ISBN 80-247-1338-1. Dougherty, Ch. Introduction to Econometrics. 3. vydání. Oxford: Oxford University Press, 2007. ISBN 978-0-19-928096-4. Efendigil, T. Onut, S. Kahraman, C. A decision support system for demand forecasting with artificial neural networks and neuro-fuzzy models: A comparative analysis. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.eswa.2008.08.058. Eurostat. Statistics Database. [online]. Soubor formátu HTML. [cit. 2009-05-10]. Dostupné na: . Fotr, J. a kol. Manažerské rozhodování. 3. vydání. Praha: Ekopress, s r. o., 2006. ISBN 80-86929-15-9. Ghazali, R. Hussain, A. J. Nawi, N. M. Mohamad, B. Non-stationary and stationary prediction of financial time series using dynamic ridge polynomial neural network. Neurocomputing 72 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.neucom.2008.12.005. Grudnitski, G. Osburn, L. Forecasting S&P and gold futures prices: an application of neural networks.. [online]. Soubor formátu PDF. The Journal of Futures Markets (1993). [cit. 2008-03-12]. Dostupné na: . Hagan, M.T. Menhaj, M. Training feed-forward networks with the Marquardt algorithm. IEEE Transactions on Neural Networks, Vol. 5, No. 6, 1999, pp. 989-993, 1994.. Hamzacebi, C. Improving artificial neural networks’ performance in seasonal time series forecasting. Expert Systems with Applications (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.ins.2008.07.024. Harston, C. T. Business with neural networks. Handbook of neural computer applications. San Diego, CA: Academic Press, 1990. ISBN 0-12-471260-6. Hastie, T. Tibshirani, R. Friedman, J. The elements of statistical learning; data mining, inference, and prediction. 1. vydání. New York: Springer Science + Business Media, 2001. ISBN 0-387-95284-5. Hebb, D. O. Distinctive features of learning in the higher animal. J. F. Delafresnaye (Ed.): Brain Mechanisms and Learning. London: Oxford University Press. 1961. ISBN 0169-4243. Hindls, R. Hronová, S. Novák, I. Analýza dat v manažerské rozhodování. 1. vydání. Praha: Grada Publishing, s r. o., 1999. ISBN 80-7169-255-7.
8
POUŽITÉ ZDROJE
104
Hindls, R. Holman, R. Hronová, S. Ekonomický slovník. 1. vydání. Praha: C. H. Beck, 2003. ISBN 80-7179-819-3. Hořejš, J. A view on Neural Networks Paradigm Developement. In: Neural Network World, 1993. IDG & ČSAV. ISSN 0169-4243. Hsiao-Tien Pao A comparison of neural network and multiple regression analysis in modeling capital structure. Expert Systems with Applications 35 (2008). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2007.07.018. Hyndman, R.J. High-Density Forecast Regions for Nonlinear and Nonnormal Time Series. Journal of Forecasting 14 (1995), s. 431-441. Karthik Chandra, D. Ravi, V. Bose, I. Failure prediction of dotcom companies using hybrid intelligent techniques. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.eswa.2008.05.047. Chang, B. R. Tsai, H. F. Forecast approach using neural network adaptation to support vector regression grey model and generalized auto-regressive conditional heteroscedasticity. Expert Systems with Applications 34 (2008). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.eswa.2006.10.034. Chi-Jie Lu Tian-Shyug Lee Chih-Chou Chiu Financial time series forecasting using independent component analysis and support vector regression. Decision Support Systems (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.dss.2009.02.001. Chinho, L. Chienwen, H. Development of a marketing information system for supporting sales in a Tea-beverage market. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.eswa.2008.06.056. Chui-Yu Chiu Yi-Feng Chen a kol. An intelligent market segmentation system using k-means and particle swarm optimization. Expert Systems with Applications (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2008.05.029. I-Cheng Yeh Che-hui Lien The comparisons of data mining techniques for the predictive accuracy of probability of default of credit card clients. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2007.12.020. Izenman, A. J. The elements of statistical learning; data mining, inference, and prediction. 1. vydání. New York: Springer Science + Business Media, 2008. doi: 10.1007/978-0-387-78189-1. Khashei, M. Hejazi, S. R. Bijari, M. A new hybrid artificial neural networks and fuzzy regression model for time series forecasting. Fuzzy Sets and Systems 159 (2008). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.fss.2007.10.011.
8
POUŽITÉ ZDROJE
105
Kecman, V. Learning and soft computing: support vector machines, neural networks and fuzzy logic models. 1. vydání. Boston: Massachusetts Institute of Technology, 2001. ISBN 0-262-11255-8. Kim, H. S. Sohn, S. Y. Support Vector Machines for Default Prediction of SMEs based on Technology Credit. European Journal of Operational Research (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.ejor.2009.03.036. Kubát, M. Umělá inteligence. Strojové učení 1. vydání. Sv. 1. Kap. 7. Str. 168-183. Praha: Academia, 2003. ISBN 80-200-0496-3. Kuan-Yu Chen Cheng-Hua Wang A hybrid SARIMA and support vector machines in forecasting the production values of the machinery industry in Taiwan. Expert Systems with Applications 32 (2007). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2005.11.027. Lendel, V. Štencl, M. Possibility of applying artificial intelligence in terms of intelligent transport systems. Journal of Information, Control and Management Systems. 2010. Vol. 8, No. 1, pp.37-45. ISSN 1336-1716. Leung, M. T. Chen, A. S. Daouk, H. Forecasting exchange rates using general regression neural networks. [online]. Soubor formátu PDF. Computers & Operations Research 27 (2000) 1093-1110. [cit. 2008-03-12]. Dostupné na: . Mařík, V. Štěpánková, O. Lažanský, J. a kol. Umělá inteligence. 1. vydání. Sv. 1. Praha: Academia, 2003. ISBN 80-200-0496-3. Mařík, V. Štěpánková, O. Lažanský, J. a kol. Umělá inteligence. 1. vydání. Sv. 4. Praha: Academia, 2003. ISBN 80-200-1044-0. MathWorks, Inc. Neural Network Toolbox Documentation. [online] Soubor formátu HTML. [cit. 2009-04-22]. Dostupné na: . Meloun, M. Militký, J. Statistická analýza experimentálních dat.. 2. vyd. Praha: Academia. 2004. 953 s. ISBN 80-200-1254-0. Ngai, E.W.T. Xiu, L. Chau, D.C.K. Application of data mining techniques in customer relationship management: A literature review and classification. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.eswa.2008.02.021. Mitchell, T. M. Machine Learning. 1. vydání. McGraw-Hill. 1997. ISBN 0-07-042807-7. Min-Yuan Cheng Hsing-Chih Tsai Chih-Lung Liu Artificial intelligence approaches to achieve strategic control over project cash flows. Automation in Construction 18 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.autcon.2008.10.005. Mostafa, M. M. Consumer credit scoring models with limited data. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2008.06.016.
8
POUŽITÉ ZDROJE
106
Moutinho, L. Curry, B. Davies, F. Rita, P. Neural networks in marketing. [online]. Soubor formátu PDF. In: Computer modelling and expert systems in marketing. New York: Routledge, 1994. [cit. 2008-03-12]. Dostupné na: . Moody, J. Darken, C. Learning with localized receptive fields. In D. Touretzky, G. Hinton and T. Sejnowski, editors, Proceedings of the Connectionist Models Summer School. San Mateo: Morgan Kaufmann, 1989. Nwogugu, M. Decision-making, risk and corporate governance: New dynamic models/algorithms and optimization for bankruptcy decisions. Applied Mathematics and Computation 179 (2006). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.amc.2005.11.140. Oguta, H. Aktasa, R. Alpa, A. Doganay, M. Prediction of financial information manipulation by using support vector machine and probabilistic neural network. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2008.06.055. Phillips-Wren, G. Mora, M. Forgionne, G. A. Gupta, J. An integrative evaluation framework for intelligent decision support systems. European Journal of Operational Research 195 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.ejor.2007.11.001. Pokorný, M. Aplikace neuronových sítí a metody ROC v klasifikačních úlohách ekonomické predikce. Disertační práce. Brno, 2009.. Porter, M. M. Konkurenční strategie. (Porter I.) Praha: Victoria publishing, a. s, 1994. ISBN 80-85605-11-2. Porter, M. M. Konkurenční výhoda. (Porter II.) Praha: Victoria publishing, a. s, 1994. ISBN 80-85605-12-0. Pošvář, Z. Žufan, P. Tomšík, P. Management II. Mendlova zemědělská a lesnická univerzita. Provozně ekonomická fakulta, 2004. ISBN 80-7157-748-0. Rak, M. Srovnání přínosnosti druhu dat při operativním rozhodování v investiční oblasti. In Firma a konkurenční prostředí 2005. Odborná sdělení. Svazek 1. 1. vyd. Brno: Konvoj, 2005, s. 187–196. ISBN 80-7302-103-X. Rak, M. Využití marginální analýzy v rozhodovacích situacích. In Sborník prací ze 7. mezinárodní vědecké konference doktorandů EDAMBA Nové Zámky. 1. vyd. Bratislava: EKONÓM, 2004, s. 212–216. ISBN 80-225-1882-4. Rektorys, K. a kol. Přehled užité matematiky II. 7. vydání. Praha: Prometheus, spol. s. r. o., 1995. ISBN 80-7196-179-5. Rosenblad, A. Gret1 1.7.3. Journal of Statistical Software, Software Reviews. Vol. 25. N. 1. pp. 1–14 (2009). [online] Soubor formátu HTML. [cit. 2009-12-22]. Dostupné na: . Sheng-Hsun Hsu JJ Po-An Hsieh a kol. A two-stage architecture for stock price forecasting by integrating self-organizing map and support vector regression. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.eswa.2008.10.065.
8
POUŽITÉ ZDROJE
107
Shu-Ting Luo Bor-Wen Cheng Chun-Hung Hsieh Prediction model building with clustering-launched classification and support vector machines in credit scoring. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2008.09.028. Simpson, P. K. Artificial Neural Systems: Foundations, Paradigms, Applications, and Implementations. 1. vydání. Texas: Mcgraw-Hill, 1990. ISBN 80-378-94-3. Skrzypek, J. Neural Network Simulation Enviroenments. 1. vydání. Norwell: The Kluwer international series in engineering and computer science, 1994. ISBN 0-7923-9415-1. Smith, K. Gupta, J. Neural networks in business: techniques and applications for the operations researcher. [online]. Soubor formátu PDF. Computers & Operations Research 27 (2000) 1023-1044. [cit. 2008-03-12]. Dostupné na: . Sorjamaa, A. Hao, J. Reyhani, N. a kol. Methodology for long-term prediction of time series. Neurocomputing 70 (2007). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.neucom.2006.06.015. Sotirov, S. A Method of Accelerating Neural Network Learning. Neural Processing Letters, Vol. 22, pp. 163–169. St. John, C. Balakrishnan, N. Fiet, J. Modeling the relationship between corporate strategy and wealth creation using neural networks. [online]. Soubor formátu PDF. Computers & Operations Research 27 (2000) 1077-1092. [cit. 2008-03-12]. Dostupné na: . Swanson, N. Elliott, G. Ghysels, E. Gonzalo, J. Predictive methodology and application in economics and finance: Volume in honor of the accomplishments of Clive W.J. Granger. Journal of Econometrics 135 (2006). [online] Soubor formátu PDF. [cit. 2009-03-22]. doi: 10.1016/j.jeconom.2005.07.011. Šíma, J. Neruda, R. Teoretické otázky neuronových sítí. 1. vydání. Praha: MATFYZPRESS, MFF UK, 1996. ISBN 80-85863-18-9. Šnorek, M. Jiřina, M. Neronové sítě a neuropočítače. 1. vydání. Praha: Vydavatelství ČVUT, 1996. ISBN 80-01-01455-X. Štencl, M. Popelka, O. Šťastný, J. Time Series forecasting using machine learning methods. In: Information Society. Ljubljana. 2009. Sv. A, č. 1, s. 66–69. ISSN 1581-9973. Štencl, M. Šťastný, J. Neural network learning algorithms comparison on numerical prediction of real data. In: MENDEL 2010, 16th International Conference on Soft Computing. Brno University of Technology. 2010. S. 280–285. ISSN 1803-3814. Štencl, M. Šťastný, J. Numerical Prediction Using Radial Basis Function Neural Network. In: Acta Universitatis agriculturae et silviculturae Mendelianae Brunensis. Brno: 2009. Sv. 6, č. 2, ISSN 1211-8516. Šťastný, J. Minařík, M. Object Recognition by Means of New Algorithms. In ICSC – International Conference on Soft Computing Applied in Computer
8
POUŽITÉ ZDROJE
108
and Economic Enviroment. Kunovice: Evropský polytechnický institut, Kunovice. 2006. S. 99-104. ISBN 80-7314-084-5. Šťastný, J. Škorpil, V. Analysis of Algorithms for Radial Basis Function Neural Network Personal Wireles Communications, IFIP. 2007. Vol.245, pp.54-62. Springer, NY, USA. ISBN 13-978-0-387-74159-1. Šťastný, J. Škorpil, V. Back-Propagation and K-Means Algorithms Comparison. In: International Conference on Signal Processing. 2006. ICSP 06, Guilin, China, 5 pp. Šťastný, J. Škorpil, V. Genetic Algorithm and Neural Network. WSEAS Applied Informatics & Communications. 2007. Pp.347-351, ISBN 978-960-8457-96-6, ISSN 1790-5117. Šťastný, J. Štencl, M. Nové metody predikce numerických dat. In: Aktuálne manažérske a marketingové trendy v teórii a praxi. 1. vyd. Žilina: EDIS, 2008. s. 28–33. ISBN 978-80-8070-966-2. Šušteršiča, M. Mramorb, D. Zupanc, J. Consumer credit scoring models with limited data. Expert Systems with Applications 36 (2009). [online] Soubor formátu PDF. [cit. 2009-04-22]. doi: 10.1016/j.eswa.2008.06.016. Taylor, B. Methods and procedures for the verification and validation of artificial neural netwokrs. 1. vydání. New York: Springer Science + Business Media. 2005. ISBN 0-387-28288-2. Toufarová, Z. Problémy v metodice ukazatele spotřební výdaje. In MendelNet PEF 2008. Praha: Alfa Publishing. 2008. S. 1-7. ISBN 978-80-87222-03-4. Venugopal V Baets W. Neural networks and their applications in marketing management. [online]. Soubor formátu PDF. Journal of Systems Management 16 (1994). [cit. 2008-03-12]. Dostupné na: . Vodáček, L. Vodáčková, O. Moderní management v teorii a praxi. Praha: Management Press. 2006. ISBN 80-72611-43-7. Witten, I. H. Eibe, F. Data Mining: Practical machine learning tools and techniques. 2nd Edition, Morgan Kaufmann, San Francisco, 2005.. Xiao, Z. Gong, K. Zou, Y. A combined forecasting approach based on fuzzy soft sets. Journal of Computational and Applied Mathematics 228. 2009. [online] Soubor formátu PDF. [cit. 2009-04-22]. doi:10.1016/j.cam.2008.09.033. Žufan, P. Deskriptivní nástroje používané v procesu formulace strategií. Agricultural Economics. 2000. Sv. 46, č. 3, s. 139–144. ISSN 0139-570X.