plik


��StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl WYKORZYSTANIE SZTUCZENJ INTELIGENCJI W PROGNOZOWANIU dr PaweB Lula, Akademia Ekonomiczna w Krakowie Charakterystyka sieci neuronowych Sztuczny neuron W prezentowanym opracowaniu przez sztuczn sie neuronow rozumiana bdzie technika obliczeniowa wzorowana na strukturze i sposobie dziaBania ukBad�w nerwowych organizm�w |ywych. Sztuczna sie neuronowa jest zespoBem poBczonych ze sob element�w przetwarzajcych (neuron�w). Sztuczny neuron (rys. 1) jest to model swojego rzeczywistego odpowiednika. Jego zasadniczym celem jest przetworzenie informacji wej[ciowej (dostarczanej w postaci warto[ci x1, x2, ..., xn) w warto[ wyj[ciow y. Przyjmuje si, |e zar�wno warto[ci wprowadzane na wej[cia neuronu, jak i uzyskiwana na jego wyj[ciu warto[ wyj[ciowa, maj posta liczb rzeczywistych. Z ka|dym wej[ciem neuronu zwizany jest wsp�Bczynnik zwany wag. Wsp�Bczynniki wagowe neuronu s podstawowymi parametrami wpBywajcymi na spos�b funkcjonowania sztucznej kom�rki nerwowej. Przetwarzanie informacji przez sztuczny neuron skBada si z dw�ch etap�w. Pierwszym z nich jest agregacja danych wej[ciowych, za[ drugim wyznaczenie warto[ci wyj[ciowej neuronu. Rys. 1. Schemat sztucznego neuronu. Agregacja danych wej[ciowych ma na celu przetworzenie wektora wej[ciowego x = (x1, x2, ..., xn) w pojedyncz warto[ (zagregowan warto[ wej[ciow). Na rezultat tej transformacji w zasadniczy spos�b wpBywaj warto[ci wag. Spo[r�d wielu sposob�w agregacji najwiksz popularno[ci cieszy si wyznaczanie warto[ci zagregowanej poprzez 3 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl zsumowanie iloczyn�w warto[ci wej[ciowych i odpowiadajcych im wag. W niekt�rych zastosowaniach stosowana jest inna formuBa agregacji, prowadzca do obliczenia kwadratu odlegBo[ci Euklidesa pomidzy wektorem wej[ciowym x i wektorem wag w. Neurony wyposa|one w pierwszy rodzaj funkcji agregujcej nazywane s neuronami liniowymi, za[ te, kt�re dokonuj agregacji zgodnie z drug z przedstawionych formuB, nazywane s neuronami radialnymi. Drugim etapem w funkcjonowaniu neuronu jest wyznaczenie jego warto[ci wyj[ciowej. Elementem odpowiedzialnym za wykonanie tej czynno[ci jestfunkcja aktywacji. Jest to funkcja przeksztaBcajca wyznaczon wcze[niej zagregowan warto[ wej[ciow w warto[ wyj[ciow neuronu. Rys. 2. Wykresy przykBadowych funkcji aktywacji neuronu. Najprostszym rodzajem funkcji aktywacji jest funkcja liniowa. Jej zastosowanie powoduje, |e na wyj[ciu neuronu pojawia si zagregowana warto[ wej[ciowa przemno|ona przez pewien staBy wsp�Bczynnik. Bardzo du| popularno[ci ciesz si dwie funkcje aktywacji okre[lane jako funkcje s-ksztaBtne (z uwagi na posta ich wykres�w). Pierwsz z nich jest funkcja sigmoidalna o warto[ciach z przedziaBu od 0 do 1. Drug funkcj jest funkcja tangensoidalna, kt�rej wykres (r�wnie| przypominajcy spBaszczon liter "s") rozciga si w zakresie od minus do plus jedno[ci. W niekt�rych zastosowaniach stosowane s gaussowskie funkcje aktywacji, kt�re generuj maksymaln warto[ wyj[ciow dla zerowej warto[ci argumentu; za[ wraz ze zwikszaniem zagregowanej warto[ci wej[ciowej warto[ wyj[ciowa tak funkcjonujcego neuronu maleje Gaussowskie funkcje aktywacji 4 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl stosowane s najcz[ciej Bcznie z radialnymi funkcjami agregujcymi, za[ funkcji liniowej lub s-ksztaBtnej towarzyszy zwykle liniowa formuBa agregacji. Struktura i spos�b dziaBania sztucznej sieci neuronowej Sztuczna sie neuronowa jest zespoBem poBczonych ze sob neuron�w (rys. 3). Rys. 3. PrzykBadowa sztuczna sie neuronowa. Zwykle neurony wchodzce w skBad sieci tworz warstwy, z kt�rych pierwsza nosi nazw warstwy wej[ciowej, ostatnia warstwy wyj[ciowej, za[ wszystkie warstwy znajdujce si pomidzy nimi okre[lane s jako warstwy ukryte. Warto[ci wej[ciowe sieci wprowadzane s na wej[cia neuron�w warstwy wej[ciowej. Nastpnie, poprzez istniejce poBczenia, warto[ci wyj[ciowe neuron�w jednej warstwy przekazywane s na wej[cia element�w przetwarzajcych kolejnej warstwy. Warto[ci uzyskane na wyj[ciach neuron�w ostatniej warstwy s jednocze[nie warto[ciami wyj[ciowymi sieci. PrawidBowo skonstruowana sie neuronowa mo|e sBu|y do rozwizywania wielu typ�w zagadnieD. Do najpopularniejszych zastosowaD sieci nale|y zaliczy budowane przy ich wykorzystaniu modele rozwizujce problemy regresyjne, klasyfikacyjne oraz prognostyczne. W problemach regresyjnych u|ytkownik modelu neuronowego oczekuje, |e posiadana przez niego sie bdzie w stanie opisywa zale|no[ci pomidzy zmiennymi, przy czym zakBada si, |e zmienna obja[niana (zmienne obja[niane) maj charakter cigBy. W problemach klasyfikacyjnych sie neuronowa stanowi narzdzie umo|liwiajce zaklasyfikowanie badanych obiekt�w do wBa[ciwych klas. Je|eli wzorce klas s znane przed rozpoczciem badaD, to rozwizywany problem okre[lany jest mianem klasyfikacji wzorcowej, w przeciwnym przypadku rozwizywane zagadnienie jest przykBadem problemu klasyfikacji bezwzorcowej. W problemach klasyfikacyjnych informacja wyj[ciowa sieci zwykle ma posta zmiennej nominalnej, kt�rej poszczeg�lne warto[ci reprezentuj klasy, do kt�rych przypisywane s obiekty. W problemach prognostycznych celem stosowania modeli neuronowych jest wyznaczenie przyszBej warto[ci szeregu czasowego. Sie rozwizujca zagadnienia tego typu korzysta z bie|cych oraz przeszBych warto[ci tego samego szeregu jak r�wnie| z bie|cych i przeszBych warto[ci innych zmiennych. 5 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Spos�b funkcjonowania sieci neuronowej, gwarantujcy prawidBowe rozwizywanie postawionych przed ni problem�w, uzale|niony jest od dw�ch podstawowych czynnik�w: �� warto[ci wsp�Bczynnik�w wagowych neuron�w skBadajcych si na sie, �� struktury sieci (topologii), kt�ra okre[lana jest przez liczb warstw, liczb neuron�w w poszczeg�lnych warstwach, spos�b poBczeD (czy Bczony jest ka|dy neuron jednej warstwy z ka|dym neuronem warstwy nastpnej, czy te| Bczone s tylko wybrane neurony, czy dozwolone s poBczenia pomidzy neuronami nie znajdujcymi si w ssiadujcych ze sob warstwach), przyjty model neuronu (spos�b agregacji danych wej[ciowych, rodzaj zastosowanej funkcji aktywacji). Proces majcy na celu okre[lenie prawidBowych warto[ci parametr�w sieci (wag, struktury sieci) nazywany jest uczeniem sieci neuronowej. Uczenie sieci jest niezbdnym elementem procesu konstrukcji modelu neuronowego. Proces uczenia realizowany jest przy wykorzystaniu dostpnych zestaw�w danych, kt�re ilustruj przebieg badanych zjawisk dla wybranych obiekt�w i/lub przeszBych okres�w czasu. W trakcie uczenia na wej[cia sieci wprowadzane s zgromadzone warto[ci i obserwowane jest towarzyszce tej operacji zachowanie sieci. Je|eli zachowanie sieci nie mo|e zosta uznane za w peBni poprawne, to przeprowadzana jest modyfikacja parametr�w sieci majca na celu popraw jej funkcjonowania. Spos�b przeprowadzenia modyfikacji okre[lany jest przez zastosowany algorytm uczenia sieci. Istniej dwa podstawowe sposoby przeprowadzania uczenia sieci. S nimi uczenie z nauczycielem oraz uczenie bez nauczyciela. W przypadku uczenia z nauczycielem zbi�r uczcy zawiera zar�wno warto[ci zmiennych wej[ciowych jak i odpowiadajce im warto[ci zmiennej (lub zmiennych) wyj[ciowych. Idea uczenia z nauczycielem przedstawiona zostaBa na rys. 4. Po wprowadzeniu poprzez neurony wej[ciowe warto[ci zmiennych wej[ciowych wyznaczana jest odpowiedz sieci. Uzyskana w ten spos�b warto[ por�wnywana jest z rzeczywist warto[ci przechowywan w zbiorze uczcym. Je[li por�wnywane warto[ci nie s r�wne, to parametry sieci (wagi) modyfikowane s w taki spos�b, aby odpowiedz sieci upodobniBa si do warto[ci rzeczywistej. Rys. 4. Uczenie z nauczycielem. 6 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Tryb uczenia z nauczycielem stosowany jest przede wszystkim do konstrukcji sieci rozwizujcych problemy regresyjne, klasyfikacji wzorcowej oraz prognostyczne. Proces uczenia wymaga zwykle wielokrotnej prezentacji wzorc�w uczcych i odpowiadajcej im modyfikacji wag. Jednokrotna prezentacja wszystkich wzorc�w uczcych nazywana jest epok uczenia. Osoba tworzca sie ocenia przebieg uczenia obserwujc zmiany w warto[ci bBdu uczenia (rys. 5), kt�ry okre[la stopieD niedopasowania warto[ci rzeczywistych i teoretycznych w spos�b zagregowany dla caBego zbioru uczcego. Rys. 5. Wykres bBdu uczenia. Warto[ci znajdujce si na osi OX okre[laj kolejne epoki uczenia. Rysowana na wykresie krzywa prezentuje zmiany w warto[ci bBdu. W trakcie poprawnej realizacji uczenia poziom bBdu powinien si zmniejsza. Stosujc uczenie bez nauczyciela (rys. 6) wykorzystuje si zbi�r uczcy obejmujcy wyBcznie warto[ci zmiennych wej[ciowych. W tym przypadku zbi�r uczcy nie zawiera |adnych informacji na temat warto[ci po|danych na wyj[ciach sieci. Celem uczenia jest osignicie przez sie stanu r�wnowagi. Rys. 6. Uczenie bez nauczyciela. Uczenie bez nauczyciela wykorzystywane jest gB�wnie przy tworzeniu modeli rozwizujcych zagadnienia klasyfikacji bezwzorcowej. W trakcie uczenia sie musi rozpozna struktur zbioru danych i przypisa poszczeg�lne przypadki do wBa[ciwych klas. Uczenie koDczy si w chwili, gdy w trakcie kolejnych prezentacji przypadk�w uczcych nie zachodz zmiany w sposobie przyporzdkowania obiekt�w do wBa[ciwych grup. Brak 7 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl w zbiorze uczcym informacji dotyczcych rzeczywistych warto[ci zmiennej wyj[ciowej uniemo|liwia wyznaczenie bBdu poprzez por�wnanie wyniku dziaBania sieci z odpowiedni warto[ci pochodzc ze zbioru uczcego. Stosowana w tym przypadku definicja bBdu okre[la w jakim stopniu zastosowana sie jest w stanie opisa struktur zbioru uczcego (w tym celu por�wnuje si wektory wej[ciowe z odpowiadajcymi im wektorami wsp�Bczynnik�w wagowych). Przedstawiona charakterystyka stosowanych tryb�w uczenia sieci neuronowych wskazuje, |e w zagadnieniach modelowania i prognozowania stosowane bd sieci konstruowane w trybie z nauczycielem, gdy| stanowi one dogodne narzdzie opisu zale|no[ci pomidzy r�|nymi zmiennymi lub pomidzy oddalonymi w czasie warto[ciami tej samej zmiennej. Utworzenie prawidBowo funkcjonujcego modelu wymaga zastosowania wBa[ciwie przygotowanej sieci. Niestety, wyznaczany w trakcie treningu bBd uczenia nie mo|e stanowi podstawy do oceny sieci, gdy| jego warto[ mo|e zosta sprowadzona do dowolnie niskiego poziomu poprzez rozbudow cz[ci ukrytej sieci. Zwikszanie liczby neuron�w ukrytych ma r�wnie| swoje wady - zwiksza liczb parametr�w sieci szacowanych w czasie uczenia, co czsto w istotny spos�b wpBywa na czas treningu. Jednak|e najpowa|niejsz konsekwencj stosowania zbyt rozbudowanych struktur sieciowych jest mo|liwo[ utraty przez sie zdolno[ci do generalizacji. Zdolno[ do generalizacji przejawia si w posiadanej przez sie umiejtno[ci wyznaczania prawidBowych odpowiedzi dla takich danych wej[ciowych, kt�re nie byBy prezentowane w trakcie uczenia. Umiejtno[ ta jest najwarto[ciowsz cech sieci neuronowej. Znaczenie generalizacji ilustrowa mo|e zamieszczony przykBad numeryczny. ZaB�|my, |e chcemy opisa zale|no[ zachodzc pomidzy zmienn X1 i X2 przy pomocy sieci neuronowej. Podstaw do przeprowadzenia uczenia sieci jest zbi�r uczcy skBadajcy si z przykBadowych realizacji tej zale|no[ci (rys. 7). Rys. 7. PrzykBadowy zestaw danych. Oczekujemy, |e sie skonstruowana na podstawie zbioru uczcego posiada bdzie zdolno[ do generalizacji, kt�ra przejawia si bdzie w tym, |e wyniki obliczone przez sie bd poprawne nie tylko dla tych warto[ci zmiennej X1, kt�re wystpiBy w zbiorze uczcym, ale r�wnie| dla tych, kt�re nie byBy wprowadzane na wej[cia w trakcie uczenia (kt�re znajduj si pomidzy warto[ciami reprezentowanymi w zbiorze uczcym). Rezultat dziaBania takiej sieci przedstawiono na rys. 8 w postaci linii cigBej. Wyraznie widoczna jest zdolno[ do generalizacji przejawiajca si generowaniem sensownych danych wyj[ciowych dla warto[ci X1 nie nale|cych do zgromadzonego zestawu danych. 8 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Rys. 8. Model posiadajcy zdolno[ do generalizacji. Je|eli w wyniku zbytniego zwikszenia liczby neuron�w ukrytych sie utraci zdolno[ do generalizacji, to bdzie ona prawidBowo pracowa po wprowadzeniu warto[ci wej[ciowych wystpujcych w zbiorze uczcym, lecz bdzie jednocze[nie generowa caBkowicie bBdne warto[ci zmiennej X2 odpowiadajce tym warto[ciom X1, kt�re nie byBy reprezentowane w zgromadzonym zbiorze danych. PrzykBad takiego dziaBania sieci przedstawia rys. 9. Rys. 9. Model nie posiadajcy zdolno[ci do generalizacji. Postpujcy w trakcie uczenia sieci zanik zdolno[ci do generalizacji nazywany jest przeuczeniem sieci. W przypadku wystpienia tego zjawiska kontynuacja uczenia prowadzi wprawdzie do zmniejszania si bBdu sieci wyznaczonego na podstawie zbioru uczcego, ale towarzyszy temu coraz gorsze dziaBanie sieci dla danych nie nale|cych do zbioru uczcego (rys. 10). Rys. 10. Efekt przeuczenia sieci (linia dolna - bBd dla zbioru uczcego, linia g�rna - bBd dla danych nie uczestniczcych w procesie uczenia). 9 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Z uwagi na negatywny wpByw przeuczenia na funkcjonowanie sieci nale|y wzbogaci procedur uczenia o mechanizm odpowiedzialny za wczesne wykrycie zaniku zdolno[ci do generalizacji. SygnaBy o przeuczeniu nie mog by generowane w oparciu o miary jako[ci sieci wyznaczone na podstawie zbioru uczcego, gdy| te wskazuj w takiej sytuacji na coraz lepsze dopasowanie sieci do danych. Podstaw do uzyskania informacji o przeuczeniu musz by mierniki wyznaczone na podstawie danych nie prezentowanych w trakcie uczenia. Aby umo|liwi takie dziaBania dostpny zbi�r danych dzielony jest na trzy cz[ci: om�wiony ju| zbi�r uczcy (prezentowany sieci w trakcie uczenia i sBu|cy do modyfikacji warto[ci parametr�w), zbi�r walidacyjny (pozwalajcy na monitorowanie procesu uczenia sieci) oraz zbi�r testowy (sBu|cy do przeprowadzenia ostatecznej oceny uzyskanej sieci). Mechanizm wykrywajcy przeuczenie sieci korzysta ze zbioru walidacyjnego. Po zakoDczeniu ka|dej epoki uczenia wyznaczany jest bBd sieci na podstawie przypadk�w wchodzcych w skBad tego zbioru. Nie s one prezentowane w trakcie uczenia i nie wpBywaj na modyfikacj wag i dziki temu pozwalaj na ocen posiadanej przez sie zdolno[ci do generalizacji. O przeuczeniu sieci mo|emy m�wi w�wczas, gdy bBd wyznaczony na podstawie zbioru uczcego zmniejsza si w kolejnych epokach, za[ bBd walidacyjny w pocztkowej fazie uczenia maleje, ale nastpnie zaczyna zwiksza swoj warto[. Zwikszanie si warto[ci bBdu walidacyjnego [wiadczy o zbytnim dopasowywaniu si sieci do punkt�w uczcych i o utracie zdolno[ci do uog�lniania zdobytej wiedzy. Zaobserwowanie [wiadczcego o przeuczeniu sieci wzrostu warto[ci bBdu walidacyjnego mo|e stanowi sygnaB do przerwania uczenia, modyfikacji struktury sieci polegajcej na zmniejszeniu liczby neuron�w ukrytych i ponownym zapoczt-kowaniu treningu. W trakcie uczenia sieci o prawidBowo dobranej strukturze warto[ bBdu uczenia i bBdu walidacyj-nego powinna zmniejsza si w kolejnych epokach. Poziom bBdu walidacyjnego jest zwykle nieznacznie wy|szy od warto[ci bBdu uczenia wyznaczonego w tej samej epoce. Je[li oba bBdy pozostaj na wysokim poziomie, to mo|e to wskazywa na potrzeb modyfikacji struktury sieci polegajcej na zwikszeniu liczby neuron�w ukrytych. Problem okre[lania struktury nale|y do najtrudniejszych zadaD stojcych przed konstruktorem sieci. Jego prawidBowe rozwizanie wymaga wiedzy i do[wiadczenia. Czsto niezbdne staje si przeprowadzenie szeregu eksperyment�w badawczych. Bardzo pomocne s w tym zakresie odpowiednio skonstruowane programy komputerowe, kt�re w oparciu o zaimplementowane heurystyki i przeprowadzone eksperymenty proponuj wBa[ciw struktur sieci. Po przeprowadzeniu uczenia, w wyniku kt�rego bBdy dla zbioru uczcego i walidacyjnego osignBy akceptowalny przez u|ytkownika poziom przeprowadza si ponown weryfikacj modelu. Tym razem polega ona na obliczeniu miar dopasowania sieci do danych wchodzcych w skBad zbioru testowego. Niski poziom wyznaczonego bBdu potwierdza poprawno[ dziaBania sieci, za[ uzyskanie wysokiej warto[ci stanowi powa|ny sygnaB ostrzegawczy i mo|e [wiadczy o potrzebie powt�rzenia procesu konstrukcji i uczenia sieci. 10 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Perceptrony wielowarstwowe Jednokierunkowe sieci wielowarstwowe (perceptrony wielowarstwowe, sieci MLP - MultiLayer Perceptrons) nale| do najlepiej poznanych i najcz[ciej wykorzystywanych architektur sieciowych. Do podstawowych wBasno[ci jednokierunkowych sieci wielowarstwowych (rys. 11) nale|y zaliczy: �� posiadaj architektur warstwow - wyr�|nia si warstw wej[ciow, ukryte oraz wyj[ciow, �� poBczenia umo|liwiaj komunikacj pomidzy neuronami znajdujcymi si w ssiadujcych ze sob warstwach, �� wszystkie neurony wchodzce w skBad sieci dokonuj agregacji danych wej[ciowych poprzez wyznaczenie sumy wa|onych wej[ (czyli przy pomocy liniowej formuBy agregacji), �� funkcja aktywacji neuron�w wej[ciowych ma charakter liniowy, neuron�w ukrytych nieliniowy (najcz[ciej s-ksztaBtny), za[ neuron�w wyj[ciowych liniowy bdz nieliniowy, �� z uwagi na wystpujcy w s-ksztaBtnych funkcjach aktywacji poziom nasycenia dane przetwarzane przez sie wymagaj odpowiedniego przeskalowania. Rys. 11. PrzykBadowy perceptron wielowarstwowy. Charakteryzujc proces uczenia perceptron�w wielowarstwowych, nale|y zauwa|y, |e: �� uczenie polega na pr�bie wyznaczenia minimum funkcji bBdu; zwykle stosuje si techniki wyznaczania minimum oparte na gradiencie (metoda wstecznej propagacji bBd�w i jej modyfikacje), hesjanie (metoda, Newtona, Levenberga-Marquardta) lub przybli|eniu odwrotno[ci hesjanu (metody quasi-Newtona) - wszystkie te metody nie s odporne na zatrzymywanie si w minimach lokalnych funkcji bBdu, �� stosowany jest tryb uczenia z nauczycielem (zbi�r uczcy zawiera przykBadowe zestawy danych wej[ciowych i odpowiadajcych im danych wyj[ciowych), �� czas uczenia percetron�w wielowarstwowych jest dBugi w por�wnaniu z nakBadami czasowymi niezbdnymi do przeprowadzenia uczenia innych typ�w sieci, �� stosowanie w procesie uczenia globalnych metod optymalizacji jest mo|liwe, lecz zazwyczaj nieefektywne. 11 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Modele oparte na jednokierunkowych sieciach wielowarstwowych maj oszczdn struktur, co powoduje, |e czas ich uruchamiania jest kr�tki i |e wymagaj niewielkich obszar�w pamici. Do podstawowych problem�w pojawiajcych si w trakcie ich konstrukcji nale|y zaliczy dob�r wBa[ciwej struktury (liczba warstw i liczba neuron�w w warstwach ukrytych) oraz unikanie minim�w lokalnych funkcji bBdu w trakcie uczenia. Perceprony wielowarstwowe posiadaj zdolno[ do ekstrapolacji, co w zale|no[ci od charakteru rozwizywanego problemu mo|na uzna za zalet lub wad. Sieci Kohonena Sie zaproponowana przez T. Kohonena ma bardzo prost struktur (rys. 12). W skBad sieci tego typu wchodz dwie warstwy neuron�w: warstwa wej[ciowa i warstwa wyj[ciowa. Wystpujce w sieci poBczenia maj charakter ka|dy z ka|dym. Sie Kohonena charakteryzuje si jednokierunkowym przepBywem informacji: od warstwy wej[ciowej do warstwy wyj[ciowej. Specyficzn cech sieci Kohonena jest zaproponowany przez jej tw�rc spos�b uporzdkowania neuron�w warstwy wyj[ciowej. Zwykle nie s one uporzdkowane liniowo (jak w sieci perceptro-nowej), lecz rozlokowane s w r�|nych punktach dwuwymiarowej pBaszczyzny. Najprostsze rozwizanie polega na umieszczeniu neuron�w w polach znajdujcych si na przeciciu kolejnych wierszy i kolumn wyznaczonych na pBaszczyznie. Rysunek 13 przedstawia schemat warstwy wyj[ciowej sieci Kohonena skBadajcej si z 64 neuron�w, rozmieszczonych na przeciciu o[miu wierszy i o[miu kolumn. Rys. 12. Sie Kohonena. Rys. 13. Schemat warstwy wyj[ciowej sieci Kohonena. 12 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Na spos�b uczenia i funkcjonowania sieci Kohonena w istotny spos�b wpBywa pojcie ssiedztwa, kt�re odnosi si do neuron�w warstwy wyj[ciowej. Ssiedztwo danego neuronu rozumiane jest jako zbi�r ssiadujcych z nim neuron�w. Podstawowym parametrem ssiedztwa jest jego promieD. Wraz ze wzrostem jego warto[ci zwiksza si zasig ssiedztwa, a tym samym liczba neuron�w uznawanych za ssiad�w. Rysunek 14 prezentuje ssiedztwo neuronu znajdujcego si na przeciciu czwartego wiersza z trzeci kolumn (neuron ten zaznaczony jest ciemnym kolorem). Jego ssiedztwo o promieniu r�wnym jedno[ci obejmuje neurony bezpo[rednio z nim ssiadujce (osiem neuron�w zaznaczonych ciemnoszarym kolorem). Natomiast ssiedztwo o promieniu r�wnym dwa obejmuje wszystkie neurony wchodzce w skBad ssiedztwa o promieniu 1 oraz wszystkie neurony ssiadujce z neuronami tworzcymi ssiedztwo o jednostkowym promieniu (na rysunku zostaBy one zaznaczone jasnoszarym kolorem). W podobny spos�b mo|na definiowa ssiedztwa o wikszym promieniu. Natomiast w skBad ssiedztwa o promieniu r�wnym zero wchodzi tylko jeden neuron - ten, dla kt�rego wyznaczane jest to ssiedztwo (czyli tzw. neuron centralny). Rys. 14. Neuron centralny (zaciemniony obszar mapy) i jego ssiedztwa o promieniu r�wnym jeden (kolor ciemnoszary) i dwa (kolor jasnoszary). Ka|dy neuron wyj[ciowy posiada wektor wag, w kt�rym liczba element�w jest r�wna liczbie neuron�w wchodzcych w skBad warstwy wej[ciowej. W trakcie funkcjonowania sieci wektor warto[ci wej[ciowych (obejmujcy warto[ci wyj[ciowe neuron�w pierwszej warstwy) por�wny-wany jest z wektorem wag ka|dego neuronu wyj[ciowego. Por�wnanie to realizowane jest zwykle poprzez obliczenie kwadratu odlegBo[ci Euklidesa pomidzy wspomnianymi wektorami (funkcj t realizuje radialna funkcji agregacji). Neuron wyj[ciowy, dla kt�rego tak zdefiniowany miernik przyjmuje warto[ najmniejsz, posiada wagi najbardziej zbli|one do wektora wej[ciowego i okre[lany jest jako neuron zwyciski. Uczenie sieci Kohonena odbywa si bez nauczyciela. Podstaw uczenia jest zbi�r uczcy, kt�rego ka|dy element jest wektorem o liczbie element�w odpowiadajcej liczbie neuron�w w warstwie wej[ciowej sieci. W pocztkowej fazie uczenia wagi przyjmuj warto[ci r�wne niewielkim liczbom losowym. Po prezentacji wzorca uczcego obliczana jest odlegBo[ pomidzy warto[ciami wej[ciowymi a wagami kolejnych neuron�w warstwy wyj[ciowej (odlegBo[ ta najcz[ciej jest wyra|ana przy pomocy formuBy Euklidesa lub jako iloczyn skalarny wektora wej[ciowego i wektora wag; w tym drugim przypadku 13 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl konieczne jest wcze[niejsze unormowanie wektor�w wej[ciowych). Warto[ci te s wzajemnie por�wnywane i wyznaczany jest neuron zwyciski, kt�rego wagi s w najwikszym stopniu zbli|one do wektora wej[ciowego. Nastpnie wagi neuronu zwyciskiego s modyfikowane w spos�b zapewniajcy jeszcze wiksze ich upodobnienie do wektora wej[ciowego. Cech charakterystyczn sieci Kohonena jest to, |e proces modyfikacji wag neuronu przeprowa-dzany jest nie tylko dla neuronu zwyciskiego, ale r�wnie| dla wszystkich neuron�w wchodzcych w obrb ssiedztwa zwycizcy. Proces uczenia prowadzi do utworzenia mapy topograficznej. Posiada ona zdolno[ odwzorowy-wania zale|no[ci zachodzcych pomidzy obiektami - obiektom podobnym odpowiada ten sam obszar (neuron) na mapie lub obszary poBo|one blisko siebie. Obiekty znacznie r�|nice si od siebie powoduj uaktywnienie neuron�w znajdujcych si w odlegBych od siebie obszarach mapy. Cechy modeli neuronowych Sztuczne sieci neuronowe posiadaj szereg cech, dziki kt�rym mog stanowi przydatne narzdzie modelowania i prognozowania szereg�w czasowych. O przydatno[ci modeli neuronowych do badania rozwoju zjawisk w czasie decyduj przede wszystkim nastpujce fakty: 1. Zale|no[ci wystpujce w znacznej liczbie szereg�w czasowych maj charakter nieliniowy, co stanowi podstawow przesBank do tego, aby do ich modelowania stosowa modele nieliniowe. Jednym z narzdzi speBniajcych ten warunek s jednokierunkowe sieci neuronowe. Posiadaj one zdolno[ci do aproksymacji dowolnych zale|no[ci nieliniowych jak r�wnie| charakteryzuj si zdolno[ciami generalizujcymi. 2. Proces budowy modelu neuronowego polega na eksploracji dostpnych zbior�w danych i oszacowaniu na tej podstawie modelu opisujcego stwierdzone prawidBowo[ci. Stosowanie modeli tego typu nie wymaga znajomo[ci postaci funkcji opisujcej istniejc prawidBowo[. W zwizku z tym modele neuronowe mog znalez zastosowanie wszdzie tam, gdzie nie jest znane dokBadne prawo opisujce ksztaBtowanie si badanych zale|no[ci. Nie wyklucza to mo|liwo[ci stosowania sieci w przypadkach, gdy znana jest posta formuB matematycznych opisujcych badany aspekt rzeczywisto[ci, ale w�wczas nakBady zwizane z oszacowaniem modelu sieciowego mog by wy|sze ni| nakBady niezbdne do obliczenia parametr�w danego w postaci r�wnania prawa. 3. Modele neuronowe maj charakter adaptacyjny. Mog sBu|y do opisu zale|no[ci zmieniajcych si w czasie. W chwili pojawienia si nowych danych przeprowadzony mo|e zosta proces douczenia sieci, co umo|liwia uwzgldnienie w tworzonym modelu informacji zawartych w najnowszych obserwacjach. 4. Sie neuronowa mo|e by traktowana nie tylko jako mechanizm opisujcy przebieg zjawiska i generujcy przyszBe jego warto[ci. Daje ona mo|liwo[ci przeprowadzania 14 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl wszechstronnej analizy badanego fragmentu rzeczywisto[ci. Podstawowe informacje o systemie uzyska mo|na poprzez zastosowanieanalizy wra|liwo[ci modelu. Pozwala ona na przedstawienie charakteru zwizku pomidzy badan wielko[ci a poszczeg�lnymi wpBywajcymi na ni czynnikami. Istniejce metody analizy pozwalaj przy wykorzystaniu modelu neuronowego dokBadnie analizowa zjawisko we wszelkich wybranych przez badacza ukBadach. Stosowanie modeli neuronowych nie zawsze jest uzasadnione. Modele tego typu nie powinny by stosowane wtedy, gdy: 1. badacz nie dysponuje odpowiedni liczb obserwacji mogcych stanowi podstaw do oszacowania modelu. Szacowanie sieci posiadajcych stosunkowo du| liczb parametr�w na podstawie nielicznego zbioru uczcego prowadzi najcz[ciej do powstania modeli dopasowujcych si do danych uczcych, ale nie posiadajcych zdolno[ci do opisu og�lnych prawidBowo[ci istniejcych w danych. 2. trudno znalez uzasadnienie dla stosowania modeli neuronowych w sytuacji, w kt�rej znany jest charakter wystpujcej prawidBowo[ci (np. znana jest posta funkcji opisujcej analizowane zjawisko). W takim przypadku oszacowanie parametr�w funkcji pociga za sob mniejsze nakBady i prowadzi do powstania modelu Batwiejszego w interpretacji. Nawet w�wczas, gdy speBnione s warunki uzasadniajce stosowanie modeli neuronowych nale|y pamita, |e opr�cz zalet posiadaj one r�wnie| pewne sBabe strony, mogce przyczynia si do powstawania problem�w na etapie budowy modelu. Do najistotniejszych minus�w sieci neuronowych nale|y zaliczy: 1. potrzeba odpowiedniego przygotowania danych - uzale|niona od charakteru zmiennych i zastosowanego rodzaju sieci, 2. problemy zwizane z doborem wBa[ciwej struktury modelu neuronowego (rodzaj sieci, przyjte modele neuronu, liczba neuron�w i spos�b ich poBczenia), 3. konieczno[ wyboru wBa[ciwego algorytmu uczenia sieci, 4. wysokie nakBady czasowe zwizane z oszacowaniem modelu neuronowego, 5. brak (w wikszo[ci przypadk�w) mo|liwo[ci bezpo[redniej interpretacji poszczeg�lnych wsp�Bczynnik�w modelu neuronowego. Etapy budowy neuronowego modelu szeregu czasowego Proces budowy neuronowego modelu szeregu czasowego ma charakter wieloetapowy. SkBada si z kilku nastpujcych po sobie etap�w, z kt�rych pierwszy obejmuje wstpn analiz danych, kolejny polega na skonstruowaniu sieci neuronowej (lub kilku sieci neuronowych), za[ ostatni zwizany jest zocen uzyskanego modelu. Wstpna analiza danych (zwana r�wnie| preprocessingiem) obejmuje te czynno[ci, kt�re poprzedzaj proces konstrukcji i uczenia sieci. Zakres wykonywanych operacji obejmuje 15 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl badanie poprawno[ci i jednorodno[ci danych, operacjonalizacj danych, redukcj zbioru zmiennych wej[ciowych, dekompozycj szeregu pierwotnego, zdefiniowanie sposobu reprezentacji danych jako[ciowych oraz skalowanie danych. Proces konstrukcji sieci obejmuje prace zwizane z zaprojektowaniem struktury i uczeniem sieci opisujcej zale|no[ci w szeregu powstaBym w czasie wstpnej analizy danych. Je|eli na etapie preprocessingu przeprowadzono dekompozycj danych, to nale|y stworzy oddzielne sieci do opisu zale|no[ci wystpujcych we wszystkich wyodrbnionych skBadowych, oraz zdefiniowa spos�b agregacji wynik�w dostarczanych przy pomocy tak skonstruowanych modeli czstkowych. Ostatnim etapem procesu konstrukcji modelu szeregu czasowego jest jego ocena. Ocena powinna obejmowa zar�wno analiz posiadanych przez model zdolno[ci aproksymujcych jak i umiejtno[ci generalizacji zgromadzonej wiedzy. Zastosowany system miernik�w jako[ci modelu powinien by uzale|niony od funkcji, jak model ma speBnia. Wymienione powy|ej zasadnicze etapy budowy neuronowego modelu szeregu czasowego czasami realizowane s wicej ni| jeden raz. Sytuacja taka ma miejsce w�wczas, gdy podjta pr�ba realizacji kolejnej fazy modelowania koDczy si niepowodzeniem. W�wczas nale|y zwykle powt�rzy (wszystkie lub tylko wybrane) wcze[niej zrealizowane kroki analizy. Wstpna analiza szereg�w czasowych Przed rozpoczciem budowy modelu szeregu czasowego i przed jego prognozowaniem zgromadzone dane poddawane s analizie wstpnej (ten etap prac okre[lany jest r�wnie| mianem preprocessingu). Wstpna analiza danych obejmuje m.in.: �� badanie poprawno[ci danych, �� ocen jednorodno[ci danych, �� przeksztaBcenia danych (operacjonalizacja danych), �� redukcj zbioru danych wej[ciowych, �� dekompozycj danych, �� przyjcie sposobu reprezentacji danych jako[ciowych, �� skalowanie danych. Wymienione etapy wstpnej analizy danych bd tematem kolejnych punkt�w bie|cego rozdziaBu. Wyjtkiem bdzie zagadnienie redukcji zbioru danych wej[ciowych, kt�re zostanie om�wione w punkcie po[wiconym algorytmom genetycznym. 16 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Badanie poprawno[ci danych Stworzenie prawidBowo funkcjonujcego modelu wymaga wykorzystania poprawnych danych. Realizowane na etapie preprocessingu badanie poprawno[ci ma na celu identyfikacj i wyeliminowanie warto[ci bBdnych. W wikszo[ci przypadk�w peBne zagwarantowanie poprawno[ci nie jest mo|liwe, za[ przeprowadzenie procedury weryfikujcej ma na celu minimalizacj prawdopodobieDstwa wystpienia bBd�w lub brak�w w danych. Najlepszym sposobem zwikszenia wiarygodno[ci danych jest por�wnanie informacji pochodzcych z kilku niezale|nych zr�deB. Jednak|e spos�b weryfikacji bazujcy na alternatywnym zr�dle danych nie zawsze jest mo|liwy do realizacji, a jego stosowanie zwizane jest zwykle ze znacznym zwikszeniem nakBad�w czasowych i finansowych. Ten spos�b weryfikacji nie gwarantuje r�wnie| wykrycia bBd�w powstaBych na etapie pomiaru danych. Du|a cz[ metod badania poprawno[ci danych szczeg�ln uwag przywizuje do warto[ci nietypowych, a wic tych, kt�re w znaczny spos�b odbiegaj od warto[ci charakterystycznych dla analizowanej zmiennej. Mechaniczne odrzucenie warto[ci nietypowych nie musi by poprawne, gdy| w[r�d nich mog si znalez zar�wno warto[ci bBdne jak i anomalie, kt�re mimo swojej niezgodno[ci z typowymi warto[ciami s zgodne z rzeczywisto[ci i wymagaj specyficznego sposobu ujcia w modelu. Do podstawowych metod identyfikacji warto[ci nietypowych mo|na zaliczy: metody graficzne pozwalajce na wizualn ocen szeregu, przeksztaBcenia szeregu uBatwiajce wykrycie nietypowych zachowaD (np. r�|nicowanie), analiz reguB sterujcych funkcjonowaniem systemu generujcego dane i podjcie pr�by ich weryfikacji na podstawie dostpnych obserwacji (np. sprawdzenie, czy kolejne ceny akcji s zgodne z obowizujcymi reguBami okre[lajcymi maksymalne zmiany cen). Po wykryciu warto[ci bBdnych nale|y podj decyzj dotyczc sposobu ich traktowania. Do najpopularniejszych mo|liwo[ci w tym zakresie nale|y zaliczy: zastpienie bBdnej warto[ci warto[ci pochodzc z alternatywnego zr�dBa danych (jest najlepszy spos�b postpowania, ale nie zawsze mo|liwy do realizacji), zastpienie bBdnej warto[ci warto[ci oszacowan (nale|y pamita, |e warto[ oszacowana odbiega zwykle od warto[ci rzeczywistej) oraz pominicie warto[ci bBdnej (w przypadku szereg�w czasowych takie postpowanie nie zawsze jest mo|liwe, gdy| usunicie pojedynczej obserwacji mo|e prowadzi do zaburzenia informacji okre[lajcej przebieg badanego zjawiska). Bardzo trudnym problemem jest r�wnie| zagadnienie brak�w danych. W przypadku szereg�w czasowych warto[ci brakujcych zwykle nie mo|na pomin, gdy| mo|e to znacznie utrudni p�zniejsz identyfikacj wystpujcych prawidBowo[ci. Podobnie jak w przypadku warto[ci bBdnych, najcz[ciej zaleca si zastpienie brak�w warto[ciami pochodzcymi z innych zr�deB lub warto[ciami oszacowanymi. 17 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Badanie jednorodno[ci danych Kolejnym etapem wstpnej analizy danych jest badanie ich jednorodno[ci. Przeprowadzona procedura badawcza ma na celu okre[lenie, czy wszystkie zgromadzone przypadki tworz jednorodn struktur, czy te| tworz wyraznie wyodrbnione klasy. Najprostsz, a jednocze[nie bardzo skuteczn, metod badania jednorodno[ci jest wzrokowa analiza wykres�w rozrzutu danych. Naniesione na wykres punkty pozwalaj oceni stopieD jednorodno[ci danych. Graficzna prezentacja przypadk�w uczcych mo|e zosta utrudniona przez wysoki wymiar przestrzeni danych. W takich sytuacjach nale|y wpierw dokona redukcji liczby zmiennych opisujcych wyr�|nione przypadki. Nie speBnienie warunku jednorodno[ci mo|e przejawia si przez: �� wystpienie pojedynczych obserwacji nietypowych, �� wystpowanie grup obserwacji. W przypadku stwierdzenia niejednorodno[ci zbioru danych wej[ciowych mo|liwe s nastpujce strategie postpowania: �� je|eli zbi�r obserwacji skBada si z kilku jednorodnych grup obserwacji to mo|liwe jest wydzielenie istniejcych grup i niezale|na analiza ka|dej z nich. Postpowanie takie prowadzi do budowy niezale|nego modelu dla ka|dej jednorodnej grupy, �� je|eli w zbiorze danych wystpuj obserwacje nietypowe, to mo|liwe jest usunicie istniejcych anomalii lub zastpienie ich warto[ciami zmniejszajcymi stopieD ich nietypowo[ci, �� Bczna analiza wszystkich danych i stworzenie jednego modelu. Ka|de z tych podej[ ma swoje wady i zalety. PodziaB danych na jednorodne grupy i budowa modelu dla ka|dej z nich prowadzi do wykorzystania mniejszych sieci, kt�re szybciej si ucz i generuj mniejsze bBdy. Wad modeli tego typu jest niewykorzystanie informacji wynikajcych z Bcznego rozpatrywania obiekt�w nale|cych do r�|nych grup wydzielonych ze wzgldu na wym�g jednorodno[ci. Wada ta nie ujawnia si w sytuacji, gdy budowany jest jeden model na podstawie caBego zestawu danych. Ale w takim przypadku model mo|e nie opisywa pewnych zachowaD o mniejszym nasileniu, wymaga zastosowania du|ych sieci co pociga za sob dodatkowe problemy zwizane z doborem odpowiedniej struktury sieci i jej uczeniem. Nie mo|na jednoznacznie powiedzie, kt�re z prezentowanych podej[ jest lepsze. Jest to uzale|nione od konkretnego przypadku zastosowaD. Operacjonalizacja danych Operacjonalizacja szeregu czasowego polega na przeksztaBceniu jego warto[ci w spos�b pozwalajcy na wyeksponowanie pewnych, istotnych z punktu widzenia celu analizy, cech charakterystycznych szeregu. Operacjonalizacja danych majcych posta szereg�w czasowych mo|e polega na przeksztaBceniu warto[ci pierwotnych szeregu do postaci: 18 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl 1. szeregu r�|nic, 2. szeregu warto[ci -1, 0, +1, kt�re reprezentuj kolejno warto[ci ujemn, r�wn zero i dodatni, 3. szeregu r�|nic wzgldnych o postaci gdzie q mo|e by r�wne warto[ci x w okresie t-1 lub w okresie pocztkowym 0 lub te| odchylenie standardowe z szeregu r�|nic xt-xt-1; obliczone w ten spos�b warto[ci okre[lane s jako przyrosty wzgldne, 4. szeregu warto[ci (indeksy dynamiki), 5. logarytm�w naturalnych z warto[ci szeregu xt, 6. logarytm�w naturalnych z indeks�w dynamiki, 7. pierwiastk�w kwadratowych lub sze[ciennych z warto[ci szeregu, 8. wsp�Bczynnik�w udziaBu okres�w wyra|anych jako iloraz warto[ci szeregu w danym okresie i sumy warto[ci obliczonej dla wszystkich okres�w. Opr�cz wymienionych powy|ej uniwersalnych metod operacjonalizacji szereg�w czasowych zastosowa mo|na r�wnie| metody przeksztaBceD specyficzne dla rozpatrywanej dziedziny zastosowaD. W przypadku finansowych szereg�w czasowych przydatnym narzdziem przeksztaBcania danych mo|e by wyznaczenie warto[ci wskaznik�w technicznych. Dob�r odpowiednich wskaznik�w uzale|niony jest w du|ym stopniu od celu prowadzonych obliczeD. Zastosowanie wskaznik�w technicznych zilustrowane zostanie opisem przeksztaBceD dokonanych na przykBadowym szeregu czasowym skBadajcym si ze stu warto[ci indeksu WIG pochodzcych z kolejnych sesji gieBdowych w okresie od 12 listopada 1991 do 1 grudnia 1992 roku (rys. 15). Szereg czasowy okre[lajcy ksztaBtowanie si indeksu WIG staB si podstaw do wyznaczenia trzech (wybranych w spos�b arbitralny) wskaznik�w technicznych: ROC, MACD i oscylator stochastyczny. Warto[ci wskaznik�w technicznych mog trafniej ni| dane pierwotne reprezentowa pewne cechy szeregu (poziom, kierunek zmian /trend/, tempo zmian). 19 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Rys. 15. KsztaBtowanie si indeksu WIG w okresie od 12.XI.1991 do 1.XII.1992. Wskaznik ROC (Rate of Change, wskaznik zmian) por�wnuje bie|c warto[ szeregu z warto[ci pochodzc sprzed n okres�w. Obliczanie jego warto[ci odbywa si zgodnie ze wzorem: Uzyskanie warto[ci wskaznika r�wnej jedno[ci [wiadczy o braku zmian w warto[ciach szeregu (warto[ jeden wyznacza poziom r�wnowagi wskaznika). Warto[ci ni|sze od poziomu r�wnowagi wskazuj na spadki, za[ wy|sze na wzrosty warto[ci szeregu pierwotnego. Wskaznik ROC nie posiada [ci[le okre[lonego przedziaBu zmienno[ci. Obliczone warto[ci wskaznika ROC przedstawione zostaBy na rys. 16. Rys. 16. Indeks WIG i obliczony na jego podstawie wskaznik zmian (ROC) 20 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Innym popularnym wskaznikiem technicznym jest MACD (wskaznik zbie|no[ci/rozbie|no[ci [rednich ruchomych; MACD - Moving Average Convergence/Divergence), kt�rego warto[ci bazuj na wielko[ciach wykBadniczych [rednich ruchomych. Warto[ wskaznika MACD definiowana jest jako r�|nica pomidzy dwiema wykBadniczymi [rednimi ruchomymi (zwykle s to [rednie 12 i 26 dniowe), czyli: gdzie jest pierwsz (kr�tsz) [redni ruchom (np. 12 dniow), za[ jest drug (dBu|sz) [redni ruchom (np. 26 - dniow). Zrednie ruchome s filtrem usuwajcym z szeregu wahania o wysokich czstotliwo[ciach. Wraz z wydBu|aniem okresu, z kt�rego liczona jest [rednia mocniejszy jest stopieD wygBadzania szeregu. Wskaznik MACD okre[la tempo zmian w szeregu podstawowym. Dodatnie warto[ci MACD wskazuj na wzrost warto[ci szeregu w okresie uwzgldnionym przy wyznaczaniu kr�tkiej [redniej ruchomej w por�wnaniu z okresem odpowiadajcym dBugiej [redniej ruchomej. W przeciwny spos�b interpretowa mo|na ujemne warto[ci wskaznika. Budujc model szeregu czasowego nale|y rozwa|y mo|liwo[ uwzgldnienia na jego wej[ciu zar�wno danych pierwotnych jak i warto[ci wskaznik�w technicznych (np. wskaznika MACD), gdy| takie postpowanie umo|liwia wykrycie dywergencji (niezgodno[ci kierunk�w zmian) pomidzy tymi szeregami, co mo|e by zapowiedzi zmiany trendu. Warto[ci wskaznika MACD obliczone na podstawie analizowanych warto[ci WIG przedstawia rys. 17. Rys. 17. KsztaBtowanie si indeksu WIG i wskaznika MACD. 21 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Trzecim, z wybranych na potrzeby niniejszego opracowania, wskaznikiem technicznym jest oscylator stochastyczny. Przedstawia on bie|cy poziom indeksu lub ceny na tle przedziaBu okre[lajcego jego zmienno[ w przyjtym okresie czasu. Zastosowana w obliczeniach formuBa ma posta: gdzie: xt - bie|ca warto[ szeregu, H(n) - warto[ maksymalna z ostatnich n okres�w, L(n) - warto[ minimalna z ostatnich n okres�w. Wyznaczona w podany spos�b warto[ %K okre[la stosunek bie|cej warto[ci szeregu do zakresu wahaD w n ostatnich jednostkach czasu. Przemno|enie ilorazu przez sto powoduje, |e charakteryzowany wskaznik unormowany jest do przedziaBu [0; 100]. Wy|sze jego warto[ci wskazuj, |e aktualny poziom szeregu zbli|a si do swojej warto[ci maksymalnej osignitej w rozwa|anym przedziale czasu. Wykres warto[ci oscylatora stochastycznego prezentuje rys. 18. Rys. 18. KsztaBtowanie si indeksu WIG i warto[ci oscylatora stochastycznego. Dekompozycja szereg�w czasowych Obserwowany szereg czasowy jest czsto rezultatem zBo|enia wielu, r�|nicych si charakterem, skBadowych. ZBo|ona struktura szeregu w wielu przypadkach utrudnia prawidBowe modelowanie i prognozowanie jego przyszBych warto[ci, gdy| pojedynczy model nie zawsze jest w stanie prawidBowo odzwierciedla zmiany zachodzce w 22 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl ksztaBtowaniu si skBadowych szeregu. Mo|na oczekiwa, |e precyzja modelowania wzro[nie w rezultacie wydzielenia skBadowych badanego szeregu, niezale|nego ich modelowania i agregacji uzyskanych wynik�w. Takie podej[cie jest czsto stosowane w praktyce, gdy do opisu ksztaBtowania si pewnych zjawisk wykorzystuje si liniowe funkcje trendu (obrazujce zasadniczy kierunek zmian) i wsp�Bczynniki sezonowo[ci (wskazujce na odchylenia od trendu majce miejsce w kolejnych okresach czasu). Podej[cie takie sprawdza si w przypadkach charakteryzujcych si stabilnym trendem i regularnymi wahaniami sezonowymi (nakBadanymi na trend w spos�b addytywny lub multiplikatywny). Za przykBad mo|e sBu|y szereg przedstawiony na rys. 19. Rys. 19. Dekompozycja przykBadowego szeregu. Zrednie ruchome usuwaj zmiany kr�tkookresowe (wygBadzaj szereg). W wyniku ich zastosowania uzyskuje si informacje o zasadniczym kierunku zmian. PrzykBad zastosowania [rednich ruchomych przedstawia rys. 20. 23 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Rys. 20. PrzykBadowy szereg czasowy i wyznaczony na jego podstawie szereg [rednich ruchomych. Cel stosowania operacji r�|nicowania szeregu jest caBkowicie odmienny. PrzeksztaBcenie to ma doprowadzi do usunicia trendu i pozostawienia informacji wyBcznie o zmianach kr�tkookre-sowych. Wynik zastosowania tej operacji przedstawia rys. 21. Rys. 21. PrzykBadowy szereg czasowy i wyznaczony na jego podstawie szereg r�|nic. 24 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl W przypadku szereg�w powstaBych poprzez zBo|enie wikszej (i czsto nieznanej) liczby skBadowych przedstawione proste metody dekompozycji nie zawsze pozwalaj na identyfikacj i wydzielenie skBadowych szeregu. W realizacji tego zadania mo|e pom�c prezentacja danych w dziedzinie czstotliwo[ci, kt�ra ma na celu zobrazowanie nat|enia poszczeg�lnych skBadowych czstotliwo[ciowych. Najpopularniejszym narzdziem przej[cia z ujcia czasowego do ujcia czstotliwo[ciowego jest analiza Fouriera. Rys. 22. Czasowe i czstotliwo[ciowe ujcie przykBadowego szeregu czasowego. W prezentowanym przykBadzie (rys. 22) analiza czstotliwo[ciowa (po prawej stronie) wyraznie wskazuje na istnienie wahaD o okresie 12 jednostek czasu (miesicy). Poddawany badaniom szereg czasowy zostaB wpierw przeksztaBcony poprzez wyeliminowanie trendu i odjcie warto[ci [redniej. Z tego powodu uzyskane rezultaty uwzgldniaj charakteryzujce si stosunkowo kr�tkim okresem trwania zmiany sezonowe i nie zostaBy zdominowane przez informacje o trendzie (zmiany o niskich czstotliwo[ciach czyli dBugookresowe). Analiza Fouriera pozwala na identyfikacj skBadowych spektralnych wystpujcych w szeregu czasowym, ale nie dostarcza informacji dotyczcej ich lokalizacji w czasie - nie okre[la, czy zidentyfikowane wahania wystpuj na caBej dBugo[ci szeregu, czy te| tylko w pewnej jego cz[ci. Taki spos�b prowadzenia badaD prowadzi mo|e do bBdnej interpretacji uzyskanych wynik�w. 25 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Reprezentacja danych jako[ciowych Pewne informacje wpBywajce na przyszB warto[ szeregu czasowego maj charakter jako[ciowy. Informacje o takiej postaci nie mog by wprowadzane na wej[cia sieci neuronowej, kt�ra przystosowana jest do przetwarzania informacji w postaci ilo[ciowej. Brak mo|liwo[ci bezpo[redniego przetworzenia danych jako[ciowych przez sie neuronow wymusza konieczno[ ich wstpnego przeksztaBcenia do postaci numerycznej. Zastosowany spos�b przeksztaBcenia jest uzale|niony od skali pomiarowej wBa[ciwej do wyra|enia danych jako[ciowych. Zmienne dwustanowe (binarne) mog by reprezentowane przy pomocy pojedynczego neuronu, na wej[cie kt�rego wprowadza si warto[ci numeryczne odpowiadajce warto[ciom zmiennej binarnej. Zwykle stosuje si jeden z dw�ch popularnych spos�b kodowania. Pierwszy z nich zakBada, |e warto[ciom binarnym przypisuje si warto[ci 0 i 1, za[ drugi zaleca kodowanie warto[ci przy pomocy liczb -1 oraz +1. Zmienne nominalne wielostanowe s reprezentowane przy pomocy metody jeden-z-n. Stosujc ten spos�b reprezentacji liczba neuron�w odpowiadajca zmiennej jest r�wna liczbie mo|liwych warto[ci przyjmowanych przez zmienn. Ka|dy neuron odpowiada jednej warto[ci, za[ dana warto[ reprezentowana jest przez pojawienie si jedynki na odpowiadajcym jej neuronie i zer na wszystkich pozostaBych neuronach. Zmienne nominalne wielostanowe mog by r�wnie| reprezentowane przy pomocy pojedynczego neuronu. W�wczas (podobnie jak w przypadku zmiennych binarnych) wszystkim warto[ciom zmiennej przyporzdkowywane s numery, kt�re wprowadzane s na wej[cie neuronu odpowiada-jcego danej zmiennej. Skalowanie W wielu przypadkach sie neuronowa nie przetwarza bezpo[rednio oryginalnych warto[ci zmiennych obja[niajcych i obja[nianych, lecz operuje na warto[ciach przeskalowanych. Skalowanie dotyczy zar�wno zmiennych numerycznych jak i numer�w porzdkowych przypisanych poszczeg�lnym warto[ciom nominalnym. Celem skalowania warto[ci zmiennych wyj[ciowych jest dostosowanie ich warto[ci do zakresu warto[ci wyj[ciowych neuron�w wyj[ciowych. Skalowanie warto[ci zmiennych obja[niajcych ma na celu przeksztaBcenie ich warto[ci do takiego przedziaBu, dla kt�rego stopieD zmienno[ci logistycznych funkcji aktywacji jest najwikszy. Bardzo popularnym sposobem skalowania jest przeksztaBcenie warto[ci szeregu do przedziaBu [0; 1] albo do przedziaBu [-1; +1]. Po wykonaniu obliczeD przez sie neuronow nale|y wykona przeksztaBcenie powrotne, pozwalajce na przej[cie do pierwotnie stosowanej skali. 26 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Modele szereg�w czasowych wykorzystujce perceptrony wielowarstwowe Wstpna analiza danych prowadzi do uzyskania warto[ci, kt�re mog by przetwarzane przez sie neuronow. Decydujc si na konstrukcj modelu wykorzystujcego perceptron wielowarstwowy nale|y podj decyzje okre[lajce: �� jakie warto[ci nale|y wprowadza na wej[cia sieci, �� jak zaprojektowa cz[ ukryt sieci, �� jak przeprowadzi uczenie sieci. Odpowiedz na postawione powy|ej pytania uzale|niona jest od rzeczywistego charakteru opisywanej zale|no[ci, od dostpnych informacji i od liczebno[ci posiadanego zbioru danych. Wyb�r warto[ci wej[ciowych jest jednym z najwa|niejszych etap�w modelowania. Konstruujc sieci opisujce zachowanie szereg�w czasowych w charakterze warto[ci wej[ciowych przyjmuje si zwykle op�znione w stosunku do warto[ci obja[nianej warto[ci tego samego szeregu jak i op�znione warto[ci innych zmiennych. Nadmierne zwikszanie liczby wej[ prowadzi do rozbudowy sieci, co z kolei jest powodem zmniejszenia zdolno[ci do uog�lniania. Projektujc zbi�r wej[ nale|y rozwa|y uwzgldnienie tylko pewnych, nie ssiadujcych bezpo[rednio z sob warto[ci op�znionych. R�wnie| pominicie pewnych potencjalnych zmiennych wej[ciowych mo|e polepszy jako[ sieci. Istotnym elementem wpBywajcym na jako[ modelu jest r�wnie| prawidBowe zaprojektowanie cz[ci ukrytej sieci. Narzdziem sBu|cym do realizacji tego zadania s algorytmy konstrukcji sieci, kt�re okre[laj optymaln struktur na drodze poszukiwaD iteracyjnych. Ze wzgldu na spos�b dziaBania algorytmy konstrukcji sieci neuronowych podzieli mo|na na trzy grupy: �� redukujce - punktem wyj[cia jest sie o rozbudowanej strukturze - w trakcie uczenia zbdne poBczenia i/lub neurony s usuwane z sieci, �� rozbudowujce - punktem wyj[cia jest sie o prostej strukturze (bez warstw ukrytych) - w trakcie dziaBania dodawane s niezbdne neurony i/lub poBczenia, �� przeszukujce - bazujc na zestawie kilku struktur wej[ciowych tworzone s testowane r�|ne warianty sieci w celu okre[lenia struktury najlepiej przystosowanej do realizacji stawianych wymagaD. Je|eli na etapie wstpnej analizy danych przeprowadzono dekompozycj szeregu, to proces konstrukcji sieci nale|y powt�rzy dla ka|dej wydzielonej skBadowej. 27 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Sieci Kohonena w analizie szereg�w czasowych Narzdziem przydatnym w trakcie analizy, modelowania i prognozowania szereg�w czasowych mo|e by r�wnie| sie Kohonena. Zastosowanie tego narzdzia pozwala midzy innymi na wydzielenie podobnych fragment�w szeregu czasowego. Celem zastosowania sieci Kohonena jest przypisanie poszczeg�lnych przypadk�w do reprezentujcych je skupieD. Po dokonaniu klasyfikacji danych proces budowy modelu mo|e zosta zrealizowany niezale|nie dla ka|dej klasy. Spos�b zastosowania sieci Kohonena do klasyfikacji danych tworzcych szereg czasowy zilustrowany zostanie przykBadem dotyczcym modelowania opisanego wcze[niej szeregu obejmujcego sto warto[ci indeksu WIG. ZaBo|ono, ze ka|da warto[ szeregu uzale|niona jest od wskaznik�w technicznych: ROC, MACD oraz oscylatora stochastycznego. Klasyfikacja przypadk�w realizowana przez sie Kohonena przeprowadzana jest wyBcznie na podstawie warto[ci przyjtych zmiennych obja[niajcych. Proces tworzenia sieci w programie STATISTICA Neural Networks przedstawiony jest na rys. 23. Rys. 23. Konstrukcja sieci Kohonena w programie STATISTICA Neural Networks. Efektem dziaBania jest sie zaprezentowana na rys. 24. Rys. 24. Struktura sieci Kohonena wykorzystanej w analizie przykBadowego szeregu czasowego. Przeprowadzony proces uczenia sieci (zilustrowany wykresem zamieszczonym na rys. 25) doprowadziB do wydzielenia klas grupujcych poszczeg�lne elementy zbioru uczcego. 28 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Rys. 25. Zmiana warto[ci bBdu w trakcie uczenia sieci Kohonena. Liczebno[ poszczeg�lnych klas przedstawia zamieszczona poni|ej tabela. Tabela 1. Czsto[ci zwycistw poszczeg�lnych neuron�w wchodzcych w skBad mapy Kohonena. Uruchomienie sieci Kohonena pozwala przypisa ka|dy element przetwarzanego zbioru danych do jednej z wydzielonych klas (rys. 26). Rys. 26. Uruchomienie sieci Kohonena umo|liwiajce przypisanie przypadk�w do poszczeg�lnych klas. 29 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Interpretacj uzyskanych wynik�w uBatwia naniesienie warto[ci identyfikujcych klasy na wykres rozwa|anego szeregu czasowego (rys. 27). Rys. 27. Podobne fragmenty szeregu czasowego wyodrbnione przy pomocy sieci Kohonena. Sie Kohonena pozwala na charakterystyk uzyskanych klas. Najprostsz metod opisu wydzielonych grup jest wyznaczenie [redniej warto[ci zmiennej obja[nianej (WIG) dla poszczeg�lnych skupieD (tabela 2). Analiz danych zawartych w tabeli 2 uBatwia ich prezentacja graficzna (rys. 28). ZaBo|ono, |e ciemniejszy kolor fragment�w mapy odpowiada wy|szym warto[ciom indeksu WIG. Tabela 2. Zrednia warto[ indeksu WIG dla skupieD reprezentowanych przez neurony wchodzce w skBad utworzonej sieci Kohonena. Rys. 28. Graficzna prezentacja warto[ci indeksu WIG odpowiadajca obszarom mapy Kohonena. 30 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Analiza wykresu wskazuje, |e najwy|sze warto[ci indeksu odpowiadaj prawemu, g�rnemu naro|nikowi mapy. WIG osiga minimalne warto[ci dla przypadk�w reprezentowanych przez lewy, dolny fragment sieci Kohonena. Podobny spos�b prezentacji (numeryczny i graficzny) zastosowa mo|na dla [rednich warto[ci zmiennych obja[niajcych wyznaczonych dla poszczeg�lnych neuron�w zastosowanej sieci Kohonena. Por�wnanie wykres�w prezentujcych [rednie warto[ci zmiennych obja[niajcych dla poszczeg�lnych klas z wykresem przedstawiajcym [redni warto[ WIGu pozwala na identyfikacj zwizk�w zachodzcych pomidzy zmiennymi. Sie Kohonena stanowi mo|e r�wnie| narzdzie prognozowania. Je|eli celem predykcji ma by zmiana warto[ci indeksu WIG w nastpnym okresie, to nale|y przedstawi [rednie warto[ci zmian zachodzce dla dostpnych przypadk�w (w rozbiciu na wydzielone klasy). Tabela 3. Zrednia zmiana (procentowa) WIG'u w okresie nastpnym w stosunku do okresu bie|cego. Rys. 29. Zrednia zmiana indeksu WIG dla wyodrbnionych klas. Konstruujc prognoz dla nowego przypadku nale|y przypisa go do wBa[ciwej klasy. Jego podobieDstwo do element�w wcze[niej zaklasyfikowanych do tej samej grupy mo|e stanowi podstaw do oczekiwania, |e r�wnie| warto[ zmiennej obja[nianej bdzie si ksztaBtowa w podobny spos�b. Pr�ba sformalizowania przedstawionej metody polega mo|e na budowie oddzielnego modelu prognostycznego (wykorzystujcego perceptron wielowarstwowy) dla ka|dej wydzielonej klasy. Algorytm genetyczny jako narzdzie optymalizacji neuronowych modeli szereg�w czasowych Charakterystyka algorytm�w genetycznych Algorytmy genetyczne s modelami rozwoju populacji chromosom�w. W klasycznej wersji algorytmu przez chromosom rozumie si BaDcuch warto[ci binarnych o okre[lonej 31 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl dBugo[ci. Algorytmy genetyczne sBu| do rozwizywania zagadnieD z dziedziny optymalizacji. Najcz[ciej s to zadania typu: a wic polegajce na znalezieniu takiego zestawu parametr�w x1, ..., xn (bdcych liczbami rzeczywistymi), dla kt�rych funkcja celu FC przyjmuje warto[ maksymaln. Spos�b dziaBania algorytmu genetycznego w trakcie rozwizywania problem�w tego typu skBada si z nastpujcych etap�w: 1. przyjcie sposobu kodowania rzeczywistych parametr�w funkcji przystosowania w postaci chromosomu (BaDcucha zer i jedynek) - okre[lenie w jaki spos�b ka|dy parametr bdzie zamieniany na posta binarn (dw�jkow) i z ilu zer i jedynek bdzie si skBada binarna reprezentacja liczby rzeczywistej. PoBczone ze sob liczby binarne reprezentujce kolejne parametry tworz chromosom, 2. okre[lenie postaci funkcji przystosowania - jest to funkcja, kt�rej warto[ uzale|niona jest od wszystkich parametr�w x1, ..., xn. Funkcja ta sBu|y do oceny analizowanego zestawu parametr�w, im wy|sza jej warto[, tym lepsze dobrano parametry. Je[li celem algorytmu genetycznego jest maksymalizacja pewnej funkcji celu FC, to w charakterze funkcji przystosowania mo|na wykorzysta t sam funkcj FC, 3. losowy dob�r punkt�w startowych - proces poszukiwaD optymalnego zestawu parametr�w rozpoczyna si od losowego wyboru punkt�w startowych (zestaw�w parametr�w), przedstawione one zostaBy w kolumnie Parametry; nastpnie ka|dy z tych zestaw�w kodowany jest w postaci chromosomu (kolumna Populacja w poni|ej zamieszczonej tabeli); w kolejnym kroku dla ka|dego zestawu parametr�w obliczana jest warto[ funkcji przystosowania (kolumna FP), 4. selekcja chromosom�w do nowej populacji - dla ka|dego chromosomu okre[la si prawdopodobieDstwo wej[cia do nowej populacji; jest ono uzale|nione od warto[ci funkcji przystosowania: im wy|sza warto[ funkcji przystosowania (co oznacza lepsze parametry), tym wiksze jest prawdopodobieDstwo wej[cia do nowej populacji. Wyb�r osobnik�w do nowej populacji realizowany jest zgodnie z reguB ruletki - ka|demu osobnikowi odpowiada wycinek koBa o wielko[ci proporcjonalnej do warto[ci funkcji przystosowania, a nastpnie wybierany jest w spos�b losowy punkt znajdujcy si na kole i do nowej populacji przechodzi ten chromosom, kt�remu odpowiadaB wylosowany fragment koBa. Proces ten jest powtarzany a| do chwili, w kt�rej liczba chromosom�w w nowej populacji bdzie r�wna liczbie chromosom�w w starej populacji. W trakcie tworzenia nowej populacji preferowane s lepsze (w sensie zdefiniowanej funkcji przystosowania) chromosomy. 32 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Tabela 4. Schemat dziaBania algorytmu genetycznego. 5. w odniesieniu do osobnik�w nowej populacji stosuje si (z pewnymi prawdopodobieDstwami) operatory genetyczne, z kt�rych najpopularniejsze to: krzy|owanie oraz mutacja. Spos�b dziaBania tych operator�w przedstawia poni|szy schemat: �� Operator krzy|owania - operator dziaBajc na dw�ch chromosomach; wyznacza si punkt przecicia (oznaczony "^"), a nastpnie tworzy si dwa chromosomy potomne poprzez poBczenie materiaBu genetycznego pochodzcego z obu chromosom�w. Spo[r�d chromosom�w potomnych wybiera si w spos�b losowy jednego osobnika, kt�ry umieszczany jest w nowej populacji. Aby zachowa liczebno[ populacji usuwany jest z niej jeden osobnik (chromosom przeznaczony do usunicia wybierany jest losowo, ale preferowane s osobniki gorsze). C1: [0 1 0 1 1 0 1 1 0 1 1 0 1 0] C2: [1 0 0 1 0 1 1 0 1 1 1 0 0 0] ^ P1: [0 1 0 1 1 0 1 0 1 1 1 0 0 0] P2: [1 0 0 1 0 1 1 1 0 1 1 0 1 0] �� Operator mutacji - zamiana warto[ci jednego (losowo wybranego bitu) na przeciwny. C1: [0 1 1 1 0 1 1 0 1 0 1 1 1 0] ^ P1: [0 1 1 1 1 1 1 0 1 0 1 1 1 0] 6. powy|szy schemat postpowania powtarzany jest a| do chwili, w kt�rej warto[ funkcji przystosowania przyjmie akceptowan przez badacza warto[ lub te| do momentu zrealizowania zadanej przez u|ytkownika liczby iteracji. Chromosom o najwy|szej warto[ci funkcji przystosowania zawiera zakodowan posta parametr�w rozwizywanego zadania. 33 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl 7. dekodowanie znalezionego zestawu parametr�w. Podstawowe wBa[ciwo[ci metody rozwizywania problem�w optymalizacyjnych przy u|yciu algorytm�w genetycznych to: �� s metod optymalizacji globalnej, a nie lokalnej - przy wBa[ciwie dobranych parametrach algorytm genetyczny wyznacza maksimum globalne optymalizowanej funkcji (w odr�|nieniu od metod gradientowych, kt�re mog zatrzyma si w maksimum lokalnym), �� nie przetwarzaj bezpo[rednio parametr�w zadania, lecz ich zakodowan posta, �� prowadz poszukiwanie, wychodzc nie z pojedynczego punktu, lecz z pewnej ich populacji, �� korzystaj tylko z funkcji celu, nie za[ z jej pochodnych lub innych pomocniczych informacji, �� stosuj probabilistyczne, a nie deterministyczne reguBy wyboru. Zastosowanie algorytm�w genetycznych do optymalizacji neuronowych modeli szereg�w czasowych W czasie konstrukcji modeli neuronowych badacz musi podj wiele decyzji zwizanych z tworzonymi narzdziami i majcymi istotny wpByw na prawidBowo[ ich p�zniejszego dziaBania. Najistotniejsze problemy zwizane s z: �� okre[leniem zbioru zmiennych wej[ciowych, �� wyborem wBa[ciwego sposobu preprocessingu danych, �� doborem wBa[ciwej liczby op�znionych (przeszBych) warto[ci szereg�w uwzgldnianych w charakterze informacji wej[ciowej, �� doborem wBa[ciwej struktury sieci (przede wszystkim jej warstwy ukrytej: liczba poBczeD, przyjty model neuronu, topologia poBczeD). Narzdziem wspomagajcym dob�r poprawnych warto[ci wspomnianych parametr�w mo|e by algorytm genetyczny. Jego u|ycie wymaga przyjcia sposobu kodowania warto[ci poszukiwanych parametr�w w chromosomie. Informacje o charakterze dwustanowym (uwzgldni dan zmienn czy te| nie; wprowadzi na wej[cie sieci okre[lon przeszB warto[ szeregu czasowego lub nie; zastosowa skalowanie danych wej[ciowych czy te| nie) kodowane s zwykle na pojedynczej pozycji chromosomu (warto[ 1 mo|e by interpretowana jako TAK, warto[ 0 jako NIE). Po rozwizaniu problemu kodowania parametr�w zadania nale|y okre[li spos�b wyznaczania warto[ci funkcji przystosowania sBu|cej do okre[lania jako[ci ka|dego chromosomu. Zwykle w celu oszacowania jako[ci chromosomu przeprowadza si rozkodowanie parametr�w, a nastpnie buduje si model neuronowy uwzgldniajcy odczytane informacje i przeprowadza si jego uczenie. BBdy wyznaczone w rezultacie 34 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl zastosowania utworzonego w ten spos�b modelu s wykorzystywane do wyznaczenia warto[ci funkcji przystosowania. Wz�r okre[lajcy funkcj przystosowania mo|e uwzgldnia warto[ bBdu sieci wyznaczon na podstawie zbioru uczcego, ale w�wczas spos�b oceny jako[ci chromosom�w uwzgldnia wyBcznie posiadan przez sie zdolno[ do aproksymacji. W celu uwzgldnienia charakteryzujcej model zdolno[ci do generalizacji mo|na uwzgldni tak|e warto[ bBdu dla zbioru walidacyjnego. Czsto funkcja przystosowania uwzgldnia opr�cz bBd�w r�wnie| inne charakterystyki modelu utworzonego na podstawie informacji przechowywanych w chromosomie. PrzykBadem mog by wielko[ci opisujce struktur sieci i liczb zmiennych wej[ciowych. Spos�b uwzgldnienia tych wielko[ci powinien preferowa modele prostsze, posiadajce mniejsz liczb element�w, gdy| one zwykle posiadaj wiksz zdolno[ do uog�lniania wiedzy zawartej w zbiorze uczcym. Nale|y podkre[li, |e proces konstrukcji sieci na podstawie informacji zawartych w chromosomie i nastpujce po nim uczenie uzyskanego modelu musi by wykonane ka|dorazowo przy wyznaczaniu jako[ci chromosomu. W czasie dziaBania algorytmu optymalizacji genetycznej liczba oszacowanych sieci neuronowych jest iloczynem liczby chromosom�w wchodzcych w skBad populacji oraz liczby rozpatrywanych pokoleD. Konieczno[ wielokrotnego uczenia sieci zwiksza w znacznym stopniu wymagania czasowe proponowanej procedury. W programie STATISTICA Neural Networks u|ytkownik mo|e skorzysta z algorytmu genetycznego wybierajc zestaw zmiennych wej[ciowych. Wybierajc opcje Uczenie - Narzdzia dodatkowe - Dob�r cech wy[wietlone zostanie okno pozwalajce na dokonanie wyboru zmiennych wej[ciowych najlepiej opisujcych ksztaBtowanie si warto[ci zmiennej wyj[ciowej (w rozpatrywanym przykBadzie byB ni wskaznik WIG). Rys. 30. Dob�r zmiennych wej[ciowych przy pomocy algorytmu genetycznego w programie STATISTICA Neural Networks. Ocena testowanych zestaw�w zmiennych wej[ciowych jest dokonywana na podstawie bBdu osignitego dla zbioru uczcego lub walidacyjnego (o ile taki zostaB zdefiniowany). Do bBdu sieci dodawany jest tzw. czBon kary bdcy iloczynem zdefiniowanego wsp�Bczynnika (Kara jednostkowa) i liczby uwzgldnionych zmiennych. Zdefiniowanie czBonu kary wyra|a d|enie do minimalizacji zbioru zmiennych wej[ciowych. 35 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Ocena neuronowych modeli szereg�w czasowych Skonstruowany model nale|y podda ocenie, kt�ra najcz[ciej realizowana jest poprzez wyznaczenie warto[ci i interpretacj r�|norodnych miernik�w jako[ci modelu. Stosowane miary jako[ci podzieli mo|na na dwie grupy: �� mierniki uniwersalne, �� mierniki specyficzne dla dziedziny zastosowaD. Pierwsz z wymienionych klas miernik�w stanowi mierniki uniwersalne, stosowane czsto do oceny metod prognozowania stosowanych w r�|norodnych dziedzinach zastosowaD. Mierniki uniwersalne podzieli mo|na na dwie grupy: �� mierniki bezwzgldne, kt�rych warto[ci bazuj najcz[ciej na u[rednionej warto[ci r�|nic pomidzy warto[ciami teoretycznymi i rzeczywistymi dla posiadanego zestawu danych. Warto[ci miernik�w wyznaczane s oddzielnie dla zbioru uczcego, walidacyjnego i testowego. Dziki temu u|ytkownik mo|e okre[li zar�wno poprawno[ modelu dla danych wykorzystywanych w procesie szacowania, jak r�wnie| dla nowych przypadk�w. �� mierniki wzgldne por�wnujce uzyskane wyniki z rezultatami uzyskanymi przy pomocy innych metod (przyjtych za punkt odniesienia). W przypadku zastosowania modeli neuronowych czsto por�wnuje si wyniki generowane przez sie z prostymi prognozami zakBadajcymi, |e nastpna warto[ szeregu r�wna bdzie warto[ci bezpo[rednio j poprzedzajcej. Lub te| por�wnuje si rezultaty uzyskane dziki sieciom o zBo|onej strukturze z wynikami dostarczanymi przez proste sieci liniowe. Wymienione tu sposoby oceny sieci wskazuj, czy zastosowanie wyrafinowanych obliczeniowo modeli przynosi rzeczywiste efekty. Wybrane uniwersalne mierniki jako[ci wyznaczane s przez ka|dy symulator sieci neuronowych. R�wnie| STATISTICA Neural Networks wyznacza dla utworzonej sieci szereg statystyk pozwalajcych na ocen skonstruowanego modelu. Rys. 31. Statystyki regresyjne wyznaczane w programie STATISTICA Neural Networks. 36 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Je|eli zestaw miernik�w oka|e si niewystarczajcy, to dysponujc warto[ciami rzeczywistymi jak r�wnie| odpowiadajcymi im warto[ciami wyznaczonymi przez sie, mo|liwe jest zdefiniowanie warto[ci innych miernik�w. Przeprowadzajc ocen neuronowych modeli szereg�w czasowych przy pomocy uniwersalnych miernik�w jako[ci nale|y pamita o: �� warto[ci wielu miernik�w nie s unormowane co powoduje, |e w wielu przypadkach trudno oceni jako[ modelu na podstawie wyznaczonej warto[ci. Ta grupa miernik�w nie pozwala r�wnie| na por�wnanie modeli uzyskanych na podstawie r�|nych danych; �� ocena modelu neuronowego powinna uwzgldnia zar�wno umiejtno[ aproksymacji jak i generalizacji. Uwzgldnienie wyBcznie bBd�w uzyskanych dla zbioru uczcego preferuje zwykle modele rozbudowane, dopasowujce si do danych uczcych, ale nie posiadajce umiejtno[ci uog�lniania zgromadzonej wiedzy; �� niekt�re miary jako[ci modelu s wra|liwe na wykonanie (lub te| na zaniechanie wykonania) wstpnych przeksztaBceD szeregu czasowego. PrzykBadem mo|e by skalowanie warto[ci szeregu, usunicie trendu itd. �� wnioski pBynce z uzyskanych miar jako[ci modelu s uzale|nione od celu zastosowaD utworzonego modelu (bBd na poziomie 1% bdzie inaczej oceniany przez przy prognozowaniu cen, a inaczej przy konstrukcji urzdzeD sterujcych procesem produkcyjnym). Drug grup miernik�w jako[ci neuronowych modeli prognostycznych stanowi miary [ci[le dostosowane do specyfiki dziedziny, na potrzeby kt�rej skonstruowano sie. Ich dziedzinowy charakter pozwala na lepsz ocen przydatno[ci tworzonych modeli do konkretnej sytuacji. PrzykBadem zwizanym z zastosowaniami finansowymi mo|e by miernik wskazujcych na odsetek przypadk�w, w kt�rym prawidBowo okre[lono kierunek (a nie wielko[) zmian cen. Inn metod oceny mo|e by wyra|ony w jednostkach pieni|nych efekt stosowania modelu prognostycznego w automatycznym systemie prognostycznym. Narzdziami pomocnymi w procesie oceny neuronowych modeli prognostycznych mog by r�wnie| rezultaty analizy graficznej oraz wyniki test�w sprawdzajcych charakter szeregu reszt. Prognozy przedziaBowe Rezultatem dziaBania neuronowego modelu prognostycznego jest zazwyczaj pojedyncza warto[, generowana przez neuron znajdujcy si w ostatniej warstwie sieci. Taki spos�b funkcjonowania nie zawsze jest zgodny z oczekiwaniami u|ytkownika, gdy| w wielu zastosowaniach wiksz u|ytecz-no[ci mog si charakteryzowa metody dostarczajce prognoz przedziaBowych. Konstruujc prognoz przedziaBow wyznacza si przedziaB 37 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl predykcji, do kt�rego z ustalonym prawdopodobieDstwem nale|e bdzie warto[ zmiennej prognozowanej. Perceptron wielowarstwowy nie mo|e generowa w spos�b bezpo[redni prognoz przedziaBowych. Wyznaczenie prognozy tego typu wymaga znajomo[ci rozkBadu oczekiwanego bBdu prognozy. W celu oszacowania jego parametr�w mo|na posBu|y si metod bootstrapow, kt�ra umo|liwia estymacj nieznanego parametru rozkBadu zmiennej losowej [redni z oszacowaD parametru wyznaczonych na podstawie pr�b bootstrapowych. Pr�by bootstrapowe generowane s N razy poprzez losowanie ze zwracaniem element�w z dostpnego zbioru danych. Liczebno[ ka|dej pr�by bootstrapowej jest r�wna liczbie element�w wchodzcych w skBad pierwotnego zbioru danych. Schemat postpowania przystosowany do symulacyjnego szacowania oczekiwanych bBd�w prognoz uzyskiwanych przy pomocy modeli neuronowych przedstawia poni|szy rysunek. Rys. 32. Metoda bootstrapowa w modelowaniu neuronowym. Punktem wyj[cia do prowadzonych obliczeD jest posiadany zbi�r danych, a ich celem jest oszacowanie parametr�w rozkBadu bBd�w prognoz. W ka|dej z N iteracji z posiadanego zbioru losowane s (ze zwracaniem) elementy tworzce zbi�r bootstrapowy. Dla ka|dego, wygenerowanego w ten spos�b zbioru, przeprowadzany jest proces konstrukcji modelu neuronowego. U[rednione parametry rozkBadu statystyk charakteryzujcych bBdy w pr�bach bootstrapowych stanowi oszacowanie parametr�w rozkBadu bBd�w prognoz. Dysponujc oszacowaniami parametr�w rozkBadu bBd�w prognoz uzyskanych przy pomocy modelu neuronowego mo|na podj pr�b skonstruowania przedziaBu predykcji. 38 www.StatSoft.pl Copyright � StatSoft Polska StatSoft Polska, tel. 12 428 43 00, 601 41 41 51, info@statsoft.pl, www.StatSoft.pl Wnioski koDcowe Sztuczne sieci neuronowe stanowi narzdzie modelowania i prognozowania interesujce zar�wno dla teoretyk�w jak i dla praktyk�w. Mog one opisywa zale|no[ci wystpujce pomidzy zmiennymi, s narzdziem generowania prognoz, umo|liwiaj badanie struktury danych. Wyniki uzyskane dziki zastosowaniu modeli neuronowych wskazuj, |e stanowi one cenne uzupeBnienie innych metod modelowania. 39 Copyright � StatSoft Polska http://www.StatSoft.pl/Czytelnia

Wyszukiwarka

Podobne podstrony:
Sztuczna inteligencja we wspomaganiu procesu prognozowania w przedsiębiorstwie
E FILIPOWICZ I J KWIECIEă ANALIZA MO˝LIWO—CI ZASTOSOWANIA METOD SZTUCZNEJ INTELIGENCJI W MEDYCYNIE
sztuczna inteligencja logik rozmyta 0
Sztuczna inteligencja wykład cz 1
Sztuczna Inteligencja 2
26 Podstawy filozoficzne sztucznej inteligencji
sztuczna inteligencja cw3 synt ukl wnioskuj
Logiczne podejście do reprezentacji wiedzy w sztucznej inteligencji
Metody sztucznej inteligencji
Marciszewski Czy juz zyjemy w erze sztucznej inteligencji
09 Inteligentne prognozowanie w logistyce
Sztuczna inteligencja wykład cz2
sztuczna inteligencja cw2 relacje rozmyte

więcej podobnych podstron