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 ukBadw nerwowych organizmw |ywych. Sztuczna sie neuronowa jest zespoBem poBczonych ze sob elementw przetwarzajcych (neuronw). 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 zarwno 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 wspBczynnik zwany wag. WspBczynniki wagowe neuronu s podstawowymi parametrami wpBywajcymi na sposb funkcjonowania sztucznej komrki nerwowej. Przetwarzanie informacji przez sztuczny neuron skBada si z dwch etapw. 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 sposb wpBywaj warto[ci wag. Spo[rd wielu sposobw 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 iloczynw warto[ci wej[ciowych i odpowiadajcych im wag. W niektrych 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, ktre 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 wspBczynnik. Bardzo du| popularno[ci ciesz si dwie funkcje aktywacji okre[lane jako funkcje s-ksztaBtne (z uwagi na posta ich wykresw). Pierwsz z nich jest funkcja sigmoidalna o warto[ciach z przedziaBu od 0 do 1. Drug funkcj jest funkcja tangensoidalna, ktrej wykres (rwnie| przypominajcy spBaszczon liter "s") rozciga si w zakresie od minus do plus jedno[ci. W niektrych zastosowaniach stosowane s gaussowskie funkcje aktywacji, ktre 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 sposb dziaBania sztucznej sieci neuronowej Sztuczna sie neuronowa jest zespoBem poBczonych ze sob neuronw (rys. 3). Rys. 3. PrzykBadowa sztuczna sie neuronowa. Zwykle neurony wchodzce w skBad sieci tworz warstwy, z ktrych 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 neuronw warstwy wej[ciowej. Nastpnie, poprzez istniejce poBczenia, warto[ci wyj[ciowe neuronw jednej warstwy przekazywane s na wej[cia elementw przetwarzajcych kolejnej warstwy. Warto[ci uzyskane na wyj[ciach neuronw ostatniej warstwy s jednocze[nie warto[ciami wyj[ciowymi sieci. PrawidBowo skonstruowana sie neuronowa mo|e sBu|y do rozwizywania wielu typw 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 obiektw 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, ktrej poszczeglne warto[ci reprezentuj klasy, do ktrych 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 rwnie| 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 Sposb funkcjonowania sieci neuronowej, gwarantujcy prawidBowe rozwizywanie postawionych przed ni problemw, uzale|niony jest od dwch podstawowych czynnikw: warto[ci wspBczynnikw wagowych neuronw skBadajcych si na sie, struktury sieci (topologii), ktra okre[lana jest przez liczb warstw, liczb neuronw w poszczeglnych warstwach, sposb 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 (sposb agregacji danych wej[ciowych, rodzaj zastosowanej funkcji aktywacji). Proces majcy na celu okre[lenie prawidBowych warto[ci parametrw 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 zestaww danych, ktre ilustruj przebieg badanych zjawisk dla wybranych obiektw i/lub przeszBych okresw 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 parametrw sieci majca na celu popraw jej funkcjonowania. Sposb 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 zbir uczcy zawiera zarwno 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 sposb warto[ porwnywana jest z rzeczywist warto[ci przechowywan w zbiorze uczcym. Je[li porwnywane warto[ci nie s rwne, to parametry sieci (wagi) modyfikowane s w taki sposb, 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 wzorcw uczcych i odpowiadajcej im modyfikacji wag. Jednokrotna prezentacja wszystkich wzorcw uczcych nazywana jest epok uczenia. Osoba tworzca sie ocenia przebieg uczenia obserwujc zmiany w warto[ci bBdu uczenia (rys. 5), ktry okre[la stopieD niedopasowania warto[ci rzeczywistych i teoretycznych w sposb 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 zbir uczcy obejmujcy wyBcznie warto[ci zmiennych wej[ciowych. W tym przypadku zbir uczcy nie zawiera |adnych informacji na temat warto[ci po|danych na wyj[ciach sieci. Celem uczenia jest osignicie przez sie stanu rwnowagi. Rys. 6. Uczenie bez nauczyciela. Uczenie bez nauczyciela wykorzystywane jest gBwnie przy tworzeniu modeli rozwizujcych zagadnienia klasyfikacji bezwzorcowej. W trakcie uczenia sie musi rozpozna struktur zbioru danych i przypisa poszczeglne przypadki do wBa[ciwych klas. Uczenie koDczy si w chwili, gdy w trakcie kolejnych prezentacji przypadkw uczcych nie zachodz zmiany w sposobie przyporzdkowania obiektw 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 porwnanie 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 porwnuje si wektory wej[ciowe z odpowiadajcymi im wektorami wspBczynnikw wagowych). Przedstawiona charakterystyka stosowanych trybw 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 neuronw ukrytych ma rwnie| swoje wady - zwiksza liczb parametrw sieci szacowanych w czasie uczenia, co czsto w istotny sposb 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, ktre 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 zbir 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, ktra przejawia si bdzie w tym, |e wyniki obliczone przez sie bd poprawne nie tylko dla tych warto[ci zmiennej X1, ktre wystpiBy w zbiorze uczcym, ale rwnie| dla tych, ktre nie byBy wprowadzane na wej[cia w trakcie uczenia (ktre 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 neuronw 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, ktre 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 grna - 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 zbir danych dzielony jest na trzy cz[ci: omwiony ju| zbir uczcy (prezentowany sieci w trakcie uczenia i sBu|cy do modyfikacji warto[ci parametrw), zbir walidacyjny (pozwalajcy na monitorowanie procesu uczenia sieci) oraz zbir 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 przypadkw 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 mwi wwczas, 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 punktw uczcych i o utracie zdolno[ci do uoglniania 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 neuronw 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 neuronw 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 eksperymentw badawczych. Bardzo pomocne s w tym zakresie odpowiednio skonstruowane programy komputerowe, ktre w oparciu o zaimplementowane heurystyki i przeprowadzone eksperymenty proponuj wBa[ciw struktur sieci. Po przeprowadzeniu uczenia, w wyniku ktrego 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 powtrzenia 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 neuronw wej[ciowych ma charakter liniowy, neuronw ukrytych nieliniowy (najcz[ciej s-ksztaBtny), za[ neuronw 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 perceptronw wielowarstwowych, nale|y zauwa|y, |e: uczenie polega na prbie wyznaczenia minimum funkcji bBdu; zwykle stosuje si techniki wyznaczania minimum oparte na gradiencie (metoda wstecznej propagacji bBdw 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 (zbir uczcy zawiera przykBadowe zestawy danych wej[ciowych i odpowiadajcych im danych wyj[ciowych), czas uczenia percetronw wielowarstwowych jest dBugi w porwnaniu z nakBadami czasowymi niezbdnymi do przeprowadzenia uczenia innych typw 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 krtki i |e wymagaj niewielkich obszarw pamici. Do podstawowych problemw pojawiajcych si w trakcie ich konstrukcji nale|y zaliczy dobr wBa[ciwej struktury (liczba warstw i liczba neuronw w warstwach ukrytych) oraz unikanie minimw 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 neuronw: 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 twrc sposb uporzdkowania neuronw 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 neuronw 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 neuronw, 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 sposb uczenia i funkcjonowania sieci Kohonena w istotny sposb wpBywa pojcie ssiedztwa, ktre odnosi si do neuronw warstwy wyj[ciowej. Ssiedztwo danego neuronu rozumiane jest jako zbir ssiadujcych z nim neuronw. Podstawowym parametrem ssiedztwa jest jego promieD. Wraz ze wzrostem jego warto[ci zwiksza si zasig ssiedztwa, a tym samym liczba neuronw uznawanych za ssiadw. Rysunek 14 prezentuje ssiedztwo neuronu znajdujcego si na przeciciu czwartego wiersza z trzeci kolumn (neuron ten zaznaczony jest ciemnym kolorem). Jego ssiedztwo o promieniu rwnym jedno[ci obejmuje neurony bezpo[rednio z nim ssiadujce (osiem neuronw zaznaczonych ciemnoszarym kolorem). Natomiast ssiedztwo o promieniu rwnym 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 sposb mo|na definiowa ssiedztwa o wikszym promieniu. Natomiast w skBad ssiedztwa o promieniu rwnym zero wchodzi tylko jeden neuron - ten, dla ktrego wyznaczane jest to ssiedztwo (czyli tzw. neuron centralny). Rys. 14. Neuron centralny (zaciemniony obszar mapy) i jego ssiedztwa o promieniu rwnym jeden (kolor ciemnoszary) i dwa (kolor jasnoszary). Ka|dy neuron wyj[ciowy posiada wektor wag, w ktrym liczba elementw jest rwna liczbie neuronw wchodzcych w skBad warstwy wej[ciowej. W trakcie funkcjonowania sieci wektor warto[ci wej[ciowych (obejmujcy warto[ci wyj[ciowe neuronw pierwszej warstwy) porwny-wany jest z wektorem wag ka|dego neuronu wyj[ciowego. Porwnanie to realizowane jest zwykle poprzez obliczenie kwadratu odlegBo[ci Euklidesa pomidzy wspomnianymi wektorami (funkcj t realizuje radialna funkcji agregacji). Neuron wyj[ciowy, dla ktrego 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 zbir uczcy, ktrego ka|dy element jest wektorem o liczbie elementw odpowiadajcej liczbie neuronw w warstwie wej[ciowej sieci. W pocztkowej fazie uczenia wagi przyjmuj warto[ci rwne niewielkim liczbom losowym. Po prezentacji wzorca uczcego obliczana jest odlegBo[ pomidzy warto[ciami wej[ciowymi a wagami kolejnych neuronw 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 wektorw wej[ciowych). Warto[ci te s wzajemnie porwnywane i wyznaczany jest neuron zwyciski, ktrego wagi s w najwikszym stopniu zbli|one do wektora wej[ciowego. Nastpnie wagi neuronu zwyciskiego s modyfikowane w sposb 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 rwnie| dla wszystkich neuronw 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 neuronw znajdujcych si w odlegBych od siebie obszarach mapy. Cechy modeli neuronowych Sztuczne sieci neuronowe posiadaj szereg cech, dziki ktrym mog stanowi przydatne narzdzie modelowania i prognozowania szeregw 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 szeregw 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 rwnie| charakteryzuj si zdolno[ciami generalizujcymi. 2. Proces budowy modelu neuronowego polega na eksploracji dostpnych zbiorw 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 wwczas nakBady zwizane z oszacowaniem modelu sieciowego mog by wy|sze ni| nakBady niezbdne do obliczenia parametrw danego w postaci rwnania 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 poszczeglnymi 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 parametrw na podstawie nielicznego zbioru uczcego prowadzi najcz[ciej do powstania modeli dopasowujcych si do danych uczcych, ale nie posiadajcych zdolno[ci do opisu oglnych prawidBowo[ci istniejcych w danych. 2. trudno znalez uzasadnienie dla stosowania modeli neuronowych w sytuacji, w ktrej znany jest charakter wystpujcej prawidBowo[ci (np. znana jest posta funkcji opisujcej analizowane zjawisko). W takim przypadku oszacowanie parametrw funkcji pociga za sob mniejsze nakBady i prowadzi do powstania modelu Batwiejszego w interpretacji. Nawet wwczas, gdy speBnione s warunki uzasadniajce stosowanie modeli neuronowych nale|y pamita, |e oprcz zalet posiadaj one rwnie| pewne sBabe strony, mogce przyczynia si do powstawania problemw na etapie budowy modelu. Do najistotniejszych minusw 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 neuronw i sposb ich poBczenia), 3. konieczno[ wyboru wBa[ciwego algorytmu uczenia sieci, 4. wysokie nakBady czasowe zwizane z oszacowaniem modelu neuronowego, 5. brak (w wikszo[ci przypadkw) mo|liwo[ci bezpo[redniej interpretacji poszczeglnych wspBczynnikw modelu neuronowego. Etapy budowy neuronowego modelu szeregu czasowego Proces budowy neuronowego modelu szeregu czasowego ma charakter wieloetapowy. SkBada si z kilku nastpujcych po sobie etapw, z ktrych 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 rwnie| preprocessingiem) obejmuje te czynno[ci, ktre 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 sposb agregacji wynikw dostarczanych przy pomocy tak skonstruowanych modeli czstkowych. Ostatnim etapem procesu konstrukcji modelu szeregu czasowego jest jego ocena. Ocena powinna obejmowa zarwno analiz posiadanych przez model zdolno[ci aproksymujcych jak i umiejtno[ci generalizacji zgromadzonej wiedzy. Zastosowany system miernikw 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 wwczas, gdy podjta prba realizacji kolejnej fazy modelowania koDczy si niepowodzeniem. Wwczas nale|y zwykle powtrzy (wszystkie lub tylko wybrane) wcze[niej zrealizowane kroki analizy. Wstpna analiza szeregw czasowych Przed rozpoczciem budowy modelu szeregu czasowego i przed jego prognozowaniem zgromadzone dane poddawane s analizie wstpnej (ten etap prac okre[lany jest rwnie| 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 punktw bie|cego rozdziaBu. Wyjtkiem bdzie zagadnienie redukcji zbioru danych wej[ciowych, ktre zostanie omwione 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 przypadkw peBne zagwarantowanie poprawno[ci nie jest mo|liwe, za[ przeprowadzenie procedury weryfikujcej ma na celu minimalizacj prawdopodobieDstwa wystpienia bBdw lub brakw w danych. Najlepszym sposobem zwikszenia wiarygodno[ci danych jest porwnanie informacji pochodzcych z kilku niezale|nych zrdeB. Jednak|e sposb weryfikacji bazujcy na alternatywnym zrdle danych nie zawsze jest mo|liwy do realizacji, a jego stosowanie zwizane jest zwykle ze znacznym zwikszeniem nakBadw czasowych i finansowych. Ten sposb weryfikacji nie gwarantuje rwnie| wykrycia bBdw powstaBych na etapie pomiaru danych. Du|a cz[ metod badania poprawno[ci danych szczegln uwag przywizuje do warto[ci nietypowych, a wic tych, ktre w znaczny sposb odbiegaj od warto[ci charakterystycznych dla analizowanej zmiennej. Mechaniczne odrzucenie warto[ci nietypowych nie musi by poprawne, gdy| w[rd nich mog si znalez zarwno warto[ci bBdne jak i anomalie, ktre 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 prby 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 zrdBa danych (jest najlepszy sposb 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 szeregw 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 rwnie| zagadnienie brakw danych. W przypadku szeregw czasowych warto[ci brakujcych zwykle nie mo|na pomin, gdy| mo|e to znacznie utrudni pzniejsz identyfikacj wystpujcych prawidBowo[ci. Podobnie jak w przypadku warto[ci bBdnych, najcz[ciej zaleca si zastpienie brakw warto[ciami pochodzcymi z innych zrdeB 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 wykresw rozrzutu danych. Naniesione na wykres punkty pozwalaj oceni stopieD jednorodno[ci danych. Graficzna prezentacja przypadkw 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 zbir 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, ktre szybciej si ucz i generuj mniejsze bBdy. Wad modeli tego typu jest niewykorzystanie informacji wynikajcych z Bcznego rozpatrywania obiektw nale|cych do r|nych grup wydzielonych ze wzgldu na wymg 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, ktre 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 sposb pozwalajcy na wyeksponowanie pewnych, istotnych z punktu widzenia celu analizy, cech charakterystycznych szeregu. Operacjonalizacja danych majcych posta szeregw 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, ktre reprezentuj kolejno warto[ci ujemn, rwn zero i dodatni, 3. szeregu r|nic wzgldnych o postaci gdzie q mo|e by rwne 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 sposb warto[ci okre[lane s jako przyrosty wzgldne, 4. szeregu warto[ci (indeksy dynamiki), 5. logarytmw naturalnych z warto[ci szeregu xt, 6. logarytmw naturalnych z indeksw dynamiki, 7. pierwiastkw kwadratowych lub sze[ciennych z warto[ci szeregu, 8. wspBczynnikw udziaBu okresw wyra|anych jako iloraz warto[ci szeregu w danym okresie i sumy warto[ci obliczonej dla wszystkich okresw. Oprcz wymienionych powy|ej uniwersalnych metod operacjonalizacji szeregw czasowych zastosowa mo|na rwnie| metody przeksztaBceD specyficzne dla rozpatrywanej dziedziny zastosowaD. W przypadku finansowych szeregw czasowych przydatnym narzdziem przeksztaBcania danych mo|e by wyznaczenie warto[ci wskaznikw technicznych. Dobr odpowiednich wskaznikw uzale|niony jest w du|ym stopniu od celu prowadzonych obliczeD. Zastosowanie wskaznikw 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 sposb arbitralny) wskaznikw technicznych: ROC, MACD i oscylator stochastyczny. Warto[ci wskaznikw 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) porwnuje bie|c warto[ szeregu z warto[ci pochodzc sprzed n okresw. Obliczanie jego warto[ci odbywa si zgodnie ze wzorem: Uzyskanie warto[ci wskaznika rwnej jedno[ci [wiadczy o braku zmian w warto[ciach szeregu (warto[ jeden wyznacza poziom rwnowagi wskaznika). Warto[ci ni|sze od poziomu rwnowagi 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), ktrego 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 (krtsz) [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 ktrego 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 krtkiej [redniej ruchomej w porwnaniu z okresem odpowiadajcym dBugiej [redniej ruchomej. W przeciwny sposb interpretowa mo|na ujemne warto[ci wskaznika. Budujc model szeregu czasowego nale|y rozwa|y mo|liwo[ uwzgldnienia na jego wej[ciu zarwno danych pierwotnych jak i warto[ci wskaznikw technicznych (np. wskaznika MACD), gdy| takie postpowanie umo|liwia wykrycie dywergencji (niezgodno[ci kierunkw 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 okresw, L(n) - warto[ minimalna z ostatnich n okresw. Wyznaczona w podany sposb 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 szeregw 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 wynikw. 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 wspBczynniki 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 sposb addytywny lub multiplikatywny). Za przykBad mo|e sBu|y szereg przedstawiony na rys. 19. Rys. 19. Dekompozycja przykBadowego szeregu. Zrednie ruchome usuwaj zmiany krtkookresowe (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 krtkookre-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 szeregw 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 pomc prezentacja danych w dziedzinie czstotliwo[ci, ktra ma na celu zobrazowanie nat|enia poszczeglnych 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 krtkim 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 sposb prowadzenia badaD prowadzi mo|e do bBdnej interpretacji uzyskanych wynikw. 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, ktra 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 sposb 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 ktrego wprowadza si warto[ci numeryczne odpowiadajce warto[ciom zmiennej binarnej. Zwykle stosuje si jeden z dwch popularnych sposb 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 sposb reprezentacji liczba neuronw odpowiadajca zmiennej jest rwna 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 rwnie| reprezentowane przy pomocy pojedynczego neuronu. Wwczas (podobnie jak w przypadku zmiennych binarnych) wszystkim warto[ciom zmiennej przyporzdkowywane s numery, ktre 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 zarwno zmiennych numerycznych jak i numerw porzdkowych przypisanych poszczeglnym warto[ciom nominalnym. Celem skalowania warto[ci zmiennych wyj[ciowych jest dostosowanie ich warto[ci do zakresu warto[ci wyj[ciowych neuronw wyj[ciowych. Skalowanie warto[ci zmiennych obja[niajcych ma na celu przeksztaBcenie ich warto[ci do takiego przedziaBu, dla ktrego 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 szeregw czasowych wykorzystujce perceptrony wielowarstwowe Wstpna analiza danych prowadzi do uzyskania warto[ci, ktre 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. Wybr warto[ci wej[ciowych jest jednym z najwa|niejszych etapw modelowania. Konstruujc sieci opisujce zachowanie szeregw czasowych w charakterze warto[ci wej[ciowych przyjmuje si zwykle opznione w stosunku do warto[ci obja[nianej warto[ci tego samego szeregu jak i opznione warto[ci innych zmiennych. Nadmierne zwikszanie liczby wej[ prowadzi do rozbudowy sieci, co z kolei jest powodem zmniejszenia zdolno[ci do uoglniania. Projektujc zbir wej[ nale|y rozwa|y uwzgldnienie tylko pewnych, nie ssiadujcych bezpo[rednio z sob warto[ci opznionych. Rwnie| pominicie pewnych potencjalnych zmiennych wej[ciowych mo|e polepszy jako[ sieci. Istotnym elementem wpBywajcym na jako[ modelu jest rwnie| prawidBowe zaprojektowanie cz[ci ukrytej sieci. Narzdziem sBu|cym do realizacji tego zadania s algorytmy konstrukcji sieci, ktre okre[laj optymaln struktur na drodze poszukiwaD iteracyjnych. Ze wzgldu na sposb 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 powtrzy 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 szeregw czasowych Narzdziem przydatnym w trakcie analizy, modelowania i prognozowania szeregw czasowych mo|e by rwnie| sie Kohonena. Zastosowanie tego narzdzia pozwala midzy innymi na wydzielenie podobnych fragmentw szeregu czasowego. Celem zastosowania sieci Kohonena jest przypisanie poszczeglnych przypadkw do reprezentujcych je skupieD. Po dokonaniu klasyfikacji danych proces budowy modelu mo|e zosta zrealizowany niezale|nie dla ka|dej klasy. Sposb 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 wskaznikw technicznych: ROC, MACD oraz oscylatora stochastycznego. Klasyfikacja przypadkw 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 poszczeglne 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[ poszczeglnych klas przedstawia zamieszczona poni|ej tabela. Tabela 1. Czsto[ci zwycistw poszczeglnych neuronw 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 przypadkw do poszczeglnych 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 wynikw 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 poszczeglnych skupieD (tabela 2). Analiz danych zawartych w tabeli 2 uBatwia ich prezentacja graficzna (rys. 28). ZaBo|ono, |e ciemniejszy kolor fragmentw 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, grnemu naro|nikowi mapy. WIG osiga minimalne warto[ci dla przypadkw reprezentowanych przez lewy, dolny fragment sieci Kohonena. Podobny sposb prezentacji (numeryczny i graficzny) zastosowa mo|na dla [rednich warto[ci zmiennych obja[niajcych wyznaczonych dla poszczeglnych neuronw zastosowanej sieci Kohonena. Porwnanie wykresw prezentujcych [rednie warto[ci zmiennych obja[niajcych dla poszczeglnych klas z wykresem przedstawiajcym [redni warto[ WIGu pozwala na identyfikacj zwizkw zachodzcych pomidzy zmiennymi. Sie Kohonena stanowi mo|e rwnie| 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 przypadkw (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 elementw wcze[niej zaklasyfikowanych do tej samej grupy mo|e stanowi podstaw do oczekiwania, |e rwnie| warto[ zmiennej obja[nianej bdzie si ksztaBtowa w podobny sposb. Prba 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 szeregw czasowych Charakterystyka algorytmw genetycznych Algorytmy genetyczne s modelami rozwoju populacji chromosomw. 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 parametrw x1, ..., xn (bdcych liczbami rzeczywistymi), dla ktrych funkcja celu FC przyjmuje warto[ maksymaln. Sposb dziaBania algorytmu genetycznego w trakcie rozwizywania problemw tego typu skBada si z nastpujcych etapw: 1. przyjcie sposobu kodowania rzeczywistych parametrw funkcji przystosowania w postaci chromosomu (BaDcucha zer i jedynek) - okre[lenie w jaki sposb ka|dy parametr bdzie zamieniany na posta binarn (dwjkow) 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, ktrej warto[ uzale|niona jest od wszystkich parametrw x1, ..., xn. Funkcja ta sBu|y do oceny analizowanego zestawu parametrw, 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 dobr punktw startowych - proces poszukiwaD optymalnego zestawu parametrw rozpoczyna si od losowego wyboru punktw startowych (zestaww parametrw), przedstawione one zostaBy w kolumnie Parametry; nastpnie ka|dy z tych zestaww kodowany jest w postaci chromosomu (kolumna Populacja w poni|ej zamieszczonej tabeli); w kolejnym kroku dla ka|dego zestawu parametrw obliczana jest warto[ funkcji przystosowania (kolumna FP), 4. selekcja chromosomw 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. Wybr osobnikw 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 sposb losowy punkt znajdujcy si na kole i do nowej populacji przechodzi ten chromosom, ktremu odpowiadaB wylosowany fragment koBa. Proces ten jest powtarzany a| do chwili, w ktrej liczba chromosomw w nowej populacji bdzie rwna liczbie chromosomw 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 osobnikw nowej populacji stosuje si (z pewnymi prawdopodobieDstwami) operatory genetyczne, z ktrych najpopularniejsze to: krzy|owanie oraz mutacja. Sposb dziaBania tych operatorw przedstawia poni|szy schemat: Operator krzy|owania - operator dziaBajc na dwch chromosomach; wyznacza si punkt przecicia (oznaczony "^"), a nastpnie tworzy si dwa chromosomy potomne poprzez poBczenie materiaBu genetycznego pochodzcego z obu chromosomw. Spo[rd chromosomw potomnych wybiera si w sposb losowy jednego osobnika, ktry 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 ktrej 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 parametrw 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 parametrw. Podstawowe wBa[ciwo[ci metody rozwizywania problemw optymalizacyjnych przy u|yciu algorytmw 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, ktre mog zatrzyma si w maksimum lokalnym), nie przetwarzaj bezpo[rednio parametrw 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 algorytmw genetycznych do optymalizacji neuronowych modeli szeregw czasowych W czasie konstrukcji modeli neuronowych badacz musi podj wiele decyzji zwizanych z tworzonymi narzdziami i majcymi istotny wpByw na prawidBowo[ ich pzniejszego dziaBania. Najistotniejsze problemy zwizane s z: okre[leniem zbioru zmiennych wej[ciowych, wyborem wBa[ciwego sposobu preprocessingu danych, doborem wBa[ciwej liczby opznionych (przeszBych) warto[ci szeregw 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 dobr poprawnych warto[ci wspomnianych parametrw mo|e by algorytm genetyczny. Jego u|ycie wymaga przyjcia sposobu kodowania warto[ci poszukiwanych parametrw 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 parametrw zadania nale|y okre[li sposb 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 parametrw, 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 sposb modelu s wykorzystywane do wyznaczenia warto[ci funkcji przystosowania. Wzr okre[lajcy funkcj przystosowania mo|e uwzgldnia warto[ bBdu sieci wyznaczon na podstawie zbioru uczcego, ale wwczas sposb oceny jako[ci chromosomw 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 oprcz bBdw rwnie| inne charakterystyki modelu utworzonego na podstawie informacji przechowywanych w chromosomie. PrzykBadem mog by wielko[ci opisujce struktur sieci i liczb zmiennych wej[ciowych. Sposb uwzgldnienia tych wielko[ci powinien preferowa modele prostsze, posiadajce mniejsz liczb elementw, gdy| one zwykle posiadaj wiksz zdolno[ do uoglniania 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 chromosomw 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 - Dobr 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. Dobr zmiennych wej[ciowych przy pomocy algorytmu genetycznego w programie STATISTICA Neural Networks. Ocena testowanych zestaww 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 wspBczynnika (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 szeregw czasowych Skonstruowany model nale|y podda ocenie, ktra najcz[ciej realizowana jest poprzez wyznaczenie warto[ci i interpretacj r|norodnych miernikw jako[ci modelu. Stosowane miary jako[ci podzieli mo|na na dwie grupy: mierniki uniwersalne, mierniki specyficzne dla dziedziny zastosowaD. Pierwsz z wymienionych klas miernikw 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, ktrych warto[ci bazuj najcz[ciej na u[rednionej warto[ci r|nic pomidzy warto[ciami teoretycznymi i rzeczywistymi dla posiadanego zestawu danych. Warto[ci miernikw wyznaczane s oddzielnie dla zbioru uczcego, walidacyjnego i testowego. Dziki temu u|ytkownik mo|e okre[li zarwno poprawno[ modelu dla danych wykorzystywanych w procesie szacowania, jak rwnie| dla nowych przypadkw. mierniki wzgldne porwnujce uzyskane wyniki z rezultatami uzyskanymi przy pomocy innych metod (przyjtych za punkt odniesienia). W przypadku zastosowania modeli neuronowych czsto porwnuje si wyniki generowane przez sie z prostymi prognozami zakBadajcymi, |e nastpna warto[ szeregu rwna bdzie warto[ci bezpo[rednio j poprzedzajcej. Lub te| porwnuje 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. Rwnie| 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 miernikw oka|e si niewystarczajcy, to dysponujc warto[ciami rzeczywistymi jak rwnie| odpowiadajcymi im warto[ciami wyznaczonymi przez sie, mo|liwe jest zdefiniowanie warto[ci innych miernikw. Przeprowadzajc ocen neuronowych modeli szeregw czasowych przy pomocy uniwersalnych miernikw jako[ci nale|y pamita o: warto[ci wielu miernikw nie s unormowane co powoduje, |e w wielu przypadkach trudno oceni jako[ modelu na podstawie wyznaczonej warto[ci. Ta grupa miernikw nie pozwala rwnie| na porwnanie modeli uzyskanych na podstawie r|nych danych; ocena modelu neuronowego powinna uwzgldnia zarwno umiejtno[ aproksymacji jak i generalizacji. Uwzgldnienie wyBcznie bBdw uzyskanych dla zbioru uczcego preferuje zwykle modele rozbudowane, dopasowujce si do danych uczcych, ale nie posiadajce umiejtno[ci uoglniania zgromadzonej wiedzy; niektre 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 miernikw jako[ci neuronowych modeli prognostycznych stanowi miary [ci[le dostosowane do specyfiki dziedziny, na potrzeby ktrej 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 przypadkw, w ktrym 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 rwnie| rezultaty analizy graficznej oraz wyniki testw 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 sposb 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 ktrego z ustalonym prawdopodobieDstwem nale|e bdzie warto[ zmiennej prognozowanej. Perceptron wielowarstwowy nie mo|e generowa w sposb bezpo[redni prognoz przedziaBowych. Wyznaczenie prognozy tego typu wymaga znajomo[ci rozkBadu oczekiwanego bBdu prognozy. W celu oszacowania jego parametrw mo|na posBu|y si metod bootstrapow, ktra umo|liwia estymacj nieznanego parametru rozkBadu zmiennej losowej [redni z oszacowaD parametru wyznaczonych na podstawie prb bootstrapowych. Prby bootstrapowe generowane s N razy poprzez losowanie ze zwracaniem elementw z dostpnego zbioru danych. Liczebno[ ka|dej prby bootstrapowej jest rwna liczbie elementw wchodzcych w skBad pierwotnego zbioru danych. Schemat postpowania przystosowany do symulacyjnego szacowania oczekiwanych bBdw 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 zbir danych, a ich celem jest oszacowanie parametrw rozkBadu bBdw prognoz. W ka|dej z N iteracji z posiadanego zbioru losowane s (ze zwracaniem) elementy tworzce zbir bootstrapowy. Dla ka|dego, wygenerowanego w ten sposb zbioru, przeprowadzany jest proces konstrukcji modelu neuronowego. U[rednione parametry rozkBadu statystyk charakteryzujcych bBdy w prbach bootstrapowych stanowi oszacowanie parametrw rozkBadu bBdw prognoz. Dysponujc oszacowaniami parametrw rozkBadu bBdw prognoz uzyskanych przy pomocy modelu neuronowego mo|na podj prb 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 zarwno dla teoretykw jak i dla praktykw. 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