Spis tre ci Przedmowa ..............................................................................................................................................................4 1. Wprowadzenie w tematyk sieci neuronowych ..............................................................................................6 1.1. Wst p............................................................................................................................................................6 1.2. Podstawowe architektury sieci neuronowych...............................................................................................7 1.3. Przegl d podstawowych metod uczenia sieci...............................................................................................9 1.4. Zdolno ci uogólniania sieci neuronowej ....................................................................................................16 2. Sieci neuronowe jednokierunkowe wielowarstwowe....................................................................................20 2.1. Podstawowe zale no ci odnosz ce si do neuronu ....................................................................................20 2.2. Podstawowe definicje funkcji celu .............................................................................................................21 2.3. Algorytm propagacji wstecznej w postaci klasycznej ................................................................................24 2.4. Wyznaczanie gradientu metod grafów przepływowych ...........................................................................27 2.5. Algorytmy gradientowe optymalizacji w zastosowaniu do uczenia sieci...................................................31 2.6. Metody doboru współczynnika uczenia .....................................................................................................37 2.7. Metoda gradientów sprz onych z regularyzacj .......................................................................................42 2.8. Algorytmy heurystyczne ............................................................................................................................44 2.9. Porównanie efektywno ci algorytmów ucz cych.......................................................................................46 2.10. Elementy optymalizacji globalnej ............................................................................................................47 2.11. Metody inicjalizacji wag ..........................................................................................................................50 3. Dobór optymalnej architektury sieci wielowarstwowej i danych ucz cych ..................................................59 3.1. Zdolno ci uogólniania sieci wielowarstwowej ...........................................................................................60 3.2. Metody redukcji sieci .................................................................................................................................62 3.3. Algorytm kaskadowej korelacji Fahlmana .................................................................................................71 3.4. Sie neuronowa z rozszerzeniem funkcyjnym............................................................................................75 3.5. Analiza wra liwo ciowa danych ucz cych.................................................................................................80 3.6. Zwi kszanie zdolno ci uogólniania sieci przez wtr canie szumu do wzorców ucz cych ..........................82 4. Wybrane zastosowania sieci neuronowych wielowarstwowych .........................................................85 4.1. Rozpoznawanie wzorców........................................................................................................................85 4.2. Kompresja danych ...................................................................................................................................88 4.3. Sie neuronowa interpoluj ca ...................................................................................................................93 4.4. Modelowanie i sterowanie obiektów dynamicznych ...........................................................................95 4.5. Predykcja obci e systemu elektroenergetycznego ....................................................................100 5. Sieci neuronowe o radialnych funkcjach bazowych .........................................................................103 5.1. Podstawy matematyczne......................................................................................................................103 5.2. Sie neuronowa radialna ........................................................................................................................107 5.3. Metody uczenia sieci neuronowych radialnych ...............................................................................110 5.4. Porównanie sieci radialnych z sieciami sigmoidalnymi....................................................................122 6. Sieci rekurencyjne .......................................................................................................................................124 6.1. Wprowadzenie..........................................................................................................................................124 6.2. Sie autoasocjacyjna Hopfielda................................................................................................................125 6.3. Sie Hamminga ........................................................................................................................................133 6.4. Sie typu BAM .........................................................................................................................................136 6.5. Rekurencyjna sie neuronowa typu RTRN ..............................................................................................142 6.6. Rekurencyjna sie Elmana........................................................................................................................145 6.7. Rekurencyjna metoda propagacji wstecznej.............................................................................................149 7. Sieci samoorganizuj ce si na podstawie reguły Hebba .............................................................................152 7.1. Aspekt energetyczny samoorganizacji Hebba ..........................................................................................152 7.2. Analiza składników głównych (PCA) ......................................................................................................153 7.3. Sieci neuronowe typu Heraulta-Juttena ....................................................................................................156 8. Sieci samoorganizuj ce si działaj ce na zasadzie współzawodnictwa ......................................................168 8.1. Zale no ci podstawowe............................................................................................................................168 8.2. Algorytmy uczenia sieci samoorganizuj cych si ....................................................................................173 8.3. Sie odwzorowa jedno- i dwuwymiarowych..........................................................................................177 8.4. Odwzorowanie Sammona.........................................................................................................................180 8.5. Przykłady zastosowa sieci samoorganizuj cych si ...............................................................................181 9. Podstawy matematyczne systemów logiki rozmytej ...................................................................................187 9.1. Podstawowe poj cia systemów rozmytych ..............................................................................................187 9.2. Zasady wnioskowania w zbiorach rozmytych ..........................................................................................189 9.3. Interpretacja reguł wnioskowania w systemie wielowymiarowym ..........................................................190 9.4. Układy logiki rozmytej w rodowisku pomiarowym ...............................................................................191 10. Sieci neuronowe o logice rozmytej ............................................................................................................197 10.1. Gradientowa metoda uczenia sieci rozmytej ..........................................................................................197 10.2. Uczenie samoorganizuj ce si sieci rozmytych......................................................................................205
10.3. Uczenie bezpo rednie na podstawie tabeli przej .................................................................................207 11. Implementacja sieci neuronowych w technologii VLSI ..........................................................................211 11.1. Elementy rozwi za analogowych sieci neuronowych ..........................................................................211 11.2. Przegl d komercyjnych układów scalonych...........................................................................................219 Dodatek A - Opis programu Netteach ................................................................................................................225 A.1. Przygotowanie plików z danymi .............................................................................................................225 A.2. Opcje wywołania programu.....................................................................................................................226 Dodatek B - Opis programu Cascor ....................................................................................................................227 B.1. Opis parametrów wywołania programu...................................................................................................227 B.2. Przygotowanie plików ucz cych..............................................................................................................228 Dodatek C - Opis programu Hfnet ......................................................................................................................229 Bibliografia..........................................................................................................................................................230
Przedmowa Sztuczne sieci neuronowe, zwane w skrócie sieciami neuronowymi, stanowi intensywnie rozwijaj cy si dziedzin wiedzy stosowani w wielu obszarach nauki. Maje wła ciwo ci po dane w wielu zastosowaniach praktycznych: stanowi uniwersalny układ aproksymacyjny odwzorowuj cy wielowymiarowe zbiory danych, maj zdolno uczenia si i adaptacji do zmieniaj cych si warunków rodowiskowych, zdolno uogólniania nabytej wiedzy, stanowi c pod tym wzgl dem system sztucznej inteligencji. Podstawi działania sieci s algorytmy ucz ce, umo liwiaj ce zaprojektowanie odpowiedniej struktury sieci i dobór parametrów tej struktury, dopasowanych do problemu podlegaj cego rozwi zaniu. W ksi ce przedstawiono sieci neuronowe z punktu widzenia algorytmicznego, najbardziej u ytecznego praktycznie. Jest to wyselekcjonowany przegl d najlepszych metod uczenia sieci o ró norodnej strukturze, zilustrowany wynikami wielu eksperymentów numerycznych i poparty zastosowaniami praktycznymi. W rozdziale 1 jest przedstawiony krótki przegl d podstawowych rodzajów i stowarzyszonych z nimi metod uczenia sieci, b d cy wprowadzeniem w tematyk sieci neuronowych. Podano w nim najwa niejsze definicje i zale no ci odnosz ce si do wszystkich rodzajów sieci. Rozdział 2 dotyczy sieci jednokierunkowych wielowarstwowych o sigmoidalnej funkcji aktywacji. Przedstawiono w nim wybrane, najefektywniejsze algorytmy uczenia tych sieci z zastosowaniem strategii propagacji wstecznej, zinterpretowanej za pomoc grafów doł czonych przepływu sygnałów. Szczegółowe rozwa ania dotycz równie metod inicjalizacji warto ci wst pnych wag, umo liwiaj cych znaczne przyspieszenie procesu uczenia i unikni cie pułapki minimów lokalnych. Rozdział 3 jest po wi cony algorytmom doboru optymalnej architektury sieci wielowarstwowych, opartym na metodach redukcji i rozszerzania sieci. W szczególno ci du o miejsca po wi cono sieciom kaskadowej korelacji Fahlmana oraz sieciom z rozszerzeniem funkcyjnym. Dwa ostatnie punkty rozdziału dotycz doboru danych ucz cych poprawiaj cych zdolno ci uogólniaj ce sieci neuronowych. W rozdziale 4 omówiono wybrane zastosowania sieci neuronowych wielowarstwowych. Przedstawiono problematyk rozpoznawania wzorców, kompresji danych, interpolacji z u yciem sieci neuronowej, modelowania i sterowania obiektów dynamicznych oraz predykcj obci e systemu elektroenergetycznego. Rozdział 5 dotyczy sieci o radialnych funkcjach bazowych. Po wprowadzeniu podstaw matematycznych omówiono podstawowe struktury sieci radialnych oraz algorytmy ucz ce, wykorzystuj ce zarówno metody gradientowe, jak i współzawodnictwo mi dzy neuronami. W rozdziale 6 zawarto podstawowe wiadomo ci o sieciach rekurencyjnych. Wprowadzono struktury i metody uczenia sieci Hopfielda, Hamminga, BAM, RTRN oraz sieci Elmana. Przedstawiono typowe zastosowania tych sieci. Rozdział 7 jest po wi cony sieciom samoorganizuj cym si , w których uczenie jest oparte na uogólnionej regule Hebba. Przedstawiono praktyczne zastosowania takich sieci do analizy składników głównych (PCA) oraz rozdzielania sygnałów (sieci Heraulta-Juttena). W rozdziale 8 przedstawiono zagadnienia dotycz ce algorytmów ucz cych i zastosowa sieci samoorganizuj cych si w oparciu o współzawodnictwo neuronów. Dokonano porównania najskuteczniejszych metod uczenia oraz przedstawiono przykłady praktycznych zastosowa sieci tego typu. W rozdziałach 9 i 10 omówiono tematyk sieci neuronowych o logice rozmytej, stanowi cych uogólnienie klasycznych sieci neuronowych. Po wprowadzeniu podstaw matematycznych przedstawiono podstawowi struktur sieci oraz metody uczenia oparte na zastosowaniu metod gradientowych, mechanizmu klasteryzacji i tabeli przej . Rozdział 11 stanowi przegl d implementacji układów scalonych VLSI podstawowych wybranych struktur sieci neuronowych. Przedstawiono przykładowe rozwi zania elementów sieci oraz przegl d komercyjnych opracowa sieci w postaci koprocesorów oraz neurokomputerów cyfrowych i analogowych. Ksi ka zawiera tak e 3 dodatki po wi cone krótkiemu wprowadzeniu w wybrane programy uczenia sieci neuronowych. Jest przeznaczona dla studentów wy szych lat studiów oraz doktorantów zainteresowanych tematyk sztucznych sieci neuronowych. Ze wzgl du na interdyscyplinarny charakter tematyki mo e by u yteczna zarówno w technice, informatyce, fizyce, jak i w naukach biomedycznych. Stanowi fundament wiedzy o sieciach neuronowych zarówno dla pocz tkuj cych, jak i dla zaawansowanych w uprawianiu tej dyscypliny. W zako czeniu przedmowy pragn podzi kowa osobom i instytucjom, których wpływ na ostateczny kształt ksi ki jest najwi kszy. W szczególno ci dzi kuj recenzentowi ksi ki drowi in . S. Jankowskiemu za krytyczne uwagi i poprawki, których uwzgl dnienie udoskonaliło ostateczn wersji ksi ki.
Prof. A. Cichockiemu i drowi L. Moszczy skiemu z Politechniki Warszawskiej serdecznie dzi kuj za udost pnienie mi programu bs do lepego rozdzielania sygnałów, drowi P. Demartinesowi z INPG Grenoble (Francja) za mo liwo skorzystania z programu soma i drowi S. Fahlmanowi z Carnegie Mellon University (USA) za prawo do korzystania z programu cascor. Szczególnie gor co dzi kuj mojej onie i Rodzinie za wyrozumiało i nieustanni pomoc okazywani mi w trakcie przygotowywania ksi ki, w tym za wysiłek wło ony w przygotowanie maszynopisu pracy. Ksi k napisałem podczas pobytu na Uniwersytecie Erlangen-Norymberga w Institut fur Elektrische Energieversorgung, w charakterze stypendysty programu TEMPUS (projekt JEP nr 07237-94). Chciałbym serdecznie podzi kowa prof. T. Łobosowi z Politechniki Wrocławskiej, koordynatorowi projektu, za umo liwienie tego pobytu, a prof. G. Heroldowi, dyrektorowi Institut fur Elektrische Energieversorgung, oraz jego współpracownikom za okazani mi go cinno . Na ostateczny kształt ksi ki du y wpływ miała moja współpraca z Laboratorium Brain Information Processing Research, Frontier Research Program (RIKEN), Japonia, kierowanym przez prof. Shin-ichi Amari, za co chciałbym zło y kierownikowi tej instytucji serdeczne podzi kowanie. Chciałbym gor co podzi kowa instytucjom wydawniczym oraz autorom za prawo skorzystania z ich rysunków. W szczególno ci dzi kuj IEE Publishing Department, Stevenage Herts (Wielka Brytania) oraz autorom pracy 137] za prawo do skorzystania z rys. 5.7, Wydawnictwu Complex Systems oraz autorom pracy [26] za rys. ti.4 i 8.5, drowi P. Demartinesowi za rys. 8.2, 8.3, 8.9, 8.11, drowi S. Fahlmanowi za rys. 3.6, 3.7, 3.8 oraz 6.14, prof. Y. Le Cunowi, J. S. Denkerowi, S. A. Solli (AT&T Bell Holmdel) za rys. 3.4, prof. B. Hassibiemu (Stanford University, USA), D. Storkowi (Ricoh California Research Center, USA) za rys. 3.5, Wydawnictwu Operations Research oraz autorom pracy [57] za rys. 2.11 i 2.12, Wydawnictwu American Association for the Advancement of Sciences (AAAS), Washington oraz autorom pracy (51] za rys. 6.1, Wydawnictwu Simon & Schuster oraz prof. S. Haykinowi, autorom ksi ki (41], za rys. 1.5, Wydawnictwu Addison Wesley oraz prof. A. Zellowi, autorowi ksi ki ~158~, za rys. 11.12, 11.13, 11.14 oraz 11.15, IEEE Publishing Department oraz autorom prac [87, 145, 84, 126, 76, 2, 43, 156] za rys. 3.17, 6.4, 6.10, 8.6, 8.7, 8.13, 11.1, 11.2, 11.3, 11.4, 11.5, 11.6, 11.7, 11.8, 11.9 oraz 11.10. Warszawa w lutym 1996 r.
1.
Wprowadzenie w tematyk sieci neuronowych
1.1. Wst p Badania systemów nerwowych istot ywych sad i nadal stanowi istotny czynnik post pu w dziedzinie teorii systemów i ich zastosowa w praktyce. Ju w 1943 r. McCulloch i Pitts [88] opracowali model komórki nerwowej, którego idea przetrwała lata i stanowi do dzisiaj podstawowe ogniwo wi kszo ci u ywanych modeli. Istotnym elementem tego modelu jest sumowanie sygnałów wej ciowych z odpowiedni wagi i poddanie otrzymanej sumy działaniu nieliniowej funkcji aktywacji. W efekcie sygnał wyj ciowy neuronu yi jest okre lony w postaci
yi = f
N j =1
Wij x j (1. 1)
przy czym xj (j = 1, 2, … , N) reprezentuje sygnały wej ciowe, a Wij - odpowiednie współczynniki wagowe, zwane wagami synaptycznymi lub w skrócie wagami. Przy dodatniej warto ci waga przekazuje sygnał pobudzaj cy, przy ujemnej - gasz cy. Funkcja aktywacji f () mo e mie ró ni posta ; w modelu pierwotnym McCullocha-Pittsa jest to funkcja typu skoku jednostkowego. W kilka lat pó niej Hebb zaprezentował teori uczenia (doboru wag Wij neuronów) w zastosowaniu do pami ci asocjacyjnych. Wykorzystał przy tym obserwacje, e waga poł cze mi dzyneuronowych jest wzmacniana przy stanach uaktywnienia neuronów. W modelu Hebba przyrost wagi ∆Wij w procesie uczenia jest proporcjonalny do iloczynu sygnałów wyj ciowych neuronów poł czonych wagi Wij Wij (k +1) = Wij (k ) + ηy j (k ) y j (k ) (1. 2) w którym k oznacza kolejny cykl, a η jest współczynnikiem uczenia. Na pocz tku lat sze dziesi tych Widrow [149] opracował podstawy teoretyczne i podstawowe implementacje techniczne adaptacyjnych układów przetwarzaj cych, stanowi ce istotny wkład w rozwój sieci neuronowych. W 1962 r. została opublikowana ksi ka Rosenblatta [124] prezentuj ca teori dynamicznych systemów neuronowych modeluj cych mózg, oparu na modelu perceptronowym komórki nerwowej. W modelu tym przyjmuje si opis neuronu w postaci (1.1), w którym funkcja aktywacji przyjmuje dwie warto ci binarne: 1 lub 0
f (u ) =
1 dla u > 0 (1. 3) 0 dla u ≤ 0
Ograniczono mo liwo ci jednego perceptronu i sieci jednowarstwowych zło onych z perceptronów spowodowały krytyk tego podej cia w ksi ce Minsky'ego i Paperta [91], która przyczyniła si do znacznego zmniejszenia finansowania tej dziedziny bada i w rezultacie spowolnienie rozwoju sieci neuronowych. Tylko nieliczne o rodki badawcze, skupione wokół takich naukowców jak Grossberg, Widrow, von der Malsburg, Amari, Fukushima czy Kohonen, prowadziły badania w tej dziedzinie. Dopiero gwałtowny rozwój technologii układów o wielkim stopniu scalenia (VLSI) w latach osiemdziesi tych spowodował ogromny wzrost zainteresowania układami przetwarzania równoległego informacji, do których s zaliczane sieci neuronowe. Poczynaj c od opublikowanych w 1982 r. prac Hopfielda (48~, rozwój teorii sieci neuronowych odbywa si w zawrotnym tempie, a liczba o rodków uprawiaj cych t interdyscyplinarn dziedzin nauki jest ogromna. Opracowanie, czy raczej powtórne odkrycie zasady propagacji wstecznej (46), w zastosowaniu do uczenia sieci wielowarstwowych zlikwidowało te ograniczenia sieci, które stanowiły główna przyczyn jej krytyki w ksi ce Minsky'ego i Paperta. Ogromny wzrost finansowania tej dziedziny nauki spowodował istotny post p zarówno w teorii, jak i zastosowaniach praktycznych. W poł czeniu z gwałtownym rozwojem systemów komputerowych dało to podstaw opracowania nowych rozwi za technologicznych dotycz cych percepcji oraz sztucznego postrzegania i wiadomo ci, sterowania skomplikowanymi systemami, przetwarzania sygnałów mowy itp. Jakkolwiek sieci neuronowe stanowi dziedzin wiedzy całkowicie samodzieln , w rozwi zaniach praktycznych stanowi zwykle cz steruj c procesem b d cz decyzyjna, przekazuj c sygnał wykonawczy innym elementom urz dzenia, nie zwi zanym bezpo rednio z sieciami neuronowymi. Funkcje pełnione przez sie mog by sklasyfikowane w kilku podstawowych grupach: aproksymacji, klasyfikacji i rozpoznawania wzorców, predykcji, sterowania oraz asocjacji. Sie aproksymuj ca odgrywa rol uniwersalnego aproksymatora funkcji wielu zmiennych [52], realizuj c funkcj nieliniow o postaci y = f ( x ) (1. 4) przy czym x jest wektorem wej ciowym, a y - realizowan funkcj skalarn wielu zmiennych. Wiele zada modelowania, identyfikacji, przetwarzania sygnałów da si sprowadzi do zagadnienia aproksymacyjnego. Przy klasyfikacji i rozpoznawaniu wzorców sie uczy si podstawowych cech tych wzorców, takich jak odwzorowanie geometryczne układu pikselowego wzorca, rozkładu składników głównych wzorca czy innych
jego wła ciwo ci. W uczeniu s podkre lane ró nice wyst puj ce w ró nych wzorcach, stanowi ce podstaw podj cia odpowiedniej decyzji klasyfikacyjnej. W dziedzinie predykcji zadaniem sieci jest okre lenie przyszłych zachowa si systemu na podstawie ci gu warto ci z przeszło ci. Maj c informacj o warto ciach zmiennej x w chwilach poprzedzaj cych predykcj x(k - 1), x(k - 2), …, x(k - N) sie podejmuje decyzj , jaka b dzie estymowana warto xˆ (k) badanego ci gu w chwili aktualnej k . Uwzgl dniaj c aktualny bł d predykcji ε = x(k) - xˆ (k) oraz warto tego bł du z przeszło ci jest podejmowana adaptacja wag sieci umo liwiaj ca dokładniejszy predykcj w przyszło ci. W zagadnieniach sterowania procesami dynamicznymi sie neuronowa pełni zwykle kilka funkcji. Stanowi model nieliniowy tego procesu, identyfikuj c jego podstawowe parametry niezb dne do wypracowania odpowiedniego sygnału steruj cego. Pełni funkcj układu ledz cego i nad nego adaptuj c si do zmiennych warunków rodowiskowych. Mo e równie stanowi bezpo redni neuroregulator typu PID zast puj cy klasyczne rozwi zania. Wa ni rol , zwłaszcza w sterowaniu robotów, odgrywa klasyfikacja i podejmowanie decyzji co do dalszego przebiegu procesu. W zadaniach asocjacji roli sieci neuronowej jest pami asocjacyjna. Mo na tu wyró ni pami autoasocjacyjn , gdzie skojarzenie dotyczy tylko poszczególnych składowych wektora wej ciowego oraz pami heteroasocjacyjn , w której zadaniem sieci jest skojarzenie ze sob dwu wektorów. W przypadku podania na wej cie sieci wektora zaszumionego bud pozbawionego pewnych fragmentów danych sie potrafi odtworzy pełny wektor oryginalny, pozbawiony szumów, generuj c przy tym pełni posta drugiego odpowiadaj cego mu wektora. Najwa niejsz cech sieci neuronowych, stanowi c o jej ogromnych zaletach i szerokich mo liwo ciach zastosowa , jest równoległe przetwarzanie informacji przez wszystkie ogniwa. Przy ogromnej, masowej skali powi za neuronowych mo liwe jest dzi ki temu znaczne przyspieszenie procesu przetwarzania informacji. W wielu przypadkach jest mo liwe przetwarzanie sygnałów w czasie rzeczywistym. Ponadto przy bardzo du ej liczbie powi za mi dzyneuronowych sie staje si odporna na bł dy wyst puj ce w niektórych powi zaniach. Funkcj uszkodzonych wag przejmuje inne i w efekcie w działaniu sieci nie dostrzega si istotnych zaburze . Inn nie mniej wa n cech sieci jest zdolno do uczenia si i uogólniania nabytej wiedzy. Sie ma wła ciwo sztucznej inteligencji. Wytrenowana na wybranej grupie danych ucz cych potrafi skojarzy nabyt wiedz i wykaza dobre działanie na danych nie uczestnicz cych w procesie uczenia. Istotn zalet sieci jest mo liwo jej realizacji w technice o wielkim stopniu scalenia. Zró nicowanie elementów sieci jest niewielkie, a ich powtarzalno ogromna. Stwarza to perspektyw zbudowania uniwersalnego procesora, który, by mo e, w przyszło ci zast pi klasyczne procesory steruj ce pracy komputerów (tzw. neurokomputery). Mo liwo ci zastosowa sieci neuronowych w przetwarzaniu sygnałów s ci gle jeszcze nie do ko ca zbadane i wydaje si , e b d one jeszcze przez wiele lat stanowi o post pie w technice informacyjnej.
1.2. Podstawowe architektury sieci neuronowych Sposoby poł czenia neuronów mi dzy sob i ich wzajemnego współdziałania spowodowały powstanie ró nych typów sieci. Ka dy typ sieci jest z kolei ci le powi zany z odpowiednik metody doboru wag (uczenia). Z wielu ró nych rodzajów sieci ograniczono si tutaj do kilku najcz ciej stosowanych, w tym sieci jednokierunkowej jednowarstwowej, sieci jednokierunkowej wielowarstwowej oraz sieci rekurencyjnych.
1.2.1. Sie jednokierunkowa jednowarstwowa W sieci tej neurony s uło one w jednej warstwie, zasilanej jedynie z w złów wej ciowych (rys. 1.1). Poł czenie w złów wej ciowych z neuronami warstwy wyj ciowej jest zwykle pełne (ka dy w zeł jest poł czony z ka dym neuronem). Przepływ sygnałów wyst puje w jednym kierunku, od wej cia do wyj cia. W zły wej ciowe nie tworzy warstwy neuronów, gdy nie zachodzi w nich aden proces obliczeniowy. Sposób doboru wag i wybór metody uczenia stanowi tutaj o nazwie sieci. Z tego powodu sie tego rodzaju mo e stanowi zarówno sie Kohonena, jak i perceptron jednowarstwowy. B d z tym tak e zwi zane rodzaje funkcji aktywacji oraz metoda uczenia.
Rysunek 1.1 Schemat sieci jednokierunkowej jednowarstwowej
Rysunek 1.2 Schemat sieci jednokierunkowej dwuwarstwowej
1.2.2. Sie jednokierunkowa wielowarstwowa Cech charakterystyczn sieci jednokierunkowej wielowarstwowej jest wyst powanie co najmniej jednej warstwy ukrytej neuronów, po rednicz cej w przekazywaniu sygnałów mi dzy w złami wej ciowymi a warstwy wyj ciowi. Sygnały wej ciowe s podawane na pierwszy warstw ukryt neuronów, a te z kolei stanowi sygnały ródłowe dla kolejnej warstwy. Typowy przykład sieci jednokierunkowej dwuwarstwowej przedstawiono na rys. 1.2. Wyst puj tu poł czenia pełne mi dzy warstwami. W szczególno ci w niektórych zastosowaniach pewne poł czenia mi dzyneuronowe mog nie wyst pi i mówi si wówczas o poł czeniu cz ciowym, lokalnym. Zwykle poł czenia dotycz wtedy cz ci warstwy poprzedniej skupionej w okre lonym obszarze, tworz cym pole recepcyjne danego neuronu. Neurony warstw ukrytych, jak pokazano w dalszej cz ci pracy, stanowi bardzo istotny element sieci, umo liwiaj cy uwzgl dnienie zwi zków mi dzy sygnałami, wynikaj cymi z zale no ci statystycznych wy szego rz du. Nale y odnotowa , e sieci jednokierunkowe wielowarstwowe wykorzystuj najcz ciej funkcj aktywacji o nieliniowo ci typu sigmoidalnego i stanowi naturalne uogólnienie perceptronu Rosenblatta. St d wywodzi si ich inna, cz sto jeszcze u ywana nazwa perceptronu wielowarstwowego.
1.2.3. Sieci rekurencyjne Sieci rekurencyjne ró ni si od sieci jednokierunkowych wyst powaniem sprz enia zwrotnego mi dzy warstwami wyj ciowi i wej ciowi. Mo na tu wyró ni sieci jednowarstwowe majce jedynie jedni warstw neuronów (wyj ciowych) oraz sieci majce dodatkowi warstw ukryty. Na rysunku 1.3a przedstawiono typow sie rekurencyjn , jednowarstwow , w której sygnały wyj ciowe neuronów tworz jednocze nie wektor wej ciowy sieci dla nast pnego cyklu (z-1 oznacza jednostkowy operator opó nienia). Jest to sie Hopfielda, w której zwykle nie wyst puje sprz enie neuronu od własnego sygnału wyj ciowego (waga Wii = 0). Na rysunku 1.3b przedstawiono przykład sieci rekurencyjnej z warstw ukryty neuronów. Neurony numerowane od 1 do M s neuronami wyj ciowymi sieci, a warstw ukryt stanowi neurony od 1 do K. Sygnały warstwy wyj ciowej i ukrytej ł cznie z ewentualnymi sygnałami wej ciowymi x1,… , xN, stanowi wektor wej ciowy sieci dla nast pnego cyklu obliczeniowego.
Rysunek 1.3 Schemat sieci rekurencyjnej: a) jednowarstwowej; b) z jedn warstwy ukryt neuronów Proces ustalania si sygnałów wyj ciowych sieci rekurencyjnych jest procesem dynamicznym ze wzgl du na wyst powanie jednostkowych operatorów opó nienia. Bior c pod uwag nieliniowo funkcji aktywacji neuronów jest to dynamika nieliniowa, stanowi ca istotn cech tego rodzaju sieci.
1.3. Przegl d podstawowych metod uczenia sieci Wa n wła ciwo ci sieci neuronowej jest jej zdolno adaptacyjna umo liwiaj ca zaprojektowanie struktury i dobór parametrów sieci do wykonania okre lonego zadania. Celem procesu uczenia jest taki adaptacyjny dobór wag, który umo liwi dostosowanie działania sieci do warunków rodowiskowych okre lonych w postaci odpowiednich wymaga co do odwzorowania danych wej ciowych w wyj ciowe. Adaptacja wag odbywa si w kolejnych cyklach i mo e by zapisana w postaci Wij (k + 1) = Wij (k ) + ∆Wij (k ) (1.5) przy czym k oznacza numer cyklu ucz cego, Wij (k) jest star , a Wij (k+1)- now waga synaptyczn ł cz c neuron i-ty z j-tym (poł czenie od neuronu j-tego do i-tego). Z punktu widzenia systemu ucz cego sieci neuronowej mo na wyró ni uczenie pod nadzorem (z nauczycielem), uczenie z krytykiem (reinforcement learning) oraz uczenie samoorganizuj ce si (bez nadzoru). W przypadku pierwszym uczenie odbywa si pod nadzorem „zewn trznego nauczyciela" . W tym trybie wej ciowym sygnałom ucz cym towarzysz warto ci dane na wyj ciu sieci. Typowym przykładem takiego uczenia jest proces minimalizacji funkcji celu definiowanej ka dorazowo dla okre lonego zadania sieci. Uczenie z krytykiem polega na doborze warto ci wag sieci metod prób i bł dów w taki sposób, aby zmaksymalizowa wska nik jako ci uczenia, zale ny zwykle od postaci jednego sygnału, zwanego krytykiem, generowanego w procesie adaptacji. Podstawi tego uczenia jest przyj cie, e je li podj ta przez sie akcja daje rezultat pozytywny, to wagi sieci nale y wzmocni do działania w danym kierunku. W przeciwnym przypadku, gdy rezultat jest negatywny, nale y tak zmodyfikowa warto ci wag, aby t tendencj osłabi . W przypadku uczenia samoorganizuj cego si nie wyst puje ani „nauczyciel", ani „krytyk" wskazuj cy kierunek zmian wag. Uczenie nast puje zgodnie z okre lony „filozofii" działania sieci, umo liwiaj cy na stowarzyszenie zmian sygnałów wej ciowych sieci z odpowiedziami sieci po stronie wyj ciowej. Typowymi przedstawicielami uczenia samoorganizuj cego si jest uczenie Hebba wraz z jego licznymi odmianami, gdzie adaptacja wagi Wij zale y od stanu aktywacji neuronów poł czonych dani wagi, oraz uczenie typu Kohonena, gdzie wykorzystuje si konkurencj mi dzy neuronami do wyłonienia zwyci zcy, dopasowuj cego swoje wagi do danych wej ciowych, dla których jego aktywno jest najwi ksza.
1.3.1. Uczenie pod nadzorem W uczeniu pod nadzorem ka demu wektorowi wej ciowemu x(k)=[x1(k),x2(k),…,xN(k)] T towarzyszy zadany wektor wyj ciowy d(k)=[d1(k),d2(k),…,dM(k)] T. Dane ucz ce s podane w postaci par (x(k), d(k)), dla k = 1, 2, . . ., p, przy czym p oznacza liczb wzorców ucz cych. Je li wektorowi wej ciowemu x(k) odpowiada dana posta wektora wyj ciowego d(k) sieci, to dla ka dej pary ucz cej mo na zdefiniowa funkcj bł du w postaci e(k ) = ( y (k ) − d (k )) (1.6) przy czym y(k) jest aktualn odpowiedzi sieci na wymuszenie w postaci wektora wej ciowego x(k).
Celem uczenia pod nadzorem jest minimalizacja odpowiednio zdefiniowanej funkcji celu, która w wyniku umo liwi dopasowanie warto ci aktualnych odpowiedzi neuronów wyj ciowych (wektor y) do warto ci danych (wektor d) dla wszystkich p par ucz cych, przy czym dopasowanie to jest rozumiane w sensie statystycznym. Najcz ciej przyjmowani postacie funkcji celu jest bł d redniokwadratowy
E=
1 2
p
M
k =1 j =1
e 2j (k ) (1.7)
okre lany dla wszystkich M neuronów wyj ciowych i wszystkich p par ucz cych. Minimalizacja warto ci funkcji celu odbywa si zazwyczaj przy wykorzystaniu metod gradientowych optymalizacji pod warunkiem, e funkcje aktywacji neuronów s ci głe. W metodach gradientowych zmiana warto ci wag odbywa si pod wpływem gradientu funkcji celu ∆W = f (∇ E(W)). Najpopularniejsz i najcz ciej stosowan metod jest metoda najwi kszego spadku, zgodnie z któr ∆W = -η∇E(W), przy czym η jest współczynnikiem uczenia. Uaktualnienie wag mo e nast powa ka dorazowo po prezentacji jednej pary ucz cej (w przypadku zastosowania gradientowej metody najwi kszego spadku metoda taka nosi tradycyjn nazw reguły delta) lub po zaprezentowaniu wszystkich par ucz cych (tzw. skumulowana reguła delta). W przypadku skokowych funkcji aktywacji metody gradientowe staje si nieskuteczne ze wzgl du na niespełnienie warunku ci gło ci funkcji celu. Stosuje si wtedy metody bezgradientowe, z których najbardziej znana jest tzw. reguła perceptronu i jej uogólnienie znane pod nazw reguły Widrowa-Hoffa. Zgodnie z reguł perceptronu dobór wag odbywa si w nast puj cym cyklu. Przy zadanych wst pnie warto ciach wag Wij oraz Wi0 prezentuje si na wej ciu wektor ucz cy x i oblicza warto sygnału wyj ciowego yi. W wyniku porównania aktualnej warto ci yi oraz warto ci danej di dokonuje si aktualizacji wag. • Je li warto yi równa si warto ci danej di, to wagi Wij oraz Wi0 pozostaj nie zmienione. • Je li warto yi = 0, a odpowiadaj ca mu warto dana di = 1, to uaktualnianie wag odbywa si zgodnie ze wzorem Wij(k+1) = Wij(k) + xj oraz Wi0 (k+1) = Wi0 (k) + 1, przy czym k jest oznaczeniem cyklu poprzedniego, a k + 1 cyklu bie cego. • Je li warto yi = 1, a odpowiadaj ca mu warto dana di = 0, to uaktualnianie wag opisuje zale no Wij(k+1) = Wij(k) - xj oraz Wi0 (k+1) = Wi0 (k) - 1. Po uaktualnieniu wag nast puje prezentacja nowego wektora ucz cego x i stowarzyszonej z nim warto ci danej di, a nast pnie ponowna aktualizacja wag. Proces powtarza si dla wszystkich wzorców ucz cych wielokrotnie, a uzyska si minimalizacj ró nic mi dzy warto ciami yi i odpowiadaj cymi im warto ciami danymi di .
Rysunek 1.4 Sie neuronowa jako układ adaptacyjny Uogólnieniem reguły perceptronu jest reguła Widrowa-Hoffa, zgodnie z któr dobór warto ci wag neuronu dowolnego typu odbywa si według zale no ci: Wij (k + 1) = Wij (k ) + ∆Wij (1.8)
∆Wij = x j (d i − yi ) (1.9)
Identyczna relacja opisuje dobór wag polaryzacji Wi0, dla której sygnałem wej ciowym jest zawsze warto 1, w zwi zku z czym ∆Wi 0 = (d i − yi ) (1. 30) Jak łatwo mo na zauwa y , przy zało eniu warto ci binarnych 0, 1 dla sygnału yi i di reguła WidrowaHoffa przekształca si w reguł perceptronu. Cech charakterystyczn zarówno reguły perceptronu, jak i uogólnionej reguły Widrowa-Hoffa jest wykorzystywanie w uczeniu jedynie informacji o aktualnej warto ci sygnału wyj ciowego neuronu i warto ci danej. Ze wzgl du na nieci gło funkcji nieliniowej perceptronu nie mo na wykorzysta informacji o zmianach warto ci yi (pochodnej). Minimalizacja ró nic mi dzy odpowiedziami aktualnymi neuronu yi i warto ciami danymi di, odpowiada minimalizacji kwadratowej funkcji celu E
E=
p k =1
[ yi (k ) − di (k )]2
(1.11)
przy czym p oznacza liczb zadanych wzorców ucz cych. Nale y podkre li , e efektywno tej metody jest niewielka, a liczba cykli ucz cych i czas uczenia wzrasta niepomiernie, zwłaszcza przy du ej liczbie neuronów i próbek ucz cych. W podsumowaniu mo na zaznaczy , e ogólny schemat procesu uczenia pod nadzorem zarówno typu gradientowego, jak i bezgradientowego mo e by przedstawiony w postaci systemu adaptacyjnego (rys. 1.4), w którym adaptacja wag sieci odbywa si pod wpływem bł du e(k), okre lanego dla ka dej pary ucz cej. Istotn cech tego procesu jest istnienie sprz enia zwrotnego, umo liwiaj cego korekcj warto ci wag sieci, prowadz c do minimalizacji ró nic mi dzy aktualn odpowiedzi układu wyra on przez wektor y a warto ciami danymi reprezentowanymi przez wektor d.
Rysunek 1.5 Struktura sieci neuronowej z krytykiem
1.3.2. Uczenie z krytykiem Uczenie z krytykiem1 jest odmian uczenia pod nadzorem, w którym nie wyst puje informacja o warto ciach danych na wyj ciu systemu, a jedynie informacja, czy podj ta przez system akcja (np. zmiana warto ci wagi) daje wyniki pozytywne w sensie po danego zachowania systemu, czy negatywne. Je li działanie podj te przez układ ucz cy daje wynik pozytywny, to nast puje wzmocnienie tendencji do wła ciwego zachowania si systemu w podobnych sytuacjach w przyszło ci. W przeciwnym przypadku, je li wynik jest negatywny, to nast puje osłabienie tendencji takiego działania systemu. Typowy schemat blokowy adaptacyjnego układu z krytykiem przedstawiono na rys. 1.5. Układ ucz cy współpracuje ze rodowiskiem za po rednictwem krytyka, który na podstawie aktualnego stanu rodowiska i predykcji co do jego przyszłych zmian wypracowanej na podstawie aktualnej wiedzy przekazuje sygnał steruj cy r^ umo liwiaj cy podj cie odpowiedniej akcji a, wpływaj cej na stan rodowiska x. Zarówno x, jak i a oznaczaj wektory o wymiarach zale nych od specyfiki rozwi zywanego problemu. Podj ta przez układ ucz cy w chwili k akcja a(k) wpływa na rodowisko zmieniaj c jego stan z x(k) na x(k+1). Po zmianie stanu rodowiska układ ucz cy otrzymuje od krytyka sygnał steruj cy r^(k+1), zale ny w okre lony sposób od poprzedniego stanu systemu x(k) oraz podj tej akcji a, której optymalno b dzie oceniana z punktu widzenia zmian zachodz cych w rodowisku. Wska nik jako ci uczenia jest okre lany najcz ciej w postaci
J=E
∞ i =0
γ i r (i + 1) x (0 )= x
(1. 42)
przy czym operator warto ci oczekiwanej E jest rozumiany w sensie strategii wyboru akcji przez system ucz cy. Współczynnik γ jest parametrem z przedziału 0 ≤ γ < 1, wpływaj cym na zakres zmian poprzednich akcji uwzgl dnianych w sterowaniu. Je li γ = 0, to w sterowaniu jest jedynie uwzgl dniany sygnał r(1) jako wynik pierwszej akcji a(0). System nale y do kategorii układów z opó nieniem, gdy sygnał steruj cy r w chwili h jest okre lany na podstawie stanu rodowiska w chwilach poprzednich i sekwencji tych zmian. Zachowanie aktualne układu zale y od sekwencji zmian rodowiska wywołanych akcjami podj tymi przez układ ucz cy. Głównym elementem układu krytyka jest predykcja sygnału steruj cego r wpływaj cego bezpo rednio na układ ucz cy, a za po rednictwem elementu wykonawczego i bazy wiedzy, decyduj cych o podj tej akcji a. Zgodnie z prac [135] jego estymat w chwili (k + 1) okre la wzór
1
W oryginalnej wersji j zykowej uczenie tego typu nosi nazw reinforcement learning, które w ,j zyku polskim jest równie nazywane uczeniem ze wzmocnieniem [46].
rˆ(k + 1) = r (k + 1) + γJˆ (k + 1) − Jˆ (k ) (1.13) w którym J^ jest estymat wska nika jako ci J opisanego zale no ci (1.12). Uczenie systemu polega na doborze wag synaptycznych Wij elementu ucz cego wg zale no ci [135] Wij (k + 1) = Wij (k ) + ηrˆ(k + 1)eij (k ) (1.14) w której η jest współczynnikiem uczenia, a eij - u rednionym parametrem dopasowania (eligibility), okre lanym według zale no ci rekurencyjnej eij (k ) = λeij (k − 1) + (1 − λ )eaij (k ) (1.15) Składnik eaij jest parametrem dopasowania wagi Wij i jest okre lany jako iloczyn dwu czynników, z których pierwszy zale y bezpo rednio od aktualnie podj tej akcji, a drugi od wyst pienia okre lonego pobudzenia [135]. Parametr λ jest uto samiany ze współczynnikiem zapominania, a jego warto mo e by dobierana z przedziału [0,1]. Przy warto ci bliskiej λ jedno ci aktualnie podj ta akcja mało wpływa na dobór wagi, w przeciwnym przypadku, gdy λ maleje do zera, odpowiedzialno podj tej akcji za zmian wag wzrasta. Uczenie z krytykiem, w odró nieniu od uczenia pod nadzorem, ocenia skutki podj tej akcji i w zale no ci od tego oraz aktualnej bazy danych podejmuje decyzj co do dalszej akcji. Jest znacznie bardziej uniwersalne w zastosowaniu, gdy nie wymaga obecno ci sygnałów danych na wyj ciu systemu. Jednocze nie jego realizacja praktyczna jest bardziej skomplikowana.
1.3.3. Uczenie samoorganizuj ce si typu Hebba
W modelu Hebba wykorzystuje si wynik obserwacji neurobiologicznych [48], zgodnie z którymi waga powi za mi dzy dwoma neuronami wzrasta przy jednoczesnym stanie pobudzenia obu neuronów, w przeciwnym przypadku maleje. Na tej podstawie zaproponowano schemat matematyczny uczenia Hebba, spełniaj cy ten postulat. W ogólnym przypadku, je li model neuronu zostanie przedstawiony w postaci z rys. 1.6, to reguła uczenia Hebba okre laj ca zmiany warto ci wag w kolejnych cyklach ucz cych Wij(k+1) = Wij(k) + ∆Wij(k) mo e by zapisana nast puj co: ∆Wij (k ) = F x j , yi (1.56)
(
)
przy czym F() jest funkcj stanu sygnału wej ciowego xj, zwanego presynaptycznym, oraz sygnału wyj ciowego yi, zwanego postsynaptycznym. W klasycznym uj ciu reguła Hebba upraszcza si do funkcji iloczynowej tych sygnałów ∆Wij (k ) = η x j (k ) yi (k ) (1.17) przy czym η jest współczynnikiem uczenia okre laj cym stopie , w jakim sygnały ucz ce w chwili k wpływaj na dobór warto ci wag. Uczenie neuronu z zastosowaniem reguły Hebba mo e si odbywa w trybie bez nauczyciela lub z nauczycielem. W pierwszym przypadku w regule Hebba u ywa si aktualnej warto ci yi sygnału wyj ciowego neuronu, jak to przedstawia zale no (1.17). W uczeniu z nauczycielem warto sygnału wyj ciowego yi zast puje si warto ci dan di dla tego neuronu. W tym przypadku reguł Hebba mo na zapisa w postaci ∆Wij (k ) = η x j (k )d i (k ) (1.18) Reguła Hebba mo e by stosowana do ró nego typu struktur sieci neuronowych i ró nych funkcji aktywacji neuronu. Wad prostej reguły Hebba jest wykładniczy wzrost wag przy wielokrotnej prezentacji takiego samego wymuszenia xj. Efektem tego jest nasycenie neuronu. Dla unikni cia takiej sytuacji modyfikuje si reguł (1.17) przez
Rysunek 1.6 Model neuronu Dla unikni cia takiej sytuacji modyfikuje si reguł (1.17) przez wprowadzenie współczynnika zapominania γ ∆Wij (k ) = η x j (k ) yi (k ) − γ Wij (k ) yi (k ) (1. 69)
dzi ki czemu sygnał postsynaptyczny yi(k) wpływa na warto wagi neuronu. Przy sygnale
xi <
γ Wij η
zmiana
wagi ∆Wij mo e by ujemna. Odpowiedni dobór warto ci γ umo liwia powstrzymanie niekontrolowanego wzrostu wag. Dobór warto ci współczynnika γ jest kluczowy dla zapewnienia stabilno ci procesu uczenia i zale y od konkretnego problemu. Lepsze rezultaty uzyskuje si przyjmuj c modyfikacj Oji , zgodnie z któr ∆Wij (k ) = η yi (k ) x j (k ) − yi (k )Wij (k ) (1. 70)
[
]
Reguła przypomina propagacj wsteczn sygnału yi (sygnał wyj ciowy yi neuronu jest kierowany od wyj cia z powrotem na wej cie, modyfikuj c warto sygnału wej ciowego xj). Przy jednym neuronie w warstwie reguła Oji jest reguł lokaln , gdy w procesie modyfikacji bior udział jedynie sygnały zwi zane z neuronem poddanym uczeniu. Modyfikacja (1.20) wprowadza samonormalizacj wektora wagowego W neuronu w ka dym kroku ucz cym. Wprowadzaj c uogólnion posta wektorow modyfikacji wag, w której
Wij x j = xTW = W T x , ∆W (k ) = η yi (k )( x − yiW ) , przy czym W - wektor wag i-tego
yi (k ) =
j
neuronu, a x - wektor wej ciowy stanowi cy pobudzenie tego neuronu, reguł Oji mo na zapisa w postaci wektorowej
[
]
∆W (k ) = η 1 − WW T xxTW (1. 21) T
Macierz korelacji oznaczy si tu przez C = xx . Stabilny proces uczenia wymaga, aby po dostatecznie długim czasie uczenia ||∆W=0||, czyli
CW = WW T CW (1. 22)
Niech λ oznacza najwi kszy warto własn macierzy korelacji, a wektor W dobiera si jako wektor własny stowarzyszony z ni ; z definicji warto ci własnej otrzymuje si CW = λW. Podstawiaj c t zale no do wzoru (1.22) otrzymuje si
λ = W TWλ = λ W
2
(1. 23)
Z zale no ci (1.23) wida , e wynikiem zastosowania reguły Oji jest ograniczenie modułu wektora W do jedno ci, |W| = 1, co odpowiada ograniczeniu wag w stanie ustalonym uczenia. Inne, statystyczne sformułowanie postulatu Hebba zaproponował Sejnowski w pracy [128], zgodnie z którym ∆Wij (k ) = η cov x j (k ) yi (k ) = η E x j (k ) − C x yi (k ) − C y (1. 24)
[
]
[(
)(
)]
Symbol cov[ ] oznacza kowariancj , E - operator warto ci oczekiwanej, a Cx i Cy - warto ci rednie sygnałów odpowiednio presynaptycznych xj(k) oraz postsynaptycznych yi(k). Z zale no ci (1.24) wynika, e siła powi za synaptycznych wzrasta, je li zarówno sygnały presynaptyczne, jak i postsynaptyczne s skorelowane dodatnio, a maleje, je li ta korelacja jest ujemna. Uwzgl dnienie w zale no ci (1.24) warto ci rednich Cx i Cy branych ze znakiem przeciwnym stanowi czynnik samoograniczaj cy nadmierny wzrost wag. Przedstawione zale no ci modyfikuj ce reguł Hebba dotycz jedynie neuronów liniowych. Uogólnienie tej modyfikacji na neurony nieliniowe zaproponował Oja w pracy [101]. W przypadku jednego neuronu uogólniona reguła Oji ma posta
[
](
L(u ) =
df 2 (u ) (1. 26) du
)
∆W (k ) = η 1 − WW T L xTW x (1. 25)
T
Funkcja L(x W) jest odpowiednikiem zale no ci xTW wyst puj cej we wzorze (1.21) i wynika z istnienia nieliniowej funkcji aktywacji neuronu, a składnik WWTL(xTW)x jest czynnikiem stabilizuj cym reguł Hebba w przypadku neuronu nieliniowego. Posta funkcji L(u) zale y od przyj tej definicji funkcji aktywacji f (u) neuronu nieliniowego i jest zdefiniowana w postaci
W przypadku neuronu sigmoidalnego o f (u) = tgh(u) funkcja L(u) przyjmuje posta L(u) = tgh(u) [1 tgh2 (u)]. W szczególno ci przy zało eniu liniowej funkcji aktywacji f (u) = u zale no (1.25) upraszcza si do zale no ci (1.21) obowi zuj cej w przypadku liniowym. W ogólno ci algorytmy ucz ce Hebba mo na zaliczy do uczenia typu korelacyjnego, w którym siła poł czenia mi dzyneuronowego wzrasta przy istnieniu korelacji mi dzy sygnałami presynaptycznym i postsynaptycznym neuronu. Przeciwnym typem uczenia jest uczenie dekorelacyjne antyhebbowskie, w którym siła poł czenia mi dzyneuronowego wzrasta wówczas, gdy sygnały presynaptyczny i postsynaptyczny s zdekorelowane (jeden sygnał w stanie pobudzenia, a drugi w stanie zgaszenia). Uczenie antyhebbowskie wyró nia przeciwny znak uwzgl dniony przy ∆Wij(k) ∆Wij (k ) = −η x j (k ) yi (k ) (1. 27)
W przeciwie stwie do reguły Hebba uczenie antyhebbowskie nigdy nie wprowadza nieograniczonego wzrostu wag (warto ci własne macierzy korelacji niedodatnio okre lone) i jest stabilne bez adnych dodatkowych modyfikacji reguły.
1.3.4. Uczenie samoorganizuj ce si typu konkurencyjnego
W uczeniu typu konkurencyjnego neurony współzawodniczy ze sob , aby sta si aktywnymi (pobudzonymi). W odró nieniu od uczenia Hebba, gdzie dowolna liczba neuronów mogła by pobudzona, w uczeniu konkurencyjnym tylko jeden neuron mo e by aktywny, a pozostałe pozostaje wstanie spoczynkowym. Z tego powodu uczenie tego typu nosi równie nazw WTA (Winner Takes All). Grupa neuronów współzawodnicz cych otrzymuje te same sygnały wej ciowe xj. W zale no ci od aktualnych warto ci wag sygnały wyj ciowe neuronów
ui =
Wij x j ró ni si mi dzy sob . W wyniku porównania tych sygnałów j
zwyci a ten neuron, którego warto ui jest najwi ksza. Neuron zwyci zca przyjmuje na swoim wyj ciu stan 1, a pozostałe (przegrywaj ce) stan 0. Uczenie typu WTA nie wymaga nauczyciela i odbywa si zwykle z zastosowaniem znormalizowanych wektorów wej ciowych x. Na wst pie przyjmuje si losowe, znormalizowane wzgl dem 1 warto ci wag poszczególnych neuronów. Po podaniu pierwszego wektora wej ciowego x jest wyłaniany zwyci zca. Neuron zwyci aj cy w konkurencji przyjmuje stan 1, co umo liwia mu aktualizacj wag Wij dochodz cych do niego. Neurony przegrywaj ce konkurencj maj na wyj ciu stan 0, co blokuje proces aktualizacji ich wag. Aktualizacja wag neuronu zwyci zcy odbywa si według tak zwanej reguły Kohonena [68], która, wobec binarnych warto ci sygnałów wyj ciowych (0 lub 1) neuronów uczestnicz cych we współzawodnictwie, przyjmuje posta Wij (k + 1) = Wij (k ) + η x j − Wij (k ) (1. 28)
[
]
Na działanie neuronów typu WTA istotny wpływ ma normalizacja wektorów wej ciowych i wag. Sygnał wyj ciowy ui i-tego neuronu, b d cy sum wagow jego sygnałów wej ciowych, mo e by opisany zale no ci wektorow
ui = W T x = W x cos ϕ i (1. 29)
Wobec unormowania wektorów, ||W|| = ||x|| = 1, o warto ci ui decyduje ró nica k towa mi dzy wektorami x oraz W, ui = cosϕi . Zwyci a zatem ten neuron, którego wektor wag jest najbli szy aktualnemu wektorowi ucz cemu x. W wyniku zwyci stwa neuronu nast puje adaptacja (zbli enie) jego wag do danego wektora x. Przy podaniu na wej cie sieci wielu wektorów zbli onych do siebie b dzie zwyci a ci gle ten sam neuron, w wyniku czego jego wagi b d odpowiada u rednionym warto ciom wektorów wej ciowych, dla których dany neuron był zwyci zc . Neurony przegrywaj ce nie zmieniaj swoich wag. Dopiero zwyci stwo przy nast pnej prezentacji wektora wej ciowego umo liwi im dokonanie aktualizacji wag i rozpocz cie procesu douczania przy kolejnych zwyci stwach. W efekcie takiego współzawodnictwa nast puje samoorganizacja procesu uczenia. Neurony dopasowuj swoje wagi w ten sposób, e przy prezentacji grup wektorów wej ciowych zbli onych do siebie zwyci a zawsze ten sam neuron. W trybie odtworzeniowym, w którym przy ustalonych warto ciach wag podaje si na wej cie sieci sygnały testuj ce, neuron poprzez zwyci stwo we współzawodnictwie rozpoznaje swoje kategori . Układy tego typu s stosowane najcz ciej do klasyfikacji wektorów.
Rysunek 1.7 Sie neuronowa do przykładu ilustruj cego uczenie ze współzawodnictwem Jako przykład rozwa ono sie neuronow zło on z 4 neuronów typu WTA do klasyfikacji wektorów wej ciowych dwuelementowych (rys. 1.7). Wektory wej ciowe ucz ce x przyj to w postaci znormalizowanej:
x1 =
0,97 0,20
x2 =
1,00 0,00
x3 =
− 0,72 0,70
x4 =
− 0,67 0,74
x5 =
− 0,80 0,60
x6 =
0,00 − 1,00
x7 =
0,20 − 0,97
x8 =
− 0,30 − 0,95
Przebieg procesu uczenia przedstawiono na rys. 1.8. Kółkami zaznaczono kolejne poło enia wektorów wag neuronów zwyci aj cych we współzawodnictwie, a liniami - wektory liniowe. Jak z rysunku wida , jedynie trzy neurony zwyci ały w procesie uczenia. Neuron czwarty pozostał martwy (nigdy nie zwyci ył) i nie dopasował si do adnej kategorii wektorowej.
Rysunek 1.8 Przebieg uczenia sieci czterowyj ciowej przy zastosowaniu współzawodnictwa
Rysunek 1.9 Podział obszaru danych na wieloboki Voronoia Uczenie sieci ze współczynnikiem uczenia η = 0, 05 umo liwia po 320 cyklach ucz cych uzyskanie wag trzech pierwszych neuronów w postaci
W1 =
− 0,7314 0,6786
W2 =
0,0276 − 0,9790
W3 =
0,9904 − 0,0656
Odzwierciedlaj one 3 kategorie wektorów wej ciowych: (x1, x2), (x3, x4, x5) oraz (x6, x7, x8), na które samoczynnie został podzielony zbiór wej ciowy. Odmian uczenia konkurencyjnego jest uczenie typu WTM ( Winner Takes Most), w którym neuron wygrywaj cy konkurencj uaktywnia si w sposób maksymalny przyjmuj c warto sygnału wyj ciowego yi = 1 i umo liwiaj c cz ciowe uaktywnienie innych neuronów z s siedztwa. Stopie uaktywnienia neuronów z s siedztwa zale y od odległo ci ich wektorów wagowych od wag neuronu wygrywaj cego. Algorytmy wykorzystuj ce konkurencj mi dzy neuronami, niezale nie od tego, czy jest to konkurencja typu WTA, czy WTM, dokonuj podziału obszaru danych na strefy wpływów poszczególnych neuronów. Współrz dne punktu centralnego Wc, zwanego wektorem Voronoia, okre laj wagi neuronu, zwyci aj cego w tych przypadkach, gdy wektor wej ciowy x le y w danej strefie wpływów. Zbiór wszystkich punktów centralnych nosi tradycyjn nazw ksi ki kodowej, a elementy obszaru przyci gania wokół punktu centralnego (zwanego wielobokiem Voronoia) tworz słowa kodowe. Wieloboki Voronoia dziel przestrze danych odpowiednio do reguły najbli szego s siada, zgodnie z któr przypisanie wektora wej ciowego x do odpowiedniego obszaru nast puje według najmniejszej odległo ci ||x - Wc|| od najbli szego punktu centralnego Wc. Rysunek 1.9 przedstawia przykładowy podział obszaru dwuwymiarowego na wieloboki Voronoia w przypadku istnienia wielu punktów centralnych. Ka dy wielobok Voronoia zawiera obszar najbli szy w sensie okre lonej metryki punktowi centralnemu.
W przypadku przypisania ka dej warto ci wektora wej ciowego x odpowiedniej klasy C, do której ten wektor nale y, algorytm samoorganizacji nosi nazw adaptacyjnego kwantowania wektorowego (Learning Vector Quantization - LVQ) i został zdefiniowany przez Kohonena w roku 1986 [70]. Zgodnie z tym algorytmem kolejny wektor x ze zbioru wej ciowego jest porównywany z wektorami Wc punktów centralnych. Je li klasa, do której przynale y wektor x, jest zgodna z klask zwyci skiego wektora Wc, to wektor Wc jest przesuwany w stron x, w przeciwnym przypadku - odsuwany od niego. Oznaczaj c przez Wcj (j = 1, 2, . . . , n) zbiór wektorów Voronoia, a przez xi (i = 1, 2, . . . , p) zbiór wektorów wej ciowych, algorytm LVQ mo e by przedstawiony nast puj co: Prezentacja kolejnego (k + 1)-go wektora xi, wybranego losowo ze zbioru wej ciowego i okre lenie 1. najbli szego mu pod wzgl dem wybranej metryki wektora Voronoia Wc 2. Porównanie klasy Cxi przypisanej wektorowi xi i klasy CWc przypisanej zwyci skiemu wektorowi Voronoia • je li Cxi = CWc , to
Wc (k + 1) = Wc (k ) + α k [xi − Wc (k )]
•
je li Cxi ≠ CWc , to
Wc (k + 1) = Wc (k ) − α k [xi − Wc (k )]
przy czym αk jest współczynnikiem liczbowym z przedziału 0 < αk < 1. 3. Pozostałe wektory Voronoia nie ulegaj modyfikacji. Współczynniki αk nosz nazw współczynników uczenia, a ich warto maleje do zera wraz z liczb iteracji k. Typowa warto startowa αk jest zwykle mniejsza ni 0,1, a jej zmienno z liczb iteracji jest liniowa b d wykładniczo malej ca.
1.4. Zdolno ci uogólniania sieci neuronowej Podstawow cech sieci neuronowej jest jej zdolno do uogólniania, a wi c generowania wła ciwego rozwi zania dla danych, które nie pojawiły si w zestawie danych ucz cych. Rysunek 1.10 ilustruje graficznie sposób rozumienia zjawiska uogólniania. Zbiór danych wej ciowych, do których stosuje si reguł R zostaje rozdzielony na 2 podzbiory : zbiór testuj cy T oraz zbiór ucz cy L, z którego dodatkowo wydzielono podzbiór V u ywany w trakcie uczenia do sprawdzania stopnia nauczenia sieci (validation).
Rysunek 1.10 Podział przestrzeni danych na dane ucz ce L, testuj ce T oraz sprawdzaj ce V
Rysunek 1.11 Ilustracja zasady liniowego odseparowania wszystkich wzorców ucz cych Sie zostaje poddana uczeniu na zbiorze L z bie cym sprawdzaniem stopnia uczenia na zbiorze V. Zdolno odtworzenia zbioru L przez sie jest miar zdolno ci zapami tania danych ucz cych, natomiast zdolno do generowania wła ciwych rozwi za dla danych nale cych do zbioru T, na których sie nigdy nie była trenowana, jest miar zdolno ci uogólniania. Zakłada si przy tym, e zarówno dane tworz ce zbiór L, jak i zbiór T s typowymi reprezentantami zbiorów tworz cymi reguł R. Ilo ciowa miara uogólniania jest poj ciem trudnym do zdefiniowania i jest oparta na zale no ciach statystycznych odnosz cych si do zbiorów [140]. Podstawow wielko ci jest tu miara VapnikaChervonenkisa, zwana w skrócie VCdim. Miara VCdim systemu została zdefiniowana jako liczebno
najwi kszego zbioru S danych wzorców, dla których system mo e zrealizowa wszystkie mo liwe 2n dychotomii zbioru S (podział zbioru na 2 cz ci za pomoc linii). Na przykład VCdim dla neuronu o dwóch wej ciach wynosi n = 3. Łatwo mo na wykaza , e zbiór zło ony z trzech danych ucz cych jest najwi kszym zbiorem, w którym mo na przeprowadzi podział na dwie liniowo separowalne grupy na 23 sposobów. Rysunek 1.11 ilustruje taki podział. Zwi kszenie o jeden rozmiaru próbek ucz cych powoduje, e 2 neurony nie s w stanie zrealizowa wszystkich 24 podziałów liniowo odseparowanych. W ogólno ci dla neuronu o N wej ciach (wektor x N-elementowy) miara VCdim wynosi N + 1. Innymi słowy, miara VCdim dla sieci rozwi zuj cej problem klasyfikacji binarnej oznacza maksymaln liczb danych ucz cych, które mog zosta bezbł dnie odtworzone we wszystkich mo liwych konfiguracjach. Niech vL(W) oznacza bł d uczenia sieci, czyli cz stotliwo wyst pienia bł dnej klasyfikacji podczas procesu uczenia, a P(W) - rednie prawdopodobie stwo wyst pienia bł dnej klasyfikacji podczas uczenia. Oznaczaj c przez ε warto dopuszczalnego bł du wykazano [139], e Prob {|P(W) - vL (W)| > ε} → 0, je li liczba próbek ucz cych p→ ∝, przy czym Prob{ } oznacza prawdopodobie stwo zdarzenia okre lonego wewn trz nawiasów. Niech α oznacza prawdopodobie stwo zdarzenia, e
sup P(W ) − vL (W ) > ε
(1. 30)
W
Prawdopodobie stwo to zostało oszacowane w pracy [139] w postaci
2 pe α= h
h
(
)
exp − ε 2 p (1. 31)
przy czym e oznacza liczb naturaln , p - liczb próbek ucz cych, a h aktualn warto VCdim. Oznaczaj c przez ε0 warto ε spełniaj c relacj (1.31) przy zadanej warto ci α otrzymuje si
ε0 =
h 2p 1 + 1 − ln (α ) (1. 32) ln p h p
Warto ε reprezentuje przedział ufno ci. Przedział ten jest funkcji aktualnej miary VCdim, liczby próbek ucz cych p oraz warto ci α i nie zale y od bł du uczenia sieci vL(W). Miara ta obowi zuje tylko w przypadku dopuszczenia du ych warto ci P(W). Przy wymaganiu małych warto ci P(W) zmodyfikowana definicja przedziału ufno ci (oznaczona tym razem przez ε1) zale y równie od bł du uczenia vL (W) i przybiera posta [139]
ε1 = ε 02 1 + 1 +
vL (W )
ε 02
(1. 33)
Na podstawie zdefiniowanych przedziałów ufno ci mo na stwierdzi , e w ogólno ci, przy małym poziomie bł du ucz cego vL(W), rednie prawdopodobie stwo wyst pienia bł du klasyfikacji spełnia nierówno P(W ) < vL (W ) + ε1 (1. 34) Przy bardzo du ych bł dach uczenia vL (W ) dokładniejsz estymat redniego prawdopodobie stwa wyst pienia bł du klasyfikacji okre la relacja P(W ) < vL (W ) + ε 0 (1. 35) Podobnie jak bł d uczenia, definiuje si bł d uogólniania vg(W) jako cz stotliwo wyst pienia bł du podczas testowania zbioru na danych testuj cych. Vapnik [139] wykazał, e przy liczbie próbek ucz cych p > h (h - aktualna warto VCdim sieci poddanej uczeniu) z prawdopodobie stwa (1 - α) bł d uogólnienia jest mniejszy ni vgm(W), vg(W) ≤, vgm(W) przy czym vgm (W ) = vL (W ) + ε1 (1. 36) a ε1 okre la zale no (1.33). Przy stałej liczbie próbek p i wzrastaj cej warto ci miary VCdim bł d uczenia vL (W ) maleje monotonicznie, a przedział ufno ci ε1 ro nie.
Rysunek 1.12 Wykres bł du uczenia i uogólniania sieci w funkcji miary VCdim W efekcie maksymalny bł d uogólniania vgm(W), jako superpozycja obu tych wielko ci (wzór (1.36)), osi ga swoje minimum, jak to przedstawiono na rys. 1.12. Zakres VCdim < hopt odpowiada nadmiarowo ci danych bie cych wzgl dem aktualnej warto ci VCdim. Z kolei zakres VCdim > hopt odpowiada zbyt małej liczbie danych ucz cych przy aktualnej warto ci VCdim. Warto VCdim = hopt odpowiada punktowi optymalnemu, w którym liczba danych ucz cych jest optymalnie dobrana pod wzgl dem zdolno ci uogólniania sieci. W przypadku ustalonej warto ci VCdim bł d uogólniania zale y w istotnym stopniu od liczby próbek ucz cych. Dla zapewnienia odpowiednio małej warto ci tego bł du liczba próbek musi spełnia odpowiednie proporcje wzgl dem VCdim. Dla ka dego rodzaju sieci jest to oddzielny problem. Szczególnie jaskrawo wyst puje on w przypadku sieci wielowarstwowej, gdzie liczba wag jest zwykle bardzo du a w stosunku do liczby neuronów. Główna trudno okre lenia optymalnego wymiaru zbioru ucz cego dla danej sieci wynika z niemo liwo ci okre lenia dokładnej warto ci miary VCdim. Tylko w nielicznych przypadkach najprostszych rodzajów sieci miara ta jest b d okre lona w sposób jawny, b d podlega oszacowaniu. W ogólnym przypadku jej warto wzrasta przy wzrastaj cej liczbie wag. St d w praktyce dla uzyskania dobrych zdolno ci uogólniania sieci nale y ogranicza liczb neuronów ukrytych oraz liczb powi za mi dzyneuronowych, jak równie stosowa takie metody wst pnego przetworzenia danych, które umo liwiaj zmniejszenie wymiarowo ci wektora wej ciowego sieci. Ka dy z tych czynników, po rednio lub bezpo rednio, wpływa na zmniejszenie efektywnej liczby wag sieci neuronowej. Inny problem to wpływ sposobu i czasu uczenia na zdolno ci uogólniania sieci. W ogólnym przypadku wraz z upływem czasu uczenia bł d uczenia vL (W ) maleje i bł d testowania równie (przy ustalonej warto ci liczby próbek ucz cych p oraz miary VCdim.
Rysunek 1.13 Wykres bł du uczenia i testowania na danych sprawdzaj cych w funkcji cykli ucz cych Taka sytuacja trwa zwykle do pewnego momentu uczenia, poczynaj c od którego bł d testowania b d pozostaje stały, b d zaczyna nieznacznie rosn , chocia bł d uczenia nadal maleje. Sytuacj tak przedstawia rys. 1.13. Wynika to zwykle z ograniczonej liczby próbek ucz cych, która powoduje, e w ród próbek znajduj si w znacz cej proporcji takie, które zawieraj dane zaszumione b d wykazuj ce inne nieregularno ci odbiegaj ce od cech charakterystycznych danego procesu. W pewnym momencie uczenia, zwykle w jego ostatnich fazach, te wła nie nieregularno ci zaczynaj odgrywa rol i wpływaj na dobór warto ci wag sieci, wprowadzaj c dysproporcje, zakłócaj ce wła ciwy proces uczenia i powoduj ce wzrost bł du testowania. Tendencje te s tym silniejsze, im wi ksza nadmiarowo wag wyst puje w sieci. Wagi „niepotrzebne" dla
odzwierciedlenia cech danego procesu dopasowuje si do wszelkich nieregularno ci danych ucz cych traktuj c je jako cech główn . W procesie testowania sieci na danych testuj cych powstaj w efekcie dodatkowe bł dy. Bior c pod uwag , e zwykle trudno jest okre li wła ciwy wymiar sieci ze wzgl du na brak wskazówek co do liczby neuronów ukrytych, proces uczenia jest przeplatany z procesem sprawdzania, jak dalece jest zaawansowany proces uczenia. Z tego wzgl du dane ucz ce dzielone s na dwie cz ci: podstawow L oraz sprawdzaj c V, jak to przedstawiono na rys. 1.10. Zbiór V pełni funkcj testera wskazuj cego, w którym miejscu nale y zako czy proces uczenia.
2.
Sieci neuronowe jednokierunkowe wielowarstwowe
Spo ród wielu istniej cych rodzajów sieci neuronowych najwi kszym zainteresowaniem ciesz si sieci jednokierunkowe wielowarstwowe o neuronach typu sigmoidalnego, zwane równie perceptronem wielowarstwowym. Przepływ sygnałów w tych sieciach odbywa si tylko w jednym kierunku -od wej cia do wyj cia, a zjawiska tam powstaj ce mo na do łatwo opisa . Równie metody uczenia tych sieci s proste i łatwe do zrealizowania w praktyce. W rozdziale tym przedstawiono podstawowe zale no ci odnosz ce si do sieci wielowarstwowych. Poczynaj c od opisu neuronu sigmoidalnego poprzez zale no ci energetyczne, wprowadzono podstawowe metody uczenia tych sieci, w tym algorytm propagacji wstecznej, metody minimalizacyjne funkcji celu, a tak e ró ne metody doboru warto ci startowych wag sieci, przyspieszaj ce proces uczenia i umo liwiaj ce unikni cie zatrzymania procesu w minimum lokalnym.
2.1. Podstawowe zale no ci odnosz ce si do neuronu W dalszej cz ci rozwa a przyj to model neuronu wraz z oznaczeniami w postaci przedstawionej na rys. 2.1. Składa si on z elementu sumacyjnego, do którego dochodz sygnały wej ciowe xl, x2,..., xN tworz ce wektor wej ciowy x = [xl, x2,..., xN] T pomno one przez przyporz dkowane im wagi Wi1, Wi2, ..., WiN tworz ce wektor wag i-tego neuronu Wi = = [Wi1, Wi2, ..., WiN] T oraz warto Wi0 zwan progiem. Sygnał wyj ciowy sumatora oznaczono ui, przy czym
ui =
N j =1
Wij x j + Wi 0 (2.1)
Sygnał ten jest podawany na blok realizuj cy nieliniow funkcj aktywacji f(ui). Funkcja ta, w zale no ci od konkretnego celu, jakiemu słu y neuron, mo e przyjmowa ró ne postacie. W dalszej cz ci rozwa a ograniczono si do postaci sigmoidalnej, b d w szczególno ci skokowej. Posta skokowa funkcji mo e by typu unipolarnego, przyjmuj c warto 0 lub 1 (przykładem mo e by perceptron), b d bipolarnego, dla której warto sygnału wyj ciowego mo e by ±l (przykładem jest neuron typu adaline Widrowa [150]).
Rysunek 2.1 Model neuronu sigmoidalnego z przyj tymi oznaczeniami wag Obie stosuje si głównie w tego typu systemach, gdzie sygnał wyj ciowy powinien przyjmowa jedn z dwóch warto ci dyskretnych, np. klasyfikatorach wektorowych. Sieci neuronowe wykorzystuj ce skokowe funkcje aktywacji maj charakterystyki nieci głe, co utrudnia proces uczenia tych sieci. Przykładem algorytmu ucz cego dostosowanego do skokowej funkcji aktywacji jest przedstawiony w rozdz. 1 algorytm Widrowa-Hoffa, który wykorzystywał jedynie informacj o aktualnej warto ci funkcji celu. Algorytmy gradientowe, uznawane za najskuteczniejsze w uczeniu, nie mog mie bezpo redniego zastosowania, gdy podstawowe wymaganie dotycz ce ci gło ci funkcji celu nie jest wówczas spełnione. Wada ta została wyeliminowana przez przyj cie sigmoidalnej funkcji aktywacji, stanowi cej ci głe przybli enie funkcji skokowej, przy której sygnał wyj ciowy neuronu yi przyjmuje dowolne warto ci z przedziału [0,1] dla funkcji unipolarnej lub [-1,1] dla funkcji bipolarnej. funkcja sigmoidalna unipolarna jest najcz ciej definiowana w postaci
f u (ui ) =
1 (2.2) 1 + exp(− βui )
natomiast bipolarna
f b (ui ) = tgh(βui ) (2.3)
lub
f b (ui ) = 2 f u (ui ) − 1 (2.4) Posta bipolarna okre lona wzorem (2.4) wi e oba rodzaje funkcji sigmoidalnych. Im wi ksza jest warto współczynnika β, tym bardziej stroma jest posta funkcji. Przykładowo przy warto ci β = 10 przebieg funkcji sigmoidalnej przy odpowiedniej skali wymuszenia x upodabnia si do funkcji skokowej. Mała warto współczynnika β zwi ksza zakres liniowo ci funkcji, przybli aj c j do funkcji liniowej. W praktyce przyjmuje si zwykle warto współczynnika β = 1. Wa n cech funkcji sigmoidalnej jest jej ró niczkowalno . W przypadku funkcji unipolarnej otrzymuje si
df u (x ) = βf u ( x )(1 − f u ( x )) (2.5) dx W przypadku funkcji bipolarnej o postaci (2.3)
df b ( x ) = β 1 − f b2 ( x ) (2.6) dx
(
)
a w przypadku funkcji o postaci (2.4)
df b ( x ) = 2 βf u ( x )(1 − f u ( x )) (2.7) dx Obie postacie funkcji s ci głe z maksimum odpowiadaj cym warto ci x = O, a do ich okre lenia wystarczy znajomo warto ci samej funkcji f (x).
2.2. Podstawowe definicje funkcji celu Najskuteczniejsz metod uczenia sieci jednokierunkowych sigmoidalnych pozostaje optymalizacja funkcji celu zdefiniowanej dla sieci, minimalizuj ca bł d mi dzy warto ciami danymi i aktualnie otrzymanymi na wyj ciu sieci dla wszystkich danych ucz cych. Jest to uczenie pod nadzorem ( z nauczycielem). W uczeniu tego typu zakłada si , e s znane dane warto ci sygnałów neuronów wyj ciowych di (i = 1,2, ..., M), przy czym M oznacza liczb neuronów wyj ciowych, a dobór wag sieci musi zapewni dopasowanie sygnałów wyj ciowych Y i do warto ci danych di. Uczenie odbywa si przez minimalizacj odpowiednio zdefiniowanej funkcji celu E(W), przy czym wektor W reprezentuje wagi sieci poddawane optymalizacji. Oznaczaj c przez d wektor warto ci danych sieci, d = [d1, d2, ..., dM] T, w przypadku jednej pary ucz cej (x, d) najprostsza definicja funkcji celu ma posta bł du redniokwadratowego
E=
1 2
M i =1
( yi − d i )2
(2.8)
przy czym yi =f(ui), a f( ) reprezentuje funkcj sigmoidaln . W przypadku wielu par ucz cych (x(j), d(j)) dla j = 1,2, ...,p definicja funkcji celu uwzgl dnia sumowanie bł dów po wszystkich p parach ucz cych
1 E= 2
p
M
j =1 i =1
2
( yi ( j ) − di ( j ))
(2.9)
Zało enie ci głej funkcji aktywacji umo liwia minimalizacj funkcji celu metodami gradientowymi. W metodach tych do aktualizowania wektora wag wykorzystuje si informacj o gradiencie funkcji celu
∂E ∂E ∇E = , , ∂W1 ∂W2
∂E , ∂Wn
T
, przy czym w ka dym kroku uczenia wyznacza si
tzw. kierunek
minimalizacji. Istnieje wiele sposobów obliczania tego kierunku, które szczegółowo zostan omówione w nast pnych punktach tego rozdziału. Ograniczaj c si tutaj do ogólnego zapisu kierunku minimalizacji w postaci p(W(k)), w której k odpowiada okre lonemu cyklowi ucz cemu, równanie adaptacji wag mo na zapisa w postaci dyskretnej
W (k + 1) = W (k ) + η p(W (k )) (2.10) przy czym 17 jest współczynnikiem uczenia, przyjmowanym z przedziału [0,1], b d w postaci ci głej przez rozwi zanie układu równa ró niczkowych [13]
dW = µp (W ) (2.11) dt w którym µ jest odpowiednikiem η z równania (2.10). Najprostsz metod wyboru kierunku minimalizacji p(W), stosowan dotychczas najcz ciej, jest wybór zgodny z kierunkiem ujemnego gradientu, tzw. algorytm najwi kszego spadku, w którym
p(W ) = −∇E (W ) (2.12) Równania (2.10) i (2.11) okre laj gradientowy algorytm uczenia neuronu. Algorytm ten umo liwia wyznaczenie minimum funkcji celu. Bior c pod uwag , e jest to algorytm lokalny, nie ma gwarancji e znalezione minimum jest globalne. W trakcie uczenia sieci bardzo cz sto "utykaj " w minimach lokalnych, dla których warto ci sygnałów wyj ciowych sieci Y i ró ni si znacznie od warto ci danych d i tych sygnałów. Mówi si wówczas, e sie nie została prawidłowo nauczona. Utykanie to jest spowodowane wielomodalno ci funkcji celu, która, wobec zło onych nieliniowych zale no ci obowi zuj cych wewn trz sieci, mo e charakteryzowa si ogromn liczb minimów lokalnych. Na rysunku 2.2a przedstawiono trójwymiarowy wykres funkcji celu, zdefiniowanej według zale no ci (2.9) dla jednego neuronu o 2 wagach Wo i Wl realizuj cych separacj dwu klas danych, a na rys. 2.2b odpowiadaj cy mu wykres linii ekwipotencjalnych. W zale no ci od punktu startu (znak + na wykresie linii ekwipotencjalnych) trajektoria rozwi zania zd a albo do minimum globalnego na rodku wykresu (punkt x) , albo trafia na w sk dolin wyprowadzaj c rozwi zanie poza zakres obj ty rysunkiem.
Rysunek 2.2 Przykładowy wykres funkcji celu sieci neuronowej: a) wykres trójwymiarowy funkcji; b) przebieg linii ekwipotencjalnych i procesu uczenia ( + -punkt startowy, x -stan ko cowy) Z wykresu zmian funkcji wida , e nie z ka dego punktu wykresu i nie ka d drog jest mo liwe zej cie do minimum globalnego. Wybranie niewła ciwego punktu startowego (niewła ciwie przyporz dkowanie warto ci pocz tkowych wag) oraz niewła ciwej drogi mo e spowodowa wej cie w minimum lokalne, którego algorytm optymalizacyjny nie b dzie w stanie samoczynnie opu ci . Jakkolwiek definicja funkcji celu sieci neuronowej w postaci sumy kwadratów ró nic mi dzy warto ciami danymi i aktualnymi (zale no (2.9)) jest najcz ciej wykorzystywana w praktyce, stosuje si równie w szczególnych przypadkach inne definicje. Do bardziej znanych mo na zaliczy funkcj wykorzystuj c norm L1, umo liwiaj c bardziej równomierny udział poszczególnych składników bł du w ogólnej definicji funkcji celu. Ograniczaj c si do jednej próbki ucz cej definicj funkcji celu w tym przypadku przyjmuje si w postaci [16]
E=
M i =1
yi − d i (2.13)
Definicj tego typu stosuje si niekiedy w cyfrowym przetwarzaniu sygnałów przy u yciu sieci neuronowej. W przeciwnym przypadku, gdy zadaniem układu jest minimalizacja najwi kszego odchylenia odpowiedzi od wielko ci danej, stosuje si wy sze pot gi bł du w definicji funkcji celu [16]
M
E=
i =1
( yi − di )2 K
(2.14)
przy czym K ≥ 2. Wprowadzenie wi kszych warto ci K powoduje jednak znaczne trudno ci natury obliczeniowej algorytmu optymalizacyjnego, wynikaj ce z pogarszaj cego si uwarunkowania problemu. Interesuj c posta funkcji celu zaproponował Karayiannis w pracy [60]. Przy ograniczeniu si , podobnie jak wy ej, do jednej próbki ucz cej, jego definicj mo na przedstawi w postaci M 1 M 2 E (W ) = λ ( yi − d i ) + (1 + λ ) φ1 ( yi − d1 ) (2.15) 2 i =1 i =1
przy czym λ jest współczynnikiem zmieniaj cym si w przedziale [0,1], a φ1 ( ) jest funkcj ci gł , wypukł , dodatnio okre lon i ró niczkowaln w całym zakresie zmienno ci argumentu. Dla warto ci λ = 1 definicja powy sza jest to sama ze standardow definicj najmniej szych kwadratów (2.8). Przy λ = 0 uczenie sieci odbywa si przez minimalizacj drugiego składnika wzoru (2.15). Przy warto ci λ zmieniaj cej si od 0 do 1 funkcja celu uwzgl dnia oba składniki wzoru, przy czym ich udział zale y od aktualnej warto ci λ. We wst pnej fazie uczenia przyjmuje si warto λ równ 1 (standardowa definicja), zapewniaj c stosunkowo szybk redukcj bł du przy u yciu klasycznych metod uczenia. W miar post pów uczenia warto λ jest redukowana do zera, przy której funkcja celu upraszcza si do składnika drugiego. Dla uzyskania najlepszych efektów funkcja φ1 ( ), decyduj ca o jako ci sieci neuronowej, powinna by tak dobrana, aby w ko cowej fazie uczenia była realizowana minimalizacja warto ci absolutnej bł du. Kryterium takie spełnia definicja funkcji φ1 ( ) zaproponowana przez Karayiannisa [60]
φ1 ( x ) =
1
β
ln[cos h(βx )] (2.16)
która przy du ych warto ciach β jest zbie na do x . Oddzielnym problemem w uczeniu sieci pozostaje problem uwzgl dnienia du ych, przypadkowych odchyłek danych ucz cych od warto ci znamionowych, tak zwany problem uczenia w du ym szumie (outliers). Przy stosowaniu tradycyjnej formy kwadratowej b d minimaksowej funkcji celu przypadkowe bł dy danych ucz cych w istotny sposób wypaczaj wynik ko cowy. Wynika to z faktu, e gradientowa metoda optymalizacji dobiera wagi kieruj c si informacj o gradiencie (wzory (2.10)-(2.12)). W przypadku standardowej definicji funkcja celu jest wyra ona w postaci kwadratu bł du ri=yi-di, to jest
∇E =
Ei =
1 2 ri , a jej gradient 2
∂E ∂E ∂r ∂r = = ri i jest liniow funkcj bł du ri. Oznacza to, e wpływ wielko ci bł du na ∂W ∂W ∂ri ∂W
ko cowy wynik uczenia sieci jest liniowy w całym zakresie zmian tej wielko ci. Jest to cecha niepo dana w przypadku du ych spodziewanych bł dów pomiarowych danych ucz cych.
Rysunek 2.3 Wpływ definicji funkcji celu na przebieg bł du w funkcji wielko ci residuum Lepsze wyniki mo na uzyska przyjmuj c definicj funkcji celu w postaci logarytmicznej [80]
E= i
1 log 1 + ri 2 (2. 17) 2
W tym przypadku wyra enie okre laj ce gradient przyjmie posta
∂ri ri (2. 18) 1 2 ∂W i 1+ ri 2 ri Gradient jest teraz nieliniow funkcj bł du ψ i = . Na rysunku 2.3 przedstawiono porównanie 1 2 1 + ri 2 ∇E =
wpływu wyboru ostatniej postaci funkcji celu i klasycznej definicji sumy kwadratów. Funkcja celu przyj ta w postaci (2.17) wprowadza wzrastaj ce tłumienie warto ci gradientu przy du ych warto ciach residuów ri, tłumi c tym samym wpływ przypadkowych du ych bł dów pomiarowych. Jeszcze lepsze wyniki uczenia przy wyst powaniu du ych przypadkowych bł dów pomiarowych w danych ucz cych mo na uzyska stosuj c w definicji funkcji celu funkcj Hampela [9]. W tym przypadku definiuje si funkcj celu w postaci
φ (ri ) (2. 19)
E= i
Funkcja φ(ri) reprezentuje funkcj Hampela [39], której kształt przedstawiono na rys. 2.4a. funkcja Hampela jest zło eniem funkcji kwadratowej w przedziale [-a, a], funkcji hiperbolicznej w przedziale [|a|,|b|] oraz funkcji stałej dla pozostałych warto ci zmiennej niezale nej. Jej pochodna wzgl dem r; jest okre lona nast puj co:
ri
dla ri ≤ a
∂φ ∂E = = c1 tgh[c2 (b − ri )]sgn (ri ) dla a ≤ ri ≤ b (2. 20) ∂ri ∂ri dla ri > b 0
Rysunek 2.4 Wykres funkcji Hampela w zale no ci od warto ci residuum ri: a) funkcja Hampela; b) pochodna funkcji Hampela przy czym cl i c2 s stałymi, natomiast a i b - zakresami funkcji Hampela (rys. 2.4a). Wykres zmian pochodnej funkcji Hampela w zale no ci od warto ci residuum przedstawia rys. 2.4b. W przedziale [-a, a] funkcja zachowuje si jak przy standardowej definicji kwadratowej, charakteryzuj c si liniowym wpływem warto ci residuum na warto gradientu. W miar wzrostu bł du wpływ ten maleje nieliniowo, a po przekroczeniu progu równego b staje si równy zeru. Taki przebieg funkcji umo liwia wytłumienie wpływu du ych bł dów pomiarowych przy nie zniekształconym przebiegu uczenia w przypadku małych warto ci residuów.
2.3. Algorytm propagacji wstecznej w postaci klasycznej W uproszczeniu przyj to, e celem uczenia sieci jest okre lenie warto ci wag neuronów wszystkich warstw sieci w taki sposób, aby przy zadanym wektorze wej ciowym ~ uzyska na wyj ciu sieci warto ci sygnałów wyj ciowych yi równaj ce si z dostateczn dokładno ci warto ciom danym di dla i = 1, 2, . . . , M. Przy zało eniu ci gło ci funkcji celu najskuteczniejszymi metodami uczenia pozostaj gradientowe metody optymalizacyjne, w których uaktualnianie wektora wag (uczenie) odbywa si zgodnie ze wzorem
W (k + 1) = W (k ) + ∆W (2. 21) w którym
∆W = ηp(W ) (2. 22)
η jest współczynnikiem uczenia, a p(W) - kierunkiem w przestrzeni wielowymiarowej W. Uczenie sieci wielowarstwowej przy zastosowaniu metod gradientowych wymaga do wyznaczenia kierunku p(W) okre lenia wektora gradientu wzgl dem wag wszystkich warstw sieci. Jedynie w przypadku wag warstwy wyj ciowej jest to zadanie okre lone w sposób natychmiastowy. Warstwy pozostałe wymagaj zastosowania specjalnej strategii post powania, która w dziedzinie sieci neuronowych nosi nazw algorytmu propagacji wstecznej (backpropagation) [2, 41, 46]. Zgodnie z tym algorytmem w ka dym cyklu ucz cym wyró nia si nast puj ce etapy uczenia [41]: 1. Analiza sieci neuronowej o zwykłym kierunku przepływu sygnałów przy zało eniu sygnałów wej ciowych sieci równych elementom aktualnego wektora x. W wyniku analizy otrzymuje si warto ci sygnałów wyj ciowych neuronów warstw ukrytych oraz warstwy wyj ciowe a tak e odpowiednie
( ) ( )
df u (1) df u (2 ) pochodne (1) , (2 ) , dui dui
( )
df u (m ) , (m ) funkcji aktywacji w poszczególnych warstwach. dui
Utworzenie sieci propagacji wstecznej przez odwrócenie kierunków przepływu sygnałów, zast pienie funkcji aktywacji przez ich pochodne, a tak e podanie do byłego wyj cia (obecnie wej cia) sieci wymuszenia w postaci odpowiedniej ró nicy mi dzy warto ci aktualn i dan . Dla tak utworzonej sieci nale y obliczy warto ci odpowiednich ró nic wstecznych. 3. Adaptacja wag (uczenie sieci) odbywa si na podstawie wyników uzyskanych w punkcie 1 i 2 dla sieci zwykłej i sieci o propagacji wstecznej według odpowiednich wzorów. 4. Omówiony proces opisany w punktach 1, 2, 3 nale y powtórzy dla wszystkich wzorców ucz cych, kontynuuj c go do chwili spełnienia warunku zatrzymania algorytmu. Działanie algorytmu ko czy si w momencie, gdy norma gradientu spadnie poni ej pewnej warto ci e okre laj cej dokładno procesu uczenia. Szczegółowe wzory oraz ich wyprowadzenia dotycz ce okre lonej sieci neuronowej stanowi klasyk w tej dziedzinie. Z tego wzgl du ograniczono si tutaj do podania jedynie warunków dotycz cych sieci o jednej warstwie ukrytej. Przyj te oznaczenia tej sieci przedstawia rys. 2.5. Podobnie jak dotychczas N oznacza liczb neuronów wej ciowych, K liczb neuronów w warstwie ukrytej i M - liczb neuronów w warstwie wyj ciowej. Przyj to sigmoidaln funkcj aktywacji dla neuronów warstw ukrytej i wyj ciowej. Podstaw algorytmu stanowi przyj cie funkcji celu w postaci sumy kwadratów ró nic mi dzy aktualnymi warto ciami sygnałów wyj ciowych sieci a warto ciami danymi. W przypadku jednej próbki ucz cej (x,d) funkcj celu definiuje si w postaci (2.8), a w przypadku wielu próbek ucz cych j (j = 1, 2, . . . , p) w postaci wzoru (2.9). Uaktualnianie wag mo e odbywa si po ka dorazowej prezentacji próbki ucz cej lub jednorazowo (w sposób skumulowany) po prezentacji wszystkich próbek tworz cych cykl ucz cy. W dalszych rozwa aniach dla uproszczenia zapisu przyj to funkcj celu w postaci (2.8), która odpowiada aktualizacji wag po ka dorazowej prezentacji próbki. 2.
Rysunek 2.5Sie neuronowa jednokierunkowa dwuwarstwowa z przyj tymi oznaczeniami Przy oznaczeniach sygnałów wyst puj cych w sieci, jak to pokazano na rys. 2.5, funkcj t opisano zale no ci
1 M E= f 2 k =1
K i =0
2
(2 )
Wki vi − d k
2
1 M f = 2 k =1
K
(2 )
i =0
Wki f
N j =0
(1)
Wij x j
− dk
(2. 23)
We wzorze zastosowano sumowanie sygnałów od i = 0, co odpowiada wł czeniu sygnału jednostkowego polaryzacji jako składowej zerowej odpowiedniego wektora. W przypadku wektora wej ciowego x odpowiada to x=[1,x1, x2, ..., xN]T. Odpowiednie składniki gradientu otrzymuje si przez ró niczkowanie zale no ci (2.23). W pierwszej kolejno ci nast puje dobór wag neuronów warstwy wyj ciowej. Z obliczenia gradientu funkcji celu otrzymuje si
( )
∂E df ui(2 ) ( ) = y − d v j (2. 24) i i ∂Wij(2 ) dui(2 )
przy czym
ui(2 ) =
K j =0
Wij(2 )v j . Wprowadzaj c oznaczenie δ i(2 ) = ( yi − d i )
( )
df ui(2 ) dui(2 )
odpowiedni składnik
gradientu wzgl dem wag neuronów warstwy wyj ciowej mo na zapisa w postaci
∂E = δ i(2 )v j (2. 25) ∂Wij(2 ) Okre lenie składników gradientu wzgl dem wag neuronów warstwy ukrytej odbywa si według tej samej zasady, przy czym składowe gradientu s opisane inn , bardziej skomplikowan zale no ci , wynikaj c z istnienia funkcji zło onej w zale no ci (2.23)
∂E = ∂Wij(1)
M k =1
( yk − d k ) dyk
dvi (2. 26) dvi dWij(1)
Po uwzgl dnieniu poszczególnych składników tego wzoru otrzymuje si
∂E = ∂Wij(1)
M k =1
( yk − d k ) df (u(k2 ) )Wki(2 ) df (u(1i ) ) (2. 27) (2 )
dui
duk
Przyjmuj c oznaczenia:
δ k(2 ) = ( yk − d k ) δ1(1) =
M k =1
(1)
( )
df uk(2 ) (2. 28) duk(2 )
δ k(2 )Wki(2 )
( )
df ui(1) (2. 29) dui(1)
otrzymuje si wyra enie okre laj ce składowi gradientu wzgl dem wag neuronów warstwy ukrytej w postaci
∂E (1) (1) = δ i x j (2. 30) ∂Wij Okre lenie wektora gradientu jest kluczowe w dalszym procesie uaktualniania wag. W klasycznym algorytmie propagacji wstecznej kierunek p(W) wyst puj cy we wzorze (2.21) przyjmuje si zgodnie z kierunkiem ujemnego gradientu; st d
∆W = −η ∇E (W ) (2. 31) Inne, skuteczniejsze metody okre lenia kierunku p(W) zaproponowano w dalszych podrozdziałach pracy.
2.4. Wyznaczanie gradientu metod grafów przepływowych Jak pokazano powy ej, wzory okre laj ce poszczególne sygnały u ywane w algorytmie propagacji wstecznej s do skomplikowane, przy czym stopie zło ono ci wzrasta wraz z liczba warstw. Wykorzystuj c metod grafów przepływowych sygnału odnosz cych si do systemu mo na poda proste reguły tworzenia składników gradientu, obowi zuj ce w tej samej postaci niezale nie od stopnia zło ono ci sieci. Wykorzystuje si przy tym zale no ci odnosz ce si do zagadnienia wra liwo ci systemu. Z teorii systemów [106] wiadomo, e pełna wra liwo układu rozumiana jako pochodna dowolnego sygnału w tym układzie wzgl dem warto ci wag mo e by okre lona na podstawie znajomo ci sygnałów w grafie zwykłym (oznaczonym przez G) oraz grafie
ˆ ). Graf Gˆ jest zdefiniowany jak oryginalny graf G, dla którego kierunki doł czonym (oznaczonym przez G wszystkich gał zi zostały odwrócone. W przypadku liniowej gał zi grafu G opis odpowiadaj cej jej gał zi grafu Gˆ jest identyczny jak w G. Dla nieliniowej gał zi f (x, k) (przy czym x jest sygnałem ˆ staje si gał zi zlinearyzowan o wej ciowym, a k - parametrem), odpowiadaj ca jej gał grafu G ∂f ( x, k ) wzmocnieniu równym β = obliczonym dla aktualnego sygnału wej ciowego x grafu G. Tabela 2.1 ∂x ˆ wzgl dem grafu wyj ciowego G. podaje zasady okre lania gał zi grafu doł czonego G doł czonego
Tabela 2.1 Graf G xi
Graf
W
x2
xˆ1
W
xˆ2
β
x2=f(x1,k) xi
Gˆ
W
x2
β=
xˆ1
∂f ( x, k ) ∂x x= x−1
xˆ2
Jak pokazano w pracach [105, 106], algorytm obliczania wra liwo ci oparty na grafach przepływu sygnałów zakłada analiz
Gˆ z jednostkowym sygnałem jako
grafu zwykłego G oraz doł czonego
ˆ (odpowiadaj ce wyj ciu G). Zale no ci wra liwo ciowe dowolnego wymuszeniem, podanym na wej cie G sygnału wyj ciowego v0 w grafie G wzgl dem wzmocnienia dowolnej gał zi tego grafu mo na przedstawi w nast puj cy sposób: • dla liniowej gał zi Wij grafu G dv0 = v j vˆi (2. 32) dWij przy czym Wij jest wzmocnieniem liniowej gał zi skierowanej od w zła j-tego do i-tego, vi
vˆi - sygnałowi i-tego w zła grafu doł czonego Gˆ , dla którego sygnałem wej ciowym jest warto vˆ0 = 1 ;
odpowiada sygnałowi j-tego w zła grafu G, a •
dla nieliniowej gał zi grafu G ł cz cej j-ty w zeł z i-tym i opisanej funkcj fij (vj, k) wra liwo wzgl dem parametru k
przy czym
∂f (v j , k ) ∂k
∂f (v j , k ) dv0 (2. 33) = vˆi ∂k dk
jest obliczona dla sygnału vj j-tego w zła grafu G.
Niech W oznacza wektor optymalizowanych parametrów (wag Wi) układu opisanego w postaci grafu G, W = [W1, W2, . . . , Wn] T, E(W) oznacza funkcj celu, a gradient ∇E(W), oznaczony skrótowo g(W)= ∇E(W) jest zdefiniowany w postaci
∂E (W ) ∂E (W ) g (W ) = , , ∂W1 ∂W2
∂E (W ) , ∂Wn
T
(2. 34)
Przy zało eniu, podobnie jak w rozdziale poprzednim, definicji funkcji celu w postaci uwzgl dniaj cej tylko jedn próbk ucz c
E (W ) =
1 2
M i =1
(v0i − di )2
(2. 35)
przy czym di jest warto ci dan i-tego neuronu wyj ciowego, i = 1, 2, . . . , M, gradient funkcji celu przyjmie nast puj c posta :
g (W ) = [g1 (W ), g 2 (W ),
, g n (W )] (2. 36) T
przy czym
g k (W ) =
M i =1
(v0i − di ) ∂v0i
∂Wk
(2. 37)
Do okre lenia wektora gradientu s zatem wymagane pochodne sygnałów wyj ciowych v0i grafu wzgl dem wag Wk, pomno one przez ró nic (v0i - di). Dzi ki zastosowaniu metody grafów wszystkie te operacje (wł cznie z sumowaniem) mog by przeprowadzone przy u yciu grafu G oraz doł czonego do niego
ˆ przy zało eniu odpowiednich warunków pobudzenia grafu Gˆ . Jak wykazano w pracy [106], dzi ki grafu G liniowo ci grafu doł czonego, wszystkie te operacje s dokonywane automatycznie, je li w grafie doł czonym zamiast wymusze jednostkowych poda si pobudzenie w postaci ró nic mi dzy warto ciami aktualnymi ˆ oraz wysygnałów wyj ciowych a ich warto ciami po danymi di. Sposób tworzenia grafu doł czonego G muszenia w tym grafie do automatycznego wyznaczania wektora gradientu na podstawie analizy tylko dwu grafów G i
Gˆ przedstawiono na rys. 2.6.
Rysunek 2.6 Ilustracja sposobu tworzenia grafu doł czonego: a) graf oryginalny G; b) graf doł czony
Gˆ
ˆ przez (v0i - di) dowolna składowa wektora Przy zast pieniu wszystkich jednostkowych wymusze w G gradientu gk(W) b dzie okre lona na podstawie odpowiednich sygnałów grafu G oraz grafu do niego ˆ w sposób, praktycznie bior c, identyczny jak w przypadku zwykłej wra liwo ci. Dla liniowej doł czonego G gał zi grafu G opisanej jako waga Wi ∂E (W ) = v j vˆi (2. 38) ∂Wij a dla nieliniowej gał zi grafu G opisanej w postaci Wij(vj, k)
∂Wij (v j , k ) ∂E (W ) = vˆi (2. 39) ∂k ∂k
Rysunek 2.7 Ilustracja metody grafu doł czonego w zastosowaniu do generacji wektora gradientu sieci jednokierunkowej wielowarstwowej: a) graf wyj ciowy sieci; b) graf doł czony Zale no ci powy sze odnosz c si do dowolnych systemów (liniowych, nieliniowych, rekurencyjnych itp.). W szczególno ci zostan zastosowane w rozwa anej sieci neuronowej jednokierunkowej wielowarstwowej przedstawionej w postaci grafu przepływu sygnałów. Rozwa my typowi sie o m warstwach przedstawion na rys. 2.7a (przy liczeniu warstw jak zwykle nie uwzgl dniamy warstwy wej ciowej). Liczba neuronów w poszczególnych warstwach b dzie oznaczona Kj (j = 1, 2, . . . , m), przy czym ostatnia warstwa jest jednocze nie warstw wyj ciow sieci zawieraj c Km= M neuronów, a sygnały wyj ciowe vj(m)=yj. Do wyznaczenia składników gradientu wzgl dem wag poszczególnych warstw sieci wykorzystamy sformułowania odnosz ce si do grafów doł czonych. Rysunek 2.7b przedstawia graf doł czony sieci z rys. 2.7a, przy czym dla ujednolicenia oznacze wszystkie sygnały w tym grafie oznaczono daszkiem. Pobudzenie grafu stanowi ró nice mi dzy warto ciami aktualnymi sygnałów wyj ciowych yi i warto ciami danymi dj . Nieliniowe gał zie grafu G zostały zast pione w grafie doł czonym pochodnymi
df ( x ) obliczonymi dx
odpowiednio w punktach x = ui dla ka dej warstwy oddzielnie. Je eli na przykład funkcja aktywacji neuronów ma posta sigmoidaln unipolarn
f (x ) =
1 df ( x ) , wtedy = f ( x )(1 − f ( x )) jest okre lona dx 1 + exp(− x )
bezpo rednio na podstawie znajomo ci warto ci funkcji sigmoidalnej w punkcie pracy x i nie wymaga adnych dodatkowych oblicze warto ci funkcji.
Opieraj c si na przytoczonym algorytmie wyznaczania gradientu na podstawie grafów mo na teraz okre li poszczególne składowe wektora gradientu g(W) dla dowolnej warstwy neuronów: • dla warstwy wyj ciowej
∂E (W ) = v (jm−1)uˆi(m ) (2. 40) ∂Wij(m ) •
dla k-tej warstwy ukrytej
∂E (W ) ( k −1) ( k ) ( k ) = v j uˆi (2. 41) ∂Wij •
dla pierwszej warstwy ukrytej
∂E (W ) = x j ui(1) (2. 42) ∂Wij(1) Jak z przytoczonych sformułowa wida , posta wzoru okre laj cego odpowiedni składnik gradientu jest (przy zachowaniu odpowiednich oznacze sygnałów) identyczna, niezale nie od tego, w której warstwie neuronów znajduje si odpowiednia waga. Jest to reguła bardzo prosta w zastosowaniach, wymagaj ca przy okre leniu składowej gradientu, znajomo ci tylko 2 sygnałów: sygnału w zła, z którego waga wychodzi w grafie zwykłym oraz sygnału w zła w grafie doł czonym. Pod tym wzgl dem stanowi ona reguł lokalni. Wa n zalet metody grafów, poza znakomitym uproszczeniem formuły, jest mo liwo uwzgl dnienia ogranicze równo ciowych nakładanych na dowolne wagi sieci [106]. Je li na przykład waga o warto ci W dotyczy gał zi Wij ł cz cej w zeł i-ty z j-tym (od j-tego do i-tego) oraz gał zi Wkl ł cz cej w zeł k-ty z l-tym (od l-tego do k-tego) to, jak łatwo mo na zauwa y , waga W wyst pi w dwóch ró nych miejscach w wyra eniu okre laj cym funkcj celu. Zgodnie z reguł ró niczkowania funkcji zło onych pochodna taka jest wyznaczana w postaci sumy pochodnych wzgl dem Wij oraz Wkl. St d
∂E (W ) ∂E ∂E = + (2. 43) ∂W ∂Wij ∂Wkl Uwzgl dniaj c rozwa ania dotycz ce grafu doł czonego i przyjmuj c jednolite oznaczenia sygnałów wszystkich w złów w postaci v ( vˆ ) z odpowiednim wska nikiem, otrzymuje si
∂E (W ) = v j uˆi + vl uˆk (2. 44) ∂W Jak wida ze wzoru (2.44), uwzgl dnienie równo ciowych ogranicze nakładanych na wagi (Wij = Wkl) nie tylko nie komplikuje zale no ci ogólnych, ale upraszcza je, przez zmniejszenie liczby zmiennych, przy czym uproszczenie jest tym wi ksze, im wi cej ogranicze równo ciowych jest nało onych na dan wag . Nale y zauwa y , e wagi równo ciowe (shared weights) mog dotyczy tej samej warstwy lub warstw zupełnie ró nych. Istota wzoru (2.44) nie zmienia si przy tym zupełnie. Jest to najistotniejsza ró nica metody generacji gradientu bazuj cej na grafach przepływu sygnałów w stosunku do tradycyjnego podej cia klasycznego reprezentowanego w literaturze wiatowej [41, 46].
2.5. Algorytmy gradientowe optymalizacji w zastosowaniu do uczenia sieci 2.5.1. Zale no ci podstawowe
Zadanie uczenia sieci neuronowej jest równowa ne minimalizacji odpowiednio zdefiniowanej funkcji celu E(W). Mo na je rozwi za przy zastosowaniu algorytmów optymalizacji, z których najbardziej skuteczne s algorytmy gradientowe [35, 152]. Bazuj one na rozwini ciu w szereg Taylora funkcji celu E(W) w najbli szym s siedztwie znanego rozwi zania W. W przypadku funkcji wielu zmiennych (W = [W1, W2, . . . , Wn] T) rozwini cie to mo na przedstawi w otoczeniu okre lonego wcze niej punktu (na starcie algorytmu jest to punkt pocz tkowy W(0)) na kierunku p. Mo na je okre li zale no ci ogóln [35, 152]
E (W + p ) = E (W ) + [g (W )] p + T
1 T p H (W ) p + 2
(2. 45)
∂E ∂E w której g (W ) = ∇E = , , ∂W1 ∂W2
∂E , ∂Wn
T
jest wektorem gradientu, a symetryczna macierz
kwadratowa
H (W ) =
∂E ∂W1∂W1
∂E ∂Wn ∂W1
∂E ∂W1∂Wn
∂E ∂Wn ∂Wn
jest macierz drugich pochodnych, zwan hesjanem. W zale no ci tej p jest wektorem kierunkowym, zale nym od aktualnych warto ci wektora W. W praktyce wykorzystuje si najcz ciej tylko trzy pierwsze składniki wzoru (2.45), pomijaj c pozostałe
E (W + p ) = E (W ) + [g (W )] p + T
( )
1 T p H (W ) p + O h 3 (2. 46) 2
Zale no (2.46) jest kwadratowym przybli eniem funkcji E(W ) w najbli szym s siedztwie znanego punktu W z dokładno ci bł du obci cia O(h3). Dla uproszczenia zapisu w dalszym ci gu rozwa a warto ci zmiennych uzyskane w k-tym cyklu b d oznaczane ze wska nikiem dolnym k. Punkt rozwi zania W = Wk jest punktem optymalnym funkcji E(W), je li g(Wk) = 0, a hesjan H(Wk) jest dodatnio okre lony [35, 37]. Przy spełnieniu tych warunków funkcja w dowolnym punkcie nale cym do s siedztwa Wk ma warto wi ksz ni w punkcie Wk, a zatem punkt Wk jest rozwi zaniem odpowiadaj cym minimalnej warto ci funkcji celu. W rzeczywisto ci ze wzgl du na sko czon dokładno oblicze korzysta si zwykle ze zmodyfikowanych warunków optymalno ci. Oznaczaj c przez τ przyj t dokładno oblicze , zakłada si , e punkt Wk jest punktem optymalnym, je eli [35]:
E (Wk −1 ) − E (Wk ) ≤ τ (1 + E (Wk ) ) (2. 47) Wk −1 − Wk ≤ τ (1 + Wk
) (2. 48)
g (Wk ) ≤ 3 τ (1 + E (Wk ) ) (2. 49) Na etapie poszukiwania minimum warto ci funkcji celu kierunek poszukiwa p oraz krok η s dobierane w taki sposób, aby dla nowego punktu Wk+1 = Wk + ηkpk była spełniona zale no E(Wk+1) < E(Wk). Poszukiwania minimum trwaj dopóty, dopóki warunki okre lone zale no ciami (2.47)-(2.49) nie b d spełnione b d te nie zostanie przekroczony okre lony czas oblicze (liczba iteracji). Ró nice mi dzy algorytmami wyst puj w sposobie wyznaczania kierunku poszukiwa p oraz kroku η. Ogólny algorytm optymalizacji w zastosowaniu do uczenia sieci mo na przedstawi w nast puj cej postaci (zakłada si , e jest dana warto pocz tkowa wektora optymalizowanego W0 = Wk): 1. Test na zbie no i optymalno aktualnego rozwi zania Wk. Je eli punkt Wk spełnia warunki testowe - jest punktem optymalnym, co oznacza zako czenie oblicze . W przeciwnym razie przej cie do punktu 2. 2. Wyznaczenie wektora kierunku poszukiwa pk w punkcie Wk. 3. Minimalizacja kierunkowa funkcji E(W) na kierunku pk, w celu wyznaczenia takiej warto ci ηk, aby E(Wk + ηkpk) < E(Wk). 4. Wyznaczenie nowego rozwi zania Wk+1 = Wk + ηkpk oraz odpowiadaj cej mu warto ci E(Wk), g(Wk) (lub ewentualnie H(Wk)) i powrót do punktu 1.
2.5.2. Algorytm najwi kszego spadku
Ograniczaj c si w rozwini ciu Taylora do liniowego przybli enia funkcji E(W) w najbli szym s siedztwie znanego rozwi zania W wzór (2.45) upro ci si do
( )
E (Wk + pk ) = E (Wk ) + [g (Wk )] pk + O h 2 (2. 50) T
Aby spełni Przyj cie
zale no
E(Wk+1)
<
E(Wk),
wystarczy
dobra
[g(Wk)] Tp
<
0.
pk = − g (Wk ) (2. 51) spełnia ten warunek. W ten sposób otrzymuje si wzór okre laj cy wektor kierunkowy p w metodzie najwi kszego spadku. Wad tej metody jest niewykorzystanie informacji o krzywi nie funkcji zawartej w hesjanie, co powoduje, e metoda jest wolno zbie na (zbie no liniowa). Wada ta oraz brak post pów minimalizacji w okolicy punktu optymalnego, gdzie gradient przyjmuje bardzo małe warto ci, spowodowały, e metoda jest mało efektywna. Niemniej jednak, ze wzgl du na jej prostot , małe wymagania co do pami ci i stosunkowo mał zło ono obliczeniow stanowiła ona przez lata i nadal pozostaje podstawow metod stosowan w uczeniu sieci wielowarstwowych. Popraw efektywno ci mo e przynie zastosowanie metody uczenia z tzw. momentem (momentum). W przypadku stosowania tej metody aktualizacja wag sieci Wk+1 = Wk +∆Wk, nast puje według zmienionej formuły okre laj cej ∆Wk. Mianowicie
∆Wk = ηk pk + α (Wk − Wk −1 ) (2. 52) przy czym α jest współczynnikiem momentu, przyjmowanym z przedziału [0, 1]. Pierwszy składnik tego wyra enia odpowiada zwykłej metodzie uczenia, drugi natomiast uwzgl dnia ostatni zmian wag i jest niezale ny od aktualnej warto ci gradientu. aktualnej warto ci gradientu. Im wi ksza jest warto współczynnika a, tym składnik wynikaj cy z momentu ma wi kszy wpływ na dobór wag. Jego wpływ wzrasta w sposób istotny na płaskich odcinkach funkcji celu oraz w pobli u minimum lokalnego, gdzie warto gradientu jest bliska zeru. Na płaskich odcinkach funkcji celu przyrost wag, przy stałej warto ci współczynnika uczenia r~,~ = r~, jest w przybli eniu równy. Oznacza to, e ∆Wk = ηpk + α∆Wk i efektywny przyrost warto ci wag okre la teraz relacja
∆Wk =
η pk 1−α
(2. 53)
Przy warto ci współczynnika α = 0,9 oznacza to 10-krotny wzrost efektywnej warto ci współczynnika uczenia, a wi c równie 10-krotne przyspieszenie procesu uczenia. W pobli u minimum lokalnego czynnik momentu jako nie zwi zany z warto ci gradientu mo e spowodowa zmian wag, prowadz c do wzrostu warto ci funkcji celu i opuszczenie strefy „przyci gania" tego minimum. Przy małej warto ci gradientu czynnik momentu mo e sta si dominuj cy we wzorze (2.52) i spowodowa przyrost wag ∆Wk odpowiadaj cy wzrostowi warto ci funkcji celu, umo liwiaj cemu opuszczenie okre lonego minimum lokalnego. Czynnik momentu nie mo e przy tym całkowicie zdominowa procesu uczenia, gdy prowadziłoby to do niestabilno ci algorytmu. Zwykle kontroluje si warto funkcji celu E w procesie uczenia, dopuszczaj c do jej wzrostu jedynie w ograniczonym zakresie, np. 5%. W takim przypadku je li w kolejnych iteracjach k oraz k + 1 jest spełniona relacja E(k + 1) < 1,05E(k), to krok jest akceptowany i nast puje uaktualnienie warto ci wag, je eli natomiast E(k + 1) ≥ 1,05E(k), to zmiany s pomijane i przyjmuje si (Wk - Wk-1) = 0. W tym przypadku składnik gradientowy odzyskuje dominacj nad czynnikiem momentu i proces przebiega zgodnie z kierunkiem minimalizacji wyznaczonym przez wektor gradientu. Ilustracj działania czynnika momentu prowadz cego do wyprowadzenia procesu uczenia z minimum lokalnego ilustruje rys. 2.8. Na rysunku 2.8a przedstawiono charakterystyk bł du redniokwadratowego w funkcji jednej z wag. Charakterystyka ma 2 minima: lokalne w punkcie P1 i globalne w punkcie P2. Przy warunku startowym wagi z warto ci -0,7 punkt rozwi zania znalazł si w minimum lokalnym Pl, które opu cił dzi ki czynnikowi momentu. Ostatecznie algorytm ucz cy zako czył proces uczenia w minimum globalnym P2, ale z pewn liczb oscylacji wokół tego punktu. Rysunek 2.8b przedstawia wykres zmian warto ci funkcji celu w kolejnych cyklach ucz cych. Funkcja ta w pewnych zakresach ma charakter rosn cy, dzi ki czemu było mo liwe opuszczenie minimum lokalnego Pl. Na ko cowym odcinku wykresu oscylacje s typu paso ytniczego i przeszkadzaj w uzyskaniu rozwi zania stabilnego. Przy niewła ciwie dobranej warto ci współczynnika momentu mo liwy byłby nawet powrót do minimum lokalnego P1. Uczenie dotyczyło sieci dwuwarstwowej aproksymuj cej i zostało przeprowadzone przy zastosowaniu programu Matlab [28] .
Rysunek 2.8 Ilustracja wpływu działania momentum na proces uczenia sieci: a) wykres bł du w funkcji warto ci. wagi W; b) wykres bł du w funkcji cykli ucz cych Nale y podkre li , e dobór warto ci współczynnika momentu jest zagadnieniem niełatwym i wymaga wielu eksperymentów, maj cych na celu dopasowanie jego warto ci do specyfiki rozwi zywanego problemu.
2.5.3. Algorytm zmiennej metryki W metodzie tej wykorzystuje si kwadratowe przybli enie funkcji E(W) w s siedztwie znanego rozwi zania Wk. Ograniczaj c si we wzorze (2.45) do trzech pierwszych składników otrzymuje si
E (Wk + pk ) ≈ E (Wk ) + [g (Wk )] pk + T
Minimum funkcji (2.54) wymaga, aby otrzymuje si
( )
1 T pk H (Wk ) pk + O h 3 (2. 54) 2
dE (Wk + p ) = 0 . Dokonuj c odpowiedniej operacji ró niczkowania dp g (Wk ) + H (Wk ) pk = 0
i ostatecznie
pk = −[H (Wk )] g (Wk ) (2. 55) −1
Wzór (2.55) wyznacza w sposób jednoznaczny taki kierunek pk, który zapewnia minimum funkcji celu. Jak z niego wynika, aby wyznaczy ten kierunek, nale y w ka dym cyklu okre li warto gradientu g oraz hesjanu H w punkcie znanego (ostatniego) rozwi zania Wk. Wzór (2.55), stanowi cy istot newtonowskiego algorytmu optymalizacji, jest zale no ci czysto teoretyczn , gdy wymaga zapewnienia dodatniej okre lono ci hesjanu w ka dym kroku, co w przypadku ogólnym jest trudne do spełnienia. Z tego powodu w praktycznych implementacjach algorytmu rezygnuje si z dokładnego wyznaczania hesjanu H(Wk), a w zamian stosuje si jego przybli enie G(Wk). Jedn z najpopularniejszych metod jest przy tym metoda zmiennej metryki [35, 152]. W metodzie tej w ka dym kroku modyfikuje si hesjan z kroku poprzedniego o pewn poprawk . Poprawka musi by tak dobrana, aby aktualna warto hesjanu G(Wk) przybli ała krzywizn funkcji celu E zgodnie z zale no ci
G (Wk )(Wk − Wk −1 ) = g (Wk ) − g (Wk −1 ) (2. 56) Na podstawie powy szego zało enia mo na otrzyma wzory okre laj ce hesjan w kroku k-tym, zale ne od warto ci hesjanu w kroku (k-1) oraz od przyrostów gradientu i optymalizowanej zmiennej W. Je eli przez sk i rk oznaczy si odpowiednio przyrosty wektora W oraz gradientu w dwu kolejnych krokach iteracyjnych, to jest sk = Wk − Wk −1 , rk = g (Wk ) − g (Wk −1 ) , a przez V - macierz odwrotn przybli onego hesjanu
Vk = [G (Wk )] , Vk −1 = [G (Wk −1 )] , to zgodnie ze wzorem Broydena-Goldfarba-Fletchera-Shanno (BFGS) −1
−1
proces uaktualniania warto ci macierzy V opisuje si zale no ci rekurencyjn [35]
rkTVk −1rk sk skT sk rkT Vk −1 + Vk −1rk skT − Vk = Vk −1 + 1 + T (2. 57) sk rk skT rk skT rk
W innym znanym algorytmie Davidona-Fletchera-Powella (DFP) uaktualnienie hesjanu odbywa si według zale no ci [35]
sk skT Vk −1rk rkTVk −1 (2. 58) Vk = Vk −1 + T − T sk rk rk Vk −1rk Za warto startow przyjmuje si zwykle warto V0 = 1, a pierwsza iteracja jest przeprowadzana zgodnie z algorytmem najwi kszego spadku. Jak wykazano w pracach [35, 152], przy warto ci startowej V0 = 1 i zastosowaniu minimalizacji kierunkowej w ka dym kroku optymalizacyjnym odtwarzana macierz hesjanu jest dodatnio okre lona. Minimalizacja kierunkowa jest konieczna, zarówno przy zastosowaniu strategii BFGS, jak i DFP, przy czym, jak wykazały testy, metoda BFGS jest bardziej odporna na wszelkiego rodzaju niedokładno ci tej minimalizacji. Z tego wzgl du mimo swojej nieco bardziej rozbudowanej postaci jest cz ciej u ywana. Metoda zmiennej metryki charakteryzuje si zbie no ci superliniow . Jest wi c znacznie lepsza od liniowo zbie nej metody najwi kszego spadku. Poza tym fakt, e hesjan w ka dym kroku spełnia warunek dodatniej okre lono ci daje pewno , e spełnienie warunku g(Wk) = 0 odpowiada rozwi zaniu problemu optymalizacji. Metoda ta jest obecnie uwa ana za jedn z najlepszych metod optymalizacji funkcji wielu zmiennych. Jej wad jest stosunkowo du a zło ono obliczeniowa (konieczno wyznaczenia n2 elementów hesjanu), a tak e du e wymagania co do pami ci przy przechowywaniu macierzy hesjanu, co w przypadku funkcji z bardzo du liczb zmiennych mo e by powa nym problemem. Z tego wzgl du stosuje si j do niezbyt du ych sieci. W przypadku komputerów osobistych jej skuteczne działanie zostało sprawdzone dla sieci o liczbie zmiennych nie przekraczaj cej tysi ca.
2.5.4. Algorytm Levenberga-Marquardta Drug bardzo popularn realizacj newtonowskiej metody optymalizacji jest zastosowanie metody regularyzacyjnej Levenberga-Marquardta [35]. W metodzie tej dokładn warto hesjanu H(W) we wzorze (2.55) zast puje si jego warto ci aproksymowan G{W), okre lan na podstawie informacji zawartej w gradiencie z uwzgl dnieniem czynnika regularyzuj cego. Przy wprowadzaniu metody przyj to definicj funkcji celu w postaci odpowiadaj cej istnieniu jednego wzorca ucz cego
E (W ) = przy czym
1 2
M i =1
[ei (W )]2
(2. 59)
ei = [ yi (W ) − di ] .Przy wprowadzonych oznaczeniach:
e(W ) =
e1 (W ) e2 (W )
∂e1 ∂W1 ∂e2 J (W ) = ∂W1
∂e1 ∂W2 ∂e2 ∂W2
∂e1 ∂Wn ∂e2 ∂Wn
∂eM ∂W1
∂eM ∂W2
∂eM ∂Wn
eM (W )
(2. 60)
wektor gradientu i aproksymowana macierz hesjanu odpowiadaj ce funkcji celu {2.59) s okre lane w postaci [35]
g (W ) = [J (W )] e(W ) (2. 61) T
G (W ) = [J (W )] J (W ) + R(W ) (2. 62) T
w której R(W) stanowi oznaczenie składników rozwini cia hesjanu H(W) zawieraj cego wy sze pochodne wzgl dem W. Wobec trudno ci w okre leniu warto ci R(W) w metodzie Levenberga-Marquardta zamiast jego dokładnej warto ci wprowadza si czynnik regularyzacyjny v1, w którym v, zwany parametrem LevenbergaMarquardta, jest wielko ci skalarn zmienian w trakcie procesu optymalizacyjnego. Aproksymowana macierz hesjanu w k-tym kroku algorytmu przyjmuje wi c posta
G (Wk ) = [J (Wk )] J (Wk ) + vk 1 (2. 63) T
Na pocz tku procesu uczenia, gdy aktualna warto Wk jest daleka od rozwi zania (du a warto wektora residuum e), przyjmuje si warto parametru vk bardzo du w porównaniu z najwi ksz warto ci własn macierzy
[J (Wk )]T J (Wk ) . W takim przypadku G (Wk ≈ vk 1) (2. 64)
i poszukiwanie kierunku odbywa si zgodnie z metod najwi kszego spadku
pk = −
g (Wk ) (2. 65) vk
W miar zmniejszania si residuum bł du i zbli ania si do rozwi zania, parametr vk jest zmniejszany i pierwszy składnik sumy we wzorze (2.62) odgrywa coraz wi ksz rol . O skuteczno ci działania algorytmu decyduje odpowiedni dobór warto ci vk. Du a warto pocz tkowa vk w miar post pów optymalizacji musi ulec redukcji a do warto ci zerowej przy rozwi zaniu bliskim optymalnemu. Istniej ró ne strategie doboru tej warto ci; tutaj ograniczono si tylko do oryginalnej metody zaproponowanej przez autora pracy [85]. Niech Ek oraz Ek-1 oznaczaj warto ci funkcji celu w k-tej oraz w (k - 1)-szej iteracji, a vk i vk-1 - warto parametru v w kolejnych iteracjach. Przez r > 1 oznaczmy współczynnik redukcji warto ci v. Według klasycznego algorytmu Levenberga-Marquardta zmiana warto ci v nast puje zgodnie ze schematem:
vk −1 r
•
je eli
E
vk −1 ≤ Ek , przyj r
•
je eli
E
vk −1 > Ek i E (vk −1 ) < Ek , przyj r
•
vk =
vk = vk −1
vk −1 ≤ Ek i E (vk −1 ) > Ek , zwi kszy kolejno n razy warto v a E (vk −1r n ) ≤ Ek , r n przyjmuj c jednocze nie vk = vk −1r je eli
E
Taka procedura zmian warto ci v jest kontynuowana a do chwili, gdy tzw. współczynnik wierno ci odwzorowania q osi gnie warto blisk jedno ci, przy czym współczynnik ten jest definiowany nast puj co [85]
q=
[∆Wk ]
T
Ek − Ek −1 (2. 66) T g k + 0,5[∆Wk ] Gk ∆Wk
przy czym gk oraz Gk oznaczaj odpowiednio wektor gradientu oraz aproksymowan warto hesjanu w k-tej iteracji, a Ek oraz Ek-1 - warto funkcji celu w dwu s siednich iteracjach. Przy warto ci q bliskiej jedno ci aproksymacja kwadratowa funkcji celu z du dokładno ci pokrywa si z warto ciami rzeczywistymi, co wiadczy o blisko ci rozwi zania optymalnego. W takim przypadku czynnik regularyzuj cy vk1 we wzorze (2.63) mo e by pomini ty (vk = 0) i proces okre lania hesjanu bazuje bezpo rednio na aproksymacji pierwszego rz du. Algorytm Levenberga-Marquardta przechodzi w algorytm Gaussa-Newtona, charakteryzuj cy si kwadratow zbie no ci do rozwi zania optymalnego.
2.5.5. Metoda gradientów sprz onych
W metodzie tej podczas wyznaczania kierunku minimalizacyjnego rezygnuje si z bezpo redniej informacji o hesjanie. W zamian za to kierunek poszukiwa pk jest konstruowany w taki sposób, aby był ortogonalny oraz sprz ony ze wszystkimi poprzednimi kierunkami p0, p1, …, pk-1. Zbiór wektorów pi, i = 0,1, . . . , k, jest wzajemnie sprz ony wzgl dem macierzy G, je eli
piT Gp j = 0
i ≠ j (2. 67)
Jak pokazano w pracach [35, 152], wektor pk, który spełnia powy sze zało enia, ma posta
pk = − g k +
k −1 j =0
β kj p j
(2. 68)
przy czym gk = g(Wk) oznacza aktualn warto wektora gradientu, a sumowanie w drugiej cz ci wzoru dotyczy wszystkich poprzednich kierunków minimalizacyjnych.
Korzystaj c z warunku ortogonalno ci oraz uwzgl dniaj c sprz enie mi dzy wektorami, wzór (2.68) mo na upro ci do nast puj cej postaci:
pk = − g k + β k −1 pk −1 (2. 69) Jak wynika z powy szego wzoru nowy kierunek minimalizacyjny zale y tylko od warto ci gradientu w punkcie rozwi zania Wk oraz od poprzedniego kierunku poszukiwa pk-1 pomno onego przez współczynnik sprz enia βk-1. Współczynnik sprz enia odgrywa tutaj bardzo wa ni rol , kumuluj c w sobie informacje o poprzednich kierunkach poszukiwa . Istnieje wiele odmiennych reguł wyznaczania tego współczynnika. Najbardziej znane z nich, to:
β k −1 =
g kT ( g k − g k −1 ) (2. 70) g kT−1 g k −1
β k −1 =
g kT ( g k − g k −1 ) (2. 71) − pk −1 g k −1
Ze wzgl du na kumulacj bł dów zaokr glania podczas kolejnych cykli obliczeniowych metoda gradientów sprz onych w praktyce zatraca wła ciwo ortogonalno ci mi dzy wektorami kierunków minimalizacyjnych. Dlatego te po wykonaniu n iteracji (n przyjmuje si za funkcj liczby zmiennych podlegaj cych optymalizacji) przeprowadza si jej ponowny start, zakładaj c w pierwszym kroku kierunek minimalizacyjny zgodnie z algorytmem najwi kszego spadku w aktualnie osi gni tym punkcie rozwi zania. Metoda ta wykazuje zbie no zbli on do liniowej i z tego powodu jest mniej skuteczna ni metoda zmiennej metryki, ale zdecydowanie szybsza ni metoda najwi kszego spadku. Stosuje si j powszechnie jako jedyny skuteczny algorytm optymalizacji przy bardzo du ej liczbie zmiennych si gaj cych nawet kilkudziesi ciu tysi cy. Dzi ki małym wymaganiom co do pami ci i stosunkowo niewielkiej zło ono ci obliczeniowej metoda ta umo liwia efektywne rozwi zanie bardzo du ych problemów optymalizacyjnych.
2.6. Metody doboru współczynnika uczenia Wi kszo omówionych wcze niej algorytmów okre la jedynie kierunek, wzdłu którego funkcja maleje, nie podaj c wielko ci kroku, dla którego funkcja ta osi ga warto minimaln na danym kierunku. Po okre leniu wła ciwego kierunku pk i wyborze na nim nowego punktu rozwi zania Wk+l, dla którego jest spełniony warunek E(Wk+l) < E(Wk), nale y tak dobra warto ηk, aby nowy punkt rozwi zania Wk +1 = Wk + η k pk le ał mo liwie blisko minimum funkcji E(W) na kierunku pk. Wła ciwy dobór współczynnika ηk ma ogromny wpływ na zbie no algorytmu optymalizacji do minimum funkcji celu. Im ηk bardziej odbiega od warto ci, dla której E(W) osi ga minimum dla danego kierunku pk, tym wi ksza liczba iteracji jest potrzebna do wyznaczenia optymalnego rozwi zania. Przyj cie zbyt małej warto ci η powoduje niewykorzystanie mo liwo ci zminimalizowania warto ci funkcji celu w danym kroku i konieczno jego powtórzenia w nast pnym. Zbyt du y krok powoduje „przeskoczenie" minimum funkcji i podobny efekt jak poprzednio.
2.6.1. Stały współczynnik uczenia Istnieje wiele sposobów doboru warto ci η, zwanej w sieciach neuronowych współczynnikiem uczenia. Najprostszy z nich (w chwili obecnej raczej historyczny) polega na przyj ciu stałej warto ci η w całym procesie optymalizacyjnym. Stosuje si go praktycznie tylko w poł czeniu z metod najwi kszego spadku. Jest to sposób najmniej efektywny, gdy nie uzale nia warto ci współczynnika, uczenia od aktualnego wektora gradientu, a wi c i kierunku p w danej iteracji. Na podstawie wielu bada eksperymentalnych wykonanych przy u yciu programu Nworks [67], implementuj cego t metod , sie neuronowa poddana uczeniu przy u yciu algorytmu ze stał warto ci η, oprócz długiego czasu uczenia (du ej liczby iteracji), ma skłonno ci do cz stego utykania w minimach lokalnych. Ze wzgl du na prostot implementacji takich algorytmów jest ona jeszcze do cz sto stosowana. W metodzie tej dobór stałej warto ci η odbywa si oddzielnie dla ka dej warstwy sieci przy wykorzystaniu ró nych zale no ci empirycznych. Jednym z rozwi za jest przyj cie oszacowania minimalnej warto ci współczynnika η dla ka dej warstwy w postaci przy czym ηi oznacza liczb wej i-tego neuronu w warstwie.
η ≤ min
1 ni
(2. 72)
2.6.2. Adaptacyjny dobór współczynnika uczenia Inn , bardziej skuteczn , metod jest przyj cie adaptacyjnych zmian współczynnika uczenia η dopasowuj cych si do aktualnych zmian warto ci funkcji celu w czasie uczenia. W metodzie tej na podstawie porównania sumacyjnego bł du ε w i-tej iteracji z jej poprzedni warto ci , przy czym
ε=
M j =1
(y
− d j ) (2. 73) 2
j
okre la si strategi zmian warto ci współczynnika uczenia. W celu przyspieszenia procesu uczenia w metodzie proponuje si ci głe zwi kszanie współczynnika η sprawdzaj c jednocze nie, czy bł d ε nie zacznie wzrasta w porównaniu z bł dem obliczanym przy poprzedniej warto ci η. Dopuszcza si przy tym nieznaczny wzrost warto ci tego bł du w porównaniu z warto ci z poprzedniej iteracji.
Rysunek 2.9 Wpływ adaptacyjnego doboru współczynnika uczenia na proces uczenia: a) przebieg zmian warto ci współczynnika uczenia ~ w funkcji cykli ucz cych; b) wykres zmian warto ci bł du uczenia E Je eli przez εi-1, εi oznaczy si bł d ε odpowiednio w (i - 1)-szej oraz w i-tej itercji, a przez ηi-1, ηi współczynnik uczenia w odpowiednich iteracjach, to, je eli ε i > k wε i −1 (kw - dopuszczalny współczynnik wzrostu bł du), nale y zmniejszy warto η zgodnie z zale no ci
ηi+1 = ηi ρ d
(2. 74)
w której ρd jest współczynnikiem zmniejszania warto ci η. W przeciwnym przypadku, gdy
ε i ≤ k wε i−1
przyjmuje si
ηi +1 = ηi ρi (2. 75) przy czym ρi jest współczynnikiem zwi kszaj cym warto η. Pomimo pewnego zwi kszenia nakładu obliczeniowego (potrzebnego do wyznaczenia dodatkowej warto ci ε) mo liwe jest istotne przyspieszenie procesu uczenia. Dla przykładu, implementacja tej strategii w programie Matlab [28] z warto ciami kw„ = 1,04, ρd = 0,7, ρi = 1,05, umo liwiła wielokrotne przyspieszenie procesów uczenia przy rozwi zywaniu problemów aproksymacji funkcji nieliniowych. Charakterystyczna jest przy tym posta zmian warto ci tego współczynnika w czasie uczenia. Zwykle na starcie dominuje proces jego zwi kszania, po czym po osi gni ciu pewnego stanu quasi-ustalonego jego warto zmienia si cyklicznie narastaj c i zmniejszaj c si w nast puj cych po sobie cyklach. Na rysunku 2.9a przedstawiono typowy proces zmian warto ci η w funkcji czasu uczenia, uzyskany przy wykorzystaniu programu Matlab podczas rozwi zywania problemu aproksymacji funkcji nieliniowej za pomoc sieci neuronowej. Dynamika zmian warto ci η jest du a, a stosunek najwi kszej warto ci do najmniejszej jest równy ok. 7. Charakterystyczny jest przy tym wykres zmian bł du uczenia E w funkcji cykli ucz cych (rys. 2.9b). Na odcinku odpowiadaj cym ci głemu narastaniu warto ci η bł d uczenia regularnie zmniejszał si . Oscylacjom warto ci η w drugiej cz ci uczenia towarzyszy zahamowania redukcji bł du, a nawet niewielki, dopuszczalny przez algorytm wzrost jego warto ci (w aktualnej implementacji kw = 1,04). Nale y jednak podkre li , e metoda ta w du ym stopniu zale y od aktualnej postaci funkcji celu i warto ci współczynników kw, ρd oraz ρi. Warto ci optymalne przy jednej postaci funkcji mog zamiast przyspieszania wprowadzi opó nienie procesu uczenia przy zmianie tej funkcji. St d w praktycznym zastosowaniu tej metody
nale y uwzgl dni mechanizmy kontroli i sterowania warto ciami współczynników, dobieraj c je odpowiednio do specyfiki zadania.
2.6.3. Dobór współczynnika uczenia przez minimalizacj kierunkow
Najefektywniejszy, cho zarazem najbardziej zło ony sposób doboru współczynnika, uczenia polega na minimalizacji kierunkowej funkcji celu na wyznaczonym wcze niej kierunku pk. Celem jej jest takie dobranie warto ci ηk, aby nowy punkt Wk +1 = Wk + η k pk odpowiadał minimum funkcji celu na danym kierunku pk. W rzeczywisto ci wyznaczony punkt Wk+l tylko z pewnym przybli eniem odpowiada rzeczywistemu punktowi minimalnemu na danym kierunku pk. Jest to podyktowane kompromisem mi dzy poniesionym nakładem obliczeniowym a wpływem dokładno ci warto ci ηk na zbie no algorytmu. Dlatego wprowadzono kryteria, które okre laj zadowalaj c warto stałej ηk. Je eli ηk odpowiada dokładnie minimum funkcji celu na danym kierunku pk, to pochodna kierunkowa w punkcie Wk +1 = Wk + η k pk musi by równa zeru. W celu „regulacji" dokładno ci, z jak ηk b dzie odpowiadała minimum funkcji celu, wprowadza si współczynnik 0 < γ2 < 1, który stanowi ułamek pochodnej funkcji celu na kierunku pk w punkcie wyj ciowym Wk. Post powanie minimalizacyjne maj ce na celu wyznaczenie optymalnej warto ci ηk przeprowadza si dopóty, dopóki
[g (Wk + ηk pk )]T pk +1 ≥ γ 2 [g (Wk )]T pk
(2. 76)
Warunek (2.76) nie zapewnia dostatecznego spadku funkcji celu na danym kierunku pk, dlatego te wprowadza si drugi warunek
E (Wk + ηk pk ) − E (Wk ) ≥ γ 1ηk [g (Wk )] pk (2. 77) T
który mówi, e nale y prowadzi proces zmian warto ci ηk dopóty, dopóki osi gana zmiana warto ci funkcji celu na kierunku pk jest wi ksza od iloczynu współczynnika γ1 i pochodnej funkcji celu wzdłu kierunku pk w punkcie wyj ciowym Wk. Minimalizacj kierunkow kontynuuje si dopóty, dopóki oba te warunki s spełnione. Przyj cie 0 ≤ γ1 ≤ γ1 < 1 gwarantuje jednoczesne spełnienie tych warunków [35]. W ród metod wyznaczania minimum kierunkowego mo na wyró ni metody bezgradientowe i gradientowe. Metody bezgradientowe korzystaj jedynie z informacji o warto ciach funkcji celu i wyznaczaj jej minimum w wyniku kolejnych podziałów zało onego na wst pie zakresu warto ci wektora W. Przykładem takich metod s : metoda bisekcji, złotego podziału odcinka czy metoda Fibonacciego [35, 152], ró nice si sposobem podziału kolejnych podzakresów. Metod zasługuj c na uwag jest aproksymacja funkcji celu E(W) na uprzednio wyznaczonym kierunku pk, a nast pnie wyznaczenie minimum otrzymanej w ten sposób funkcji jednej zmiennej η. Je eli wielomian aproksymuj cy jest rz du drugiego, to
P2 (η ) = a2η 2 + a1η + a0 (2. 78) przy czym a2,a1 oraz a0 s współczynnikami wielomianu, okre lanymi w ka dym cyklu optymalizacyjnym. Je eli do wyznaczenia współczynników wielomianu P2(η) wykorzystamy trzy dowolnie przyj te punkty rozwi zania W1, W2, W3, le ce na kierunku pk, to znaczy W1=W+η1pk, W2=W+η2pk, W3=W+η3pk ( W poprzednie rozwi zanie), a przez E1 = E(W1) , E2 = E(W2), E3 = E(W3) oznaczymy warto ci funkcji E(W) odpowiadaj ce tym punktom, to:
P2 (η1 ) = E1 ,
P2 (η2 ) = E2 ,
P2 (η3 ) = E3 (2. 79)
Z układu równa liniowych wynikaj cych z zale no ci (2.79) okre la si współczynniki a2, a1, a0 wielomianu P2. W celu wyznaczenia minimum wielomianu (2.78) przyrównuje si do zera pochodn
dP2 = 2a2η + a1 , sk d otrzymuje si warto dη
η w postaci
ηmin =
− a1 . Po podstawieniu odpowiednich 2 a2
zale no ci E1, E2, E3, do wzoru okre laj cego ηmin otrzymuje si
ηmin = η2 −
1 (η2 − η1 ) (E2 − E3 ) − (η2 − η3 ) (E2 − E1 ) (2. 80) 2 (η2 − η1 )(E2 − E3 ) − (η2 − η3 )(E2 − E1 ) 2
2
Po okre leniu ηmin s sprawdzane warunki (2.76) i (2.77). Je li post powanie minimalizacyjne ma by kontynuowane, to wybiera si nowe punkty le ce na kierunku pk w pobli u (W + ηminpk) i powtarza si procedur minimalizacyjn a do znalezienia wła ciwego minimum. Lepszym rozwi zaniem jest zastosowanie metod gradientowych, w których oprócz warto ci funkcji wykorzystuje si równie jej pochodn wzdłu wektora kierunku pk. Umo liwiaj one znaczne przyspieszenie
wyznaczenia minimum na danym kierunku, gdy wykorzystuj informacj o kierunku spadku warto ci funkcji celu. W takim przypadku celowe jest zwi kszenie rz du wielomianu aproksymuj cego do trzech i przyj cie jego opisu w postaci
P3 (η ) = a3η 3 + a2η 2 + a1η + a0 (2. 81) Cztery współczynniki ai wielomianu mo na wyznaczy korzystaj c z informacji o warto ci funkcji i jej pochodnej kierunkowej jedynie w dwu punktach. Przyrównuj c do zera pochodn wielomianu wzgl dem η, otrzymuje si wzór okre laj cy ηmin w postaci
ηmin
− a2 + a22 − 3a2 a1 = (2. 82) 3a3
Jak ju nadmieniono, do wyznaczania współczynników wielomianu aproksymuj cego wykorzystuje si informacj o pochodnej kierunkowej w punkcie Wk oraz warto ci funkcji celu w wyznaczonych punktach. Pierwszy etap procedury wyznaczania minimum kierunkowego wykorzystuje aproksymacj wielomianow drugiego rz du. Na pocz tku przyjmuje si zwykle ηk = 1. Na starcie s znane dwie warto ci funkcji celu
E (Wk + ηk pk ) i E (Wk ) oraz pochodna kierunkowa w punkcie Wk , E ′(Wk ) = [g (Wk )] pk . Przy zało eniu T
ηk = 1 na podstawie tych wielko ci s wyznaczane współczynniki a2, al, a0 wielomianu interpolacyjnego drugiego rz du:
a0 = E (Wk ) a1 = E ′(Wk )
(2. 83)
a2 = E (Wk + pk ) − E (Wk ) − E ′(Wk ) a na ich podstawie minimum
ηmin = −
− E ′(Wk ) a1 = (2. 84) 2a2 2[E (Wk + pk ) − E (Wk ) − E ′(Wk )]
W nast pnym kroku sprawdza si , czy otrzymana warto ηmin spełnia warunki (2.76) i (2.77). Je li proces poszukiwania ma by kontynuowany, to jest wybierany nowy punkt Wk+1 = Wk + ηk*pk, przy czym ηk*=ηminηk; ηmin oznacza poprzednio wyznaczon warto , a ηk - współczynnik z przedziału [0, 1], po czym przeprowadza si ponown interpolacj wielomianem, którego współczynniki okre la si na podstawie warto ci funkcji celu i pochodnej kierunkowej w wybranych punktach. Proces powtarza si a do spełnienia odpowiednich warunków wyznaczonych przez zale no ci (2.76) i (2.77). Nale y zwróci uwag , e pocz wszy od drugiej iteracji, interpolacyjny wielomian mo e by rz du trzeciego, gdy dysponuje si wtedy czterema wielko ciami, które
E (Wk ), E ′(Wk ), E (Wk + ηk* pk ), E (Wk + ηmin pk ) . Bior c pod uwag , e podobnie jak poprzednio a0 = E (Wk ), a1 = E ′(Wk ) , z układu dwu równa charakteryzuj aproksymowan funkcj celu, mianowicie
okre laj cych wielomiany
E (Wk + ηk* pk ), E (Wk + ηmin pk ) wyznacza si współczynniki a3 i a2. Wzory te
przyjmuj posta
1
a3 a2
=
1
ηmin (ηk − 1)
(ηkηmin )
2
−1
ηk2ηmin
−1
2 E (Wk + ηkηmin pk ) − E (Wk ) − ηkηmin E ′(Wk ) ηmin × ηk E (Wk + ηmin pk ) − E (Wk ) − ηmin E ′(Wk ) ηmin
(2. 85)
Po okre leniu warto ci współczynników wielomianu P3 ze wzoru (2.82) wyznacza si now warto ηmin, dla której sprawdza si warunki (2.76) i (2.77) zako czenia poszukiwania minimum kierunkowego. W przypadku dalszej kontynuacji post powanie przeprowadza si na wielomianie trzeciego stopnia uaktualniaj c warto ci ηmin i ηk*. W praktyce stosuje si kombinacj metod gradientowej i bezgradientowej. Na odcinkach o bardzo du ych zmianach stromo ci funkcji celu metoda aproksymacji wielomianowej jest nieskuteczna i zamiast niej stosuje si metod bisekcji. Podstaw minimalizacji kierunkowej stanowi jednak na zdecydowanej wi kszo ci odcinków metoda aproksymacji wielomianowej, wykorzystuj ca zarówno informacj o warto ci funkcji celu, jak i pochodnej kierunkowej. Dzi ki takiej strategii mo liwe było opracowanie bardzo skutecznego algorytmu minimalizacji kierunkowej, wielokrotnie przyspieszaj cego proces uczenia sieci.
Algorytm ten, zrealizowany w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej w j zyku C++ w postaci programu Netteach [107], wykorzystuje metod zmiennej metryki oraz klasyczni metod gradientów sprz onych do okre lenia kierunku minimalizacji oraz aproksymacj wielomianowi trzeciego stopnia do wyznaczania optymalnej warto ci współczynnika uczenia. Program dopuszcza istnienie dowolnej liczby warstw o funkcji aktywacji neuronów w ka dej warstwie zadawanej indywidualnie. Do wyboru jest funkcja sigmoidalna unipolarna (Sigm), funkcja sigmoidalna bipolarna (Bip) oraz liniowa (Lin). Gradient jest okre lany przy zastosowaniu metody grafów przepływowych. Sposób korzystania z programu oraz formaty plików przedstawiono w dodatku A.
2.6.4. Reguła delta-bar-delta doboru współczynnika uczenia Reguła delta-bar-delta nale y do grupy metod adaptacyjnych opracowanych specjalnie do kwadratowej definicji funkcji bł du i metody najwi kszego spadku, w której ka dej wadze jest przyporz dkowany indywidualnie dobrany współczynnik uczenia gzi, okre lany metody najwi kszego spadku
ηij (k + 1) = ηij (k ) − γ
∂E (k ) (2. 86) ∂ηij (k )
przy czym γ jest dodatnim, stałym współczynnikiem, przyjmowanym z przedziału [0,1], a k oznacza kolejn iteracj . Gradient funkcji celu wzgl dem współczynnika uczenia okre la reguła podobna jak w przypadku wag, to jest
∂E (k ) ∂E (k ) ∂yi (k ) ∂ui (k ) = (2. 87) ∂ηij (k ) ∂yi (k ) ∂ui (k ) ∂ηij (k ) Bior c pod uwag , e
ui (k ) =
Wij y j , Wij (k ) = Wij (k − 1) − η j
ui (k ) =
y j Wij (k − 1)ηij j
∂E (k − 1) ∂Wij (k − 1)
, otrzymuje si
∂E (k − 1) (2. 88) ∂Wij (k − 1)
St d
∂ui ∂E (k − 1) = −yj (2. 89) ∂ηij ∂Wij (k − 1) ∂yi = f ′(ui (k )) (2. 90) ∂ui W przypadku neuronu wyj ciowego
∂E (k ) = −[d i (k ) − yi (k )] i odpowiednia warto składnika gradientu ∂yi (k )
wynosi
∂E (k ) ∂E (k − 1) = − y j f ′(ui )(d i − yi ) (2. 91) ∂ηij (k ) ∂Wij (k − 1)
[
]
Pierwsza cz wyra enia, uj ta w nawiasy kwadratowe, oznacza
∂E (k ) . ∂Wij (k )
Identyczny wynik uzyskuje si równie dla dowolnego neuronu ukrytego. St d ostateczni posta składnika gradientu mo na przedstawi nast puj co:
∂E (k ) ∂E (k ) ∂E (k − 1) =− (2. 92) ∂Wij (k ) ∂Wij (k − 1) ∂ηij (k ) a reguł uaktualniania warto ci współczynnika uczenia jako
ηij (k + 1) = ηij (k ) + γ
∂E (k ) ∂E (k − 1) (2. 93) ∂Wij (k ) ∂Wij (k − 1)
Z ostatniej zale no ci wynika, e je li odpowiednia składowa pochodnej funkcji celu wzgl dem wagi w obu iteracjach jest jednakowego znaku, to współczynnik uczenia wzrasta, przyspieszaj c proces uczenia. Przy przeciwnych znakach pochodnej w dwu s siednich iteracjach współczynnik uczenia maleje spowalniaj c uczenie. Reguła adaptacji wag okre lona zale no ci (2:93), podana przez Jacobsa [55], nosi nazw reguły deltadelta. Jej wad jest du a wra liwo na warto zmian
∂E i trudno ci w doborze wła ciwej warto ci ∂Wij
współczynnika γ. Dlatego w praktyce stosuje si raczej jej modyfikacj , zwan reguł delta-bar-delta [55]. Zgodnie z t modyfikacji zmiana warto ci współczynnika uczenia przebiega według zale no ci
α
∆ηij (k ) = − βηij (k − 1) 0 przy czym:
Dij (k ) =
dla Sij (k − 1)Dij (k ) > 0
dla Sij (k − 1)Dij (k ) < 0 (2. 94) dla pozostaych
∂E (k ) ; ∂Wij (k )
Sij (k ) = (1 − ξ )Dij (k ) + ξ Sij (k − 1)
a ξ jest stał dodatni . Zmienne Dij(k) oznaczaj składniki gradientu wzgl dem wagi Wij w h-tej iteracji, natomiast Sij jest kombinacj wagow przeszłych warto ci Sij oraz aktualnej Dij. Wielko ci α i β s dobierane jako warto ci stałe, a ich typowe warto ci to: 0 < α < 0,05, 0,1 < β< 0,3. Wzór (2.94) nosi nazw reguły deltabar-delta i został wprowadzony przez Jacobsa jako ulepszona wersja dla reguły delta-delta. Nale y zwróci uwag , e wzrost współczynnika uczenia nast puje przez dodanie stałej a, natomiast jej redukcja odbywa si według zale no ci wykładniczej. Liniowy wzrost zabezpiecza współczynnik uczenia przed zbyt szybkim narastaniem, natomiast zale no wykładnicza nie pozwala na osi gni cie warto ci ujemnej, a jej spadek z iteracji na iteracj jest bardzo szybki. Wad metody delta-bar-delta jest wi ksza zło ono obliczeniowa i znacznie wi ksze zapotrzebowanie pami ci RAM do przechowywania warto ci indywidualnych współczynników uczenia dla ka dej wagi; zalety przyspieszenie procesu uczenia i zwi kszenie prawdopodobie stwa osi gni cia minimum globalnego przez funkcj celu. Zwykle w celu zmniejszenia zło ono ci obliczeniowej stosuje si skumulowane podej cie do uczenia, w którym zarówno zmiany wag, jak i ich współczynników uczenia odbywaj si po prezentacji wszystkich wzorców wchodz cych w skład danych ucz cych.
2.7. Metoda gradientów sprz onych z regularyzacj Metoda gradientów sprz onych z regularyzacj 2, opracowana przez Mφllera [93], jest odmian zwykłej metody gradientów sprz onych przedstawionej w p. 2.6, ł cz c jednocze nie wyznaczanie kierunku p i optymalnego kroku w tym kierunku. Punktem wyj cia jest kwadratowe rozwini cie Taylora funkcji celu w kierunku pk z krokiem η, które, podobnie jak zale no (2.54), mo e by zapisane w postaci
1 E (Wk + η pk ) ≈ E (Wk ) + ηg kT pk + η 2 pkT Gk pk (2. 95) 2 w której Gk jest przybli on warto ci hesjanu Hk w k-tym kroku. Z warunku minimum funkcji celu w kierunku pk. wynika równanie
∂E = g k + ηGk pk = 0 (2. 96) ∂ (ηpk ) Z zale no ci (2.96) otrzymuje si wzór okre laj cy optymaln warto kroku (współczynnika) uczenia η na kierunku pk
pkT g k µ = k (2. 97) η=− T pk Gk pk δ k
2
Nazwa oryginalna scaled conjugate gradient.
przy czym
µ k = − pkT g k , δ k = pkT Gk pk .
Dla jego okre lenia nale y wyznaczy warto ci skalarne µk i δk.
O ile wyznaczenie µk nie nastr cza adnych kłopotów, gdy zarówno gradient gk, jak wektor kierunkowy pk, s ci le okre lone w metodzie gradientów sprz onych, o tyle wyznaczenie hesjanu byłoby trudne i nieopłacalne ze wzgl du na du zło ono obliczeniow oraz zaj to pami ci. W zamian wyznacza si wektor Gkpk na podstawie informacji o gradiencie w punkcie rozwi zania Wk oraz punkcie zaburzonym o wielko wzgl dn 0 < σk << 1. Ze wzoru (2.96) otrzymuje si
sk = Gk pk ≈
g (Wk + σ k pk ) − g (Wk )
σk
(2. 98)
Jakkolwiek wzór (2.97) okre laj cy optymaln warto kroku jest wzorem dokładnym, wynikaj cym z rozwini cia Taylora, jego bezpo rednia u yteczno jest znikoma ze wzgl du na to, e kwadratowe przybli enie Taylora prowadzi do minimum funkcji celu tylko wówczas, gdy hesjan jest dodatnio okre lony. To wymaganie w przypadku sieci neuronowych nie jest praktycznie nigdy spełnione. Dobrym rozwi zaniem pozostaje regularyzacja hesjanu, podobnie jak w przypadku metody Levenberga-Marquardta. Regularyzacja tym razem b dzie dotyczy wyra enia Gkpk i przybiera posta
sk =
g (Wk + σ k pk ) − g (Wk )
σk
+ λk pk (2. 99)
Parametr regularyzacyjny λk musi by tak dobrany, aby δk=pkTsk>0. Je eli, pomimo wprowadzenia poprawki, współczynnik δk jest dalej ujemny, to nale y doda wi ksz warto λk. Załó my, e nowa warto regularyzuj ca spełnia wymagania dodatniej okre lono ci hesjanu, δk > 0. Oznaczmy j tu przez λrk, a odpowiadaj ca jej warto sk przez srk. Wtedy
srk = sk + (λrk − λk ) pk (2. 100) Nowa, regularyzowana warto δrk spełnia teraz zale no
δ rk = pkT Gk pk + pkT (λrk − λk ) pk = δ k + (λrk − λk ) pk > 0 2
z której wynika, e
λrk > λk −
δk pk
2
(2. 101)
Ostatnia zale no wskazuje kierunek zmian, ale nie okre la jednoznacznej zale no ci, o ile nale y zwi kszy warto λk, cho oczywiste jest, e λrk jest funkcj λk, δk oraz |pk|. Na tym etapie Mφller zaproponował warto
λrk = 2 λk −
δk pk
2
(2. 102)
która prowadzi do wyra enia okre laj cego δrk
δ rk = δ k + (λrk −λ k ) pk = −δ k + λk pk > 0 2
2
(2. 103)
spełniaj cego wymaganie dodatniej okre lono ci hesjanu. St d wynika, e ostateczny wzór okre laj cy optymalny krok na kierunku pk przyjmie posta
η=
µk µk = T δ rk − pk sk + λk pk 2
(2. 104)
Z zale no ci (2.104) wynika, e im wi ksza jest warto λk, tym mniejszy jest krok η. Aby uzyska maksymalny krok η, mo na wprowadzi dodatkowy parametr ∆k wskazuj cy optymalny sposób zmian, zwi kszenia lub zmniejszenia warto ci λk w algorytmie. Współczynnik ∆k definiuje si nast puj co [93]:
∆k =
E (Wk ) − E (Wk + ηpk ) (2. 105) E (Wk ) − Ea (ηpk )
przy czym Ea(ηpk) odpowiada aproksymowanej warto ci funkcji celu przy zast pieniu hesjanu jego warto ci zregularyzowan . Bior c pod uwag rozwini cie Taylora i wzór (2.104) współczynnik ∆k okre la zale no
∆k =
E (Wk ) − E (Wk + ηpk ) (2. 106) µ rk2 / 2δ rk
Warto ∆k wskazuje, jak dalece regularyzacja zniekształca funkcj celu na kierunku pk przy kroku η. Im bli sza jedno ci jest jej warto , tym dokładniejsza jest aproksymacja. Mφller zaproponował nast puj cy strategi zmian λk:
∆k ≥
je li
1 3 1 δ (1 − ∆ k ) , to λk ← λk ; je li ∆ k < , to λk ← λk k 2 4 4 4 pk
dla pozostałych warto ci ∆k warto λk pozostaje bez zmiany. W efekcie pełny algorytm uczenia sieci metody gradientów sprz onych z regularyzacj według Mφllera mo na przedstawi w nast puj cej postaci: 1. Wybierz wektor pocz tkowy Wk oraz przyjmij warto ci współczynników 0<σ<10-4, 0<λk<10-6, λrk=0. Oblicz pk= -g(Wk), k=1, sukces = true 2. Je li sukces = true, okre l
σk = 3.
σ
pk
sk =
,
σk
δk pk
2
,
δ rk = −δ k + λk pk ,
Oblicz µk oraz warto kroku ηk
µk δ rk
Oblicz współczynnik ∆k
∆k = 6.
λk = λrk
2
µ k = − pkT g k , ηk = 5.
, δ k = pkT sk
Dokonaj regularyzacji przyjmuj c δk = δrk ← δk + (λrk - λk) |pk|2 . Je li δrk < 0, kontynuuj regularyzacj przyjmuj c kolejno
λrk = 2 λk − 4.
g (Wk + σ k pk ) − g (Wk )
2δ k [E (Wk ) − E (Wk + µ k pk )]
µ k2
∆k
Je li
≥
0,
to
nast pny
wykonaj
krok
Wk +1 = Wk + ηk pk , g k +1 = g (Wk +1 ), λrk = 0 , sukces = true
minimalizacyjny
•
je li k jest równe liczbie wag sieci, to zastosuj restart algorytmu
•
w przeciwnym wypadku
g k +1 − g k +1 g k
przyjmuj c
pk +1 = − g k +1
2
7.
βk =
Je li ∆k ≥ 0,75, to zredukuj λk przyjmuj c
µk
9.
Je li ∆k < 0,25, to zwi ksz
1 4
λk ← λk
w przeciwnym przypadku λrk = λk, sukces = false 8.
, pk +1 = − g k +1 + β k pk
λk , λk ← λk +
δ k (1 − ∆ k ) pk
2
Je li gk≠0, to przyjmij k←k+1 i id do punktu 2, w przeciwnym przypadku zako cz obliczenia i zwró Wk+1 jako rozwi zanie.
2.8. Algorytmy heurystyczne 2.8.1. Algorytm Quickprop Odmian algorytmu gradientowego uczenia ł cz c elementy metody newtonowskiej ze znaczn doz wiedzy heurystycznej jest algorytm Quickprop, opracowany przez Fahlmana [31] w 1988 r. Quickprop zawiera elementy zabezpieczaj ce przed utkni ciem w płytkim minimum lokalnym, wynikaj cym z punktu pracy neuronu w nasyceniu krzywej sigmoidalnej, gdzie, ze wzgl du na pochodn funkcji aktywacji bliski zeru, post p w uczeniu jest znikomy. Zmiana wagi Wij w k-tym kroku algorytmu dokonuje si według nast puj cej zale no ci:
∂E (W (k )) + γWij (k ) + α ij(k )∆Wij (k − 1) (2. 107) ∂Wij
∆Wij (k ) = −ηk
Na jej wielko ma wpływ zarówno odpowiednia składowa gradientu funkcji celu, aktualna warto wagi, jak i czynnik momentu, zwi zany z ostatni zmian warto ci wagi. Współczynnik γ, przyjmuj cy zwykle małe warto ci (typowa warto γ = 10-4), jest czynnikiem prowadz cym do redukcji warto ci wag i nie pozwala na ich du y wzrost. Stała ηk jest współczynnikiem uczenia, który przyjmuje w algorytmie dwie warto ci: warto stał η0 (typowa warto 0,01 ≤η0 ≤ 0,6) na starcie uczenia, gdy ∆Wij(k-1) = 0 lub gdy
∂E (W (k )) + γWij (k ) ∆Wij > 0 , albo warto zerow w przeciwnym przypadku. ∂Wij
Wa n rol w algorytmie odgrywa czynnik momentu, dostosowywany adaptacyjnie do aktualnych post pów w uczeniu. Zgodnie z algorytmem Fahlmana współczynnik momentu jest dobierany indywidualnie dla ka dej wagi według wzoru (k )
α ij =
α max
gdy β ij(k ) > α max
β ij(k )
w pozostalych przypadkach
lub gdy
Sij (k )∆Wij (k − 1)β ij(k ) < 0
(2. 408)
przy czym
Sij (k ) =
β ij(k ) =
∂E (W (k )) + γWij (k ) (2. 109) ∂Wij
S ij (k )
S ij (k − 1) − S ij (k )
(2. 110)
Stała αmax oznacza maksymaln warto współczynnika momentu, przyj t przez Fahlmana za równ αmax = 1,75. Praktyczna realizacja algorytmu wykazała jego szybk zbie no dla wi kszo ci trudnych problemów testowych. W porównaniu ze zwykłym algorytmem najwi kszego spadku przy pieszenie procesu uczenia jest kilkusetkrotne, a prawdopodobie stwo utkni cia w minimum lokalnym zmalało równie wielokrotnie [31]. Jest równie znana uproszczona wersja algorytmu Quickprop [141], w której zmiany warto ci wag zachodz według wzoru:
∆Wij (k ) =
α ij(k )∆Wij (k − 1) dla ∆Wij (k − 1) ≠ 0 η0
∂E ∂Wij
α ij(k ) = min przy czym
Sij (k ) =
w przeciwnym przypadku Sij(k )
Sij (k − 1) − Sij (k )
(2. 111)
, α max (2. 112)
∂E (W (k )) . Zmniejszeniu uległa liczba parametrów steruj cych procesem uczenia i ∂Wij
zło ono samej formuły uaktualniania warto ci wag. Jak wykazały wyniki prezentowane w pracy [141], skuteczno zmodyfikowanego algorytmu jest porównywalna lub nawet lepsza od oryginalnego algorytmu Fahlmana.
2.8.2. Algorytm RPROP Innym prostym algorytmem heurystycznym daj cym dobre wyniki uczenia jest algorytm Riedmillera i Brauna, zwany RPROP [122, 159] od angielskiej nazwy Resilient backPROPagation. W algorytmie tym przy zmianie wag uwzgl dnia si jedynie znak składowej gradientu, pomijaj c jej warto
∆Wij (k ) = −ηij(k ) sgn
∂E (W (k )) (2. 113) ∂Wij
Współczynnik uczenia jest dobierany w ka dym cyklu dla ka dej wagi Wij indywidualnie na podstawie zmian warto ci gradientu
( max (bη (
min aηij(k −1) ,ηmax
ηij(k ) =
k −1) ij
,ηmin
ηij(k −1) przy czym
Sij (k ) =
) )
dla Sij (k )Sij (k − 1) > 0 dla Sij (k )Sij (k − 1) < 0
(2. 514)
w pozostalych przypadkach
∂E (W (k )) , a i b s stałymi: a = 1,2, b = 0,5, natomiast ηmin i ηmax oznaczaj odpowiednio ∂Wij
minimaln i maksymaln warto współczynnika uczenia, równ w algorytmie RPROP odpowiednio 10-6 oraz 50 [159], a funkcja sgn oznacza znak argumentu. Algorytm RPROP, pomijaj cy informacj o warto ci gradientu, umo liwia znaczne przyspieszenie procesu uczenia w tych obszarach, gdzie nachylenie funkcji celu jest niewielkie. Strategia doboru wag zakłada ci gły wzrost współczynnika uczenia, je li w dwu kolejnych krokach znak gradientu jest taki sam, natomiast jego redukcj , gdy ten znak jest ró ny.
2.9. Porównanie efektywno ci algorytmów ucz cych Porównania efektywno ci algorytmów ucz cych dokonuje si na podstawie okre lonych testów, stanowi cych standardy wiatowe. Do takich standardów nale y mi dzy innymi: problem logistyczny, problem parzysto ci, kodowania i dekodowania danych zero-jedynkowych, problem dwu spiral i wiele innych. Ró ne algorytmy ucz ce porównuje si pod wzgl dem liczby cykli ucz cych, liczby oblicze funkcji celu, wra liwo ci na minima lokalne itp. Na podstawie wielu przeprowadzonych bada numerycznych mo na stwierdzi , e najmniej efektywny jest algorytm najwi kszego spadku, zwłaszcza w przypadku wyboru stałego kroku ucz cego. Strategia wyboru kroku uczenia jest kluczowa dla efektywno ci algorytmu. Im lepsze jest przybli enie warto ci minimalnej funkcji celu w kierunku p, tym wi kszy jest post p uczenia w poszczególnych cyklach ucz cych i lepszy efekt uczenia. Z tego wzgl du najlepsze wyniki gwarantuje metoda minimalizacji kierunkowej zastosowana w ka dym cyklu optymalizacyjnym do okre lenia wła ciwego kroku ucz cego. Przy porównaniu efektywno ci metod nale y uwzgl dni dodatkowy nakład obliczeniowy wymagany na etapie okre lania optymalnej warto ci η. Dla zobiektywizowania ocen ró nych algorytmów wprowadzono, oprócz liczby cykli ucz cych (nlc), tak zwan jednostk zło ono ci obliczeniowej (complexity unii - cu), oznaczaj c zespół operacji matematycznych wymaganych przy obliczaniu sygnału wyj ciowego sieci w jednokrotnej transmisji normalnej sygnałów (od wej cia do wyj cia). Tabela 2.2 przedstawia liczby cykli ucz cych (nic) oraz jednostek zło ono ci obliczeniowej (ncu) dla problemu logistycznego, uzyskane przy zastosowaniu minimalizacji kierunkowej w poł czeniu z metod zmiennej metryki (program Netteach [3]), metody gradientów sprz onych z regularyzacj Mollera [93] oraz zwykłej metody najwi kszego spadku ze stałym współczynnikiem uczenia. Tabela 2.2 Kryterium bł du 0,1 0,05 0,03 0,02 0,01 0,005
Program Netteach nlc 25 28 32 37 39 41
ncu 126 140 156 180 186 194
Metoda Mollera nlc 107 497 683 1011 4718 -
ncu 428 1988 2732 4044 18872 -
Algorytm najwi kszego spadku nlc ncu 1044 1044 30408 30408 57093 57093 241557 241557 2548570 2548570 -
Zadanie problemu logistycznego polegało na predykcji nast pnej warto ci xn+i ci gu liczbowego chaotycznego na podstawie jego warto ci poprzedniej xn. Etap uczenia sieci o strukturze 1-5-1 (l w zeł wej ciowy, 5 neuronów ukrytych, l neuron wyj ciowy) miał za zadanie takie ukształtowanie wag, aby zrealizowa odwzorowanie logistyczne xn+i = rxn(l -xn) dla 0 ≤ xn ≤ l, które dla warto ci r = 4 wykazuje cechy ci gu chaotycznego. Ze wzgl du na kwadratowy charakter funkcji logistycznej metoda zmiennej metryki jest zdecydowanie najszybsza i umo liwia uzyskanie, praktycznie bior c, dowolnego poziomu bł du dopasowania. Wła ciwo ci uogólniania sieci uzyskane przy zastosowaniu metody zmiennej metryki z minimalizacj kierunkow s równie najlepsze [107].
Podobne wyniki uzyskuje si równie w przypadku rozwi zywania problemu parzysto ci danych wej ciowych [105]. Przykładowo dla sieci 5-5-1 uzyskano nast puj ce wyniki: 253 cykle ucz ce (1264 ncu) w metodzie zmiennej metryki z minimalizacj kierunkow , 642 cykle (2131 ncu) w metodzie Mollera oraz 18451 cykli ucz cych w metodzie najwi kszego spadku ze stałym krokiem ucz cym. Istotny jest przy tym równie wybór metody okre lania kierunku minimalizacji. Zast pienie metody zmiennej metryki gradientami sprz onymi pogarsza efektywno metody, cho uzyskane wyniki uczenia s ci gle konkurencyjne w stosunku do metod heurystycznych doboru kroku uczenia. Tabela 2.3 przedstawia porównanie liczby cykli ucz cych obu metod: zmiennej metryki i gradientów sprz onych na przykładzie kodowania wektorów zero-jedynkowych (proces uczenia ulegał zako czeniu, gdy bł d redniokwadratowy zmalał do warto ci 0,01). Tabela 2.3 Sie 10-5-10 15-5-15
Zmienna metryka 159 239
Gradienty sprz one 547 1134
Problem testowy kodowania wektorów zero-jedynkowych polegał na takim doborze wag sieci, aby przy wymiarze N wektora wej ciowego, zakodowa go przy u yciu q neuronów warstwy ukrytej, a nast pnie zdekodowa do postaci oryginalnej w warstwie wyj ciowej. Wektory ucz ce zawieraj jedn jedynk oraz N – 1 zer. Ka demu z tak przygotowanych wektorów wej ciowych był przyporz dkowany wektor wyj ciowy o identycznej postaci. Metoda zmiennej metryki przewy sza pod wzgl dem efektywno ci metod gradientów sprz onych, ale ta przewaga zanika przy zwi kszaniu rozmiarów sieci. Ju przy 1000 wag metoda gradientów sprz onych zdecydowanie góruje nad ka d inn metod , staj c si najefektywniejszym narz dziem uczenia.
2.10. Elementy optymalizacji globalnej Wszystkie przedstawione wcze niej metody uczenia sieci s metodami lokalnymi, prowadz cymi do minimum lokalnego funkcji celu. W przypadku znajomo ci minimum globalnego mo na oceni , czy osi gni te minimum lokalne le y dostatecznie blisko rozwi zania idealnego. Je li rozwi zanie lokalne jest niezadowalaj ce, to mo na powtórzy proces uczenia przy innych warto ciach startowych wag i innych parametrach procesu uczenia. Mo na przy tym pomin osi gni te rozwi zanie i rozpocz proces uczenia od nowych, zwykle losowo wybranych warto ci wag, albo te doda warto ci losowe do aktualnie uzyskanych rozwi za i kontynuowa proces uczenia. Ta ostatnia metoda, nosz ca angielsk nazw jog of weights, jest godna polecenia, gdy nie zatraca uzyskanych ju rezultatów uczenia [67]. Dodanie losowych przyrostów wag odpowiada przesuni ciu si rozwi zania z punktu minimum lokalnego do innego punktu obszaru funkcji celu. Wobec losowych warto ci tych przyrostów nowy punkt daje pewne prawdopodobie stwo takiego przesuni cia, które przy dalszym uczeniu wprowadzi w obszar le cy poza zasi giem „przyci gania" poprzedniego minimum lokalnego. Losowy dobór wag, stosowany na pocz tku uczenia b d wyprowadzaj cy rozwi zanie z minimum lokalnego, odgrywa rol algorytmu stochastycznego, współpracuj cego z algorytmem deterministycznym uczenia sieci. Zaburzenie wag spowodowane dodaniem warto ci losowych do aktualnie uzyskanych warto ci wag nie powoduje przy tym długotrwałego zatarcia dotychczasowych wyników uczenia. Sie wykazuje interesuj c zdolno „pami tania" najlepszych wyników i po krótkotrwałym zaburzeniu szybko uzyskuje, a nast pnie zwykle przekracza najlepszy z uzyskanych dotychczas wyników. Na rysunku 2.10 przedstawiono typowy przebieg krzywej uczenia dotycz cego problemu 2 spiral przy u yciu programu Netteach i zastosowaniu techniki jog of weights. Po utkni ciu w minimum lokalnym na poziomie 1,5, zastosowanie tej techniki umo liwiło, po krótkotrwałym zaburzeniu, uzyskanie warto ci 1,46, a powtórzenie jej doprowadziło do pełnego nauczenia sieci i redukcji funkcji celu do poziomu zerowego.
Rysunek 3.10 Ilustracja wpływu losowych zmian warto ci wag na proces uczenia w problemie 2 spiral Przy rozwi zywaniu rzeczywistych problemów technicznych nie mo na oczekiwa nawet przybli onej znajomo ci minimum globalnego. W takim przypadku ocena jako ci wyników uczenia opiera si na okresowym testowaniu nauczonej sieci na specjalnym podzbiorze zbioru ucz cego, jak to przedstawiono w podrozdziale dotycz cym uogólniania. Przy braku post pów w uczeniu zachodzi potrzeba skorzystania z metod optymalizacji globalnej. Z wielu istniej cych opracowa w tej dziedzinie skupiono si tutaj tylko na metodzie symulowanego wy arzania3 [66]. Metoda opiera si na idei zaczerpni tej z mechaniki statycznej i jest motywowana analogi zachowania ciał fizycznych w procesie krzepni cia z zastosowaniem wy arzania przy temperaturze procesu stopniowo zmniejszanej do zera. W procesie krzepni cia roz arzonego materiału temperatura, jak wykazały badania, powinna by obni ana stopniowo, a do wykrystalizowania si stanu stałego, w którym struktura kryształu pozostaje stała. Je li ochładzanie procesu jest zbyt szybkie, to powstaj znaczne nieregularno ci struktury, powoduj ce napr enia wewn trzne i powoduj ce, e stan energetyczny ciała pozostaje na poziomie znacznie wy szym ni przy chłodzeniu powolnym. Proces szybkiego ustalania si stanu termicznego materiału na poziomie wy szym ni normalny jest analogiczny do utkni cia procesu optymalizacyjnego w minimum lokalnym. Energia stanu ciała odpowiada funkcji celu, a absolutne minimum tej energii - minimum globalnemu. W procesie powolnego wy arzania krystalizacji ciała towarzyszy globalne zmniejszanie energii, ale s równie dopuszczalne stany, którym towarzyszy chwilowe jej zwi kszenie. Dzi ki dopuszczeniu chwilowego wzrostu stanu energetycznego ciała jest mo liwe opuszczenie pułapki minimum lokalnego, który mo e si pojawi w trakcie procesu. Dopiero zej cie z temperatur do zera absolutnego uniemo liwia jakiekolwiek podniesienie poziomu energetycznego. Jest wtedy mo liwy tylko jeden kierunek zmian energetycznych w kierunku minimum. W procesie rzeczywistym krystalizowania si ciał stałych temperatura jest obni ana stopniowo, pozostaj c przez pewien czas na ka dym z poziomów, aby umo liwi uzyskanie równowagi termicznej. Dopóki temperatura jest powy ej zera absolutnego, dopóty chwilowy stan energetyczny mo e zarówno obni a si , jak i rosn . Przez utrzymywanie temperatury procesu w pobli u temperatury odpowiadaj cej ci gle obni aj cemu si stanowi równowagi termicznej unika si pułapki minimum lokalnego, osi gaj c w efekcie przy doj ciu z temperatur do zera stan minimum energetycznego ciała. Metoda symulowanego wy arzania jest algorytmicznym odpowiednikiem fizycznego procesu wy arzania. Zaproponowana przez Metropolisa w 1953 r. [57, 66] i rozwini ta przez liczne grono badaczy jest uznawana za jeden z nielicznych algorytmów umo liwiaj cych praktyczne uzyskanie minimum globalnego wielomodalnej funkcji wielu zmiennych. Typowy przebieg algorytmu symulowanego wy arzania mo na przedstawi w nast puj cych punktach [57]: 1. Start procesu z rozwi zania pocz tkowego W przy zało onej temperaturze pocz tkowej T = Tmax. 2. Dopóki T > 0, wykonaj L razy • wybierz nowe rozwi zanie W’ z s siedztwa W • oblicz ró nic funkcji celu ∆ = E(W') - E (W) • je li ∆ ≤ 0, to przyjmij W = W’ (zmniejszenie energii) • w przeciwnym przypadku, gdy ∆ > 0, załó W = W’ z prawdopodobie stwem e-∆/T , co oznacza generacj liczby losowej R z przedziału [0,1] i porównanie jej z warto ci e-∆/T; je li e∆/T > R, to zaakceptuj nowe rozwi zanie W = W’, w przeciwnym przypadku nie. 3. Zredukuj temperatur (T ← rT), przy współczynniku redukcji r dobieranym z przedziału [0,1] i wró do punktu 2. 4. Po zredukowaniu temperatury do warto ci zerowej prowad uczenie jedn z dowolnych, omówionych wcze niej metod deterministycznych a do uzyskania minimum funkcji celu. W algorytmie u ywa si oryginalnej nazwy „temperatura" do okre lenia parametru wpływaj cego na prawdopodobie stwo akceptacji wzrostu warto ci funkcji celu, aczkolwiek z fizycznego punktu widzenia proces optymalizacyjny jest tylko analogi matematyczn procesu krzepni cia z wy arzaniem. Algorytm symulowanego wy arzania wydaje si koncepcyjnie bardzo prosty i logicznie uzasadniony. W rzeczywisto ci pozostaje do rozwi zania wiele podstawowych problemów, które decyduj o jego przydatno ci praktycznej. Pierwszym z nich jest problem czasu symulacji. Aby zwi kszy prawdopodobie stwo uzyskania minimum globalnego, czas wy arzania (liczba cykli L powtarzanych dla tej samej temperatury) powinien by do długi, a stopie redukcji temperatury r mały. To powoduje, e ogólny czas procesu musi by długi, co niekiedy algorytm ten mo e dyskwalifikowa i staje si on nieprzydatny w zastosowaniach praktycznych. Wi e si z tym ci le problem konkurencyjno ci metody wzgl dem innych, np. metody optymalizacji lokalnej z multistartem, w której dobra znajomo zagadnie statystycznych umo liwia z du ym
3
Nazwa oryginalna simulated annealing.
prawdopodobie stwem wyselekcjonowanie do łatwo obszaru minimum globalnego, a metody deterministyczne optymalizacji umo liwiaj osi gni cie tego minimum. Jednym z najwa niejszych czynników decyduj cych o powodzeniu metody symulowanego wy arzania jest wybór parametrów dotycz cych temperatury: temperatury startu Tmax, współczynnika redukcji r oraz liczby cykli L na danym poziomie temperaturowym. Temperatur maksymaln dobiera si na podstawie szeregu wst pnie przeprowadzanych procesów symulowanego wy arzania. Na podstawie tych wyników tworzy si rozkłady prawdopodobie stwa akceptacji stochastycznych zmian rozwi za , dotycz ce konkretnych temperatur (charakterystyka A = f (T)). Zakładaj c nast pnie okre lon warto procentow tych akceptacji jako warto progow z otrzymanych rozkładów, mo na odczyta poszukiwan temperatur startu. Podstawowym problemem staje si okre lenie warto ci progowej, optymalnej dla dalszego przebiegu procesu symulowanego wy arzania. Dla ka dego problemu technicznego mo e by to inna warto , ale jej charakterystyka wykazuje cechy niezmienniczo ci w do znacznym zakresie.
Rysunek 2.11 Statystyczny rozkład uzyskanych warto ci bł du w zale no ci od warto ci progowych parametru A4 Na rysunku 2.11 przedstawiono przykładowe rozkłady statystyczne uzyskanych warto ci funkcji celu E dla ró nych warto ci progowych A uzyskane przy rozwi zywaniu problemu optymalnej partycji grafu o 500 w złach [57]. Poczynaj c od warto ci A = 0,3 jej wpływ na ko cowy rezultat optymalizacji jest, z punktu widzenia statystycznego, znikomy. Małe warto ci A oznaczały mał akceptacj zmian w procesie symulowanego wy arzania, co odpowiada du emu blokowaniu zmian stanu prowadz cych do zwi kszania warto ci funkcji celu (zbyt niska temperatura wst pna). W przypadku wykresu z rys. 2.11 optymalne wydaje si przyj cie warto ci progowej A w zakresie 0,3 do 0,5. Dobór liczby cykli L na okre lonym poziomie temperatury oraz współczynnika redukcji temperatury r jest bardziej niejednoznaczny. W tym przypadku operuje si raczej charakterystykami zmian warto ci funkcji celu w funkcji wykonanych cykli ucz cych. Typow posta rozkładu takiej funkcji przedstawiono na rys. 2.12.
4
Rysunek reprodukowano za zgod Operations Research Society of America. Copyright 1989, the Operations Research Society of America (currently INFORMS), 290 Westminster Street, Providence, RI 02903, USA.
Rysunek 2.12 Typowy przebieg procesu uczenia w metodzie symulowanego wy arzania5 Wi kszo czasu obliczeniowego zawiera si w pocz tkowym zakresie, w którym rednia warto zmian warto ci funkcji celu jest nieznaczna, a post p optymalizacji minimalny. Jest to zakres odpowiadaj cy wysokiej temperaturze. Główny proces redukcji warto ci funkcji celu przebiega w przedziale rodkowym przy stosunkowo niewielkiej liczbie iteracji. Ko cowa faza procesu to stabilizacja, w której pomimo upływu iteracji post p w minimalizacji jest znikomy. Sugeruje to mo liwo skrócenia wst pnej fazy wy arzania bez pogorszenia jako ci wyniku ko cowego. Modyfikuje si zwykle liczb cykli wykonywanych przy wysokich temperaturach skracaj c j , je li okre lona liczba akceptacji zmian została ju osi gni ta. W ten sposób jest mo liwe nawet kilkunastoprocentowe skrócenie czasu procesu. Eliminacja ko cowej, płaskiej cz ci charakterystyki jest równie mo liwa. Zwykłe kryterium zatrzymania algorytmu zakłada, e je li przy kilku kolejnych obni eniach temperatury (typowa warto to 5) nie obserwuje si adnej redukcji warto ci funkcji celu, to proces zostaje zatrzymany, a najlepszy uzyskany wynik jest minimum globalnym. Zmniejszenie warto ci kryterium zatrzymania algorytmu nie jest jednak wskazane ze wzgl du na pogorszenie prawdopodobie stwa uzyskania minimum globalnego. Zaobserwowano natomiast do istotny wpływ współczynnika redukcji temperatury r i liczby cykli L. Skrócenie ko cowej, płaskiej cz ci charakterystyki procesu uzyskuje si preferuj c cz stsze zmiany temperatury przy zmniejszonej liczbie cykli L i przy zachowaniu stałej liczby iteracji. W przykładzie grafu o N = 500 zmiennych zmieniaj c warto pary (r, L) z (0,6634, 128N) na (0,95, 16N) uzyskuje si skrócenie ko cowego odcinka charakterystyki prawie o połow . Oddzielnym problemem jest dobór czasu (globalnej liczby iteracji) procesu. Zakładaj c, e czas procesu jest ograniczony, mo na go przeznaczy b d na jeden przebieg przy odpowiednio wydłu onych cyklach, b d te skróci czas wszystkich cykli realizuj c dzi ki temu wi ksz liczb przebiegów i przyjmuj c za wynik najlepsze rozwi zanie. Na podstawie wielu eksperymentów numerycznych stwierdzono, e w przypadku krótkiego limitu czasu przeznaczonego na uczenie najlepsze wyniki uzyskuje si w jednym przebiegu. W wypadku znacznego wydłu enia czasu lepsze statystycznie rezultaty uzyskuje si w wyniku zastosowania wielu przebiegów procesu symulowanego wy arzania, przy du ych, zbli onych do jedno ci, warto ciach współczynnika r. Najwi ksze przyspieszenie procesu symulowanego wy arzania mo na uzyska przy zast pieniu losowych warto ci startowych wag W warto ciami starannie dobranymi przy zastosowaniu innych metod wst pnego przetworzenia danych, je eli s one osi galne. W takim przypadku redukcja czasu mo e by nawet kilka czy kilkunastokrotna w zale no ci od liczby optymalizowanych wag i stopnia optymalno ci doboru warto ci startowych. Du o niniejsze oszcz dno ci, ale równie znacz ce, mo na uzyska upraszczaj c pewne procesy obliczeniowe wewn trz algorytmu. Przykładowo, obliczenie funkcji
e
−
∆ T
≈ 1−
∆ T
wymaga jednego dzielenia i jest
wielokrotnie szybsze (ok. 20 razy w przypadku komputerów osobistych) ni dokładne obliczenie funkcji wykładniczej. Co wi cej, jako uzyskanego rozwi zania praktycznie nie ulega zmianie, przy znacznej (ok. 30%) redukcji czasu. W ogólno ci metoda symulowanego wy arzania jest szczególnie dobrze przystosowana do rozwi zywania wielomodalnych problemów kombinatorycznych o bardzo du ej liczbie rozwi za np. w maszynie Boltzmanna, w których stan systemu odpowiada jednemu rozwi zaniu. W typowych problemach uczenia sieci wielowarstwowej generalnie lepsze rezultaty uzyskuje si przy zastosowaniu stochastycznie sterowanej metody multistartu i algorytmów deterministycznych omówionych w poprzednim podrozdziale.
2.11. Metody inicjalizacji wag Uczenie sieci neuronowych, nawet przy zastosowaniu najlepszych algorytmów ucz cych, jest procesem trudnym i nie zawsze prowadz cym do minimum globalnego. Sigmoidaln funkcja aktywacji neuronów wprowadza szereg minimów lokalnych, w których mo e utkn uczenie. Wprawdzie zastosowanie odpowiedniej strategii post powania (np. symulowane wy arzanie, metoda multistartu, algorytmy genetyczne) zmniejsza prawdopodobie stwo utkni cia procesu w minimum lokalnym, ale jest to okupione du ym nakładem pracy i znacznym wydłu eniem czasu uczenia. Ponadto zastosowanie tych metod wymaga du ego do wiadczenia w trudnych zagadnieniach optymalizacji globalnej, zwłaszcza przy wła ciwym doborze parametrów procesu. Najlepsze wyniki w uczeniu sieci mo na osi gn przez odpowiedni dobór wst pnych warto ci wag sieci. Jest po dany start z warto ci wag zbli onych do optymalnych. Unika si w ten sposób nie tylko utkni cia w niewła ciwym minimum lokalnym, ale jednocze nie znacznie przyspiesza proces uczenia. Niestety w ogólnym przypadku nie istnieje metoda doboru wag zapewniaj ca wła ciwy punkt startowy dla ka dego problemu uczenia. Dlatego w wi kszo ci zastosowa u ywa si nadal głównie losowego doboru wag, przyjmuj c rozkład równomierny w okre lonym przedziale liczbowym. Zły dobór zakresu warto ci losowych wag prowadzi do zjawiska przedwczesnego nasycenia neuronów, w wyniku którego pomimo upływu czasu bł d redniokwadratowy pozostaje prawie stały w procesie uczenia. 5
Rysunek reprodukowano za zgod Operatkms Research Society of America. Copyright 1989, the Operations Research Society of America (currently INFORMS), 290 'Westminster Street, Providence, RI 02903, USA.
Tego typu zjawisko nie oznacza minimum lokalnego, ale raczej stały punkt siodłowy funkcji celu. Jest on zwykle wynikiem zbyt du ych warto ci startowych wag. Przy okre lonych sygnałach ucz cych w w złach sumacyjnych neuronów s generowane sygnały
ui =
Wij x j o warto ciach odpowiadaj cych gł bokiemu j
nasyceniu funkcji sigmoidalnej aktywacji, przy czym polaryzacja nasycenia jest odwrotna do po danej (sygnał wyj ciowy neuronu +1 przy po danej warto ci –1 i odwrotnie). W punkcie nasycenia sygnał zwrotny generowany w metodzie propagacji wstecznej, jako proporcjonalny do pochodnej funkcji aktywacji
∂f , jest ∂x
bliski zeru i zmiany warto ci wag wyprowadzaj ce neuron ze stanu nasycenia s bardzo małe. Proces uczenia utyka na długo w punkcie siodłowym. Nale y przy tym zauwa y , e tylko cz neuronów mo e by w stanie nasycenia, pozostałe operuj w zakresie liniowym i dla nich sygnał zwrotny ucz cy przyjmie normaln posta . Oznacza to, e wagi zwi zane z tymi neuronami zmieniaj si w sposób szybki i w ich przypadku proces uczenia prowadzi do szybkiej redukcji bł du. Poł czenie tych dwu stanów działania neuronów ogromnie spowalnia globalny proces uczenia, powoduj c, e mo e on trwa prawie nieprzerwanie a do wyczerpania limitu iteracji. Dlatego tak wa nym zagadnieniem s badania dotycz ce inicjalizacji wag sieci.
2.11.1. Inicjalizacja losowa W inicjalizacji losowej wag przyjmuje si równomierny rozkład ich warto ci w pewnym, ograniczonym przedziale liczbowym. Oszacowania dolnego i górnego zakresu tego przedziału, proponowane przez ró nych badaczy na podstawie wielu przeprowadzonych eksperymentów numerycznych ró ni si w szczegółach rozwi zania, ale prawie wszystkie operuj w przedziale [0,1]. Według Bottou [138] najlepszym przedziałem „randomizacji" wag dla wszystkich neuronów jest zakres
−
a a , , przy czym warto nin nin
a jest dobrana w taki sposób, e wariancja wag neuronu odpowiada
punktowi maksymalnej krzywizny funkcji aktywacji (dla standardowej sigmoidy unipolarnej jest to warto ok. 2,38), a nin oznacza liczb wej danego neuronu. mieja [138] zaproponował rozkład równomierny wag, znormalizowany dla ka dego neuronu do amplitudy
2 , w którym nin ma to samo znaczenie co poprzednio. Warto ci wag polaryzacji neuronów nin
warstw ukrytych powinny według niego przyjmowa
warto ci losowe z przedziału
−
nin nin , a , 2 2
neuronów wyj ciowych zerowe. Jest to wynik bada statystycznych nad dynamik szkła spinowego i ich analogii do procesu uczenia. Nguyen i Widrow w swoich rozwa aniach na temat optymalnych warto ci wst pnych wag przyj li aproksymacj odcinkowo-liniow sigmoidalnej funkcji aktywacji. Na tej podstawie oszacowali optymaln długo losowego wektora wagowego neuronów warstw ukrytych jako równ
n in
N h , przy czym Nh oznacza
liczb neuronów ukrytych w warstwie, a nin - liczb wej danego neuronu. Optymalny zakres wagowy polaryzacji dla neuronów ukrytych został oszacowany w postaci
[−
nin
]
N h , nin N h . Wagi wst pne neuronów
wyj ciowych nie zale według nich od topologii obwodu i s ustalane losowo w przedziale [—0,5,0,5]. Statystyczne badania eksperymentalne tych metod inicjalizacji [138] przeprowadzone na szerokiej grupie bada testowych przy u yciu metody najwi kszego spadku potwierdziły do dobre wyniki zbie no ci w porównaniu z tradycyjn metod losow (wszystkie wagi neuronów dobrane losowo w zakresie okre lonym z góry, równym dla danego neuronu). Ró nice w liczbie iteracji mi dzy poszczególnymi metodami s niewielkie i ka da z tych metod inicjalizacji losowej mo e by uznana za zadowalaj c [138]. Omówione metody losowe zastosowane w doborze wst pnych warto ci wag sieci opierały si b d na intuicji badacza, b d na wynikach szeregu eksperymentów numerycznych. Bli sza analiza zjawisk zachodz cych w procesie uczenia umo liwia bardziej precyzyjne wskazanie przyczyn spowolnienia procesu uczenia, utykania w punktach siodłowych lub przedwczesnego zako czenia uczenia w minimum lokalnym dalekim od globalnego i przeciwdziałanie im stosuj c odpowiednie procedury analizuj ce wst pnie dane ucz ce i umo liwiaj ce odpowiedni inicjacj zarówno struktury sieci, jak i wst pnych warto ci wag. W przypadku odwzorowania ci głego, realizowanego przy u yciu jednej lub dwu warstw ukrytych oraz warstwy wyj ciowej, nale y ustali relacje pomi dzy poszczególnymi warstwami sieci a zbiorem próbek
ucz cych. W tym celu wprowadza si poj cia: klasy oraz grup skupienia danych zwanych dalej klasterami6. Do jednej klasy b d nale ały te wzorce ucz ce, dla których sygnały wyj ciowe sieci neuronowej b d identyczne. Natomiast klastery s tworzone przez grupy próbek ucz cych znajduj cych si w niewielkiej odległo ci od siebie w przestrzeni N-wymiarowej (N - liczba neuronów w warstwie wej ciowej), dla których sie neuronowa charakteryzuje si takim samym sygnałem wyj ciowym. Do jednej klasy mo e zatem nale e zarówno wiele klasterów, jak te jeden.
Rysunek 2.13 Podział przestrzeni danych na klastery Rysunek 2.13 przedstawia przykład rozmieszczenia próbek ucz cych dla dwu klas składaj cych si z wielu klasterów (rys. 2.13a) oraz dla klas utworzonych przez jeden klaster (rys. 2.13b). Znaki x i o oznaczaj odpowiednio punkty nale ce do klasy pierwszej oraz drugiej. Separacja dwu klas składaj cych si z 2 odseparowanych od siebie klasterów jest zadaniem prostym i mo e by wykonana przez jeden neuron. W przypadku du ej liczby klasterów tworz cych dan klas zadanie separacji jest bardziej skomplikowane, a do jej realizacji jest wymagana znacznie wi ksza liczba takich neuronów. Mo na powiedzie , e liczba neuronów w warstwie ukrytej odpowiada liczbie hiperpłaszczyzn separuj cych cał przestrze N-wymiarow na oddzielne klastery, w których znajduj si wzorce nale ce do jednej klasy. Neurony warstwy wyj ciowej poł czone z neuronami warstwy ukrytej pełni funkcj układu ł cz cego poszczególne klastery w odpowiedni klas . Problem inicjalizacji wag wi e si równie ze wst pnym okre leniem liczby neuronów ukrytych w sieci. Nale y zdawa sobie spraw z relacji mi dzy wymiarem przestrzeni wej ciowej N, liczb hiperpłaszczyzn n oraz liczb odcinków hiperpłaszczyzn separuj cych przestrze na oddzielne klastery.
Rysunek 2.14 Ilustracja poj
klasterów, hiperpłaszczyzn i odcinków hiperpłaszczyzn
Rysunek 2.14 przedstawia przykładowy podział przestrzeni wzorców ucz cych przez trzy hiperpłaszczyzny. W wyniku tego podziału zostało utworzone 7 klasterów (a-g) oraz 9 odcinków (1-9). Je eli przez R(n, N) oznaczy si maksymaln liczb klasterów danych, na jakie mo e zosta podzielona N-wymiarowa przestrze wej ciowa przez n wzajemnie przecinaj cych si hiperpłaszczyzn, to, jak wykazano w pracy [89],
R(n, N ) =
N i =0
Cin (2. 615)
przy czym
6
Przez poj cie klastera rozumie si zbiór punktów poło onych blisko siebie w przestrzeni wielowymiarowej maj cych wspóln cech . S równie stosowane inne nazwy do okre lenia takiego zbioru punktów: skupienie, zlepek, grono.
n! C = i!(n − i )! 0 n i
dla n > i
(2. 116)
dla n ≤ i
Je eli problem rozwi zywany przy pomocy sieci ma K klasterów nale cych do ró nych klas i jednocze nie wybrana sie ma mie najmniejsz z mo liwych liczb n neuronów w pierwszej warstwie ukrytej (równ liczbie hiperpłaszczyzn), to liczba n musi by tak dobrana, aby była spełniona zale no
R(n, N ) ≥ K
R(n − 1, N ) < K (2. 117)
Znaj c maksymaln liczb klasterów, na jakie dzieli przestrze n hiperpłaszczyzn, mo na okre li liczb odcinków hiperpłaszczyzn otrzymanych w wyniku wzajemnego przeci cia si n hiperpłaszczyzn w N-wymiarowej przestrzeni wej ciowej. Ka demu odcinkowi hiperpłaszczyzny w N-wymiarowej przestrzeni odpowiada grupa danych w (N - 1)-wymiarowej przestrzeni. W przypadku gdy wszystkie hiperpłaszczyzny przecinaj si wzajemnie, ka da hiperpłaszczyzna zostaje podzielona na wiele odcinków. Maksymalna liczba odcinków danej hiperpłaszczyzny odpowiada wi c pewnej liczbie (N - l)-wymiarowych grup danych otrzymanych przez przeci cie tej płaszczyzny przez pozostałe (n - 1) hiperpłaszczyzn. Wobec tego maksymalna liczba odcinków dla danej hiperpłaszczyzny wynosi R(n - l, N - 1). Na tej podstawie mo na traktowa ka d hiperpłaszczyzn poprowadzon w N-wymiarowej przestrzeni jako now (N - l)-wymiarow przestrze przecinan przez (n - 1) hiperpłaszczyzn o zmniejszonych wymiarach. Poniewa ka da z n pocz tkowych hiperpłaszczyzn mo e zosta podzielona na R(n - l, N - 1) grup danych (N - l)-wymiarowych, wobec tego całkowita, maksymalna liczba A odcinków hiperpłaszczyzn otrzymana w wyniku przeci cia N-wymiarowej przestrzeni wej ciowej przez n hiperpłaszczyzn zale ny od n oraz N i wynosi [89]
A(n, N ) = nR(n − 1, N − 1) = n
N −1 i =0
Cin −1 (2. 718 )
Aby okre li minimaln liczb próbek ucz cych potrzebn do przeprowadzenia prawidłowej klasyfikacji, przyjmuje si zało enie, e liczba próbek granicznych potrzebnych do prawidłowego nauczenia sieci jest proporcjonalna do liczby wszystkich odcinków hiperpłaszczyzn. W pracy [89] udowodniono, e zale no mi dzy maksymaln liczb klasterów R(n, N) a maksymaln liczb odcinków hiperpłaszczyzn A(n,N), na jakie w przestrzeni N-wymiarowej dzieli si n hiperpłaszczyzn, okre la relacja
min (n, N ) A(n, N ) min(n,2 N ) ≤ ≤ (2. 119) 2 R(n, N ) 2 Wyznacza ona przedział, w jakim b dzie zawierał si stosunek maksymalnej liczby odcinków hiperpłaszczyzn do maksymalnej liczby klasterów otrzymanych w wyniku przeci cia N-wymiarowej przestrzeni danych przez n wzajemnie przecinaj cych si hiperpłaszczyzn. Wst pne okre lenie liczby neuronów ukrytych, nawet je li w trakcie procesu uczenia nast pi ich redukcja, jest pierwszym krokiem inicjalizacji sieci. Nieodpowiedni dobór tej liczby, a nast pnie zły wybór warto ci startowych wag ma konsekwencje w postaci znacznego spowolnienia procesu uczenia b d jego utkni cia w minimum lokalnym dalekim od globalnego. Według pracy [147] s 3 podstawowe objawy złej inicjalizacji wag sieci: • hiperpłaszczyzny utworzone przez neurony warstwy ukrytej znajduj si poza obszarem, w którym zawieraj si wzorce ucz ce, a przez to nie uczestnicz w podziale prezentowanych próbek na odpowiednie klasy; • wagi neuronów warstwy ukrytej s tak dobrane, e cz neuronów tej warstwy tworzy hiperpłaszczyzny, które wzajemnie si pokrywaj , co powoduje, e rzeczywista liczba odcinków hiperpłaszczyzn dziel cych przestrze danych wej ciowych na klastery jest znacznie mniejsza, ni wynikałoby to z liczby neuronów w warstwie ukrytej; • wagi neuronów warstwy ukrytej s tak dobrane, e dla pewnych obszarów przestrzeni danych wszystkie neurony tej warstwy s w stanie nieaktywnym; po podaniu na wej cie danych nale cych do tych obszarów wszystkie neurony tej warstwy odpowiadaj zerowym sygnałom wyj ciowym, co uniemo liwia w procesie uczenia dopasowanie hiperpłaszczyzn odseparowuj cych dane nale ce do tych obszarów od pozostałej cz ci przestrzeni danych. W sieci o prawidłowo dobranych wst pnych warto ciach wag nie powinno powsta adne z trzech opisanych wcze niej zdarze spowalniaj cych proces uczenia. Wobec tego wst pne warto ci wag neuronów w warstwie ukrytej powinny by tak dobrane, aby utworzone przez nie hiperpłaszczyzny, w momencie rozpocz cia procesu uczenia, znajdowały si wewn trz przestrzeni danych wej ciowych, co zapobiega wyst pieniu zdarzenia pierwszego.
Według autorów pracy [147] dobre wyniki uzyskuje si przyjmuj c równania hiperpłaszczyzn w systemie współrz dnych sferycznych o promieniach |r| okre lonych wzorami:
r (0 ) = r (i ) =
1 (2. 820) 2
1 (0 ) r (2. 121) i +1
W celu wykluczenia zdarzenia drugiego nale y dobra warto k ta θ wektora wagowego r = |r|ejθ w taki sposób, aby zmaksymalizowa ró nice poło e mi dzy poszczególnymi hiperpłaszczyznami. W tym celu proponuje si wybór θ według zale no ci [147]
π θ = i
N
π N
i
dla i nieparzystego (2. 122)
i +π
dla i parzystego
w której N oznacza wymiar przestrzeni wej ciowej, a i jest numerem neuronu. W warstwie ukrytej parzystych neuronów dodaje si warto π po to, aby wszystkie hiperpłaszczyzny były w miar równomiernie rozło one w całej przestrzeni wej ciowej. W celu zapobiegni cia zdarzeniu trzeciemu warto ci wag powinny by tak dobrane, aby pocz tek układu współrz dnych znajdował si w aktywnej cz ci działania wszystkich neuronów, to znaczy, aby wszystkie neurony dla tej cz ci danych odpowiadały sygnałem niezerowym. Mo na to osi gn przez wprowadzenie odpowiedniego współczynnika skaluj cego warto ci wag. Szczegóły rozwa a dotycz ce warto ci tego współczynnika mo na znale w pracy [147]. Po wst pnym doborze wag dla warstwy ukrytej pozostaje wybór warto ci wag neuronów warstwy wyj ciowej. Ich wpływ na proces uczenia jest mniej istotny i w praktyce wystarczy przyj ich losowy rozkład w ograniczonym przedziale, zwykle [0,01, -1].
2.11.2. Zastosowanie uogólnionej reguły Hebba do inicjalizacji warto ci wag
Uczenie samoorganizuj ce Hebba ma zastosowanie zarówno do struktur jednokierunkowych, jak i rekurencyjnych. W przypadku perceptronu wielowarstwowego jego skuteczno jest nieporównywalnie gorsza ni metod gradientowych i dlatego bezpo rednie zastosowanie reguły Hebba mijałoby si z celem. Jednak e nawet w tym przypadku zastosowanie jej ma t zalet , e jest w stanie uchwyci korelacj mi dzy danymi wej ciowymi a warto ciami wag i w efekcie sygnałami wyj ciowymi sieci. Dla uporz dkowania dalszych oznacze przyj to, e wektor wej ciowy jest N-wymiarowy, warstwy ukryte zawieraj K neuronów, przy czym dla ka dej warstwy warto K mo e by inna, a warstwa wyj ciowa jest zło ona z M neuronów. Wł czaj c polaryzacj (wymuszenie jednostkowe) jako zerowy składnik odpowiednich wektorów, oznaczono przez
[
x (k ) = 1, x1(k ) , x2(k ) ,
, xN(k )
]
T
(2. 923)
wektor wej ciowy sieci dla k-tego wzorca ucz cego. Dla uproszczenia przyj to oznaczenia wag neuronów w postaci Wij. Sygnał wyj ciowy j-tego neuronu ukrytego w warstwie pierwszej dla k-tej próbki ucz cej oznaczono w postaci
(
)
h(jk ) = f W jT x (k ) , przy czym f oznacza funkcj aktywacji, a
[
W j = W j 0 ,W j1 ,W j 2 ,
,W jN
]
T
(2. 124)
wektor wag j-tego neuronu. Sygnały wyj ciowe neuronów warstwy ukrytej tworz wektor
[
h(k ) = 1, h1(k ) , h2(k ) ,
, hK(k )
]
T
(2. 125)
w którym uwzgl dnia si równie sygnał jednostkowy polaryzacji. Inicjalizacja wag sieci mo e by dokonana przy zastosowaniu uogólnionej reguły Hebba (patrz rozdz. 1) kolejno do wszystkich warstw sieci. Dla potrzeb algorytmu inicjalizacji wag przyjmuje si uproszczenie w postaci liniowej funkcji aktywacji, co oznacza, e
h (jk ) = W jT x (k ) . Inicjalizacj rozpocz to od wag pierwszej warstwy ukrytej.
Zało ono, e w chwili pojawienia si na wej ciu k-tej próbki ucz cej wagi neuronów ukrytych maj warto ci ustalone w wyniku podania pierwszych (k - 1) wymusze . Przez W(k-i) oznaczono odpowiedni macierz zło ona z wektorów wag poszczególnych neuronów ukrytych
W (k −1) = [W1 ,W2 ,
,WK ]
Indeks górny (k - 1) w macierzy W oznacza, e wektory Wi (i = l, 2,..., K) kumuluj w sobie informacj skojarzon z pierwszymi (k - 1) wymuszeniami. Zgodnie z reguł Oji macierz W mo e by uaktualniana według zale no ci [61]
(
[
] )x( )[x( ) ] W ( ) ( ) ( ) h [h ] )
W (k ) = W (k −1) + η 1 − W (k −1) W (k −1)
( [ ]
= W (k −1) + η x (k ) h(k ) − W (k −1 T
(k )
[
(k −1)
]
T
T
k T
k
k T
k
k −1)
=
(2. 126)
(k )
x ,a η jest współczynnikiem uczenia. Zale no (2.126) jest zale no ci w której h = W macierzow . W odniesieniu do i-tego wektora wagowego neuronu ukrytego mo na j zapisa w postaci Wi (k ) = Wi (k −1) + ηhi(k ) x (k ) −
K l =1
hl(k )Wl (k −1) (2. 127)
Je li K < N, to neurony ukryte zawieraj informacj skompresowan w stosunku do informacji wej ciowej. Je li rozwi zanie (2.127) jest stabilne (macierz W nie zmienia si ), to kolumny Wi macierzy W s wzgl dem siebie ortogonalne [102]. Obowi zuje równie zale no odwrotna, która mówi, e je li WTW = l, to rozwi zanie (2.127) jest stabilne. Ta ostatnia informacja posłu y jako kryterium zatrzymania oblicze . Bior c pod uwag , e h(k) = WTx(k), z warunku WTW = l wynika, e x(k) = Wh(k). Po zaprezentowaniu wszystkich wektorów wej ciowych x(k) (k = l, 2, . . . , p) oblicza si miar odległo ci aktualnego rozwi zania od stanu stabilnego według zale no ci
ε=
p
h (k ) − W T x ( k )
2
(2. 128)
k =1
Proces uaktualniania wag zatrzymuje si , je li e przyjmie dostatecznie mał warto . Je li K > N, to neurony ukryte zawieraj informacj rozszerzon w stosunku do wej ciowej. W tym przypadku, je li macierz W osi gn ła warto ustabilizowan , to jej wiersze s ortogonalne [102], co oznacza, e WWT = l lub e x(k) = Wh(k), h(k) = WTx(k) . W tym przypadku kryterium zatrzymania oblicze ma posta
ε=
p
h(k ) − Wh (k )
2
(2. 129)
k =1
Je li, w szczególnym przypadku K = N, zarówno wiersze, jak i kolumny macierzy W s ortogonalne i oba kryteria, okre lone b d to zale no ci (2.128), b d zale no ci (2.129), mog by zastosowane. Przedstawione powy ej zale no ci zostały uogólnione równie na przypadek zastosowania nieliniowej funkcji aktywacji neuronów [61]. Inicjalizacja wag według przedstawionej procedury nast puje z warstwy na warstw , poczynaj c od wag pierwszej warstwy ukrytej. Po zako czeniu procesu inicjalizacji wagi te zostaj zamro one, a podanie na wej cie sieci kolejnych wektorów ucz cych umo liwia okre lenie odpowiednich sygnałów wyj ciowych warstwy ukrytej. Dla nast pnej warstwy (kolejnej warstwy ukrytej b d warstwy wyj ciowej) stanowi one sygnały wymuszaj ce, odgrywaj ce rol wektorów x(k). Procedur powtarza si dla ka dej warstwy, a uzyskane warto ci wag przyjmuje za warto ci startowe dla procesu uczenia pod nadzorem z zastosowaniem metody propagacji wstecznej. Przedstawiona metoda inicjalizacji została sprawdzona na przykładzie problemu 2 spiral przy klasyfikacji punktów nale cych do obu spiral. Przy 100 punktach nale cych równomiernie do obu spiral i strukturze sieci 2 – 10 - 1 (2 wej cia, 10 neuronów ukrytych i jeden neuron wyj ciowy), w zale no ci od zastosowanego algorytmu uczenia pod nadzorem, uzyskano kilkukrotne zmniejszenie liczby cykli ucz cych [61].
2.11.3. Inicjalizacja wag z zastosowaniem algorytmu samoorganizacji We wst pnych rozwa aniach tego rozdziału wskazano zwi zek mi dzy podziałem grupy danych na klastery i odseparowaniem klasterów od siebie przez odcinki hiperpłaszczyzn realizowanych przez wagi neuronów ukrytych. Zwi zek ten mo na wykorzysta przy inicjalizacji wag sieci. Zało ono, e dla danego zbioru danych ucz cych, reprezentuj cych okre lony problem klasyfikacyjny dokonano podziału danych na wiele odseparowanych grup reprezentuj cych M klas (na przykład przy zastosowaniu algorytmu LVQ przedstawionego w rozdz. 1). Ka da taka grupa jest reprezentowana przez wektor prototypowy pi (i = l,2,...,K) reprezentuj cy jej centrum. Podział taki mo e by dokonany na całej grupie danych ucz cych b d na wybranej jej cz ci, reprezentatywnej dla wszystkich klas tworz cych dane ucz ce. Mo e by
on z du ym przybli eniem odzwierciedlony w postaci sieci neuronowej zawieraj cej K neuronów w warstwie ukrytej (ka dy reprezentuj cy jeden klaster) i M neuronów (ka dy reprezentuj cy jedn klas ) w warstwie wyj ciowej, jak to przedstawiono na rys. 2.15 dla sieci dwuwarstwowej o sigmoidalnej funkcji aktywacji w obu warstwach.
Rysunek 2.15 Interpretacja parametrów ucz cych w metodzie prototypów Na etapie inicjalizacji sieci mo na zało y taki wst pny dobór danych ucz cych i kryterium przynale no ci do grupy, e ka dy wektor wej ciowy nale y tylko do jednego klastera, a zatem powoduje uaktywnienie tylko jednego neuronu ukrytego. Przy zastosowaniu znormalizowanych danych ucz cych uaktywnienie i-tego neuronu ukrytego nast puje wówczas, gdy odległo mi dzy wektorem wej ciowym x a wektorem prototypowym pi jest mniejsza ni próg β. Wobec uaktywnienia tylko jednego neuronu ukrytego dla ka dego wektora wej ciowego funkcj neuronu wyj ciowego jest zaklasyfikowanie go do wła ciwej klasy przez przypisanie jednej niezerowej, a pozostałych zerowych warto ci wag neuronu odpowiadaj cego za dan klas , jak to pokazano na rys. 2.15. Neuron ukryty i-ty o wektorze wag Wi = α[-βi, pi1, pi2, …, piN]T, przy czym α jest stał , uaktywniony przez i-ty wektor prototypowy pi = [pi1, pi2, …, piN]T przekazuje swój sygnał niezerowy tylko do jednego neuronu wyj ciowego za po rednictwem niezerowej wagi γ. Pozostałe wagi wyj ciowe tego neuronu s zerowe. Jest to stosunkowo du e uproszczenie modelu przetwarzania sygnałów w sieci, ale daj ce do dobre rezultaty w procesie dalszego uczenia. Zakładaj c znajomo wektorów prototypowych pi (i = 1,2,.. .,K), proces inicjalizacji wag dla zadania klasyfikacyjnego (neurony wyj ciowe typu sigmoidalnego) wygl da nast puj co: • warstwa pierwsza neuronów:
Wij(1) = α pij (2. 130) Wi (01) = −α β i (2. 131) •
dla i = 1, 2, ..., K , j = 1, 2, ..., N , warstwa wyj ciowa neuronów
Wki(2 ) =
0 < βi < 1
γ >1
jesli p k nale a do klasy k
0
jesli p k nie nale a do klasy k
(2. 132)
Wk(02 ) = −1 (2. 133) dla k = 1,2,..., M, i = 1,2, ...,K . Współczynniki α i γ , stanowi ce mno niki wagowe, wpływaj na stopie nasycenia neuronów przy zadanym wektorze wej ciowym. Przy du ych warto ciach α i γ neurony zarówno ukryte, jak i wyj ciowe łatwiej wchodz w nasycenie, a sigmoidaln funkcja aktywacji zbli a si w swym charakterze do funkcji skokowej. Ten punkt pracy neuronów nie jest po dany przy zastosowaniach metod gradientowych w dalszym uczeniu pod nadzorem, gdy spowalnia proces uczenia (sygnał zwrotny ucz cy przy nasyceniu neuronu jest bardzo mały). W praktyce warto ci α i γ przyjmuje si w zakresie zbli onym do jedno ci (wi cej ni 1), uzale niaj c konkretny wybór od specyfiki rozwi zywanego zadania. Nieco inaczej wygl da dobór wag startowych w przypadku zadania ci głego (np. aproksymacji funkcji wielu zmiennych), w którym neurony warstwy wyj ciowej maj liniow funkcj aktywacji. Przy ukształtowanych wektorach prototypowych p dobór wag warstwy ukrytej jest identyczny jak dla problemu klasyfikacyjnego (nieci głego). Wagi neuronów warstwy wyj ciowej, zamiast stałej warto ci γ lub 0, przyjmuj teraz warto ci funkcji aproksymowanej F (x) dla x = pi
W1(i 2 ) = F ( pi ) (2. 1034)
W10(2 ) = 0 (2. 135) przy czym ze wzgl du na specyfik zagadnienia aproksymacji rozwa ono istnienie tylko jednego neuronu wyj ciowego, M = 1. W przypadku funkcji ci głej nie mo na zało y , e wektor prototypowy uaktywni tylko jeden neuron w warstwie ukrytej. Sygnał wyj ciowy b dzie raczej sum wielu niezerowych sygnałów, z których, dla okre lonej warto ci wektora wej ciowego x, jeden jest dominuj cy. W tym przypadku na podstawie wielu bada [29] stwierdzono, e lepsze wyniki inicjalizacji otrzymuje si przy du ych warto ciach α (np. α > 5). W przypadku funkcji ci głej generacja prototypów równie musi by nieco zmodyfikowana w stosunku do algorytmu LVQ omówionego w rozdz. 1. Zało ono mianowicie, e w chwili startu (t = t0) algorytmu LVQ podział wst pny przestrzeni danych na K prototypów istnieje i jest opisany w postaci pi(t0) dla i = l, 2,..., K, a odpowiadaj ce im warto ci funkcji F oznaczono w postaci
Fˆi (t0 ) = F ( pi (t0 )) . Po prezentacji wektora
wej ciowego x w chwili t jest modyfikowana warto wektora prototypowego pi (zwyci zcy), najbli szego w sensie okre lonej metryki wektorowi x(t) oraz uaktualniana odpowiadaj ca mu warto
Fˆi (t ) . Post powanie
przeprowadza si według nast puj cych zale no ci: •
je li
F ( x(t )) ≠ Fˆi (t0 ) :
pi (t ) = pi (t0 ) + ξ (t )[x(t ) − pi (t0 )] Fˆ (t ) = Fˆ (t ) + ε (t ) F ( x(t )) − Fˆ (t ) i
i
[
0
i
t0 = t •
w przeciwnym przypadku:
0
]
pi (t ) = pi (t0 ) Fˆ (t ) = F (t ) i
i
0
W zale no ciach tych zarówno ξ(t), jak i ε(t) s współczynnikami z przedziału [0,1], malej cymi w czasie, pełni cymi podobn rol jak współczynnik α w klasycznym algorytmie LVQ. Uaktualnianie warto ci dotyczy tylko wektora prototypowego zwyci skiego, reszta pozostaje bez zmiany. Nale y zaznaczy , e wła ciwe działanie tego algorytmu inicjalizacji wymaga, aby wektory wej ciowe x były znormalizowane do długo ci jednostkowej, ||x|| = 1. W przypadku dowolnego wektora x mo na to osi gn przez odpowiednie przeskalowane jego warto ci i zwi kszenie wymiaru o jeden. Na przykład, je li wektor x = [x1, x2, …, xN]T nie spełnia warunku normalizacji, to mo na dokona operacji rzutowania w inny wektor
xs =
x1 x2 , , r r
,
xn , 1− r
N i =1
xi2 r2
, który automatycznie spełnia ten warunek, przy zało eniu, e
współczynnik skalowania r jest tak dobrany, e r ≥ max(||x||) dla całego zbioru ucz cego. Eksperymenty numeryczne przeprowadzone przy zastosowaniu omówionej wy ej inicjalizacji wag prototypów wskazuj na znaczn popraw wyników uczenia, du o lepsz ni przy zastosowaniu reguły Hebba. Przykładowo, dla problemu klasyfikacyjnego dwu spiral wybór prototypów dla obu klas okazał si stosunkowo równomiernie pokrywaj cy płaszczyzn (x, y), jak to przedstawia rys. 2.16.
Rysunek 2.16 Ilustracja doboru poło e wektorów prototypowych w problemie 2 spiral W badaniach eksperymentalnych [29] zastosowano 20 neuronów ukrytych; struktura sieci neuronowej jest wtedy dana w postaci 3 – 20 – 1 (wymiar wektora wej ciowego jest zwi kszony o jeden dla zapewnienia normalizacji). Przy zało eniu warto ci współczynników α = γ = l uzyskany wynik jest wielokrotnie lepszy od
uzyskanych innymi metodami i porównywalny z najlepszym rezultatem algorytmu kaskadowej korelacji Fahlmana [31]. Powy sza metoda została znacznie zmodyfikowana przez Weymaere'a i Martensa [148], umo liwiaj c du o dokładniejsze okre lenie optymalnych warto ci wst pnych wag.
3.
Dobór optymalnej architektury wielowarstwowej i danych ucz cych
sieci
Przyst puj c do rozwi zywania jakiegokolwiek problemu przy wykorzystaniu sieci neuronowej wielowarstwowej nale y przede wszystkim, oprócz danych ucz cych, zaprojektowa struktur sieci, dopasowani do danego zadania. Oznacza to wybór liczby warstw sieci i neuronów w warstwie oraz powi za mi dzy warstwami. Dobór liczby neuronów w warstwie wej ciowej jest uwarunkowany wymiarem wektora danych x. Podobnie jest w warstwie wyj ciowej, w której liczba neuronów równa si wymiarowi wektora zadanego d. Problemem pozostaje dobór warstw ukrytych i liczby neuronów w ka dej warstwie. Rozwi zanie tego problemu zostało podane (w sensie istnienia rozwi zania) przez matematyków zajmuj cych si aproksymacji funkcji wielu zmiennych. Nale y zauwa y , e sie neuronowa pełni funkcj układu aproksymuj cego dane ucz ce (x, d) [2, 41, 52]. W trakcie uczenia s dobierane współczynniki tej funkcji (wektory wag poszczególnych neuronów). Na etapie odtwarzania, przy ustalonych warto ciach wag, nast puje zwykłe obliczenie warto ci funkcji aproksymuj cej przy danym wektorze wej ciowym. Okre lenie minimalnej liczby warstw ukrytych sieci opiera si na wła ciwo ciach funkcji aproksymuj cych. Ka da funkcja zadana g(x) mo e by wyra ona jako liniowa kombinacja lokalnych impulsów, które maj warto ró ni od zera jedynie w małym otoczeniu aktualnej warto ci x. Funkcja impulsowa okre lonego kształtu mo e by wygenerowana jako superpozycja dwu funkcji przesuni tych wzgl dem siebie [105]. Dwie identyczne sigmoidy Sl i S2 przesuni te wzgl dem siebie tworz w wyniku odj cia impuls o czasie trwania odpowiadaj cym ró nicy przesuni obu funkcji sigmoidalnych. Przez odpowiedni dobór parametrów funkcji sigmoidalnych mo na ukształtowa impuls w taki sposób, aby pojawiał si w danym miejscu, miał odpowiednik szeroko i stromo narastania. Do realizacji tego typu kształtowania impulsów nale y zastosowa sie neuronowi dwuwarstwow , w której neurony wyj ciowe mog by liniowe. W przypadku sieci dwuwej ciowej mo na w identyczny sposób ukształtowa impuls na płaszczy nie [105]. Ró nica dwu funkcji sigmoidalnych zdefiniowanych jako funkcja dwu zmiennych i przesuni tych wzgl dem siebie tworzy grzbiet o niesko czonej długo ci trwania. Dodaj c nast pni par funkcji sigmoidalnych przesuni tych wzgl dem poprzedniej i tworz c ich ró nic mo na otrzyma drugi grzbiet o niesko czonej długo ci. Dobieraj c parametry obu par funkcji sigmoidalnych w taki sposób, aby grzbiety tworzyły ze sob pewien k t, mo na otrzyma w wyniku zsumowania obu grzbietów kształt dwuwymiarowego garbu [105]. W miejscu przeci cia obu grzbietów powstaje dwuwymiarowy kształt impulsu zako czony z czterech stron odej ciami ci gn cymi si do niesko czono ci, których usuni cie jest mo liwe przez zastosowanie sigmoidalnej funkcji aktywacji neuronu z odpowiednio dobranym progiem. W efekcie nast puje odci cie warto ci funkcji na okre lonym poziomie tak dobranym, e impuls powstały z dodania dwu grzbietów jest przepuszczony, a odej cia grzbietowe odci te. Sie neuronowa o dwu wej ciach, powstała w ten sposób, zawiera warstw ukryty, zło on z 4 neuronów, oraz warstw wyj ciowi, zawieraj c 1 neuron typu sigmoidalnego, realizuj cy jednocze nie etap dodawania sygnałów wszystkich 4 neuronów oraz odcinania odej przez zastosowanie sigmoidalnej funkcji aktywacji z odpowiednim progiem. Uogólnienie na przypadek wielowymiarowy jest znany w teorii sieci neuronowych pod nazw twierdzenia Kołmogorowa [45, 71]. Ograniczaj c si do funkcji ci głej przekształcaj cej N-wymiarowy zbiór danych wej ciowych x w M-wymiarowy wektor wyj ciowy d, udowodniono, w sensie istnienia rozwi zania, e aproksymacja tego typu jest mo liwa przy u yciu sieci o jednej warstwie ukrytej. Przy N wej ciach wystarczy u ycie (2N + 1) neuronów w warstwie ukrytej. Architektur sieci neuronowej odpowiadaj c teorii Kołmogorowa przedstawiono na rys. 3.1 [45]. W dowodzie twierdzenia przeprowadzonym przez Kołmogorowa, dotycz cego ogólnej teorii aproksymacji [71], przyj to, e sygnały wyj ciowe poszczególnych warstw s opisane zale no ciami:
zk =
N j =1
A jψ (x j + b j ) + B0 k (3. 1)
dla neuronów warstwy ukrytej przy k = 1, 2, . . . , 2N + 1, oraz
yi =
2 N 01 k =1
Ck g ( zk + d k ) + D0i (3. 2)
dla neuronów warstwy wyj ciowej. Funkcje ψ(), g( ) oznaczaj pewne, bli ej nie okre lone funkcje bazowe ci głe, a wszystkie współczynniki wyst puj ce w tych wzorach s współczynnikami liczbowymi, które powinny
by dobrane w procesie uczenia. W przypadku odwzorowania nieci głego x→y, zgodnie z teori Kołmogorowa, jest wymagane w ogólnym przypadku u ycie dwu warstw ukrytych [45] . Wynik uzyskany dzi ki teorii Kołmogorowa jest wyj tkowo wa ny, gdy dowodzi istnienia rozwi zania problemu aproksymacji funkcji wielu zmiennych przez superpozycj wielu funkcji jednej zmiennej i daje podstawy teoretyczne do okre lenia architektury sieci neuronowej.
Rysunek 3.1 Posta sieci neuronowej odpowiadaj ca twierdzeniu Kołmogorowa Samo proste zastosowanie twierdzenia Kołmogorowa nie prowadzi jednak do optymalnych rozwi za . Zarówno liczba warstw, jak i neuronów w warstwie w rozwi zaniach uznawanych za optymalne mog~ znacznie ró ni si od wyniku uzyskanego dzi ki teorii Kołmogorowa. Poza tym przyj cie ró nych funkcji bazowych ma wpływ zarówno na algorytm doboru współczynników liczbowych zało onych w aproksymacji, jak i na sam liczb składników sumy.
3.1. Zdolno ci uogólniania sieci wielowarstwowej Przy poszukiwaniu optymalnej architektury sieci wielowarstwowej jednym z najwa niejszych zagadnie jest problem zdolno ci uogólniania sieci. Proces uczenia polegaj cy na minimalizacji funkcji celu E(W) dotyczy zbioru ucz cego L, dla którego
E (W ) = E L (W ) =
p k =1
E ( y k (W ), d k ) (3. 3)
przy czym p jest liczb par ucz cych (xk, dk), yk - wektorem odpowiedzi sieci na wymuszenie w postaci xk. Minimalizacja tej funkcji zapewnia dobre dopasowanie odpowiedzi sieci do warto ci danych, ale dla zbioru ucz cego. Rzeczywistym celem uczenia jest taki dobór architektury i parametrów sieci, który zapewni minimum bł du dla zbioru testuj cego, a wi c zminimalizuje bł d tzw. uogólniania (generalizacji). Jak pokazano w rozdz. 1, bł d uogólnienia EG(W) mo e by oszacowany na podstawie bł du uczenia EL(W) oraz tzw. przedziału ufno ci ε1
EG (W ) ≤ E L (W ) + ε 1
p , E L (3. 4) h
Przedział ufno ci jest funkcja zale n od stosunku liczby wzorców ucz cych p do aktualnej warto ci h miary Vapnika-Chervonenkisa VCdim oraz poziomu bł du ucz cego EL{W ). Warto ε1 maleje wraz ze wzrostem stosunku liczby próbek ucz cych do stopnia zło ono ci sieci neuronowej wyra onej poprzez miar VCdim. Podstawowym problemem jest tu dobre oszacowanie miary Vapnika-Chervonenkisa dla sieci o okre lonej strukturze. W ogólno ci jest ona funkcj zło ono ci sieci, zwłaszcza za liczby wag synaptycznych ł cz cych neurony mi dzy sob . Im wi ksza jest liczba ró nych wag, tym wi ksze s zło ono sieci i warto miary VCdim. W przypadku uogólniania wa ny jest stosunek liczby próbek ucz cych do warto ci VCdim. Mała liczba próbek ucz cych przy ustalonej warto ci h oznacza bardzo dobre dopasowanie sieci do próbek ucz cych, ale złe uogólnienie, gdy w procesie uczenia nast pił wzgl dny nadmiar parametrów dobieranych (wag) wzgl dem dopasowywanych do siebie warto ci sygnałów wyj ciowych sieci. Parametry te zostały zbyt precyzyjnie, a przy tym wobec nadmiarowo ci wag w sposób niekontrolowany poza punktami dopasowania dobrane do konkretnych danych, a nie do zadania, które miało by reprezentowane przez te dane ucz ce. Zadanie aproksymacji zostało niejako sprowadzone do zadania bli szego interpolacji. W efekcie wszelkiego rodzaju nieregularno ci danych ucz cych spowodowane przez próbkowanie i szumy pomiarowe mog zosta
odtworzone jako cecha podstawowa. funkcja, dopasowana w zadanych punktach ucz cych, jest dobrze odtwarzana tylko dla nich. Minimalne nawet odej cie od tych punktów powoduje znaczny wzrost bł du, co przejawia si jako bł d uogólniania. Na rysunku 3.2a przedstawiono graficzn ilustracj zjawiska przewymiarowania sieci, nosz cego cz sto nazw przeuczenia. Sie aproksymuj ca zawieraj ca 20 neuronów w warstwie ukrytej dopasowała swoje odpowiedzi do 40 zadanych punktów na zasadzie interpolacji, daj c praktycznie zerowy bł d uczenia. Minimalizacja bł du uczenia na zbyt małej w stosunku do liczby wag sieci liczbie danych ucz cych spowodowała dowolno warto ci pewnych wag, która przy zmianie punktów testuj cych wzgl dem ucz cych jest przyczyni znacznego odchylenia aktualnej warto ci y od spodziewanej warto ci d. Zmniejszenie liczby neuronów ukrytych do 5 przy nie zmienionej liczbie próbek ucz cych umo liwiło uzyskanie zarówno małego bł du uczenia, jak i dobrej zdolno ci uogólniania (rys. 3.2b). Dalsze zmniejszanie liczby neuronów ukrytych powoduje problemy z dopasowaniem odpowiedzi sieci do warto ci danych na etapie uczenia. Liczba wag sieci, przy zbyt małej liczbie neuronów ukrytych, jest za mała, aby spowodowa dobre dopasowanie. W efekcie sie jest niedouczona, charakteryzuj c si du ym bł dem uczenia. Ilustracj tego zjawiska przy 2 neuronach w warstwie ukrytej przedstawia rys. 3.2c.
Rysunek 3.2 Ilustracja wpływu liczby neuronów ukrytych na zdolno ci uogólniania sieci neuronowej: a) zbyt du a liczba neuronów; b) wła ciwa liczba neuronów; c) zbyt mała liczba neuronów Jedynym rozs dnym rozwi zaniem jest redukcja stopnia zło ono ci sieci, prowadz ca do zmniejszenia miary VCdim. Nie istnieje prosty zwi zek mi dzy architektur sieci wielowarstwowej a miar VCdim. Mo na poda jedynie oszacowanie górnego i dolnego zakresu tej miary [53, 140] w postaci
2
K N ≤ VC dim ≤ 2 N w (1 + log N n ) (3. 5) 2
przy czym [ ] oznacza cz całkowit liczby (entier), N - wymiar wektora wej ciowego, K - liczb neuronów w warstwie ukrytej, Nw - całkowit liczb wag w sieci, a Nn - całkowit liczb neuronów w sieci. Jak wida z tej zale no ci, dolna granica przedziału jest w przybli eniu równa liczbie wag ł cz cych warstw wej ciowi z warstw ukryt , górna granica natomiast jest wi ksza ni dwukrotna liczba wszystkich wag sieci. W zwi zku z niemo liwo ci dokładnego wyznaczenia miary VCdim przyjmuje si jej oszacowanie w postaci liczby wszystkich wag wyst puj cych w sieci neuronowej. Zagadnienie staje si jeszcze bardziej skomplikowane, je li zostanie dopuszczona sigmoidalna, ci gła funkcja aktywacji. W tym przypadku według pracy [53] za szacunek miary VCdim mo na przyj podwójn liczb wszystkich wag wyst puj cych w sieci. Szacunkowe przyj cie miary VCdim dla sieci umo liwia ocen minimalnego wymiaru zbioru ucz cego p. W wyniku wielu przeprowadzonych testów numerycznych stwierdzono dobre zdolno ci uogólniania sieci, je li liczba próbek ucz cych jest kilkakrotnie (minimum 10) wi ksza od miary VCdim [53].
Sam proces uczenia sieci musi by równie powi zany z cz ciowym sprawdzaniem uzyskanych zdolno ci uogólniania. W zwi zku z powy szym, jak to przedstawiono w rozdz. 1, ze zbioru ucz cego wydziela si podzbiór V, sprawdzaj cy stan nauczenia neuronów. Uczenie składa si z 2 faz: fazy ucz cej, w której s trenowane wagi, oraz fazy sprawdzaj cej, w której nast puje testowanie sieci na zbiorze V. Proces uczenia kontynuuje si dopóty, dopóki bł d testowania na danych ze zbioru V nie zacznie wzrasta , albo do chwili uzyskania minimum funkcji celu dla danych ucz cych. Przy rozwi zywaniu wi kszo ci bardziej zło onych problemów technicznych nie uzyskuje si dobrych rezultatów uogólniania przez manipulowanie tylko danymi ucz cymi. Jest równie konieczny aktywny wpływ u ytkownika na struktur sieci, maj cy na celu dopasowanie jej stopnia zło ono ci do rodzaju rozwi zywanego problemu. Zwykle, z wyj tkiem szczególnych przypadków, u ywa si sieci najprostszej, zawieraj cej jedn warstw ukryt . Dobór liczby neuronów w tej warstwie jest zagadnieniem kluczowym, decyduj cym o wła ciwo ciach uogólniaj cych sieci. S tu mo liwe dwa kierunki działa . W pierwszym zakłada si wst pn liczb neuronów ukrytych, opart b d to na teorii Kołmogorowa, b d na dotychczasowych do wiadczeniach (dobrym przybli eniem jest liczba neuronów b d ca redni geometryczn liczby wej i wyj sieci K ≈ NM ), a nast pnie przeprowadza si redukcj w trakcie uczenia sieci. Odwrotny kierunek działa polega na starcie z minimaln (zwykle zerow ) liczb neuronów ukrytych i stopniowym ich dodawaniu a do uzyskania dobrego stopnia wytrenowania sieci na zbiorze ucz cym. Proces dodawania neuronów jest tu zwykle poł czony ze sprawdzaniem zdolno ci uogólniania sieci na podzbiorze V.
3.2. Metody redukcji sieci Zadaniem redukcji sieci jest zmniejszenie liczby neuronów ukrytych i liczby powi za mi dzyneuronowych. Poniewa ka dy neuron ukryty reprezentuje hiperpłaszczyzn dziel c zbiór danych na klastery, uzyskuje si w ten sposób uproszczenie podziału i popraw zdolno ci uogólniania. Na rysunku 3.3 przedstawiono ilustracj wpływu redukcji sieci na ukształtowanie si granic podziału zbioru danych na klastery. Rysunek 3.3a przedstawia granice podziału ukształtowanego przez sie specjalnie przewymiarowan , przeuczon .
Rysunek 3.3 Ukształtowanie granicy podziału wzorców ucz cych nale cych do dwu klas: a) przy nadmiarowej liczbie neuronów; b) przy wła ciwie dobranej liczbie neuronów Sie o strukturze 2 - 50 - 10 - 1 (2 wej cia, 50 neuronów w pierwszej warstwie ukrytej, 10 neuronów w drugiej warstwie ukrytej i 1 neuron klasyfikuj cy na wyj ciu) została wytrenowana na 31 danych ucz cych nale cych do obu klas (zaznaczonych tu w postaci kółka, lub krzy yka) [121]. Wobec 671 wag, liczba 31 danych ucz cych jest dalece niewystarczaj ca. Problem z matematycznego punktu widzenia jest le postawiony. Wi kszo wag w procesie uczenia została przyj ta dowolnie, a pozostałe dopasowały si do nieistotnych szczegółów klasyfikacji. Chocia dane wyra nie sugeruj prawie liniowi separowalno problemu, ukształtowana granica podziału mi dzy klasami jest bardzo nieregularna, sugeruj c z góry złe uogólnianie na zbiorze danych testuj cych. Redukcja struktury sieci do 2 - 2 - 1 umo liwia uzyskanie całkowicie innego przebiegu granicy podziału mi dzy klasami. Tym razem jest ona zbli ona do gładkiej, w sposób wyra ny oddzielaj ca obie klasy. Pomimo niezerowego bł du klasyfikacji danych ucz cych jest to wynik sugeruj cy bardzo dobre oddzielenie dwu klas od siebie, w przyszło ci równie na próbkach testuj cych nie nale cych do zbioru ucz cego. Najprostsz , a jednocze nie najmniej efektywn i najbardziej pracochłonn metody redukcji wymiaru sieci jest przeprowadzenie wielu prób uczenia sieci o ró nej liczbie neuronów ukrytych i wybranie sieci najmniejszej, o zadowalaj cym wyniku uczenia. Decyzja co do wyboru ostatecznej postaci sieci mo e by podj ta dopiero po pełnym nauczeniu wielu ró nych struktur. Ponadto nie ma adnej pewno ci, e wybór jest optymalny ze wzgl du na ró ni wra liwo ka dej z trenowanych sieci na dobór warto ci pocz tkowych wag i
parametrów uczenia. Dlatego te podstaw redukcji sieci (pruning) stanowi algorytmy podejmuj ce decyzj co do obci cia wagi lub redukcji neuronów w trakcie procesu uczenia. Zwykłe, bezpo rednie metody obci cia wagi, polegaj ce na okresowym przypisaniu jej warto ci zerowej i podj ciu decyzji o jej ponownym wł czeniu w proces uczenia na podstawie obserwowanych zmian warto ci funkcji celu (je li zmiana warto ci funkcji jest zbyt du a, to nale y wł czy wag ponownie), s nie do przyj cia, ze wzgl du na du zło ono obliczeniow takiego procesu. Wi kszo stosowanych obecnie algorytmów mo e by zaklasyfikowana do dwu grup. W pierwszej grupie szacuje si wra liwo funkcji wzgl dem wagi lub neuronu. Wagi o najmniejszej wra liwo ci, wpływaj c najmniej na warto funkcji celu, s usuwane, a proces uczenia kontynuowany na tak zredukowanej sieci. W drugiej grupie metod modyfikuje si funkcj celu wprowadzaj c składniki kary za nieefektywn struktur . Najcz ciej do definicji funkcji celu wprowadza, si składniki faworyzuj ce małe amplitudy wag, zmuszaj c algorytm ucz cy w trakcie uczenia do ich ci głej redukcji. Ta metoda jest mniej efektywna od pierwszej ze wzgl du na to, e małe warto ci wag niekoniecznie musz oznacza mały ich wpływ na działanie sieci.
3.2.1. Metody wra liwo ciowe redukcji
Podstawowym parametrem, na podstawie którego podejmuje si tu decyzj co do eliminacji wagi (redukcji zło ono ci sieci), jest wra liwo funkcji celu na dane poł czenie synaptyczne. Miary wa no ci poł czenia jest zmiana warto ci funkcji celu przy usuni ciu danego poł czenia. Na etapie przedstawienia problemu, do okre lenia aktywno ci neuronu zostanie wprowadzony współczynnik αi dla ka dej wagi. W efekcie tego sygnał wyj ciowy i-tego neuronu okre la si na podstawie zmodyfikowanej zale no ci
Wijα j y j (3. 6)
yi = f j
w której Wij jest wagi od j-tego do i-tego neuronu, yi oraz yj oznaczaj sygnały wyj ciowe odpowiednich neuronów (dla pierwszej warstwy ukrytej yj jest równoznaczne z xj),a f( ) jest oznaczeniem funkcji aktywacji. Przy warto ci αj = 0 nie ma poł czenia Wij, przy αj = 1 wyst puje stan normalny pracy sieci. Według Mozera [96] wa no poł czenia synaptycznego opisanego wag Wij jest oceniana na podstawie wra liwo ci bezwzgl dnej funkcji celu E wzgl dem współczynnika αj
ρj = −
∂E (3. 7) ∂α j
dla warto ci αj = 1. Bior c pod uwag , e wra liwo jest liczona przy αj = 1, okre lenie ρj jest równoznaczne z wyznaczeniem warto ci składnika gradientu funkcji celu wzgl dem wagi Wij, okre lanym zwykł metod propagacji wstecznej. Waga Wij jest obcinana, je li warto ρj zmniejszy si poni ej okre lonego progu. Zwykle dla zapewnienia stabilno ci procesu warto współczynnika ρj w k-tym cyklu oblicza si w postaci skumulowanej, korzystaj c ze wzoru [96]
ρ j (k ) = 0,8 ρ j (k − 1) + 0,2
∂E (k ) (3. 8) ∂α j
Inna metoda redukcji wra liwo ci, zaproponowana w pracy [62], przyjmuje miar półwzgl dn wra liwo ci Sij, definiowan w postaci
S ij = −
W (W f ) − E (0 ) Wij , f − 0
Wij , f (3. 9)
przy czym: Wf oznacza wektor ko cowy wag sieci (po zako czeniu procesu uczenia), Wij,f - ko cow warto wagi Wij, 0 - jej zerow warto po usuni ciu z sieci, E(Wf) jest oznaczeniem warto ci funkcji celu po zako czeniu uczenia, a E(0) - warto ci funkcji celu po zako czeniu uczenia i usuni ciu wagi Wij . Zamiast dodatkowych oblicze wymaganych do wyznaczenia funkcji wra liwo ci Sij, stosuje si jej aproksymacj , uwzgl dniaj c wszystkie zmiany wagi w procesie uczenia. Przybli ona warto Sij jest okre lana ze wzoru [62]
S ij ≈ −
Wij , f ∂E ∆Wij (k ) (3. 10) Wij , f − Wij , 0 k =1 ∂Wij nc
w którym: nc oznacza liczb cykli ucz cych, ∆Wij (k) - zmian warto ci wagi Wij w k-tym cyklu, a Wij,0 - warto pocz tkow wagi. Składnik
∂E oznacza składow gradientu wyznaczan w ka dym cyklu ucz cym metod ∂Wij
propagacji wstecznej. Po przeprowadzeniu procesu uczenia sieci ka da waga Wij ma okre lon skumulowan warto wra liwo ci Sij . Poł czenia synaptyczne o najmniejszych warto ciach Sij s usuwane, a sie po redukcji podlega powtórnemu douczeniu. Nale y zauwa y , e w obu przedstawionych metodach redukcji jest mo liwe usuni cie neuronu z warstwy, je li wszystkie wagi dochodz ce lub odchodz ce od niego zostan wyeliminowane. Jeszcze lepsze oszacowanie wpływu wagi na działanie sieci zaproponował LeCun [77], uwzgl dniaj c przy tym drug pochodn funkcji celu. Metoda nosi nazw OBD (Optimal Brain Damage). Punktem wyj cia jest rozwini cie funkcji celu w szereg Taylora w otoczeniu aktualnego rozwi zania. Dla czytelno ci przekształce przyj to oznaczenie wag za pomoc jednego indeksu (wszystkie wagi sieci s traktowane jako składniki wektora W). Zmian warto ci funkcji celu, spowodowan perturbacj wag, mo na wyrazi wzorem
∆E =
g i ∆Wi + i
1 + 2
hii [∆Wii ] + 2
i
w którym: ∆Wi oznacza perturbacj
gi =
i≠ j
(
hij ∆Wi ∆W j + O ∆W
2
)
(3. 11)
wagi i-tej, gi - i-ty składnik wektora gradientu wzgl dem tej wagi,
∂2E ∂E , a hij s elementami hesjanu, to znaczy hij = . ∂Wi ∂Wi ∂W j
Poniewa obcinanie wag dotyczy sieci ju wytrenowanej, składowe gradientu s bliskie zeru i mong. by pomini te w rozwini ciu (zakłada si , e wytrenowanie oznacza osi gni cie minimum funkcji celu). Przy małych perturbacjach wag ostatni składnik O(||∆W||2) mo e by równie pomini ty. W efekcie zmiana warto ci funkcji celu mo e by w przybli eniu okre lona na podstawie składników macierzy hesjanu
∆E ≈
hii [∆Wii ] +
1 2
2
i≠ j
i
hij ∆Wi ∆W j
(3. 12)
Analiza zale no ci (3.12) ma za zadanie okre lenie zbioru tych wag, których usuni cie w najmniejszym stopniu zmieni warto ∆E. Zwykle, w przypadku nawet redniej wielko ci sieci neuronowych, liczba wag jest du a, a liczba elementów hij hesjanu równa
1 2 n (n - liczba wag) jest wielokrotnie wi ksza. Dla uproszczenia 2
zadania LeCun przyj ł w metodzie OBD zało enie, e przy dodatniej okre lono ci hesjanu macierz H jest diagonalnie dominuj ca, wobec czego wystarczy uwzgl dni jedynie składniki diagonalne hij, pomijaj c wszystkie pozostałe. W tej sytuacji miar wa no ci danej wagi pozostaje współczynnik Sij, zwany współczynnikiem asymetrii (saliency), który przy powrocie do tradycyjnych oznacze wagi symbolem Wij przyjmuje posta
S ij =
1 ∂2E 2 Wij (3. 13) 2 ∂Wij2
Obci ciu ulegaj wagi o najmniejszej warto ci współczynnika Sij. Oddzielnym problemem, który wymaga rozwi zania, jest okre lenie elementów diagonalnych hesjanu, wchodz cych w skład definicji współczynnika Sij. Przy wprowadzaniu zale no ci przyj to, e sygnał wyj ciowy yi neuronu w dowolnej k-tej warstwie wyra a si wzorem
( )
yi(k ) = f u i(k ) = f
Wij(k ) y (jk −1) (3. 14) j
w którym dla pierwszej warstwy ukrytej sygnały dla ka dej warstwy obowi zuje
∂2E
[
∂ Wij(k )
=
yj(0)=xj.
Nale y zauwa y przy tym podstawow zale no , e
∂2E
] [∂u ( ) ] 2
k
i
2
[y ( ) ] k −1
i
2
(3. 15)
Do wyznaczenia drugiej pochodnej funkcji celu wzgl dem sygnałów sumacyjnych ui(k) nale y zastosowa metod propagacji wstecznej drugich pochodnych dla poszczególnych warstw neuronów. Dla warstwy wyj ciowej, przy zało eniu kwadratowej postaci funkcji celu i jednej pary ucz cej,
E=
1 2
M
( f (u ( ) ) − d )
2
2
i =1
i
otrzymuje si :
i
∂E = f u i(2 ) − d i f ′ u i(2 ) (3. 16) ∂u i(2 )
( ( )
∂2E
[ ]
∂ u i(2 ) przy czym
f ′( x ) =
2
) ( )
)[ ( )]
( )( ( )
= f ′′ u i(2 ) f u i(2 ) − d i f ′ u i(2 )
2
(3. 17)
∂f ∂2 f , f ′′( x ) = 2 .Ograniczaj c si dalej tylko do jednej warstwy ukrytej i stosuj c ∂x ∂x
podobne post powanie otrzymuje si :
∂E ∂f (1) = ∂u i ∂u i(1) ∂2E
[ ]
∂ u i(1) przy czym
∂E = ∂f ui(1)
( )
M j =1
2
M j =1
W ji(2 )
∂E ∂f ∂E (3. 18) (2 ) = (1) ∂u j ∂u i ∂f u i(1)
( )
( ) ∂(E( ) ) + [ f ′(u ( ) )] ∂f u
= f ′′ u i(1)
1
i
1
i
W ji(2 )
2
M j =1
W ji2
∂2E
[ ]
∂ u (j2 )
2
(3. 19)
∂E . Wzór (3.19) jest odpowiednikiem propagacji wstecznej dla drugiej ∂u (j2 )
pochodnej funkcji celu. Przy okre laniu odpowiedniej składowej hesjanu obliczenia rozpoczyna si od warstwy wyj ciowej (zale no (3.17)), a nast pnie przesuwa w kierunku wej cia sieci, korzystaj c z zale no ci (3.18) i (3.19). Zasad t mo na rozszerzy na wi kszy liczb warstw ukrytych zmieniaj c odpowiednie indeksy we wzorach. Wzory powy sze niewiele si zmieniaj , je li waga Wij jest przypisana wielu ró nym poł czeniom synaptycznym (shared weight). W takim przypadku, przy oznaczeniu przez hkk odpowiedniego składnika diagonalnego hesjanu, otrzymuje si
hkk = i, j
∂2E (3. 20) ∂Wij2
w którym sumowanie (i, j) odbywa si po wszystkich poł czeniach synaptycznych, którym jest przypisana warto wagi Wij. Zało enie upraszczaj ce poczynione na wst pie, które ograniczało liczb próbek ucz cych do jednej, nie ma istotnego wpływu na wynik ko cowy. W przypadku istnienia p próbek ucz cych nale y powy sze post powanie powtórzy p razy, a wynik zsumowa . Procedur OBD redukcji sieci mo na ostatecznie przedstawi w nast puj cej postaci: 1. Selekcja wst pna struktury sieci neuronowej (wst pny wybór liczby neuronów w poszczególnych warstwach). 2. Przeprowadzenie programu uczenia tak dobranej sieci przy zastosowaniu dowolnej metody gradientowej uczenia.
∂2E 3. Okre lenie elementów diagonalnych hesjanu hkk = odpowiadaj cych ka dej wadze Wij sieci. ∂Wij2 4. 5. 6.
Obliczenie parametru
S ij =
1 hkk Wij2 okre laj cego znaczenie danego poł czenia synaptycznego dla 2
działania sieci. Posortowanie wag według przypisanych im parametrów Sij i obci cie tych, których warto ci s najmniejsze. Powrót do punktu 2 i kilkakrotne powtórzenie procesu a do pozbycia si wag o najmniejszym wpływie na warto funkcji celu.
Metoda OBD jest uwa ana za jedn z najlepszych metod redukcji sieci spo ród metod wra liwo ciowych. Przy jej zastosowaniu uzyskuje si bardzo dobre wła ciwo ci uogólniaj ce sieci, niewiele odbiegaj ce od bł du uczenia. Szczególnie dobre wyniki uzyskuje si dzi ki powtórzeniu douczenia sieci po obci ciu najmniej znacz cych wag. Na rysunku 3.4 przedstawiono przykładowe wyniki zastosowania procedury OBD dla sieci rozpoznaj cej r cznie pisane kody pocztowe [77]. Sie miała 105 poł cze synaptycznych, którym zostało przypisane 2578 ró nych warto ci wag (cz wag była wspólna). Rysunek 3.4a przedstawia wykres bł dów uczenia w funkcji zachowanych (nieobci tych) wag dla danych ucz cych, a rys. 3.4b - dla danych testuj cych. Ró nice w poziomie bł dów w obu przypadkach s znikome. Jest natomiast widoczna istotna ró nica w przebiegu krzywych po powtórnym douczeniu sieci przy obci ciu najmniej znacz cych wag.
Rysunek 3.4 Wykres bł dów: a) uczenia; b) testowanie sieci neuronowej w funkcji liczby neuronów przy zastosowaniu metody OBD (krzywa górna odpowiada obci ciu wag bez douczenia sieci, krzywa dolna - z douczaniem sieci po obci ciu wag) Przy zastosowaniu douczenia sieci charakterystyka bł du zarówno ucz cego, jak i testuj cego jest prawie płaska i w minimalnym stopniu zale y od liczby zachowanych wag. Przyjmuj c w ko cowej architekturze sieci minimaln liczb wag, dla których bł d zarówno uczenia, jak i testowania po douczeniu jest dostatecznie mały (w przypadku rys. 3.4 jest to 800 wag), uzyskuje si realn redukcj liczby wag sieci do 1/3 liczby pocz tkowej, bez pogorszenia jako ci klasyfikacji. Dodatkow zalet takiego rozwi zania jest zmniejszenie liczby działa matematycznych wykonywanych przez sie na etapie testowania, prowadz ce do redukcji czasu oblicze . Ulepszeniem metody OBD jest opracowana 3 lata pó niej przez Hassibiego i Storka [40] metoda OBS (Optimal Brain Surgeon). Punktem wyj cia w tej metodzie, podobnie jak w OBD, jest rozwini cie funkcji celu w szereg Taylora i pomini cie składowych pierwszego rz du. Przy zastosowaniu zapisu wektorowego wzór (3.12) mo e by zapisany w postaci
∆E ≈
1 ∆W T H∆W (3. 21) 2
przy czym H jest hesjanem, a W - wektorem wag. Obci cie wagi i-tej, Wi, jest równoznaczne z wykonaniem subkroku ucz cego, w którym zakłada si ∆Wi+Wi=0 lub w zapisie wektorowym
eiT ∆W + Wi = 0 (3. 22) przy czym ei oznacza wektor jednostkowy, z jedynki na i-tej pozycji, ei = [0, . . . , 0,1, 0, . . . , O]T. Problem sprowadza si do wyselekcjonowania takiej wagi, której obci cie w najmniejszym stopniu zmieni warto ∆E. W zapisie matematycznym oznacza to
min min i
∆W
1 ∆W T H∆W 2
(3. 23)
przy ograniczeniu
eiT ∆W + Wi = 0 (3. 24) Stosuj c teori optymalizacji z ograniczeniami, autorzy pracy [40] znale li rozwi zanie problemu (3.23) i (3.24) w postaci wska nika Li
Li =
1 Wi 2 (3. 25) 2 2 H −1 ii
[ ]
w którym [H-1]ii oznacza i-ty element diagonalny odwrotno ci hesjanu obliczanego dla wszystkich wag sieci. Obci ciu ulega waga o najmniejszej warto ci Li. Dodatkowym rezultatem rozwi zania problemu optymalizacyjnego jest modyfikacja wszystkich pozostałych wag sieci. Jest ona okre lona zale no ci
∆W =
Wi H −1
[ ]
H −1ei (3. 26)
ii
Ostatnia modyfikacja wag nie wymaga przeprowadzenia adnych dodatkowych kroków ucz cych. Jest korekcji wag dokonywan na podstawie wielko ci wcze niej okre lonych. Zale no (3.25) jest uogólnieniem wzoru (3.13) LeCuna. Przy zało eniu, e w macierzy hesjanu uwzgl dnia si tylko elementy diagonalne, obie zale no ci s identyczne. Procedur OBS obci cia wag mo na przedstawi nast puj co: 1.
Przeprowadzenie procesu uczenia wst pnie wyselekcjonowanej struktury sieci neuronowej a uzyskania minimum funkcji celu.
2.
Obliczenie macierzy odwrotnej hesjanu H-1.
3.
Wyselekcjonowanie wagi Wi, która ma najmniejsz warto współczynnika
Li =
do
1 Wi 2 . Je li 2 H −1 ii
[ ]
zmiana warto ci funkcji celu, towarzysz ca obci ciu wagi, jest du o mniejsza ni E, to waga ulega obci ciu i nale y przej do punktu 4, w przeciwnym przypadku do punktu 5. 4.
Modyfikacja osi gni tych warto ci wag po obci ciu i-tej wagi według zale no ci (3.26) i przej cie do punktu 2.
5.
Koniec procesu redukcji.
Podstawow ró nic metody OBS w stosunku do OBD, oprócz innej definicji współczynnika asymetrii, jest korekcja wag sieci po wyeliminowaniu wagi o najmniejszym znaczeniu. Znacznie wi ksza jest równie zło ono obliczeniowa metody OBS. Obliczenie elementów diagonalnych hesjanu jest zast pione okre leniem pełnej macierzy i jej odwrotno ci. Wprawdzie ten etap mo na dalece upro ci korzystaj c z aproksymowanej postaci macierzy odwrotnej hesjanu, oferowanej przez metod zmiennej metryki, ale wi e si to z pogorszeniem dokładno ci oblicze i gorsz jako ci ostatecznego rozwi zania. Na rysunku 3.5 przedstawiono pogl dowo mechanizm działania i porównanie osi gni tego wyniku dla obu metod OBD i OBS na tle najprostszej metody obci cia wag, eliminuj cej wag o najmniejszej warto ci absolutnej. Porównanie przeprowadzono dla sieci o 2 wagach i skrajnie dobranej funkcji celu, stanowi cej rodzaj rynny. W wyniku uczenia sieci uzyskano minimum funkcji celu, a optymalny wektor wag został oznaczony symbolem W*. Stosuj c eliminacj wag według najmniejszej ich warto ci, eliminuje si wag W2, pozostawiaj c jedynie wag W1, przy której warto funkcji celu wzrasta znacznie (punkt na krzywej w przeci ciu si z osi W2 = 0, a rzutowanie oznaczono jako mag). Przy zastosowaniu metody OBD usuwa si oczywi cie wag W1, gdy w tej osi warto funkcji zmienia si najmniej. Przed powtórnym douczeniem sieci warto funkcji celu wzrosła równie , cho du o mniej ni w przypadku poprzednim, jak to przedstawiono na rysunku (rzutowanie OBD). Zastosowanie metody OBS usuwa równie wag W1, ale z jednoczesn korekcj wag zapewniaj c osi gni cie minimum funkcji celu (punkt odpowiadaj cy rzutowaniu OBS).
Rysunek 3.5 Porównanie działania 3 metod redukcji sieci neuronowej: przez obci cie najmniejszych wag, metody OBD i metody OBS Rysunek ilustruj cy działanie poszczególnych metod wyja nia jednocze nie nazw metody. OBD w potocznym znaczeniu oznacza optymalne zniszczenie mózgu, czyli osi gni te wcze niej dopasowanie wag. W wyniku eliminacji wag, bez powtórnego douczenia, warto funkcji celu wzrasta, rujnuj c cz ciowo to, co zostało wcze niej osi gni te. Dla kontrastu metoda OBS działa precyzyjnie; odcina to co niepotrzebne koryguj c jednocze nie wagi w taki sposób, e pomimo zmniejszenia liczby wag osi gni te wcze niej minimum zostaje zachowane (działanie analogiczne do działania chirurga). Cen , jak płaci si za wi ksz skuteczno metody, jest zwi kszenie zło ono ci oblicze , a wi c wydłu enie czasu oblicze i wi ksze wymagania co do pami ci komputera.
3.2.2. Metody funkcji kary W odró nieniu od metod z podrozdziału poprzedniego, gdzie obci cie wag nast powało w wyniku okre lenia wra liwo ci funkcji celu na brak danej wagi, w metodach funkcji kary modyfikuje si sam funkcj celu w taki sposób, aby proces uczenia samoczynnie eliminował małe, a wi c najmniej potrzebne wagi. Eliminacja nast puje przez stopniowe zmniejszanie warto ci wag, a do osi gni cia pewnego progu, poni ej którego przyjmuje si warto wagi równ zeru. Najprostsz metod modyfikacji funkcji celu jest dodanie do niej składnika kary za du e warto ci wagi
E (W ) = E (0 ) (W ) + γ
Wij2 (3. 27) i, j
We wzorze tym E(0)(W) oznacza standardow definicj funkcji celu przyj t na przykład w postaci kwadratowej
E (W ) =
1 2
(y ( ) − d ( ) ) k
i
k
i
2
, a γ - współczynnik kary za osi gni cie du ych warto ci przez wagi. Uczenie
i ,k
składa si wówczas w ka dym cyklu z dwu etapów: minimalizacji warto ci funkcji E(0)(W) standardow metod propagacji wstecznej i korekcji warto ci wag, wynikaj cej z czynnika modyfikuj cego. Je li przez Wij(0) oznaczymy warto wagi Wij po etapie pierwszym, to po korekcji waga ta zostanie zmodyfikowana według metody gradientowej najwi kszego spadku zgodnie ze wzorem
Wij = Wij(0 ) (1 − ηγ ) (3. 28) w którym η oznacza stał uczenia. Tak zdefiniowana funkcja kary wymusza zmniejszenie wszystkich warto ci wag, nawet wówczas, gdy ze wzgl du na specyfik problemu pewne wagi powinny osi ga du e warto ci. Poziom warto ci, przy którym eliminuje si dani wag , musi by tu wyj tkowo starannie dobrany na podstawie wielu eksperymentów, wskazuj cych, przy jakim progu obci cia proces uczenia sieci jest najmniej zakłócany. Lepsze efekty, nie powoduj ce obni enia poziomu warto ci wszystkich wag, mo n uzyska modyfikuj c definicj funkcji celu do postaci [46, 105]
1 E (W ) = E (W ) + γ 2
Wij2
(0 )
i, j
1 + Wij2
(3. 29)
W takim przypadku uzyskuje si odpowiednik zale no ci (3.28) w postaci
Wij = Wij(0 ) 1 − ηγ
1
[1 + W ] (0 ) 2
2
(3. 30)
ij
Przy małych warto ciach wag Wij (Wij «1) oba wzory (3.28) i (3.30) s w przybli eniu równowa ne. Przy du ych warto ciach wag (Wij » 1) czynnik modyfikuj cy wagi jest pomijalnie mały i modyfikacja funkcji, praktycznie bior c, ma niewielki wpływ na dobór wag. Podobn metod mo na zastosowa do usuwania niepotrzebnych neuronów w warstwie. Za takie uwa a si neurony, których sygnał wyj ciowy jest bliski zeru. Do eliminacji liczby neuronów stosuje si modyfikacj funkcji celu w postaci
1 E (W ) = E (W ) + γ 2
Wij2
(0 )
1+
i, j
(3. 31) 2 ik
W k
Taka modyfikacja jest uogólnieniem zale no ci (3.29). Minimalizacja tej funkcji redukuje nie tylko powi zania mi dzyneuronowe, ale prowadzi równie do eliminacji tych neuronów, dla których
Wik jest bliska zeru. Jak k
łatwo mo na udowodni , reguła korekcyjna wagi mo e by wyra ona wzorem
Wij = Wij(0 ) 1 − ηγ
1+ 2
(W ( ) )
2
2
k≠ j
ij
(W ( ) )
1+
0
2
(3. 32)
2
ik
k
Przy małych warto ciach wag Wik prowadz cych do i-tego neuronu nast puje dalsze zmniejszenie ich warto ci, co powoduje redukcj sygnału wyj ciowego tego neuronu do zera i w efekcie eliminacj danego neuronu z sieci. Przy du ych warto ciach wag prowadz cych do i-tego neuronu cz korekcyjna jest pomijana i w minimalnym stopniu wpływa na redukcj wag. Inny sposób redukcji neuronów zakłada tak modyfikacj funkcji celu, która eliminuje neurony ukryte o najmniejszej zmianie aktywno ci w procesie uczenia. Przyjmuje si tu zało enie, e je li sygnał wyj ciowy okre lonego neuronu dla wszystkich wzorców ucz cych jest niezmienny (warto sygnału wyj ciowego stale na poziomie zera lub 1), to jego obecno w sieci jest niepotrzebna. Przy du ej aktywno ci neuronu przyjmuje si , e jego działalno wnosi istotn informacj . Chauvin [11] zaproponował nast puj c modyfikacj funkcji celu:
E (W ) = E (0 ) (W ) + µ
K
( )
p
e ∆2i , j (3. 33)
i = I j =1
w której ∆ij oznacza zmian warto ci sygnału wyj ciowego neuronu i-tego przy j-tej próbie ucz cej, a e(∆ij2) stanowi czynnik korekcyjny funkcji celu zale ny od aktywno ci wszystkich K neuronów ukrytych i (i = 1, 2, . . . , K) dla wszystkich j (j = 1, 2, . . . , p) próbek ucz cych. Współczynnik µ jest wag ustalaj c wzgl dny wpływ członu korekcyjnego na warto funkcji celu. Posta funkcji korekcyjnej dobiera si tak, aby zmiana funkcji celu była zale na od aktywno ci neuronu ukrytego w taki sposób, e przy du ej warto ci jego aktywno ci (cz stych zmianach warto ci yi) zmiana ∆E jest mała, a przy małej aktywno ci du a. Matematycznie mo na to osi gn dobieraj c posta funkcji e spełniaj c relacj
( )
∂e ∆2i 1 e= = 2 ∂∆ i 1 + ∆2i
(
)
n
(3. 34)
Wska nik n umo liwia sterowanie procesem karania za mał aktywno . Warto n = 0 oznacza liniow funkcj korekcyjni (e = ∆i2) i równe kary za du i mał aktywno neuronu. Przy n = 1 funkcja korekcyjna ma posta logarytmiczni, e = ln(1 + ∆i2 ). Mała aktywno neuronów jest karana mocniej ni du a. Podobnie jest przy n = 2,
e=
1 ,gdzie funkcja kary jest bardziej stroma i mała aktywno szybciej powoduje eliminacj neuronu 1 + ∆2i
z sieci. Obie metody redukcji sieci, opieraj ce si zarówno na zale no ciach wra liwo ciowych, jak i modyfikacjach funkcji celu, prowadzi do zmniejszenia liczby wag i neuronów w sieci, zmniejszaj c w ten sposób stopie jej zło ono ci i poprawiaj c relacj mi dzy liczby próbek ucz cych a miar VCdim. W efekcie wzrasta zdolno uogólniania sieci. Przyjmuje si , e metody wra liwo ciowe, zwłaszcza wykorzystuj ce drug pochodn funkcji celu, s doskonalszym narz dziem redukcji sieci, gdy o eliminacji decyduje nie warto wagi, ale jej stopie wa no ci dla danej sieci, wyra ony miar współczynnika asymetrii. Niemniej jednak nawet w tym przypadku małe warto ci wag s bardziej podatne na eliminacj . Wynika to z samej idei metod OBD i OBS, w których na wst pnym etapie przyjmuje si zało enie o dostatecznie małych zmianach warto ci wag, a wi c po rednio zało enie, e eliminacja w pierwszej kolejno ci b dzie dotyczy wag małych. 3.2.3. Metoda rozkładu SVD Inn koncepcj redukcji stopnia zło ono ci sieci przez eliminacj nadmiarowej liczby neuronów ukrytych jest zastosowanie rozkładu według warto ci osobliwych (SVD) (120). Algorytm ten ma zastosowanie do sieci o
liniowych neuronach wyj ciowych (typowa sie aproksymuj ca funkcj wielu zmiennych). Dla uproszczenia rozwa a zało ono, e sie zawiera tylko jedn warstw ukryt o K neuronach i dowolnym typie sigmoidalnej funkcji aktywacji. Bez ograniczenia ogólno ci rozwa a przyj to istnienie tylko jednego neuronu wyj ciowego. Sygnały wyj ciowe sieci mo na wyrazi jako liniow funkcj sygnałów vi warstwy ukrytej. Przez W(2)
[
W (2 ) = W0(2 ) ,W1(2 ) ,
oznaczono wektor wag neuronu wyj ciowego,
]
,WK(2 ) , przy czym dla wygody zapisu T
składnik polaryzacji został wł czony jako element wektora W(2). Zakładaj c, e s znane wagi neuronów ukrytych Wij(1) przy pobudzaniu sieci z zastosowaniem kolejnych wektorów wej ciowych x(k) dla k = 1, 2, . . . ,p (p - liczba wzorców), na wyj ciu neuronów ukrytych otrzymuje si odpowiedni sekwencj p wektorów
[
]
v (k ) = v1(k ) , v2(k ) ,
, vK(k ) . Wektory te mog by zapisane w postaci macierzy V 1 v1(1) 1 v1(2 ) V= ... ... 1 v1( p )
v 2(1) v 2(2 ) ... v 2( p )
... v K(1) ... v K(2 ) (3. 35) ... ... ... v K( p )
o liczbie wierszy równej liczbie wzorców p i liczbie kolumn okre lonej liczb neuronów w warstwie ukrytej powi kszonej o jeden (jednostkowy sygnał polaryzacji). Równanie okre laj ce wektor wyj ciowy sieci
[
y = y (1) , y (2 ) ,
, y( p)
]
T
mo na zapisa w postaci
y = VW (2 ) (3. 36)
Uczenie sieci polega na takim doborze wektora W(2), aby zminimalizowa bł d uczenia E =||d-V W(2)||, przy czym d jest wektorem warto ci danych, odpowiadaj cych kolejnym wektorom wej ciowym xk (k = 1, 2, . . . , p). Wobec liniowo ci neuronów wyj ciowych jest to zadanie typu liniowego, którego rozwi zanie mo na uzyska stosuj c rozkład SVD. W metodzie tej macierz prostok tn V rozkłada si według warto ci osobliwych [37]
V = PSQ T (3. 37) przy czym S jest macierz subdiagonaln o wymiarach p x K, składaj c si z elementów b d dodatnich, b d równych zeru, a P i Q s macierzami ortogonalnymi o wymiarach odpowiednio p x p oraz K x K. Bior c pod uwag , e w praktyce zawsze p » K, struktura macierzy S dostarcza bardzo istotnych informacji o nadmiarowo ci neuronów ukrytych. Macierz S ma zwykle posta
S1 S=
S2
(3. 38)
SK w której maksimum K elementów jest ró nych od zera. Je li rozkład warto ci tych elementów niezerowych jest taki, e stosunek najwi kszej warto ci do najmniejszej jest niezbyt du y, wiadczy to o tym, e nie wyst puje degeneracja kolumnowa macierzy i ka dy neuron reprezentowany przez kolumn ma istotny wpływ na działanie sieci. Je li natomiast wyst puje du y rozrzut warto ci osobliwych, oznacza to, e neurony odpowiadaj ce minimalnym warto ciom osobliwym maj znikomy wpływ na sygnały wyj ciowe sieci i bez istotnej utraty informacji mog by pomini te. Warto ci osobliwe w tym przypadku odgrywaj rol współczynnika asymetrii wyst puj cego w metodach OBD i OBS. Po wyeliminowaniu z warstwy neuronów najmniej znacz cych nale y odpowiednio zmodyfikowa macierze rozkładu osobliwego. Macierz zredukowana Sr. zawiera tylko kolumny odpowiadaj ce pozostawionym Kr. neuronom ukrytym i tyle wierszy, ile kolumn. W macierzy zredukowanej Pr pozostawia si tylko te kolumny, które odpowiadaj pozostawionym kolumnom macierzy S. W macierzy zredukowanej Qr eliminuje si kolumny i wiersze odpowiadaj ce obci tym kolumnom macierzy S. Po takiej redukcji równaniu (3.36) odpowiada równanie
Pr S r QrT Wr(2 ) = d (3. 39) w którym Wr(2) oznacza wektor wag neuronu wyj ciowego przy zredukowanym wymiarze warstwy (2 )
[
(2 )
ukrytej, Wr = W1 zale no ci (3.39)
,W2(2 ) ,
]
,WKr(2 ) . Poszukiwany wektor wag Wr(2) otrzymuje si T
bezpo rednio z
Wr(2 ) = Qr S r−1 PrT d (3. 40) Metoda rozkładu SVD zastosowana do neuronu wyj ciowego umo liwiła jednoczesne wykrycie nadmiarowych neuronów ukrytych oraz okre lenie warto ci optymalizowanych wag wyj ciowych sieci. Algorytm SVD zastosowany do uczenia całej sieci składa si z 2 nawzajem przeplataj cych si faz. •
Faza pierwsza, w której stosuj c algorytm propagacji wstecznej przy ustalonej liczbie neuronów ukrytych dobiera si metod optymalizacyjn warto ci ich wag. Dobór wag nast puje jedni z metod optymalizacyjnych przedstawionych w rozdz. 2, np. metod gradientów sprz onych lub zmiennej metryki. Po ustaleniu warto ci wag neuronów ukrytych okre la si ci g wektorów v(k) odpowiadaj cy kolejnym wektorom wej ciowym x(k). Ci g ten tworzy macierz V.
•
Faza druga, w której stosuj c rozkład SVD macierzy V dobiera si wagi neuronów wyj ciowych (wzór (3.40)) z jednoczesn redukcj nadmiarowej liczby neuronów ukrytych, jak to przedstawiono wy ej. Po ustaleniu warto ci wag neuronów wyj ciowych przechodzi si do fazy pierwszej, kontynuuj c obliczenia a do uzyskania stanu, w którym warto ci wag uzyskane w kolejnych fazach obliczeniowych przyjmuj ustalone warto ci. Przy stosowaniu tego algorytmu trzeba zdawa sobie spraw z pewnych ogranicze metody. O redukcji neuronów ukrytych decyduje ich aktywno , a wi c odmienne reagowanie na ró ne wymuszenia sieci. Dwa neurony o skorelowanym działaniu charakteryzuje si tym, e działalno obu mo e przej jeden z nich. Rozkład SVD wykrywa t sytuacj jako degeneracj kolumnowi, odznaczaj c si tym, e jedna z warto ci osobliwych macierzy V przyjmuje warto bliski zeru. O redukcji neuronu decyduje stosunek najwi kszej warto ci osobliwej do najmniejszej. W teorii równa liniowych stosunek ten jest nazywany współczynnikiem uwarunkowania macierzy
ξ=
max{s i } . Przy losowym doborze warto ci wst pnych wag sieci macierz V jest min{S i }
zwykle le uwarunkowana z natury, przy czym na złe uwarunkowanie składaj si w ró nym stopniu dane ucz ce, warto ci wst pne wag i niewła ciwy dobór liczby neuronów algorytmu. Dlatego zwłaszcza w pierwszych etapach uczenia sieci granica obci cia neuronów ukrytych powinna by ustawiona bardzo wysoko, aby nie pozby si przedwcze nie zbyt du ej liczby neuronów ukrytych. Dopiero w miar upływu czasu uczenia, gdy warunki inicjalizacji sieci maj coraz mniejszy wpływ na uwarunkowanie macierzy V, nale y stopniowo zmniejsza granic , powy ej której nast puje redukcja neuronu. Oddzielnym problemem jest uwzgl dnienie wi kszej liczby neuronów wyj ciowych sieci. W tym przypadku post puje si podobnie, powtarzaj c proces rozkładu SVD dla ka dego neuronu wyj ciowego oddzielnie. Tym razem jednak decyzja o redukcji neuronu ukrytego musi by wynikiem korelacji tego procesu dla wszystkich neuronów wyj ciowych. Eliminacja neuronu ukrytego nast puje tylko wówczas, gdy dany neuron jest redundancyjny dla ka dego sygnału wej ciowego. W przeciwnym przypadku, gdy chocia dla jednego neuronu wyj ciowego ma on istotne znaczenie, nale y go pozostawi .
3.3. Algorytm kaskadowej korelacji Fahlmana Algorytmy redukcji przedstawione w poprzednim podrozdziale zakładały na wst pie nadmiarow architektur sieci, która w procesie uczenia lub po jego zako czeniu ulegała uproszczeniu b d przez obci cie najmniej znacz cych wag, b d przez eliminacj niepotrzebnych neuronów ukrytych. Odmiennym podej ciem jest metoda uczenia, która zakłada na wst pie mały liczb neuronów ukrytych (cz sto zerow ), która w miar post pów procesu uczenia podlega stopniowemu zwi kszaniu. Spo ród wielu istniej cych metod rozbudowuj cych sie neuronowi mo na wyró ni mi dzy innymi algorytm Mezarda-Nadala [46], algorytm Marchanda [46], czy metod Li-Tuftsa [79], w których rzutuje si ortogonalnie wszystkie próbki ucz ce w przestrze jednowymiarowi, a nast pnie separuje si hiperpłaszczyzn w taki sposób, aby uzyska odseparowanie danej klasy od pozostałych. Powtarzaj c wielokrotnie procedur na pozostałej nie odseparowanej klasie próbek, uzyskuje si w ko cu pełni separacj . Minimalizacj liczby hiperpłaszczyzn (neuronów ukrytych) w metodzie Li-Tuftsa [79] uzyskuje si przez zastosowanie algebry Boole'a, w szczególno ci mapy Karnaugha. Wymienione wy ej metody s stosunkowo mało efektywne przy du ych wymiarach wektora wej ciowego i nie stanow odpowiedniej alternatywy dla metod redukcyjnych sieci. Metod , która jest powa nym konkurentem metod redukcyjnych, jest algorytm kaskadowej korelacji Fahlmana. Jego istotn cech jest kaskadowa architektura sieci neuronowej, w której poł czenia neuronów s w postaci rozwijaj cej si kaskady poł cze wagowych (rys. 3.6). Ka dy, kolejno dokładany neuron ma poł czenia z w złami wej ciowymi i wszystkimi ju istniej cymi neuronami ukrytymi. Wyj cia wszystkich neuronów ukrytych i w zły wej ciowe sieci zasilaj bezpo rednio neurony wyj ciowe.
Drugi człon nazwy algorytmu wi e si z metod doboru wag ka dego dodawanego neuronu ukrytego, polegaj c na maksymalizacji korelacji mi dzy jego sygnałem wyj ciowym a residuum bł du odwzorowania przez sie sygnałów danych di. Architektura i sposób uczenia sieci Fahlmana powstały jako odpowied na dwa podstawowe wyzwania, którym nie jest w stanie sprosta typowa architektura sieci wielowarstwowej. Jednym z nich jest problem „poruszaj cego si celu", drugim efekt „stada".
Rysunek 3.6 Ogólna posta sieci kaskadowej korelacji Fahlmana Ka dy neuron w sieci stara si tak dopasowa warto ci swoich wag, aby by u ytecznym ze wzgl du na odwzorowanie, jakie spełnia sie . Korelacja zmian wag poszczególnych neuronów w tradycyjnej sieci wielowarstwowej pozostawia wiele do yczenia. Zmiany te zachodzi równolegle bez wzajemnej koordynacji na podstawie ci gle zmieniaj cych si wzorców ucz cych. Ka dy neuron ukryty widzi tylko strz p informacji jemu przeznaczony: przetworzony fragment informacji wej ciowej sieci i sygnał bł du propagacji wstecznej. Zadanie neuronu, polegaj ce na minimalizacji warto ci tego bł du, jest bardzo trudne ze wzgl du na ci gle zmieniaj cy si cel. W efekcie, zamiast szybkiej zmiany wag zmierzaj cej w jednym kierunku, obserwuje si nieskoordynowane ich zmiany wokół poruszaj cego si celu i wydłu aj cy si czas adaptacji. Im wi ksza jest liczba neuronów ukrytych, tym wi ksze jest zamieszanie w tym nieustannym wy cigu i gorszy jako ciowo wynik. Drugi z wymienionych problemów to efekt „stada" . Zakłada si , e s do spełnienia dwa zadania A i B, które mo e wykona ka dy neuron ukryty sieci. Poniewa nie ma komunikacji mi dzy neuronami, ka dy z neuronów podejmuje samodzielnie decyzj co do wyboru zadania. Je li bł d generowany przez zadanie A jest du o wi kszy ni bł d generowany przez zadanie B, to zdominuje on zachowania neuronów, które skoncentruje si jednocze nie na zadaniu A, pomijaj c B. Dopiero po rozwi zaniu zadania A neurony dostrzegaj zadanie B i rozpoczn prób jego rozwi zania, próbuj c, znowu wszystkie jednocze nie, dopasowa odpowiednio swoje wagi. Ale wtedy mo e pojawi si powtórnie problem A. W wi kszo ci przypadków na ko cu procesu „stado" neuronów rozdzieli si w ten sposób, e jedna cz podejmie zadanie A, druga - zadanie B. Zadanie zostanie wykonane, ale w sposób dalece nieoptymalny.
Rysunek 3.7 Etapy budowania sieci Fahlmana przez dodawanie kolejnych neuronów ukrytych Jedn z metod przeciwdziałania efektom „stada" i „poruszaj cego si celu" jest przypisanie na ka dym etapie uczenia aktywnej roli tylko niektórym neuronom i poł czeniom wagowym. Pozostałe wagi nie podlegaj uczeniu. Algorytm kaskadowej korelacji Fahlmana realizuje t strategi w ten sposób, e na ka dym etapie uczenia tylko jeden neuron ukryty podlega zmianom. Etapy tworzenia struktury kaskadowej przez dodawanie kolejnych neuronów ukrytych przedstawia rys. 3.7. Przy jej prezentacji u yto oryginalnego sposobu przedstawienia poł cze mi dzyneuronowych, zaproponowanego przez Fahlmana [31]. W liniach pionowych nast puje sumowanie wszystkich przychodz cych sygnałów, reprezentowanych przez linie poziome. Wagi poł cze oznaczone kwadratem po jednorazowym dobraniu pozostaje zamro one. Poł czenia wagowe oznaczone znakiem x podlegaj ci głemu uczeniu. Na etapie pocz tkowym zakłada si sie zawieraj c jedynie wej cia i neurony wyj ciowe. Liczba wej i wyj zale y jedynie od specyfiki rozwi zywanego problemu i nie podlega modyfikacji. Ka de wej cie, jak przedstawiono to na rys 3.7, jest poł czone z ka dym wyj ciem sieci za pomocy wagi podlegaj cej uczeniu. Neurony wyj ciowe mog by liniowe b d nieliniowe, o praktycznie dowolnej funkcji aktywacji. Neurony ukryte s dodawane do sieci kolejno. Ka dy dodawany neuron otrzymuje poł czenie od wszystkich wej sieci i wszystkich istniej cych wcze niej neuronów ukrytych. W momencie doł czenia neuronu do istniej cej struktury jego wagi wej ciowe s zamra ane i nie podlegaj dalszej modyfikacji, natomiast poł czenia wagowe z neuronami wyj ciowymi podlegaj ci głemu uaktualnianiu. Ka dy dodawany neuron ukryty reprezentuje jednoneuronow warstw . Proces uczenia sieci rozpoczyna si przy braku neuronów ukrytych. Bezpo rednie poł czenia wagowe wej cia z wyj ciem s trenowane w taki sposób, aby zminimalizowa warto funkcji celu. Mo liwe jest tu zastosowanie dowolnej metody optymalizacyjnej, omówionej w rozdz. 2. W oryginalnym rozwi zaniu Fahlmana zastosowano algorytm Quickprop wykorzystuj cy modyfikacj metody Newtona do uaktualniania warto ci wag, charakteryzuj cy si szybki zbie no ci do punktu rozwi zania. W momencie zbli ania si funkcji celu do warto ci minimalnej post p uczenia w sposób asymptotyczny maleje i po okre lonej liczbie cykli ucz cych bez poprawy wyniku okre lonej parametrem cierpliwo ci (patience) nast puje cykl ostatni, w którym cały zbiór ucz cy podlega analizie w celu okre lenia aktualnego
bł du odwzorowania (warto ci funkcji celu). Je li wynik działania sieci jest ju satysfakcjonuj cy, to nast puje koniec procesu uczenia. W przeciwnym przypadku nale y ponowi prób jego minimalizacji przy zmodyfikowanej przez dodanie jednego neuronu ukrytego strukturze sieci. Dodanie nowego neuronu ukrytego nast puje przy zastosowaniu specjalnej procedury, która najpierw kształtuje wagi wej ciowe tego neuronu, nast pnie zamra a je i dopiero wtedy doł cza neuron do istniej cej struktury, wyprowadzaj c z jego wyj cia poł czenia wagowe do wszystkich neuronów wyj ciowych. Po doł czeniu nowego neuronu ukrytego nast puje ponowne douczenie wag neuronów wyj ciowych przy zastosowaniu procedury omówionej wcze niej. Je li uzyskany wynik uczenia jest satysfakcjonuj cy, to nast puje zako czenie procesu uczenia, w przeciwnym przypadku ponawia si procedur wł czenia nast pnego neuronu ukrytego do sieci a do osi gni cia zadowalaj cych rezultatów uczenia. Aby utworzy neuron ukryty z jego wagami wej ciowymi, rozpoczyna si procedur jego kształtowania. Kandydat tworzy odseparowan jednostk , poł czon wagami podlegaj cymi uczeniu, ze wszystkimi wej ciami sieci oraz wyj ciami neuronów ukrytych wł czonymi ju w struktury sieci. Wyj cie takiego neuronu kandydata jest na tym etapie nigdzie nie podł czone. W takim stanie przeprowadza si na nim szereg cykli ucz cych wykorzystuj c do tego zbiór ucz cy. Celem jest taki dobór jego wag, który zmaksymalizuje warto wska nika korelacyjnego S, zdefiniowanego w postaci [32]
S=
p
M
(V ( ) − V )(E ( ) − E ) (3. 41) k
j =1 k =1
k
j
j
przy czym p jest liczb wzorców ucz cych, M - liczb neuronów wyj ciowych, V(k) - sygnałem wyj ciowym neuronu kandydata przy k-tym wzorcu ucz cym, Ej(k) - warto ci bł du j-tego neuronu wyj ciowego dla k-tego wzorca ucz cego
(E ( ) = d ( ) − y ( ) ) . Wielko ci V oraz E k
j
k
j
k j
j
oznaczaj warto ci rednie, odpowiednio V i E,
obliczone dla całego zbioru ucz cego wzorców. Aby zmaksymalizowa
warto
S, nale y okre li
jej pochodn
∂S wzgl dem wszystkich wag ∂Wi
wej ciowych Wi neuronu kandydata. Wykorzystuj c reguły ró niczkowania funkcji zło onej i uwzgl dniaj c interpretacj fizyczna poszczególnych składników, podobnie jak w metodzie propagacji wstecznej, otrzymuje si
∂S = ∂Wi
σ j (E j − E j )f ′ (k ) I i(k ) j
(3. 42)
k
przy czym σj jest znakiem korelacji mi dzy neuronem kandydatem i j-tym wyj ciem sieci, f ‘(k) jest pochodn funkcji aktywacji neuronu kandydata wzgl dem sumy wagowej jego sygnałów wej ciowych obliczan dla ktego wzorca ucz cego, a Ii(k) jest pobudzeniem, jakie otrzymuje on od i-tego sygnału pobudzaj cego (sygnału wej ciowego sieci lub sygnału wyj ciowego istniej cych ju neuronów ukrytych). Po okre leniu wektora gradientu funkcji S wzgl dem wszystkich dobieranych wag neuronu przeprowadza si proces maksymalizacji S (praktycznie minimalizacji funkcji –S) przy wykorzystaniu dowolnej metody optymalizacyjnej. W oryginalnym rozwi zaniu Fahlmana jest to algorytm Quickprop, który jest równie u ywany przy doborze wag neuronów wyj ciowych. Po uzyskaniu maksymalnej warto ci S neuron kandydat jest doł czany do istniej cej struktury sieci neuronowej, zamra a si dobrane przedtem warto ci jego wag wej ciowych i kontynuuje proces uczenia sieci. Nale y zauwa y , e w procesie uczenia bierze si pod uwag tylko warto absolutn korelacji (3.41) nie troszcz c si o jej znak. Jako reguła wyst puje zjawisko, e je li neuron kandydat jest skorelowany dodatnio w wyniku procesu ucz cego, to wykształci wagi synaptyczne ujemne (hamuj ce), majce tendencj do zmniejszania tego bł du. Korelacja ujemna powoduje ukształtowanie si wag wyj ciowych dodatnich. W efekcie mo e si zdarzy , e wzgl dem jednego neuronu wyj ciowego korelacja neuronu ukrytego jest dodatnia, a wzgl dem innego ujemna. Ten sam neuron odgrywa wi c jednocze nie dwie przeciwstawne role wzgl dem dwu ró nych wyj . Aby uzyska najlepsze wyniki uczenia korelacyjnego, trenuje si zwykle kilka neuronów kandydatów zamiast jednego. Bior c pod uwag , e start uczenia odbywa si z warto ci losowych, ka dy z kandydatów uzyskuje w wyniku uczenia ró ne ko cowe warto ci wag, charakteryzuj ce si ró nymi warto ciami współczynnika korelacji. Spo ród wytrenowanych kandydatów wybiera si najlepszego, o najwi kszej warto ci S, i instaluje w strukturze sieci. Zastosowanie kilku neuronów kandydatów na etapie uczenia korelacyjnego zmniejsza szanse utkni cia w minimum lokalnym i zainstalowania w sieci neuronu o le dobranych wagach, które w dalszym etapie uczenia nie mong. podlega ju korekcji. Standardowa liczba neuronów kandydatów polecana przez twórców metody mie ci si w zakresie od 5 do 10.
Co wi cej, ka dy z neuronów kandydatów konkuruj cych o wł czenie do struktury sieciowej mo e mie inn funkcj aktywacji: sigmoidaln , bipolarn lub unipolarn , gaussowsk , radialn itp. Wygrywa ten neuron, który najlepiej dostosuje si do warunków narzuconych przez zbiór wzorców ucz cych. W efekcie takiego post powania sie kaskadowej korelacji mo e by mieszanin neuronów o ró nych funkcjach aktywacji, dobranych optymalnie przez algorytm ucz cy. Algorytm kaskadowej korelacji został przez autorów zaimplementowany w j zyku C i wystawiony do powszechnego u ytku jako program Cascor (adres ftp: pt.cs.cmu.edu w katalogu \ afs\ cs\ projekt\connect\code). Skompilowany w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej z u yciem kompilatora Watcom, z pewnymi przeróbkami ułatwiaj cymi korzystanie z niego, został wszechstronnie przebadany, wykazuj c doskonałe wła ciwo ci jako klasyfikator wektorowy (dodatek B zawiera opis sposobu korzystania z niego, przygotowania plików ucz cych i testuj cych oraz interpretacj parametrów). W tym miejscu ograniczymy si tylko do omówienia wyników uzyskanych przy rozwi zaniu problemu 2 spiral, jednego z najtrudniejszych problemów klasyfikacyjnych u ywanych jako problem testowy. Zadaniem programu jest wygenerowanie optymalnej struktury sieciowej dokonuj cej klasyfikacji punktów le cych na dwu wzajemnie przeplataj cych si spiralach, nale cych do dwu ró nych klas. W uczeniu u yto 194 próbek ucz cych podzielonych równo mi dzy dwie klasy (+1 lub -1), jak to przedstawiono na rys. 3.8a. W próbach, wykonanych z u yciem programu Cascor przy zastosowaniu sigmoidalnej funkcji aktywacji, uzyskano ró ne architektury sieci, poczynaj c od 12, a ko cz c na 19 zainstalowanych neuronach ukrytych. rednia liczba neuronów ukrytych w wyniku przeprowadzonych eksperymentów równała si ok. 15. Jest to najlepszy w tej dziedzinie wynik, bardzo trudny do uzyskania przy zastosowaniu standardowych konfiguracji sieci wielowarstwowych i klasycznych algorytmów ucz cych. Czas uzyskania jednego rozwi zania na komputerze klasy PC486 wyniósł ok. 3 minut. Dla zbadania zdolno ci uogólniania sieci przyj to najmniejszy uzyskam liczb neuronów ukrytych, równ 12. Przestrze (x, y) wokół spiral zeskanowano, a odpowiednie punkty u yto jako dane testuj ce. Na rysunku 3.8b przedstawiono uzyskany rozkład wyników klasyfikacji punktów testuj cych [32], wiadcz cy o zadowalaj cych wła ciwo ciach uogólniaj cych sieci. Nieliczne odkształcenia rozkładu przestrzeni wokół spiral stanowi niewielki statystyczny bł d i mog by zaakceptowane z punktu widzenia u ytkownika.
Rysunek 3.8 Rezultaty działania sieci Fahlmana na przykładzie problemu 2 spiral: a) rozkład danych ucz cych nale cych do 2 klas; b) ukształtowanie si granic podziału przestrzeni danych
3.4. Sie neuronowa z rozszerzeniem funkcyjnym 3.4.1. Sie funkcyjna Pao W odwzorowaniu danych ucz cych poprzez sie wielowarstwowi neurony warstw ukrytych odgrywaj rol elementów poszerzaj cych informacj o poło eniu konkretnego wzorca ucz cego w przestrzeni i umo liwiaj cych podj cie wła ciwej decyzji przez neurony wyj ciowe. Przykładowo neurony pierwszej warstwy ukrytej odpowiadaj hiperpłaszczyznom, warstwy drugiej - zamkni tym hiperprzestrzeniom, a neurony wyj ciowe pełni funkcj elementów decyzyjnych. Taki model przetwarzania informacji jest wystarczaj cy w przypadku, gdy wymiar N wektora wej ciowego jest w odpowiedniej proporcji do wymiaru M wektora wyj ciowego sieci. W przypadku gdy N « M, powstaje problem odwróconej piramidy, przy którym sk pa informacja wej ciowa jest niewystarczaj ca do odtworzenia informacji wyj ciowej, mimo istnienia układu po rednicz cego w postaci neuronów ukrytych. Zadanie staje si le uwarunkowane, a zdolno ci uogólniania takiej sieci s zwykle małe.
Rysunek 3.9 Ilustracja sposobu tworzenia dodatkowych sygnałów wej ciowych sieci neuronowej z rozszerzeniem funkcyjnym Drugi problem, który si z tym wi e, to stopie zło ono ci sieci. Istnienie wielu warstw ukrytych o pełnych powi zaniach mi dzyneuronowych mo e prowadzi nawet przy dobrym uwarunkowaniu zadania do złego uogólniania, a przy tym proces uczenia znacznie wydłu a si ze wzgl du na du liczb trenowanych wag. Pewnym rozwi zaniem problemu mo e by zastosowanie sieci neuronowej z rozszerzeniem funkcyjnym (functional link net), w której sygnały wej ciowe sieci x s zdublowane przez dodatkowe wprowadzenie ich odpowiedników funkcyjnych. Sieci takie nosz równie nazw sieci wy szego rz du i zostały wprowadzone przez Pao [114]. Stosowane s dwa rodzaje rozszerze funkcyjnych: bazuj ce na funkcjach pojedynczych sygnałów x2 oraz na iloczynach tensorowych składowych wektora wej ciowego. W pierwszym przypadku reprezentacja rozszerzona składa si ze zbioru oryginalnego x oraz zbioru funkcji pojedynczych elementów xi. Sytuacj tak ilustruje rys. 3.9. Przykładami funkcji rozszerzaj cych mo e by funkcja wielomianowa, funkcje ortogonalne: sinπx, cosπx, sin2πx, cos2πx itp. Efektem takiego rozszerzenia jest rzutowanie wzorców wej ciowych z przestrzeni N-wymiarowej w przestrze o wi kszych wymiarach. Nie wprowadza to wprawdzie nowej informacji, ale wzbogaca istniej c . Podobny efekt osi ga si przez zastosowanie rozszerzenia iloczynowego działaj cego na kilku składowych wektora x jednocze nie. W modelu tym reprezentacja {xi} jest rozszerzona przez uwzgl dnienie kolejnych iloczynów
{x , x x , x x x ,...} i
i
j
i
j
k
j ≥ i, k ≥ j , j ≥ i Uwzgl dnienie ł cznego oddziaływania wielu składowych wektora x jednocze nie umo liwia wzbogacenie informacji o procesach zachodz cych w sieci. Proces iloczynowego wzbogacania liczby wej ma tendencj narastania lawinowego, jak to pokazuje tabl. 3.1. Tabela 3.1 Liczba składników xi 2 4 5 10
Liczba składników { xi, xi xj} j>i 3 10 15 35
Liczba składników { xi, xi xj, xi xj xk } j>i, k>j>i 3 14 25 155
p
Mo na temu przeciwdziała
eliminuj c te składniki, dla których k=
(x x ) i
j k
→ 0 . W praktyce
rozszerzenie iloczynowe stosuje si zwykle do drugiego lub trzeciego rz du, ograniczaj c tym samym lawinowe narastanie składników rozszerzonego wektora wej ciowego. Efektem wzbogacenia informacji wej ciowej dostarczanej sieci jest zwykle znaczne przy pieszenie procesu uczenia, a przy tym uproszczenie architektury. W wielu przypadkach wystarczy u ycie jednej warstwy neuronów. Przykładem zastosowania rozszerzenia funkcyjnego jest rozwi zanie problemu realizuj cego logiczn funkcj XOR. Dane ucz ce w postaci par (x, d): ([-1, -1], -1), ([-1,1], 1), ([1, -1], 1) oraz ([1, 1], -1) w standardowym rozwi zaniu nie mog by odwzorowane przez sie jednowarstwow i jest wymagane u ycie jednej warstwy ukrytej (rys. 3.10a). Stosuj c rozszerzenie funkcyjne typu iloczynowego uzyskuje si rozwi zanie problemu bez stosowania warstwy ukrytej (rys. 3.lOb) z jednym neuronem typu sigmoidalnego na wyj ciu. Liczba wag sieci została zredukowana z 9 w klasycznym dwuwarstwowym rozwi zaniu do 4 w rozwi zaniu Pao. Jeszcze wi ksz ró nic mo na zaobserwowa w procesie uczenia. Liczba cykli ucz cych przy zastosowaniu programu Netteach zmalała znacz co (rys. 3.11).
Rysunek 3.10 Posta sieci rozwi zuj cej problem XOR: a) sie dwuwarstwowa; b) sie jednowarstwowa z rozszerzeniem funkcyjnym Pao
Rysunek 3.11 Wykres bł du uczenia sieci z rys. 3.10 dla problemu XOR Podobny efekt mo na uzyska w odwzorowaniu funkcji ci głych. Na rysunku 3.12 przedstawiono funkcj 2 zmiennych (xl, x2) poddan odwzorowaniu za pomoc standardowej sieci dwuwej ciowej o jednej warstwie ukrytej zawieraj cej 15 neuronów oraz sieci jednowarstwowej (bez warstwy ukrytej), ale w zamian z zastosowaniem rozszerzenia funkcyjnego. Sie zawiera tylko jeden neuron liniowy w warstwie wyj ciowej. Wej cie sieci stanowi rozszerzony wektor 19-elementowy o składnikach: xl, sin(πxl), cos(πxl), sin(2πxl), cos(2πxl), sin(3πxl), cos(3πxl), x2, sin(πx2), cos(πx2), sin(2πx2), cos(2πx2), sin(3πx2), cos(3πx2), xlx2, xl sin(πx2), xl cos(πx2), x2 sin(πx1), x2 cos(πx1).
Rysunek 3.12 Posta funkcji trójwymiarowej poddanej odwzorowaniu za pomoc sieci neuronowej trójwarstwowej i sieci jednowarstwowej Pao
Rysunek 3.13 Krzywe uczenia sieci przy odwzorowaniu funkcji z rys. 3.12 (linia ci gła - sie Pao, linia przerywana - sie trójwarstwowa) Obie sieci poddano uczeniu przy zastosowaniu programu Netteach uzyskuj c zadowalaj c dokładno odwzorowania. Rysunek 3.13 przedstawia uzyskane krzywe uczenia w obu przypadkach. Dzi ki zastosowaniu rozszerzenia funkcyjnego nast piło kilkukrotne przyspieszenie procesu uczenia.
3.4.2. Sie sigma-pi Odmian sieci neuronowej z rozszerzeniem funkcyjnym po stronie wyj ciowej jest tzw. sie sigma-pi [125], wykorzystuj ca składniki funkcyjne w odwzorowaniu danych wej ciowych. Rysunek 3.14 przedstawia ogólny schemat sieci przy ograniczeniu si do jednego neuronu wyj ciowego. Sie zawiera 2 warstwy neuronów: warstw ukryt funkcyjn oraz warstw wyj ciow liniow .
Rysunek 43.14 Graf sygnałowy odpowiadaj cy sieci funkcyjnej sigma-pi
Rysunek 3.15 Graf doł czony sieci funkcyjnej sigma-pi Ka dy neuron warstwy ukrytej zawiera dwa sumatory, dwie funkcje aktywacji φi oraz ψi jeden mno nik. Je li wagi neuronu ukrytego oznaczy si odpowiednio przez Aij oraz Bij, a neuronu wyj ciowego przez Wi, jak to oznaczono na rysunku, to sie realizuje przekształcenie nieliniowe
y ( x ) = W0 + przy czym
vi =
N j =0
Aij x j , u i =
K i =1
Wiφ i (vi )ψ i (u i ) (3. 43)
N j =0
Bij x j ,z zało eniem x0 = 1. Funkcje φi, ψi mog mie ró n posta , w tym
sigmoidaln , radialn , odcinkowo-liniow [16], umo liwiaj c realizacj odwzorowa bardziej zło onych. Algorytm uczenia sieci sigma-pi jest typowym algorytmem gradientowym minimalizuj cym funkcj celu, definiowan zwykle w postaci standardowej sumy kwadratów ró nic mi dzy aktualn warto ci y sygnału wyj ciowego sieci a warto ci dan d. Przy ograniczeniu si do jednego wzorca ucz cego przyjmie ona posta
E=
1 ( y − d )2 . Podstaw zastosowania algorytmu gradientowego jest generacja składowych wektora 2
gradientu, który mo na najpro ciej uzyska przy wykorzystaniu metody grafu doł czonego. Na rysunku 3.15 przedstawiono posta
ψ i′ =
grafu doł czonego słu cego do generacji gradientu. Funkcje
φ i′ =
dφ i dvi
oraz
dψ i s warto ciami pochodnej funkcji wzgl dem odpowiedniego sygnału pobudzaj cego w punkcie dvi
rozwi zania sieci oryginalnej. Podobnie funkcje ψi(ui) oraz φi(vi) oznaczaj warto ci funkcji w punkcie rozwi zania sieci. Z metodyki wyznaczania gradientu za pomocy grafów doł czonych wynika, e:
∂E = y − d (3. 44) ∂W0
∂E = t k ( y − d ) (3. 45) ∂Wk
∂E = x j vˆi = x jφ i′ψ i (u i )Wi ( y − d ) (3. 46) ∂Aij ∂E = x j uˆ i = x jψ i′φ i (u i )Wi ( y − d ) (3. 47) ∂Bij dla k = 1, 2, . . . , K oraz i,j = 1, 2, . . gradientowy algorytm ucz cy spo ród wprowadzenie poł cze synaptycznych i przyspieszenie procesu uczenia i aproksymacyjnych sieci.
. , N. Na podstawie tych zale no ci mo na skonstruowa dowolny omówionych w rozdz. 2. Jak wykazały wyniki bada [114], wy szego rz du do struktury sieci umo liwia uproszczenie z jednoczesnym zwi kszeniem zdolno ci klasyfikacyjnych
3.5. Analiza wra liwo ciowa danych ucz cych Ograniczenie liczby powi za mi dzyneuronowych i neuronów sprowadza si w klasycznym podej ciu do redukcji wag warstw ukrytej i wej ciowej, bez uwzgl dniania warstwy wej ciowej, co do której zało ono, e liczba wej jest okre lona wymiarem wektora x. Tymczasem wiadomo, e ka da składowa wektora x zawiera ró n dawk informacji, w zró nicowany sposób wpływaj c na warto ci sygnałów wej ciowych sieci. Przy modelowaniu bardzo skomplikowanych zjawisk, gdzie niejasny jest wpływ poszczególnych czynników procesu na jego ogólny wynik, powstaje naturalna potrzeba selekcji tych, które s istotne, i pomijania tych, które s nieistotne. Typowym przykładem jest proces stawiania diagnozy lekarskiej co do wyst pienia okre lonej choroby. Zwykle danej chorobie towarzyszy szereg objawów, na podstawie których lekarz stawia diagnoz . Z dogł bnej analizy wielu obserwowanych przypadków mo na wysnu wniosek, które objawy s bardziej istotne dla danej choroby, a które mniej, które zaciemniaj jedynie obraz i powinny by wyeliminowane z procesu podejmowania decyzji. Eliminacja niepotrzebnych składowych danych wej ciowych mo e przyczyni si do zaw enia liczby diagnoz i ułatwi proces podj cia wła ciwej decyzji w przyszło ci, czyli przyczyni si do zwi kszenia zdolno ci uogólniania danej metody diagnozowania. Podj cie decyzji co do eliminacji pewnych składowych wektora x i zmniejszenia liczby danych wej ciowych odbywa si na podstawie analizy wra liwo ciowej sieci wzgl dem danych ucz cych [30, 163]. Analiza taka mo e by przeprowadzona dopiero po nauczeniu wst pnie dobranej sieci, przy uwzgl dnieniu pełnych wyników analizy danych ucz cych. Do przedstawienia metody przyj to sie o jednej warstwie ukrytej. Tak jak zawsze N b dzie oznacza liczb wej , K - liczb neuronów ukrytych, M - liczb neuronów wyj ciowych, a P - liczb wzorców ucz cych. Wektor sygnałów wej ciowych oznaczono symbolem x, sygnałów warstwy ukrytej symbolem v, a warstwy wyj ciowej symbolem y. Wektor zadany sygnałów wyj ciowych ma jak zwykle oznaczenie d. Przez wzorzec ucz cy rozumie si par wektorów (x, d). W dalszej analizie przyj to sigmoidaln funkcj aktywacji neuronów obu warstw. Przez wra liwo k-tego wyj cia sieci na i-ty składnik wektora wej ciowego x nale cy do p-tego wzorca rozumie si pochodn [30]
S ki( p ) =
∂y k (3. 48) ∂xi
Je li macierz wag neuronów ukrytych oznaczy si W(1), a neuronów wyj ciowych W(2), to uwzgl dniaj c proces przetwarzania informacji w sieci otrzymuje si
S ki( p ) = f k′ (2 )
K j =1
Wkj(2 )
∂v j ∂xi
= f k′ (2 )
przy czym f'(1) i f'(2) oznaczaj pochodne funkcji aktywacji
K j =1
f j′ (1)Wkj(2 )W ji(1) (3. 49)
f ′ = f ′( x ) =
∂f ( x ) neuronów warstwy ukrytej ∂x
i wyj ciowej. Zale no (3.49) okre la wra liwo k-tego sygnału wyj ciowego sieci na i-ty składnik wektora ucz cego x nale cego do p-tego wzorca. Przy uwzgl dnieniu wra liwo ci wszystkich M wyj sieci na p-ty wzorzec ucz cy zale no skalarna (3.49) przekształca si w zale no macierzow S(p) okre laj c wra liwo wszystkich wyj sieci na wszystkie składowe wektora x
S ( p)
S11( p ) S ( p) = 21 ... S M( p1)
S12( p ) ( p) S 22 ... S M( p2)
... S1(Np ) ... S 2( pN) (3. 50) ... ... ( p) ... S MN
Elementy macierzy S(p) okre laj wra liwo k-tego wyj cia sieci na kolejne składowe wektora wej ciowego x. Wyra enie opisuj ce macierz S(p) jest macierzow generalizacj wzoru (3.49) i mo e by przedstawione w postaci [30]
[
S ( p ) = f ′ (2 )W (2 ) f ′ (1)W (1) przy czym
[
]
[
]
T
(3. 51)
]
f ′ (1) = diag f 1′ (1) , f 2′ (1) ,..., f K′ (1) , = diag f 1′ (2 ) , f 2′ (2 ) ,..., f M′ (2 ) .
Wynik uzyskany dla p-tego wzorca ucz cego nale y uwzgl dni w ogólnej masie P wzorców ucz cych. W procesie u redniania mo na zastosowa ró ne rodzaje norm, z których najcz ciej s u ywane [163]: • norma euklidesowa P p =1
S ki , sr = •
p ki
2
(3. 52)
P
norma absolutna P
S ki ,abs = •
[S ( ) ]
norma maksimum
p =1
(S ( ) ) p ki
P
(3. 53)
S ki ,max = max S ki( p ) (3. 54) p =1,..., P
Ka da z tych norm uwzgl dnia w innej proporcji liczbowej wpływ p-tej próbki ucz cej w ogólnej masie próbek. Skrajnym przypadkiem jest norma (3.54), w której bierze si pod uwag tylko jeden najbardziej znacz cy wzorzec. Przyj ta do rozwa a bezwzgl dna miara wra liwo ci wymaga, aby wszystkie wzorce ucz ce wyst powały w jednakowej skali. Je li dane wej ciowe nie spełniaj tego warunku, to wynik w postaci wzorów (3.52)-(3.54) nale y przeskalowa , uwzgl dniaj c rozrzut maksymalnej i minimalnej warto ci odpowiedniej składowej we wszystkich wzorcach. Ograniczaj c si tylko do jednej (euklidesowej) reprezentacji u rednionej, skalowanie okre la zale no
S ki , sr ← S ki , sr
{ } { } (3. 55) max {y ( ) }− min {y ( ) } max xi( p ) − min xi( p ) p =1,..., P
p =1,..., P
p
p =1,..., P
k
p
p =1,..., P
k
Innym rozwi zaniem jest przyj cie w definicji zamiast wzoru (3.48) wra liwo ci wzgl dnej
S ki( p ) =
∂y k( p ) xi( p ) (3. 56) ∂xi( p ) y k( p )
automatycznie uwzgl dniaj cej rozkład warto ci x i y we wszystkich wzorach ucz cych. Przy uwzgl dnieniu jedynie zmiany definicyjnej wszystkie zale no ci wra liwo ciowe pozostaj w mocy. Po okre leniu warto ci u rednionych wszystkich elementów macierzy wra liwo ciowej, macierz S(p) przekształca si w macierz S obejmuj cy zakres całego zbioru ucz cego. Elementy k-tego wiersza tej macierzy okre laj wra liwo k-tego wyj cia sieci na poszczególne składowe wektora x. Podobnie k-ta kolumna macierzy S okre la wra liwo wszystkich wyj sieci na k-ty składnik wektora ucz cego x. Je li przez Fi oznaczy si maksymaln warto składnika i-tej kolumny macierzy S
Fi = max {S ki } (3. 57) k =1, 2 ,...,M
to warto ta, porównana z innymi, wyra a wzgl dn wa no danego wej cia sieci. Je li kolejno Fi ustawi si według malej cych warto ci, poczynaj c od najwi kszej, a ko cz c na najmniejszej, to obserwuj c ró nice mi dzy kolejnymi składnikami takiego szeregu mo na wnioskowa o ich wa no ci i wpływie na wynik ko cowy. Je li ten rozkład jest w miar równomierny i nie ma wyra nej ró nicy mi dzy dwoma, kolejnymi składnikami, nie mo na na tej podstawie wnioskowa o niewra liwo ci sieci na aden ze składników wektora x [30].
Rysunek 3.16 Ilustracja sposobu redukcji wymiaru wektora x: a) wymiar wektora x pozostaje bez zmiany, b) wymiar wektora x zredukowany z N do i Je li w uzyskanym rozkładzie zaznacza si wyra na ró nica w rozkładzie warto ci mi dzy dwoma kolejnymi składnikami w szeregu (∆F = Fi+1 - Fi > ∆dop), mo na wnosi , e wszystkie składowe wektora odpowiadaj ce warto ciom i + 1, i + 2, . . . , N maje minimalny wpływ na rozwi zanie problemu i mo na je usun ze zbioru danych ucz cych, redukuj c tym samym wymiar wektora x. Rysunek 3.16 ilustruje oba przypadki. Rozkład warto ci Fi przedstawiony na rys. 3.16a nie upowa nia do redukcji wektora x, podczas gdy maksymalna ró nica ∆F mi dzy dwoma kolejnymi składnikami, zaznaczona na rys. 3.16b, daje podstaw do podj cia decyzji o eliminacji tych składowych, które odpowiadaj współrz dnym i + 1, i + 2, . . . , N. Kompletny algorytm analizy wra liwo ciowej umo liwiaj cy redukcj wymiaru wektora wej ciowego x sieci neuronowej mo e by przedstawiony nast puj co: • Przeprowadzenie procesu ucz cego wst pnie zaprojektowanej sieci z u yciem oryginalnego, pełnego zbioru ucz cego. • Okre lenie poszczególnych składników wra liwo ci Ski(p) dla wszystkich neuronów wyj ciowych wzgl dem wszystkich składowych wektora wej ciowego dla p = 1, 2, . . . , P i okre lenie na tej podstawie pełnej macierzy S wra liwo ci u rednionej. • Okre lenie warto ci współczynników wa no ci Fi (wzór (3.57)) dla ka dego składnika wektora wej ciowego x. • Przeprowadzenie eliminacji (zgodnie z omówion wcze niej procedur ) tych składników wektora x, które maj najmniejszy wpływ na wynik ko cowy. • Powtórzenie procesu uczenia sieci na zredukowanym wymiarze wektora x zbioru ucz cego i przej cie do punktu 2 algorytmu. Proces jest kontynuowany, a do wyeliminowania wszystkich nieistotnych składowych wektora x. Wyniki bada eksperymentalnych zaprezentowane przez autorów tego algorytmu [30] wskazuje, e przy zastosowaniu tej metody redukcji zło ono ci sieci uzyskuje si popraw wyników uczenia przyczyniaj c si zarówno do zmniejszenia bł du ucz cego, jak i bł du uogólniania. Zastosowana do diagnozy raka piersi umo liwiła zredukowanie wymiaru wektora x z 10 do 8, przy jednoczesnym zmniejszeniu bł du ucz cego z 2,45 do 1,84% i bł du uogólnienia z 6,19 do 3,81%. Uczenie przeprowadzano na 489-elementowym zbiorze ucz cym, a testowanie na 210 przypadkach.
3.6. Zwi kszanie zdolno ci uogólniania sieci przez wtr canie szumu do wzorców ucz cych Metody przedstawione w poprzednich podrozdziałach tego rozdziału realizowały zwi kszenie zdolno ci uogólniania przez oddziaływanie na sam architektur sieci. Jest to podstawowa metoda umo liwiaj ca uzyskanie dobrych wła ciwo ci uogólniaj cych sieci. Przy ustalonej, minimalnej architekturze sieci jest mo liwa dalsza poprawa tych zdolno ci przez odpowiednie przygotowanie zbioru wzorców ucz cych. Przy dobrze wytrenowanej sieci podstawowa jest zasada mówi ca, e sygnały wyj ciowe sieci powinny by niewra liwe na zmian wielko ci wej ciowych dopóty, dopóki zmiany te s zawarte w pewnych, dopuszczalnych granicach przy zało eniu, e sie realizuje odwzorowanie gładkie. Innymi słowy, podobne sygnały wej ciowe powinny generowa podobne odpowiedzi nawet wówczas, gdy nie wchodziły w skład wzorców ucz cych. Aby uzasadni matematycznie powy sze stwierdzenie, przyjmuje si sie dwuwarstwow zawieraj c warstw ukryt o K neuronach i warstw wyj ciow o M neuronach. Liczb wej sieci przyjmie si jak zawsze równ N. Przy oznaczeniu wektora wszystkich wag sieci przez W, wektora sygnałów wej ciowych i wyj ciowych odpowiednio przez x i y, wektor y mo na zapisa ogólnie w postaci
y = f (W , x ) (3. 58) lub w skrócie y = f (x), przy czym f oznacza wektor zło ony z sigmoidalnych funkcji aktywacji neuronów wyj ciowych. Argumentem funkcji aktywacji ka dego neuronu jest suma wagowa zdefiniowana w sposób przedstawiony w rozdz. 2. Dla potrzeb tego punktu wprowadzono rozró nienie w oznaczeniu wej ciowego wektora ucz cego (k )
i testuj cego. Niech xˆ oznacza k-ty wektor ucz cy, a x - wektor testuj cy. Rozwi zanie problemu uczenia, zdefiniowanego jako minimalizacja funkcji celu
E=
( )
1 p (k ) d − f xˆ (k ) 2 k =1
(3. 59)
prowadzi do warto ci wag, optymalnych z punktu widzenia zbioru wzorców ucz cych.
Minimalizacja tej funkcji niekoniecznie zapewnia wła ciw odpowied sieci na wymuszenie w postaci wektora x nie b d cego składnikiem danych ucz cych. Dla zbadania wra liwo ci sieci na niewielk zmian wektora ucz cego
xˆ (k ) zało ono, e testowany wektor x(k) ró ni si niewiele od wektora ucz cego x. Przyj to, e x (k ) = xˆ (k ) + s (3. 60)
przy czym s = [sl, s2, . . . , sN] T oznacza wektor szumu, składaj cy si ze zmiennych losowych o małej (k )
amplitudzie. Wektor testowy x(k), bliski odpowiedniemu wektorowi ucz cemu xˆ , mo na traktowa jako wektor zaszumiony, który wywołuje perturbacj sygnału wyj ciowego y(k), zapisan w postaci
(
) ( )
∆y (k ) = f xˆ (k ) + s − f xˆ (k ) ≈
przy czym
( )
∂f xˆ (k ) s (3. 61) ∂x
∂f oznacza jakobian funkcji wektorowej f (x). ∂x
W dalszych rozwa aniach zało ono, e wektor szumu s ma warto redni s równ zeru i wariancj równ ssT = σ21, przy czym 1 oznacza macierz jednostkow o wymiarze N, a jest oznaczeniem statystycznej warto ci oczekiwanej. Oznaczaj c przez R wra liwo wzgl dn sieci p
R(W ) =
∆y (k )
2
k =1
s
(3. 62)
2
i uwzgl dniaj c zale no ci (3.60) i (3.61) mo na przedstawi j w postaci
R(W ) =
p
1
(s s ) T
s
T
k =1
( )
∂f xˆ (k ) ∂x
( )
∂f xˆ (k ) s (3. 63) ∂x
T
Uwzgl dnienie przyj tych zało e co do warto ci redniej i wariancji szumu umo liwia uproszczenie zale no ci (3.63) do [87]
R(W ) =
p k =1
( )
1 ∂f xˆ (k ) ∂x N
2
(3. 64)
przy czym ||A|| oznacza norm Frobeniusa macierzy, to znaczy ||A|| = trace(AAT)=Σ aij2. Jest oczywiste, e im mniejsza jest wra liwo R, tym sie jest mniej czuła na „zakłócenia" wektora wej ciowego x w stosunku do odpowiedniego wektora ucz cego xˆ , a zatem jej zdolno uogólniania zwi ksza si . Uwzgl dnienie czynnika wra liwo ciowego w uczeniu sieci jest mo liwe przez modyfikacj definicji funkcji celu. Oznaczaj c j w postaci odpowiedniej sumy wa onej L(W ) = E (W ) + αR(W ) (3. 65) przy czym α > 0 jest współczynnikiem wagowym, otrzymuje si
L(W ) =
p
d k =1
(k )
(
− f W , xˆ
(k )
)
2
+
α ∂f (xˆ (k ) ) N
2
(3. 66)
∂x
Zamiast minimalizowa zmodyfikowan funkcj celu L(W), przyj to, e
α N
oznacza wariancj pewnego
szumu, tworz cego wektor n =[nl, n2, . . . , nN] T o zerowej warto ci oczekiwanej n = 0 oraz nn T = ε1. Mo na wówczas funkcj celu L(W) przekształci w posta
L(W ) =
p
d
(
(k )
− f W , xˆ
k =1
(
p
=
(k )
d (k ) − f W , xˆ (k )
k =1
) )
( )
∂f xˆ (k ) +ε ∂x
2
2
+
2
=
( )n (k )
∂f xˆ ∂x
(3. 67)
2
z której po uwzgl dnieniu niezale no ci szumu losowego od próbek ucz cych otrzymuje si
L(W ) = ≈
p
d
(k )
k =1 p
(
− f W , xˆ
(
(k )
)
d (k ) − f xˆ (k ) + n
k =1
( )
∂f xˆ (k ) n − ∂x
)
2
≈ (3. 68)
2
Równanie definiuj ce zmodyfikowan funkcj celu ma posta identyczn ze standardow postaci (3.59) z t ró nic , e zamiast wektora wej ciowego xˆ u ywa si zaszumionego wektora xˆ + n . Minimalizacja tej funkcji uwzgl dnia w efekcie nie tylko składnik (3.59), ale równie składnik wra liwo ciowy R(W) zdefiniowany zale no ci (3.64), bierze wi c pod uwag w procesie uczenia wzorce charakteryzuj ce próbki testuj ce i do nich dobiera optymalnie warto ci wag. Wynika st d wniosek, e przy ustalonej architekturze sieci jej zdolno ci uogólniania b d lepsze. Oddzielny problem to dobór wariancji szumu, umo liwiaj cy rzeczywist popraw zdolno ci uogólniania sieci. Jest to zadanie teoretycznie trudne do rozwi zania, natomiast stosunkowo łatwe do oszacowania w drodze eksperymentalnej. Na podstawie wielu wykonanych prób testowych stwierdzono, e wariancja szumu powinna by skorelowana z prawidłowym rozkładem ró nicy mi dzy wzorcami ucz cymi (niezaszumonymi) a danymi testuj cymi, stanowi c niewielki jej procent. Aby wykaza skuteczno wtr cania szumu do próbek ucz cych, przeprowadzono eksperymenty numeryczne z sieci o zbyt du ej liczbie wag, pozbawion cech dobrego uogólniania. Sie o dwu wej ciach, pi ciu neuronach ukrytych i jednym liniowym neuronie wyj ciowym została poddana uczeniu na trzech wzorcach ucz cych ( xˆ , d), przy czym
xˆ (1) =
0 0
d (1) = 0
xˆ (2 ) =
0,5 0,5
d (2 ) = 0,5
xˆ (3) =
1 1
d (3 ) = 0
Uczenie przeprowadzono dwukrotnie: na wzorcach x bezszumowych i poddanych działaniu szumu o rozkładzie jednostajnym w przedziale [-0,5, 0,5]. Osi gni te rezultaty przedstawia rys. 3.17. Rysunek 3.17a przedstawia rozkład warto ci y = f (x) uzyskanych podczas testowania sieci trenowanej przy pomocy wzorców bezszumowych, a rys. 3.17b ten sam rozkład, ale przy zastosowaniu szumu. Poniewa rozkład danych warto ci d zmienia si wzdłu linii xl = x2, oczekiwany rozkład linii ekwipotencjalnych powinien by prostopadły do tej linii, jak wskazuje rys. 3.17b. Rozkład uzyskany przy uczeniu bezszumowym (rys. 3.17a) nie spełnia tych oczekiwa , wykazuj c du e odchylenie od przewidywa zwłaszcza na linii diagonalnej.
Rysunek 3.17 Ilustracja wpływu szumu wtr canego do wzorców ucz cych na ukształtowanie si linii ekwipotencjalnych: a) brak szumu; b) uczenie z zastosowaniem szumu
4. Wybrane zastosowania sieci neuronowych wielowarstwowych Sieci neuronowe jednokierunkowe wielowarstwowe o sigmoidalnej funkcji aktywacji znalazły zastosowania w praktyce, stanowi c wa ne ogniwo rozwi zania wielu problemów. W tym rozdziale ograniczono si do wybranych zastosowa , podkre laj c uniwersalno i ró norodno funkcji, jakie pełni .
4.1. Rozpoznawanie wzorców Przez poj cie rozpoznawania wzorców b dzie si rozumie identyfikacj lub interpretacj wzorca traktowanego jako obraz. Zadaniem sieci jest wyłowienie jego najwa niejszych cech i zaklasyfikowanie do odpowiedniej kategorii (klasy). Mo na tu wyró ni dwa rodzaje podej . W pierwszym nast puje najpierw wydobycie najwa niejszych cech obrazu, a nast pnie sie neuronowa dokonuje na ich podstawie klasyfikacji. W wydobyciu cech obrazu s stosowane ró ne metody, w tym metoda momentów statystycznych regularnych i Zernika [64], metoda przekształcenia Fouriera [74], metody cz stotliwo ciowe cepstrum i bispektrum [131], przekształcenie Karhunena-Loewego [65] itp. Drugim podej ciem jest poł czenie wydobywania cech obrazu i klasyfikacji w jedno zadanie rozwi zywane przez t sam sie neuronow . Przykładem takiej metody jest metoda zaproponowana przez Widrowa w pracy [150], poddaj ca obrazy przekształceniom typu statystycznego, stanowi cym fragment sieci neuronowej. W tym podrozdziale przedstawiono proste podej cie ł cz ce cechy obu metod. Dane dotycz ce obrazu s przetwarzane przez procesor uniezale niaj cy obraz od przesuni cia, rotacji i skalowania. Wynik jest podawany na sie neuronow dokonuj c wła ciwego rozpoznania. Główn cech preprocesora musi by stabilno przekształcenia obrazu niezale na od poziomu szumów w obrazie oryginalnym oraz prosty i szybki w działaniu algorytm przekształcenia umo liwiaj cy jej przeprowadzenie w czasie porównywalnym z czasem działania samego klasyfikatora neuronowego.
Rysunek 4.1 Struktura układu wst pnego przetwarzania obrazów uniezale niaj ca obraz od przesuni cia T, skalowania S i rotacji R
Jednym z takich rozwi za jest preprocesor o strukturze kaskadowej, zaproponowany w pracy [157]. Składa si on z 3 bloków: typu T (uniezale niaj cego od przesuni cia wzdłu osi x i y ) , typu S (skalowanie) oraz typu R (rotacja), jak to przedstawiono na rys. 4.1. W tym rozwi zaniu zarówno obraz oryginalny jak i obraz przetworzony, inwariantny wzgl dem poło enia, skali i obrotu, s dane w postaci pikselowej. Kolejno wyst powania bloków jest w zasadzie dowolna, cho zwykle w praktyce stosuje si kolejno pokazan na rys. 4.1. Dzi ki umieszczeniu bloku skaluj cego przed rotacyjnym mo na zabezpieczy si przed wysuni ciem pewnych fragmentów du ego wzorca poza ram , które mogłoby nast pi wskutek rotacji. Z kolei przy małych rozmiarach wzorców unika si w ten sposób zniekształce wprowadzanych przez rotacj przy małej procentowej zawarto ci znacz cych pikseli w obrazie.
4.1.1. Blok przesuni cia
Blok przesuni cia T zapewnia niezmienno wzgl dem przesuni cia na osi x i y przez okre lenie poło enia rodka ci ko ci wzorca i takie jego przesuni cie, e znajdzie si ono zawsze w pocz tku układu współrz dnych, umieszczanym zwykle w punkcie centralnym ramy obrazu. rodek ci ko ci jest obliczany metod u redniania współrz dnych x i y wzorca. Niech P oznacza liczb pikseli o przypisanej warto ci binarnej l
P=
N
N
i =1 j =1
f ( xi , yi ) (4. 1)
przy czym N oznacza wymiar pikselowy ramy obrazu (przyjmuje si ram kwadratow ), a f ( x i , y j ) ma warto binarn O lub l, okre laj c jasno przypisan pikselowi o współrz dnych ( x i , y j ) . rodek ci ko ci w osi x i y okre la si z zale no ci [157]:
1 N p i =1 1 N ym = p i =1
xm =
N j =1 N j =1
xi f ( xi , y i ) (4. 2) y i f ( xi , y i ) (4. 3)
Wzorzec wyj ciowy z bloku przesuni cia okre la funkcja
f T (xi , y j ) = f (xi + x m , y j + y m ) (4. 4)
która zmienia poło enie wzorca oryginalnego na płaszczy nie (x, y) umieszczaj c jego pocz tek w miejscu rodka ci ko ci.
4.1.2. Blok skaluj cy Zadaniem bloku skaluj cego S jest taka zmiana wymiarów wzorca, aby rednia odległo mi dzy pocz tkiem układu współrz dnych a pikselami znajduj cymi si w stanie wysokim była okre lonym ułamkiem wymiaru ramy (autorzy pracy [157] proponuj warto równ 1/4). redni odległo okre la wzór
rm =
N
1 N
N
i =1 j =1
N
f T ( xi , y i ) i =1
j =1
f T (xi , y j ) xi2 + y 2j (4. 5)
a współczynnik skali
rm (4. 6) R
S=
przy czym R jest okre lonym ułamkiem wymiaru ramy. Wzorzec wyj ciowy z bloku skalowania okre la funkcja
f TS ( xi , y i ) = f T (Sxi , Sy j ) (4. 7)
Tego typu skalowanie zapewnia ci gło cech charakterystycznych wzorca (przy ci głym wzorcu wej ciowym fT wzorzec wyj ciowy fos jest równie ci gły).
4.1.3. Blok rotacji Blok rotacji R dokonuje obrotu wzorca w taki sposób, aby kierunek maksymalnej wariancji pokrywał si z osi x. Przekształcenie to wykorzystuje wła ciwo ci systemu, e dla danego zbioru wektorów wej ciowych wektor własny stowarzyszony z najwi ksz warto ci własn macierzy kowariancji wektorów wej ciowych jest skierowany w kierunku maksymalnej wariancji [65]. Bior c pod uwag jedynie obrazy dwuwymiarowe, macierz kowariancji ma wymiar 2 x 2 , dla którego wektor własny stowarzyszony z najwi ksz warto ci własn , mo e by okre lony w sposób analityczny. Przyjmuj c oznaczenia dla warto ci rednich mx, my
mx = my
N
1 N
N
i =1 j =1
f TS (xi , y j ) i =1
N j =1
f TS (xi , y j )
xi (4. 8) yj
i wprowadzaj c zmienn
P=
N
N
i =1 j =1
f TS (xi , y j ) (4. 9)
macierz kowariancji definiuje si w postaci [157]
1 C= p
N
N
i =1 j =1
f TS (xi , y j )
xi
xi
yj
yj
T
−
mx
mx
my
my
Przy wprowadzonym przesuni ciu poło enia warto ci mx i my s współczynnika skaluj cego P macierz kowariancji upro ci si do postaci
C= przy czym
Txx Txy
Txy (4. 11) T yy
T
(4. 40)
równe zeru. Przy pomini ciu
Txx =
T yy =
Txy =
N
N
i =1 j =1 N
N
i =1 j =1 N
N
i =1 j =1
f TS (xi , y i )xi2 (4. 12) f TS ( xi , y i ) y 2j (4. 13)
f TS ( xi , y i )xi y j (4. 14)
Warto ci własne macierzy C okre la wzór
(T
1 T yy + Txx ± 2
λ1 / 2 =
(
+ Txx ) − 4 TxxT yy − Txy2 2
yy
)
(4. 15)
Wektor własny stowarzyszony z warto ci własn λ okre la zale no
v1 v = λ 1 (4. 16) v2 v2
C
z której otrzymuje si nachylenie wektora własnego
v 2 λ − Txx = (4. 17) v1 Txy
Po podstawieniu wi kszej warto ci własnej z wyra enia (4.15) otrzymuje si
v 2 T yy − Txx + = v1
(T
− Txx ) + 4Txy2 2
yy
(4. 18)
2Txy
Funkcje sin(θ) i cos(θ) odpowiadaj ce temu nachyleniu okre laj wzory [157]:
sin (θ ) =
v2 v12 + v 22
=
(T
T yy − Txx +
− Txx ) + 4Txy2 2
yy
M
cos(θ ) =
v1 v12 + v 22
=
2Txy M
(4. 59)
(4. 60)
M = 8Txy2 + 2(T yy − Txx ) + 2(T yy − Txx ) (T yy − Txx ) + 4Txy2 (4. 21) 2
2
Funkcja rotacji rzutuj ca obraz fTS w obraz fTSR przybiera posta [157]
f TSR (xi , y j ) = f TS (xi cos(θ ) − y j sin (θ ), xi sin (θ ) + y j cos(θ )) (4. 22)
Rzutowanie to nie rozpoznaje kierunku, st d poło enia 0° i 180° s sobie ekwiwalentne. W zale no ci od poło enia wzorca oryginalnego obraz fTSR mo e przyj jedno z dwu kanonicznych poło e , reprezentuj cych t sam klas . Dlatego w przygotowaniu danych ucz cych nale y to uwzgl dni .
4.1.4. Układ klasyfikatora neuronowego Sygnały wyj ciowe fTSR preprocesora uporz dkowane w postaci wektorowej składaj cej si z kolejnych wierszy tabeli pikselowej, stanowi sygnały wej ciowe sieci neuronowej wielowarstwowej, pełni cej funkcj klasyfikatora. Liczba w złów wej ciowych sieci jest zatem równa liczbie pikseli. Bior c pod uwag , e ka dy neuron wyj ciowy reprezentuje klas , ich liczba jest równie stała i równa liczbie klas. Tylko liczba warstw ukrytych i neuronów w warstwie podlega doborowi zgodnie z metodyk omówion w rozdz. 3. Klasyfikator jest trenowany metod propagacji wstecznej przy u yciu jednego z algorytmów ucz cych na zbiorze danych ucz cych reprezentuj cych kolejne klasy wzorców podlegaj cych rozpoznaniu. Bior c pod uwag istnienie preprocesora wystarczy u ycie jednego wzorca wej ciowego dla ka dej klasy.
W trybie odtworzeniowym wzorzec podlegaj cy klasyfikacji po przej ciu przez wszystkie fazy preprocesora jest podawany na wej cie sieci pobudzaj c ten neuron wyj ciowy, który odpowiada danej klasie.
4.1.5. Układ interpretera Na etapie rozpoznawania wzorców, bior c pod uwag ich zaszumienie, sygnały wyj ciowe neuronów mog przyjmowa warto ci ci głe z przedziału [0,1] zamiast spodziewanych warto ci binarnych zero-jedynkowych z jedynk odpowiadaj c rozpoznanej klasie. Jednym z rozwi za jest przyj cie neuronu najbardziej aktywnego (o najwi kszym sygnale wyj ciowym) jako reprezentanta danej klasy. Taka metoda nie umo liwia jednak porównania aktywno ci ró nych neuronów ze sob , a przy tym prowadzi do sytuacji, gdy decyzj o zwyci stwie okre lonego neuronu podejmuje si nawet przy aktywno ci wszystkich neuronów bliskiej zeru, co mo e prowadzi do bł dów klasyfikacji. Najlepszym rozwi zaniem wydaje si interpretacja dwupoziomowa. Najpierw sprawdza si , o ile sygnał maksymalny przewy sza nast pny. Je li ta ró nica jest dostatecznie du a, to za zwyci zc uznaje si neuron o najwi kszej aktywno ci. W przeciwnym przypadku lub gdy poziomy aktywacji wszystkich neuronów s poni ej pewnego progu, interpreter podaj c wynik stwierdza, e klasyfikacja jest niepewna, ostrzegaj c w ten sposób u ytkownika o mo liwo ci popełnienia pomyłki (brak klasyfikacji uwa a si za lepsze rozwi zanie ni klasyfikacj bł dn ). Tego typu rozwi zanie klasyfikatora neuronowego zostało sprawdzone w rozpoznawaniu i klasyfikacji liter pochodz cych z ró nych alfabetów oraz ró norodnych wzorców binarnych. Pomimo wyj tkowo prostego algorytmu wst pnego przetwarzania danych uzyskano ponad 90-procentow skuteczno klasyfikacji [157].
4.2. Kompresja danych Zadaniem kompresji danych jest zmniejszenie informacji przechowywanej lub przesyłanej na odległo przy zachowaniu mo liwo ci jej pełnego odtworzenia (dekompresji). Zastosowanie sieci neuronowej umo liwia uzyskanie nowych rozwi za kompresji typu stratnego (z pewn utrat informacji) o dobrych wła ciwo ciach uogólniaj cych i stosunkowo du ym współczynniku kompresji.
4.2.1. Sie neuronowa wielowarstwowa do kompresji danych Struktur sieci neuronowej do kompresji danych przedstawiono na rys. 4.2. Jest to sie dwuwarstwowa, w której liczba neuronów w warstwie wyj ciowej jest równa liczbie w złów w warstwie wej ciowej. Warstwa ukryta zawiera q neuronów, przy czym q « n. Warstwy wej ciowa i ukryta stanowi wła ciw kompresj danych, natomiast warstwy ukryta i wyj ciowa realizuj dekompresj . Sie jest typu autoasocjacyjnego, co oznacza, e wektor ucz cy d jest równy wektorowi wej ciowemu x, a sygnały wyj ciowe sieci xˆi ,
odpowiadaj sygnałom wej ciowym xi. Kompresja dotyczy danych podzielonych na ramki, b d ce ci giem wektorów n-elementowych (n - liczba w złów wej ciowych). Wobec q « n warstwa ukryta zawiera mniejsz ilo informacji ni warstwa wej ciowa, ale informacja ta reprezentuje wiedz reprezentatywn dla zbioru danych, wystarczaj c do rekonstrukcji oryginalnych danych wej ciowych z okre lon dokładno ci . Warstwa ukryta reprezentuje wi c składniki główne rozkładu (Principal Component Analysis - PC A), stanowi ce j dro informacji [102]. Liczba tych składników jest równa liczbie neuronów q w warstwie ukrytej. Wi ksza liczba q odpowiada zwi kszonej informacji zawartej w neuronach warstwy ukrytej, co z kolei umo liwia wierniejsze odtworzenie informacji wej ciowej uzyskane w wyniku dekompresji. Przy zastosowaniu sieci liniowej wektor h utworzony przez odpowiedzi neuronów w warstwie ukrytej oraz zdekompresowany wektor xˆ odpowiadaj cy sygnałom wyj ciowym sieci s opisane nast puj cymi zale no ciami macierzowymi:
h = Ax (4. 23) xˆ = Bh = BAx (4. 24) w których macierze A i B s utworzone przez wagi neuronów odpowiednio warstwy ukrytej i wyj ciowej sieci, jak to pokazano na rys. 4.2.
Rysunek 4.2 Sie neuronowa jednokierunkowa do kompresji danych Uczenie sieci, czyli optymalny dobór wag tworz cych macierze A i B wymaga, aby ró nica mi dzy xij oraz
xˆij
dla wszystkich n składowych wektora xj (j = 1,2, . . . , / V ) była jak najmniejsza. Prowadzi to do definicji funkcji celu w postaci
E=
1 2
N
n
j =1 i =1
(x
− xˆ ij ) (4. 25) 2
ij
Wobec prostok tno ci obu macierzy A i B nie istnieje rozwi zanie analityczne problemu, a wynik uzyskany w drodze minimalizacji funkcji celu (4.25) jest niejednoznaczny w odniesieniu do rozwi zania dostarczanego przez przekształcenie Karhunena-Loevego, gdy ka da macierz b d ca liniowym przekształceniem macierzy A i B (np. A → T-1A, B → BT) spełnia jednakowo dobrze równanie (4.24). Projektuj c sie do kompresji danych nale y rozstrzygn problem funkcji aktywacji neuronów warstwy ukrytej. Jak pokazały badania przeprowadzone przy zastosowaniu ró nego rodzaju nieliniowo ci, najlepsze wyniki uczenia w sensie bł du redniokwadratowego i najmniejszej liczby iteracji uzyskuje si przy zało eniu liniowo ci neuronów. Tak e jako obrazu zdekompresowanego jest w tym przypadku lepsza.
4.2.2. Miary kompresji Dane odtworzone w wyniku dekompresji (oznaczone przez x) s obarczone zawsze pewnym bł dem. Miara tego bł du mo e by przyjmowana w ró ny sposób. W badaniach zastosowano miar MSE definiowan w postaci
M S E = d ( x, xˆ ) =
1 M
M i =1
(xi − xˆi )2
(4. 26)
przy czym M oznacza wymiar wektora danych x. W przypadku danych dwuwymiarowych wektor x tworz kolejne dane dotycz ce podobrazów. W tym przypadku przy zało eniu n składowych wektora x tworz cych jedn ramk i p ramek otrzymuje si wyra enie okre laj ce miar MSE w postaci
MSE=
1 np
p
h
v
k =1 i =1 j =1
(x ( ) − xˆ ( ) ) k ij
k ij
2
(4. 27)
przy h i v oznaczaj cych liczb pikseli ramki, odpowiednio w osi x i y. Istotnym parametrem, okre laj cym stosunek ilo ci informacji przypisanej obrazowi sprzed kompresji do ilo ci informacji odpowiadaj cej obrazowi skompresowanemu, jest współczynnik kompresji definiowany w postaci
Kr =
p × n×T (4. 28) p × q ×T + q × n×t
przy czym T i t oznaczaj liczb bitów do kodowania odpowiednio: danych i wag. Przy du ej liczbie ramek (p » n) dominuje w mianowniku czynnik pierwszy i współczynnik kompresji mo e by sprowadzony do stosunku liczby neuronów wej ciowych n i ukrytych q
Kr ≈
n (4. 29) q
Im wi kszy jest współczynnik Kr, tym wi kszy jest zysk osi gni ty przy przechowywaniu lub przesyłaniu informacji, jednocze nie trudniejsze zadanie stawiane algorytmowi ucz cemu sieci i zwykle wi ksze zniekształcenia powstaj ce w zdekompresowanym obrazie. Zniekształcenie dekompresji mierzy si najcz ciej za po rednictwem współczynnika PSNR (Peak Signalto-Noise Ratio), mierzonego w decybelach i definiowanego w postaci
P S N R = 10 log
(2
)
2
−1 (4. 30) MSE k
przy czym k jest liczb bitów u ytych do kodowania stopni szaro ci obrazu. Przy 8-bitowej reprezentacji współczynnik PSNR okre la wzór PSNR = 10 log(2552/MSE). Im wi ksza jest warto współczynnika PSNR, tym lepsza jest jako obrazu.
4.2.3. Hierarchiczny podział kompresowanych danych Przed przyst pieniem do kompresji dane nale y podzieli na ramki o odpowiednich wymiarach. Najprostsza, ale najmniej skuteczna metoda, nie uwzgl dniaj ca zró nicowania danych w poszczególnych ramkach, polega na równomiernym podziale całego obrazu na odpowiedni liczb ramek. Metoda, która uwzgl dnia zró nicowanie danych w obr bie poszczególnych ramek, nosi nazw podziału hierarchicznego. W metodzie tej obraz jest dzielony na segmenty o podobnym stopniu szaro ci. Segmentacja jest dokonywana przez regularn dekompozycj obrazu, prowadz c do powstania struktury drzewiastej. Elementy obrazu stanowi ce cz ci składowe drzewa s dzielone na mniejsze bloki, je li ró nica pomi dzy stopniami szaro ci pikseli w segmencie jest wi ksza od zało onego progu. U ycie tej metody prowadzi w rezultacie do podziału obrazu na ramki o ró nych rozmiarach; małe bloki słu do reprezentacji obszarów rysunku o du ej skali szczegółowo ci, natomiast wi ksze reprezentuj obszary, w których obserwuje si mał liczb szczegółów. Decyzja o rozmiarze bloku jest podejmowana na podstawie pomiaru kontrastu rozumianego jako ró nica mi dzy najwy szym i najni szym poziomem szaro ci w danym bloku. Równocze nie jest tworzona struktura drzewa. Okre lenie rozmiarów i liczby bloków rozpoczyna si od podziału obrazu na bloki kwadratowe o wymiarze b d cym wielokrotno ci liczby 2. Dla ka dego z tak utworzonych bloków jest sprawdzany kontrast. Je li jest on mniejszy od zało onego progu, to otrzymany blok nie ulega podziałowi i jest przypisywany do warstwy umownie nazwanej L1. W przeciwnym przypadku blok jest dzielony na 4 równe cz ci; dla ka dej z nich jest przeprowadzana kontrola kontrastu, a nast pnie na podstawie jej wyniku dokonywane przypisanie bloku do warstwy L2 b d dalszy jego podział. Operacje s przeprowadzane dopóty, dopóki wielko otrzymanych bloków nie osi gnie wymiaru wektora odpowiadaj cego jednostkowej ramce (standardowy wymiar minimalnej ramki przyjmuje si najcz ciej równy 64 pikselom). Przykład takiego podziału fragmentu obrazu przy trzech poziomach hierarchii przedstawia rys. 4.3 [108, 146].
Rysunek 4.3 Ilustracja hierarchicznego podziału obrazu
Algorytm podziału hierarchicznego obrazu mo e by przedstawiony w postaci: • wst pny podział obrazu na bloki maksymalnego wymiaru (np. 32 x 32 piksele); • okre lenie warto ci redniej szaro ci w bloku
xm =
1 hv
h
v
i =1 j =1
xij (4. 31)
przy czym h i v oznaczaj wymiary poziomy i pionowy bloku (w pikselach), a xij - stopie szaro ci przypisany pikselowi (i, j ) ; • dla ka dego piksela w bloku sprawdza si nierówno xij − x m ≤ R (4. 32) w której R jest stał (zwykle par procent | xij — x m |, okre laj c liczb L pikseli nie spełniaj cych powy szego warunku; • je li relacja (4.32) jest spełniona dla wszystkich pikseli, to proces dalszego podziału bloku jest wstrzymywany, w przeciwnym przypadku decyzj uzale nia si od warto ci L; je li
L > T O L , przy czym TOL oznacza przyj t warto h×v
procentow tolerancji, blok ulega
dalszemu podziałowi; • proces podziału hierarchicznego ramek przeprowadza si a do osi gni cia ich minimalnego standardowego wymiaru (zwykle (8 x 8)); wi ksze bloki podlegaj redukcji do tego wymiaru, przy czym pozostawionym pikselom przypisuje si u rednion warto szaro ci pikseli zredukowanych. W celu umo liwienia odtworzenia obrazu zdekompresowanego wszystkie operacje podziału hierarchicznego s zapisywane w tzw. mapie podziału. Proces dekodowania, czyli odtwarzania oryginalnej postaci obrazu na podstawie informacji zawartej w hierarchicznych ramkach i mapie podziału wymaga u ycia interpolacji do odtworzenia stopni szaro ci zredukowanych wcze niej pikseli. Tylko ramki o standardowym wymiarze oryginalnym nie podlegaj zmianom. Pozostałe podlegaj procesowi biliniowej interpolacji dla odtworzenia stopni szaro ci pikseli wcze niej zredukowanych. Wyra enie interpolacyjne mo e by zapisane w postaci f ( x, y ) = (1 − t )(1 − u ) f 1 + t (1 − u ) f 2 + tuf 3 + (1 − t )uf 4 (4. 33)
Rysunek 4.4 Schemat przetwarzania obrazu z u yciem sieci neuronowej przy czym
t=
x − x1 y - y1 , xi, x 2 , x 3 , x4, y 1 , y2, y 3 , y4 oraz f1, f2, f3, f4 s odpowiednio ,u = x 2 − x1 y 2 − y1
współrz dnymi x i y oraz stopniami szaro ci 4 pikseli niezredukowanych, uło onych w w złach kwadratu, podlegaj cych interpolacji. Zmienne (x, y) oznaczaj współrz dne pikseli podlegaj cych odtworzeniu. Opisana procedura podziału hierarchicznego została zaimplementowana w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej jako program PRENET, a procedura dekodowania jako program POSTNET. Schemat ogólny kompresji/dekompresji za pomoc sieci neuronowej przedstawiono na rys. 4.4.
Rysunek 4.5 Wynik kompresji obrazu poddanego uczeniu: a) obraz oryginalny; b) obraz odtworzony przy współczynniku kompresji KT = 12,8; c) obraz odtworzony przy współczynniku kompresji Kr = 21,3 Zastosowanie podej cia hierarchicznego w kompresji obrazów umo liwia zmniejszenie liczby wektorów ucz cych sieci przy zachowaniu najistotniejszych informacji zawartych w obrazie. Zapewnienie zbli onego do siebie kontrastu wewn trz bloków umo liwia wydatne zmniejszenie bł du kompresji, dzi ki czemu przy zadanym poziomie PSNR jest mo liwe uzyskanie wi kszych współczynników kompresji KT. Rozwi zanie omówione wy ej zostało przetestowane na wielu przykładach obrazów o ró nych wymiarach, w tym 128 x 128, 256 x 256, 512 x 512 pikseli. Przedstawiono tu jedynie wybrane wyniki dotycz ce obrazów 512 X 512. Przy takim wymiarze liczba danych ucz cych jest równa 262 144. Zastosowanie hierarchizacji przy odpowiednio ustawionych warto ciach R i TOL (typowe warto ci to R = 10, TOL = 5%) umo liwia zmniejszenie liczby danych ucz cych nawet o 30%. Aby uzyska najlepsze rezultaty kompresji, nale y zastosowa w uczeniu obraz o najwi kszej liczbie szczegółów. W eksperymentach numerycznych uczenia sieci przeprowadzonych za pomoc programu NETTEACH zastosowano obraz 512 x 512 pikseli, przedstawiony na rys. 4.5a. Proces uczenia przeprowadzono dla dwu sieci, zawieraj cych odpowiednio 5 (sie 64 — 5 — 64) oraz 3 (sie 64 — 3 — 64) neurony ukryte. W pierwszym przypadku współczynnik kompresji jest równy Kr = 12,8, a w drugim KT = 21,3. Uzyskana jako obrazów odtworzonych była zadowalaj ca, a współczynniki PSNR odpowiadaj ce obu przypadkom równe PSNR = 26,1 (Kr = 12,8) oraz PSNR = 25,2 (Kr = 21,3). Rysunek 4.5b przedstawia obraz odtworzony przy KT — 12,8, a rys. 4.5b - przy Kr = 21,3. Sie wytrenowana została poddana badaniom zdolno ci uogólniania przy zastosowaniu obrazów, które nie uczestniczyły w procesie uczenia.
Rysunek 4.6 Wynik testowania wytrenowanej sieci przy u yciu obrazu Lena: a) współczynnik kompresji Kr = 12,8; b) współczynnik kompresji KT = 21,3 Na rysunku 4.6 przedstawiono przykładowe wyniki testowania na obrazie Lena, przy czym rys. 4.6a odpowiada Kr = 12,8, a rys. 4.6b - Kr = 21,3. W obu przypadkach jako odtworzonego obrazu jest zadowalaj ca, a odpowiednie warto ci współczynników PSNR (PSNR = 27,8 dla Kr = 12,8 oraz PSNR = 26,5 dla Kr = 21,3) s wi ksze ni dla obrazu poddanego uczeniu.
4.3. Sie neuronowa interpoluj ca Interpolacja jest procesem polegaj cym na okre leniu warto ci funkcji w punktach po rednich w stosunku do warto ci zmierzonych. Jej celem jest przywrócenie rzeczywistej, pełnej postaci niepełnego zbioru danych na podstawie jego fragmentów. Przy formułowaniu matematycznych zało e przyjmuje si ci gło funkcji oraz jej pierwszej pochodnej (funkcja klasy C1). Próbki, na podstawie których odbywa si interpolacja, musz spełnia kryterium Nyquista. Sie neuronowa jednokierunkowa o sigmoidalnej funkcji aktywacji mo e z powodzeniem spełnia funkcj układu interpolacyjnego. Warstwa wej ciowa reprezentuje dane niepełne dotycz ce sygnałów zmierzonych. Warstwa wyj ciowa odpowiada danym interpolowanym. Poniewa liczba danych wyj ciowych jest, jak wynika z samej definicji interpolacji, wi ksza ni liczba danych wej ciowych, zadanie sieci jest le uwarunkowane i trudno jest uzyska dobre zdolno ci uogólniania. Dla ułatwienia zadania zastosowano sie z rozszerzeniem funkcyjnym Pao, rozbudowan przez dodanie do istniej cych w złów pomiarowych x1, x2,..., xn ich kombinacji iloczynowych. W ten sposób sygnałami wej ciowymi sieci s : x1, x1x2, x2, x2x3, x3, ..., xn-1 xn, xn,, x1 xn,. Zwi kszenie liczby w złów wej ciowych przez uwzgl dnienie ich kombinacji iloczynowych polepsza uwarunkowanie problemu interpolacyjnego i zwi ksza zdolno ci uogólniania sieci.
4.3.1. Interpolacja przebiegów czasowych Badania dotycz ce interpolacji przeprowadzono dla przebiegów czasowych odpowiadaj cych stanom nieustalonym w układach elektrycznych. Zało ono przebieg czasowy y(t) dany w postaci
y (t ) = Ae −αt sin (ωt ) (4. 34) Sie poddano uczeniu przy zastosowaniu przebiegu czasowego (4.34) o parametrach tłumienia a
÷20) i
rd pulsacji ω ∈ (50 ÷ 100 ) . Celem uczenia sieci jest takie ukształtowanie wag, aby umo liwiały odtworzenie s
pełnego przebiegu y (t) na podstawie fragmentarycznych danych dotycz cych tego przebiegu. Do bada przyj to przedział czasowy, w jakim jest odtwarzana interpolowana krzywa, równy 128 ms. Sygnał o parametrach α i ω zawieraj cych si w podanych przedziałach został poddany próbkowaniu z okresem równym l ms, w wyniku czego otrzymano 128 próbek, b d cych zdyskretyzowan postaci tego sygnału w przyj tym przedziale czasowym. Ze zbioru zdyskretyzowanych warto ci wybrano próbki o numerach odpowiadaj cych wielokrotno ci liczby 8 (16 próbek), które stanowiły wektor wej ciowy ucz cy. Wektorowi wyj ciowemu reprezentuj cemu warto ci dane odpowiada pełna posta 128 warto ci dyskretnych. Ze wzgl du na du dysproporcj mi dzy liczb neuronów w warstwach wej ciowej i wyj ciowej, ujemnie wpływaj cej na zdolno ci uogólniania sieci, zwi kszono liczb neuronów w warstwie wej ciowej do 32, stosuj c rozszerzenie funkcyjne Pao przez dodanie 16 kombinacji iloczynowych sygnałów yi. Liczb neuronów w warstwie ukrytej przyj to równ 18. Całkowita liczba wag w sieci wynosiła 3026. Liczb losowo wybranych par wektorów
ucz cych przyj to równ 80, kieruj c si przy jej wyborze kryterium Vapnika-Chervonenkisa. Przy generacji danych ucz cych przyj to zasad równomiernego podziału zakresu a i u przebiegu y(t) opisanego wzorem (4.34). Proces uczenia sieci interpoluj cej jest skomplikowany i długotrwały nawet przy zastosowaniu efektywnych algorytmów uczenia. Przeprowadzony, przy zastosowaniu programu Netteach, wymagał ok. 2000 cykli ucz cych (ok. 5000 odwoła do funkcji celu) i zajmował około l godziny na komputerze IBM PC 486. Proces uczenia przerwano przy warto ci funkcji celu równej 0,5 i maksymalnej ró nicy mi dzy warto ci zadan a aktualn mniejszej ni 0,1.
Rysunek 4.7 Interpolacja przebiegów czasowych przy u yciu sieci neuronowej: a) dane wej ciowe; b) dane wyj ciowe (d — linia przerywana oznacza przebieg zadany; y - linia ci gła – przebieg odtworzony przez sie ) Na rysunku 4.7 przedstawiono wyniki interpolacji. Przebieg z rys. 4.7a odpowiada przykładowym danym ucz cym (16 punktów w złowych), a przebieg z rys. 4.7b reprezentuje pełn posta krzywej oryginalnej (linia przerywana) oraz krzywej odtworzonej przez sie (linia ci gła).
4.3.2. Regeneracja obrazów z wykorzystaniem sieci interpoluj cej Sie neuronowa interpoluj ca mo e by z powodzeniem zastosowana do regeneracji obrazu, polegaj cej na przywróceniu brakuj cych jego fragmentów. Tego typu regeneracj mo na zastosowa w przypadku wyst pienia w obrazach regularnych zakłóce , wynikaj cych na przykład z uszkodzenia wyst puj cego w okre lonym miejscu linii transmisyjnej. Na etapie uczenia zakłada si , e jest równie znany obraz oryginalny, nie zniekształcony, umo liwiaj cy przeprowadzenie uczenia metod propagacji wstecznej. Aby uniezale ni si od warto ci zakłóce , odpowiadaj cych brakuj cym fragmentom obrazu w procesie wst pnego przygotowania danych, usuwa si je, redukuj c tym samym wymiar wektora wej ciowego x i sprowadzaj c zadanie do zagadnienia interpolacyjnego.
Rysunek 4.8 Wynik regeneracji obrazu za pomoc sieci interpoluj cej: a) obraz zaszumiony; b) obraz zregenerowany uzyskany w wyniku uczenia Uszkodzenia obrazu, które mog by usuni te t metod , nie mog przekracza pewnej procentowej warto ci (zwykle ok. 30%). St d wymiary wektorów wej ciowego i wyj ciowego s porównywalne i nie zachodzi potrzeba stosowania rozszerzenia funkcyjnego Pao, jak w przypadku omówionym w poprzednim podrozdziale. Przy regeneracji, podobnie jak przy kompresji, stosuje si podział obrazu na ramki i sekwencyjne podawanie na wej cie sieci kolejnych wektorów x odpowiadaj cych poszczególnym ramkom. Aby sprawdzi skuteczno metody, zastosowano proces regeneracji dla obrazu 128 x 128 pikseli o regularnych zniekształceniach, przedstawionego na rys. 4.8a. Po usuni ciu zaszumionych fragmentów ramek wymiar wektora wej ciowego x został zredukowany z 64 do 54. Sie neuronowa interpoluj ca o strukturze 54 — 15 — 64 została poddana uczeniu, w wyniku którego uzyskano obraz odtworzony, bez zniekształce , przedstawiony na rys. 4.8b. Aby sprawdzi zdolno ci uogólniania zaprojektowanej sieci, regeneracji poddano inny zniekształcony obraz, który nie uczestniczył w procesie uczenia (rys. 4.9a), uzyskuj c zadowalaj c jako obrazu odtworzonego (rys. 4.9b).
Rysunek 4.9 Wynik regeneracji obrazu za pomoc sieci interpoluj cej: a) obraz zaszumiony; b) obraz zregenerowany uzyskany w wyniku testowania
4.4. Modelowanie i sterowanie obiektów dynamicznych 4.4.1. Wprowadzenie W odró nieniu od procesów statycznych, takich jak rozpoznawanie wzorca niezmiennego w czasie, w systemach dynamicznych obiekt podlegaj cy rozpoznaniu zale y od chwilowych warto ci par ucz cych, b d cych funkcj czasu. Je li w odró nieniu od dotychczasowych oznacze przez x oznaczy si wektor stanu x ∈ Rn, u - wektor wej ciowy u ∈ RN, a y - wektor wyj ciowy, y ∈ RM, to ogólny opis układu nieliniowego w dziedzinie dyskretnej mo e by przedstawiony w postaci [97]:
x(k + 1) = φ [x(k ), u (k )] (4. 35)
y (k ) = Cx(k ) + Du (k ) (4. 36) przy czym x(k), u(k), y(k) oznaczaj wektory odpowiedzi czasowych odpowiednich zmiennych, φ i ψ s oznaczeniami wektorowymi statycznych funkcji nieliniowych, φ∈ Rn, ψ ∈ RM definiuj cymi inwariantny w czasie, przyczynowy obiekt nieliniowy. Równania (4.35) i (4.36) s nieliniowym uogólnieniem liniowych równa stanu: x(k + 1) = Ax(k) + Bu(k) y(k)= Cx(k) + Du(k) W odró nieniu od równa liniowych, zwi zki wynikaj ce z równa nieliniowych s bardziej skomplikowane i, jak dotychczas, nie istniej ogólne metody rozwi zywania takich systemów. Dotyczy to w szczególno ci problemu identyfikacji obiektu oraz jego sterowania. Problem identyfikacji obiektu sprowadza si do zbudowania jego modelu i okre lenia parametrów tego modelu w taki sposób, aby odpowiedzi obiektu y(k) i modelu y(k) na to samo wymuszenie u(k) były sobie równe z okre lon tolerancj , to znaczy
yˆ − y ≤ ε (4. 37) Sterowanie adaptacyjne znanego obiektu nieliniowego polega na doborze takiego sterowania u(k) stanowi cego wymuszenie dla obiektu, aby odpowied tego obiektu y(k) ledziła i nad ała za odpowiedzi modelu odniesienia ym(k) pobudzonego sygnałem r(k) (rys. 4.10). Celem sterowania adaptacyjnego jest okre lenie takiej funkcji sterowania u(k), aby była spełniona relacja
lim y (k ) − y m (k ) ≤ ε (4. 38) k →∞
Rysunek 4.10 Schemat układu sterowania adaptacyjnego
Rysunek 4.11 Struktury sieci neuronowych stosowanych do identyfikacji nieliniowych obiektów dynamicznych: a) sie jednokierunkowa; b) sie rekurencyjna Wielko ym(k) reprezentuje wielko zadan obiektu odniesienia przy zadanym dla niego wymuszeniu r ( k ) . Je li przyjmie si w układzie istnienie tylko jednego wymuszenia odniesienia r ( k ) , to zadaniem procesu adaptacyjnego jest dobór struktury i parametrów sterownika, który sygnał wej ciowy r(k) przetworzy w po dan posta sygnału steruj cego u(k), zapewniaj c spełnienie warunku (4.38). Nawet je li funkcja nieliniowa obiektu φ jest znana i s dost pne wektory stanu x, okre lenie funkcji sterowania u(k} lub parametrów sterownika nieliniowego jest problemem trudnym pod wzgl dem oblicze numerycznych i wymagaj cym spełnienia wielu warunków ze wzgl du na stabilno systemu. Z wielu mo liwych reprezentacji systemu nieliniowego wybrano reprezentacj w postaci sieci neuronowej sigmoidalnej, w ogólno ci wielowarstwowej. Rysunek 4.11 przedstawia dwa ogólne schematy modelu nieliniowego systemu dynamicznego.
Schemat z rys. 4.11a jest modelem jednokierunkowym o przepływie sygnałów od wej cia do wyj cia i odpowiednikiem układu liniowego typu FIR (o sko czonej odpowiedzi impulsowej). Model z rys. 4.11b układem ze sprz eniem zwrotnym realizowanym przez macierz liniowych powi za dynamicznych Z(z) i nieliniowym odpowiednikiem układu liniowego typu IIR (o niesko czonej odpowiedzi impulsowej). Układy N1 i N2 oznaczaj klasyczn sie neuronow wielowarstwow , a Z(z) - macierz powi dynamicznych, zwykle diagonaln o elementach
Z ii = z
−di
, przy czym
z
−di
jest jest jest za
jest operatorem opó nienia o di
jednostek czasowych (najcz ciej di = 1). Jakkolwiek oba modele wykorzystuj dwa oddzielne układy sieci neuronowych N1 i N2 , w praktycznych zastosowaniach cz sto ogranicza si do schematów uproszczonych, wykorzystuj cych tylko jedn struktur sieci neuronowej N1 lub N2 (N1 — Z w strukturze jednokierunkowej oraz N2 - Z w strukturze ze sprz eniem zwrotnym). Co wi cej, przy ograniczeniu si do jednego wej cia i wyj cia oraz potraktowaniu wektorów u i y jako wektorów zło onych ze składowych opó nionych odpowiednio wymuszenia u i odpowiedzi y, to jest u(k) = [u(k),u(k — 1),... ,u(k — m + 1)] T, y(k) = [y(k), y(k — 1),..., y(k — n + 1)]T , ogólny opis nieliniowego modelu dynamicznego mo e by przedstawiony z pomini ciem wektora stanu x
y (k + 1) = f ( y (k ), u (k )) (4. 39) Jego model wykorzystuj cy sie neuronow przedstawiono na rys. 4.12.
Rysunek 4.12 Model identyfikacji układu dynamicznego wykorzystuj cy sie neuronow Szereg członów opó niaj cych wyst puj cych na wej ciu układu stanowi lini opó niaj c z odczepami (Tapped Delay Line - TDL). Nale y zaznaczy , e schemat przedstawiony na rys. 4.12 jest tylko jednym z rozwi za ogólnego modelu sieci dynamicznej z rys. 4.11.
4.4.2. Identyfikacja obiektu dynamicznego z zastosowaniem sieci neuronowej W praktyce najcz ciej u ywanym modelem neuronowym obiektu dynamicznego jest układ uproszczony z rys. 4.12. W zastosowaniu do identyfikacji obiektu wł cza si go zwykle w sposób szeregowo — równoległy, wykorzystuj cy w predykcji opó nione odpowiedzi obiektu. Zalet takiego wł czenia jest pewno , e sygnały wej ciowe modelu, stanowi ce opó nione próbki odpowiedzi obiektu, s ograniczone (obiekt przyjmuje si z góry za stabilny), jak równie uproszczenie formuły generacji gradientu. Rysunek 4.13 ilustruje sposób poł czenia układu identyfikuj cego. Sygnał niedopasowania e(k) steruje procesem adaptacji parametrów sieci neuronowej.
Rysunek 4.13 Schemat identyfikacji modelu układu dynamicznego Przy takim wł czeniu odpowied y (k) sieci neuronowej zale y od wektora u, reprezentuj cego ci g opó nionych próbek sygnału wymuszaj cego, oraz od wektora d, reprezentuj cego ci g opó nionych próbek sygnału zadanego, stanowi cych wektor wej ciowy sieci. Sie neuronowa przy takim wł czeniu pełni funkcje klasycznej sieci wielowarstwowej typu statycznego, a generacja wektora gradientu odbywa si zgodnie ze standardow metod propagacji wstecznej sieci wielowarstwowej, omówion w rozdz. 2. Badaniom numerycznym poddano szereg nieliniowych obiektów dynamicznych uzyskuj c zadowalaj ce wyniki identyfikacji. Jako przykład przedstawiono identyfikacj nieliniowego obiektu dynamicznego zło onego z poł czonych kaskadowo filtru Butterwortha szóstego rz du oraz cz ci nieliniowej przyj tej w postaci funkcji wielomianowej x3.
Rysunek 4.14 Wynik testowania zidentyfikowanego modelu układu dynamicznego przy u yciu sygnału wej ciowego trójk tnego W modelu neuronowym tego typu obiektu przyj to sie o jednej warstwie ukrytej zawieraj cej 25 neuronów. Warstw wej ciow stanowiły 24 w zły, a wektor wej ciowy był zło eniem 12 opó nionych próbek wektora wej ciowego x i 12 próbek wektora d, stanowi cego odpowied obiektu.
Rysunek 4.15 Wynik testowania zidentyfikowanego modelu układu dynamicznego przy u yciu sygnału wej ciowego sinusoidalnego tłumionego Sygnał wej ciowy u(k) sieci stanowiły warto ci losowe. Uczenie zostało przeprowadzone przy zastosowaniu programu Netteach. Po dobraniu warto ci wag przeprowadzono próby testuj ce zdolno ci uogólniania sieci, podaj c na wej cie obiektu sygnały deterministyczne o okre lonym kształcie. Na rysunkach 4.14 oraz 4.15 pokazano przebiegi wygenerowane przez model neuronowy (linia przerywana) oraz przebiegi otrzymane na wyj ciu obiektu (linia ci gła) dla dwóch postaci przebiegów podanych na wej cie zidentyfikowanego układu. W pierwszym przypadku był to sygnał trójk tny, w drugim - tłumiony wykładniczo sygnał sinusoidalny. Jak wida z zał czonych rezultatów graficznych, ró nice mi dzy warto ciami danymi i aktualnie generowanymi przez model układu, poddanego identyfikacji, s do małe i wiadcz o dobrych wła ciwo ciach rozwi zania.
4.4.3. Schematy sterowania neuronowego obiektów dynamicznych Sterowanie nieliniowych obiektów dynamicznych sprowadza si do doboru funkcji sterowania u(k), która, stanowi c pobudzenie obiektu, generuje na jego wyj ciu sygnał czasowy y(k) nad aj cy za sygnałem ym(k) wytwarzanym przez układ odniesienia (rys. 4.10b). Przy zadanym sygnale wymuszaj cym r(k) odpowiedni posta u(k) uzyskuje si przez zastosowanie nieliniowego sterownika .dynamicznego, adaptuj cego si w procesie uczenia w taki sposób, aby zminimalizowa bł d chwilowego niedopasowania e(k)=|y(k) - ym(k)|. Sterownik ma posta sieci neuronowej o strukturze z rys. 4.12. Bezpo redni schemat wł czenia sterownika neuronowego przedstawia rys. 4.16.
Rysunek 4.16 Układ sterowania adaptacyjnego obiektu o znanych parametrach Działanie układu jest zdeterminowane znajomo ci obiektu, a adaptacja jest mo liwa tylko wówczas, gdy funkcja opisuj ca obiekt jest z góry znana. Przy oznaczeniach y = [ y ( k ) , y(k — 1),..., y(k — n + 1)]T, d = [d(k), d(k — 1),..., d(k — q + 1)] T i zało eniu opisu obiektu i modelu odniesienia w postaci odpowiednio y(k + 1) = f(y) + u ( k ) , d(k + 1) = ym(k + 1) = f (d) + r(k) równanie opisuj ce sterowanie u(k) ma posta
u (k ) = − f ( y ) + y (k + 1) (4. 41) Zast puj c zmienn y(k + 1) wyra eniem opisuj cym funkcj odniesienia d(k + 1) otrzymuje si po dan posta sterowania u(k)
u (k ) = − f ( y ) + f (d ) + r (k ) (4. 42) przy zastosowaniu której sygnał wyj ciowy obiektu y(k + 1) i sygnał odniesienia d(k + 1) s sobie równe. Z ostatniej zale no ci wynika, e w takim przypadku sie neuronowa realizuj ca sterownik przy sygnale wej ciowym r(k) jest trenowana w taki sposób, aby realizowa funkcj opisan zale no ci (4.41). Wobec nierealistyczno ci zało enia co do znajomo ci funkcji obiektu, w praktyce stosuje si model po redni sterowania adaptacyjnego, w którym obiekt jest w sposób ci gły identyfikowany dostarczaj c warto ci przybli onej
fˆ ( y ) wykorzystywanej zamiast f(y) w zale no ci (4.41). Po dana posta funkcji mo e by wówczas
zapisana nast puj co:
uˆ (k ) = − fˆ ( y ) + f (d ) + r (k ) (4. 43)
( )
przy czym uˆ k jest przybli eniem funkcji u ( k ) . Schemat poł cze systemu adaptacyjnego o strukturze po redniej przedstawiono na rys. 4.17. Układ wykorzystuje dwie sieci neuronowe. Sie górna, adaptowana sygnałem niedopasowania ei identyfikuje model obiektu. Jej struktura i sposób uczenia s identyczne z przedstawionymi w punkcie poprzednim. Jako wynik uczenia sie dostarcza predykcji sygnału yˆ k u ywanego w uczeniu sieci dolnej, stanowi cej wła ciwy sterownik. Ka dy etap składa si wi c z dwóch kroków: identyfikacji obiektu oraz douczenia parametrów sieci stanowi cej sterownik. W praktyce identyfikacj obiektu przeprowadza si nie w ka dym cyklu adaptacyjnym, lecz z cz stotliwo ci nieco mniejsz . Nale y podkre li , e nawet przy stabilnym obiekcie, ze wzgl du na dynamiczne sprz enie zwrotne, rozwi zanie układu mo e okaza si niestabilne przy niewła ciwym doborze okresów, po których s uaktualniane parametry identyfikowanego modelu obiektu i sterownika. Szczegóły dotycz ce rozwi zania układu adaptacyjnego oraz wyniki symulacji numerycznych nieliniowych obiektów sterowania dynamicznego mo na znale w pracy [97].
( )
Rysunek 4.17 Układ sterowania adaptacyjnego obiektu o nie znanych parametrach
4.5. Predykcja obci e systemu elektroenergetycznego Sieci neuronowe ze wzgl du na dobre wła ciwo ci uogólniaj ce dobrze nadaj si do rozwi zywania ró nego rodzaju zada predykcyjnych. W tym podrozdziale ograniczono si do zaprezentowania predykcji obci e godzinnych polskiego systemu elektroenergetycznego.
Rysunek 4.18 Rozkład obci e systemu elektroenergetycznego o godzinie 1500 odpowiadaj cy sobotom, niedzielom, poniedziałkom i dniom roboczym od wtorku do pi tku Cech charakterystyczn obci e systemu elektroenergetycznego jest powtarzalno wzorców charakteryzuj cych obci enia godzinne, odpowiadaj ce ró nym typom dnia tygodnia i miesi ca. Wyró nia si 4 podstawowe rodzaje wzorców obci e odpowiadaj cych: sobocie, niedzieli, poniedziałkowi i pozostałym 4 dniom roboczym. Ka da godzina dnia charakteryzuje si swoj specyfik . Przykładowo na rys. 4.18 przedstawiono krzywe obci e systemu elektroenergetycznego podane w MW odpowiadaj ce wymienionym wy ej 4 typom dnia o godzinie 1500 [111]. Du y wpływ na dokładno predykcji ma znajomo obci enia z ostatniej godziny, która jest dobrym wska nikiem, co mo e zdarzy si w godzinie nast pnej. Na rysunku 4.19 przedstawiono wykres poboru mocy odpowiadaj cy 2 s siednim godzinom. O x odpowiada obci eniu o godzinie i-tej, o y - o godzinie (i + l)-szej. Dane tworz punkty rozło one wzdłu przek tnej; im wi ksza jest rozpi to tego rozkładu, tym jest wi ksza zmienno obci enia i trudniejsze zadanie predykcji.
Rysunek 4.19 Wykres zale no ci obci enia o godzinie (i + 1) w funkcji obci enia o godzinie i-tej
4.5.1. Architektura sieci i dane ucz ce W rozwi zaniu zagadnienia zastosowano sie sigmoidaln o jednej warstwie ukrytej. Przy predykcji obci enia godzinnego sie zawiera tylko jeden neuron wyj ciowy liniowy, dostarczaj cy informacji, jakie b dzie obci enie systemu w nast pnej godzinie. Liczba w złów wej ciowych sieci neuronowej zale y od czynników branych pod uwag w procesie predykcji. Wi e si to ci le ze sposobem przygotowania danych wej ciowych dla sieci. Pierwszym czynnikiem uwzgl dnianym w procesie predykcji jest typ dnia. Przy rozró nieniu 4 typów wystarcz 2 w zły do ich binarnego zakodowania: (0,0) - sobota, (0,1) - niedziela, (1,0) - poniedziałek, (1,1) - pozostałe dni tygodnia. Przy uwzgl dnianiu jedynie 2 typów dni: dzie roboczy i dzie wi teczny, wystarczy u ycie jednego w zła wej ciowego o przypisanej warto ci zerowej odpowiadaj cej wi tu i warto ci jedynkowej odpowiadaj cej dniu roboczemu. W modelu predykcji uwzgl dnia si obci enia systemu o danej godzinie i kilka godzin wstecz dla dni poprzedzaj cych predykcj . Je li przez p(i, t) oznaczy si pobór mocy systemu odpowiadaj cy i-temu dniu o godzinie t, to zastosowany model nieliniowy mo na opisa równaniem
p (i, t ) = f (W , y (i, t − 1), y (i − 1, t ),..., y (i − 1, t − k ), y (i − 2, t ),..., y (i − d , t − k ))
(4. 43)
w którym W reprezentuje wektor wag sieci, y(j, τ) - znane obci enie systemu w dniu j-tym o godzin τ, a k i d liczb odpowiednio godzin i dni wstecz, branych pod uwag w procesie predykcji. Z wielu eksperymentów numerycznych przeprowadzonych dla polskiego systemu elektroenergetycznego wynika, e najlepsze wyniki odpowiadały wektorom wej ciowym 8- lub 9-elementowym (l lub 2 w zły do kodowania typu dnia, 3 w zły dla obci enia o godzinie t dla 3 ostatnich dni, 3 w zły dla obci enia 3 ostatnich dni o godzinie t - l i jeden w zeł dla obci enia tego samego dnia o godzinie t — 1). Najtrudniejszy jest dobór liczby neuronów w warstwie ukrytej. Zbyt mała liczba neuronów ukrytych uniemo liwia zredukowanie bł du uczenia do odpowiednio niskiego poziomu. Zbyt du a ich liczba jest równie zła ze wzgl du na du y bł d uogólniania. Taka sie nie przedstawiałaby w praktyce adnej warto ci. W rozwi zaniu praktycznym liczb neuronów ukrytych mo na dobiera b d w drodze eksperymentalnej w taki sposób, aby zredukowa do minimum bł d uogólniania, b d zastosowa jedn z metod budowania optymalnej struktury sieci przedstawionych w rozdz. 3. Ostatni problem w przygotowaniu danych to podział danych na cz ucz c (sprawdzaj c ) i testuj c . Przy dost pnej bazie danych z lat 1993 i 1994 oraz dla skrócenia czasu uczenia trenowanie sieci przeprowadzono na połowie danych jednego roku, przy czym baza danych ucz cych obejmuje wszystkie sezony: lato, zim , wiosn i jesie . Przy wi kszej dost pnej bazie danych mo na odpowiednio powi kszy baz ucz c , uwzgl dniaj c w pierwszej kolejno ci dane najnowsze i odrzucaj c wielko ci nietypowe, stanowi ce istotne odchylenie od normy. W efekcie proces prognozowania obci enia mo na przedstawi w nast puj cy sposób: • dobór architektury sieci neuronowej; • wybór danych ucz cych i struktury wektorów wej ciowych; • trening sieci neuronowej; • testowanie sieci na zbiorze sprawdzaj cym i przeprowadzenie ewentualnie dalszego douczenia; • u ycie sieci jako predyktora obci enia godzinnego w fazie odtworzeniowej (wła ciwy etap u ytkowania); • ewentualna adaptacja sieci po upływie pewnego okresu (np. roku).
4.5.2. Wyniki eksperymentów numerycznych Badania eksperymentalne predykcji zostały przeprowadzone na bazie danych polskiego systemu elektroenergetycznego z lat 1993 i 1994. Uczenie przeprowadzono przy zastosowaniu programu Netteach z wykorzystaniem metody zmiennej metryki. Dane ucz ce stanowiły obci enia losowo wybranych 40 dni ka dej pory roku (jesie , zima, wiosna, lato) pochodz ce z 1993 r. Najlepsze rezultaty osi gni to przy 8-elementowym wektorze wej ciowym, rozró niaj cym tylko 2 rodzaje dni: robocze i wi teczne. W wyniku przeprowadzonych prób za optymaln struktur sieci uznano 8-15-10-1. Jako predykcji jest oceniana na podstawie procentowego bł du MAPE (Mean - Absolute Percentage Error), definiowanego w postaci
M APE =
1 n
n
y i − pi
i =1
yi
100% (4. 44)
w której p jest Predykcja, a y - rzeczywistym obci eniem systemu. W wyniku uczenia przy u yciu danych systemu elektroenergetycznego Polski za rok 1993 ze 120 dni uzyskano warto bł du MAPE = 1,32%. Testowanie wytrenowanej sieci przy u yciu danych za cały rok 1994 umo liwiło uzyskanie predykcji obci e godzinnych z bł dem jeszcze mniejszym, równym MAPE = 1,29%. Na rysunku 4.20 przedstawiono rozkład rednich bł dów predykcji uzyskanych za rok 1994 [111]. Jak wida z rozkładu, wi kszo wyników mie ci si w zakresie 1%. Jest to wynik konkurencyjny w stosunku do klasycznych metod przewidywania obci e opartych na statystyce, najcz ciej wykorzystywanych w praktyce elektroenergetycznej, umo liwiaj cych zredukowanie bł du predykcji do warto ci ok. 2%.
Rysunek 4.20 Histogram dokładno ci predykcji obci enia systemu elektroenergetycznego Polski uzyskany na danych testuj cych odpowiadaj cych bazie danych za rok 1994
5.
Sieci neuronowe o radialnych funkcjach bazowych
Sieci neuronowe wielowarstwowe przedstawione w rozdziałach poprzednich odgrywaj z punktu widzenia matematycznego rol aproksymacji stochastycznej funkcji wielu zmiennych, odwzorowuj c zbiór zmiennych wej ciowych x ∈ RN w zbiór zmiennych wyj ciowych y ∈ RM [41, 52]. Inny komplementarny sposób rozumienia odwzorowania zbioru wej ciowego w wyj ciowy, to odwzorowanie przez dopasowanie funkcji aproksymuj cej wielu zmiennych do warto ci danych, czyli rozci gni cie nad zbiorem ucz cym hiperpłaszczyzny wielowymiarowej najlepiej w sensie statystycznym, dopasowuj cej si do warto ci danych. Ze wzgl du na rol , jak pełni neurony ukryte, stanowi one zbiór funkcji b d cych baz dla wektorów wej ciowych x. Specjaln odmian stanowi sieci o radialnej funkcji bazowej, w której neuron ukryty realizuje funkcj zmieniaj c si radialnie wokół wybranego centrum c. Funkcje takie, oznaczane ogólnie w postaci ϕ(|| x – c ||), b d nazywane radialnymi funkcjami bazowymi. Rola neuronu ukrytego b dzie si sprowadza w sieciach radialnych do odwzorowania radialnego przestrzeni wokół jednego punktu zadanego lub grupy takich punktów stanowi cych klaster. Superpozycja sygnałów pochodz cych od wszystkich neuronów ukrytych, dokonywana przez neuron wyj ciowy, umo liwia uzyskanie odwzorowania całej przestrzeni punktów. Sieci typu radialnego stanowi naturalne uzupełnienie sieci sigmoidalnych. Neuron sigmoidalny reprezentował w przestrzeni wielowymiarowej hiperpłaszczyzn separuj c t przestrze na dwie kategorie (klasy), w których był
Wij x j > 0 , albo
spełniony odpowiedni warunek, albo j
Wij x j < 0 . j
Ilustracj takiego podziału przestrzeni przedstawia rys. 5.la. Neuron radialny z kolei reprezentuje hipersfer , dokonuj c podziału kołowego wokół punktu centralnego (rys. 5.1b). W tym wzgl dzie stanowi naturalne uzupełnienie neuronu sigmoidalnego, umo liwiaj ce w przypadku wyst pienia symetrii kołowej danych wydatne zmniejszenie liczby neuronów potrzebnych do realizacji zadania klasyfikacyjnego. Co wi cej, wobec ró nej funkcji, jak pełni neurony, w sieciach radialnych nie wyst puje potrzeba stosowania wielu warstw ukrytych. Typowa sie radialna jest struktur zawieraj c warstw wej ciow , na któr s podawane sygnały opisane wektorem wej ciowym x, warstw ukryt o neuronach radialnych i warstw wyj ciow zwykle zło on z jednego neuronu. Bior c pod uwag , e rol neuronu wyj ciowego jest sumowanie wagowe sygnałów pochodz cych od neuronów ukrytych, neuron wyj ciowy jest zwykle liniowy.
Rysunek 5.1 Ilustracja podziału przestrzeni danych przez: a) sie sigmoidaln ; b) sie radialn
5.1. Podstawy matematyczne Podstaw matematyczn funkcjonowania sieci radialnych jest twierdzenie Covera [21] o separowalno ci wzorców, stwierdzaj ce, e zło ony problem klasyfikacyjny zrzutowany nieliniowo w przestrze wielowymiarow ma wi ksze prawdopodobie stwo by liniowo separowalny ni przy rzutowaniu w przestrze o mniejszej liczbie wymiarów. Przy oznaczeniu przez ϕ(x) wektora funkcji radialnych ϕ(x)= [ ϕ1 ( x ) , ϕ2 ( x ) , . . . , ϕK ( x ) ] T w N wymiarowej przestrzeni wej ciowej, podział tej przestrzeni na X+,X-, przy czym X+ i X- reprezentuj 2 klasy przestrzeni, jest nieliniowo ϕ-separowałny, je li istnieje taki wektor W, e:
W T ϕ ( x) > 0 dla x ∈ X + (5. 1) W T ϕ ( x) < 0 dla x ∈ X − (5. 2) WT(ϕ(x) = 0 reprezentuje granic mi dzy obu klasami. Udowodniono [21], e ka dy zbiór wzorców losowo rozmieszczony w przestrzeni wielowymiarowej jest ϕ-separowalny z prawdopodobie stwem równym l pod warunkiem odpowiednio du ego wymiaru K przestrzeni rzutowania. W praktyce oznacza to, e przyj cie dostatecznie du ej liczby neuronów ukrytych realizuj cych funkcj radialn ϕi(x) zapewnia rozwi zanie problemu klasyfikacyjnego przy u yciu dwu warstw sieci: warstwy ukrytej realizuj cej wektor ϕ(x) i warstwy wyj ciowej o jednym neuronie liniowym opisanym wektorem wagowym W.
Sie neuronowa typu radialnego działa na zasadzie wielowymiarowej interpolacji, której zadaniem jest odwzorowanie p ró nych wektorów wej ciowych xi (i = l, 2,... , p) z przestrzeni wej ciowej N - wymiarowej w zbiór p liczb rzeczywistych di (i = l, 2,... ,p), czyli okre lenie takiej funkcji radialnej F (x), dla której s spełnione warunki interpolacji
F ( xi ) = d i (5. 3)
Sieci neuronowe w uj ciu algorytmicznym
105
przy wyborze funkcji F(x) w postaci
F ( x) =
p i =1
Wiϕ ( x − xi ) (5. 4)
Wybór rodzaju normy mo e by dowolny, cho w praktyce stosuje si zwykle norm euklidesow . Warto ci wektorów xi (i = l, 2,... , p) stanowi centra funkcji radialnej. Przy zało eniu p punktów interpolacyjnych równanie (5.3) mo na zapisa w postaci układu równa liniowych
ϕ11 ϕ 21
ϕ12 ϕ 22
...
...
ϕ p1 ϕ p 2
... ϕ1 p W1 d1 ... ϕ 2 p W2 d2 = ... ... ... ... ... ϕ pp W p dp
(5. 5)
przy czym ϕji = ϕ(||xj-xi||) dotyczy funkcji radialnej w centrum xi. Oznaczaj c macierz o elementach ϕji jako φ oraz przyjmuj c oznaczenia wektorów W = [W1, W2, . . . , Wp]T , d = [ d 1 , d 2 , . . . , d p ] T równanie (5.5) mo e by zapisane w prostej postaci macierzowej
φW = d
(5. 6)
Wykazano, e dla szeregu funkcji radialnych, przy zało eniu x1≠ x2 ≠ ... ... ≠xp, kwadratowa macierz interpolacyjna φ jest nieosobliwa, a przy tym dodatnio półokre lona. Istnieje zatem rozwi zanie równania (5.6) w postaci
W = φ −1 d (5. 7) umo liwiaj ce okre lenie wektora wag W neuronu wyj ciowego sieci. Rozwi zanie teoretyczne problemu okre lone wzorem (5.7) nie jest wła ciwe z praktycznego punktu widzenia z powodu niesatysfakcjonuj cych wła ciwo ci uogólniaj cych sieci towarzysz cych poczynionym na wst pie zało eniom. Przy bardzo du ej liczbie danych ucz cych i równej im liczbie funkcji radialnych problem z matematycznego punktu widzenia staje si przewymiarowany ( le postawiony), gdy liczba równa przewy sza wszelkie stopnie swobody procesu fizycznego modelowanego równaniem (5.5). Oznacza to, e rezultatem takiej nadmiarowo ci wag b dzie dopasowanie modelu do ró nego rodzaju szumów lub nieregularno ci wyst puj cych w danych ucz cych. W efekcie hiperpłaszczyzna interpoluj ca dane ucz ce b dzie niegładka, a zdolno ci uogólniania sieci niewielkie. Aby je poprawi , nale y wydoby dodatkow informacj z nadmiarowej liczby danych i u y jej do regularyzacji problemu, czyli poprawy jego uwarunkowania. Metody regularyzacji, wywodz ce si od Tichonowa, polegaj na stabilizacji procesu przez doł czenie do równania podstawowego dodatkowych warunków w postaci równa wi zów, ograniczaj cych stopnie swobody dobieranych parametrów. Dzi ki działaniu czynnika stabilizuj cego nawet przy nadmiarowej liczbie funkcji radialnych jest mo liwy taki dobór parametrów, który zapewni ci gło i gładko hiperpłaszczyzny aproksymuj cej dane ucz ce, poprawiaj c w ten sposób wła ciwo ci uogólniaj ce sieci. W przypadku rozwa anego procesu regularyzacj Tichonowa mo na zdefiniowa na bazie problemu optymalizacyjnego, w którym minimalizowana funkcja celu mo e by wyra ona wzorem
L( F ) =
1 2
p i =1
[F ( xi ) − d i ]2 + 1 λ PF 2
2
(5. 8)
Składnik pierwszy odpowiada równaniu (5.3), a składnik drugi stanowi regularyzacj , ze współczynnikiem regularyzacji λ, b d cym liczb rzeczywist dodatni . Współczynnik regularyzacyjny ||PF|| jest zło ony z operatora pseudo ró niczkowego P działaj cego na funkcji aproksymuj cej F i stanowi czynnik stabilizuj cy. Jest to odpowiednik funkcji kary w teorii optymalizacji, karz cy za brak gładko ci funkcji F (du e i cz sto powtarzaj ce si zmiany nachyle funkcji aproksymuj cej). Współczynnik regularyzacyjny jest wska nikiem, na ile dane ucz ce s wystarczaj ce do dobrego zdefiniowania problemu interpolacyjnego przy zadanej liczbie funkcji bazowych. Przy λ = 0 działanie regularyzacji ustaje, co odpowiada optymalizacji bez adnych ogranicze . Przy λ→∝ czynnik stabilizuj cy przejmuje całkowit rol w sterowaniu procesem, a rozwi zanie problemu (5.8) przestaje
Sieci neuronowe w uj ciu algorytmicznym
106
odpowiada równaniu wyj ciowemu (5.3). W praktyce warto λ powinna znajdowa si mi dzy tymi dwiema skrajno ciami. Na rysunku 5.2 przedstawiono pogl dowo wpływ czynnika stabilizuj cego na jako uzyskanego rozwi zania problemu aproksymacyjnego. Funkcj aproksymuj c F(x) przedstawion na rys. 5.2a uzyskano przy nadmiarowej liczbie funkcji bazowych i warto ci λ = 0.
Rysunek 5.2 Wpływ regularyzacji na odwzorowanie danych przy nadwymiarowej liczbie funkcji bazowych: a) brak regularyzacji; b) wynik z regularyzacj Wprowadzenie warto ci λ≠0 stabilizuje proces aproksymacji, czyni c rozwi zanie gładkim, przydatnym w praktyce. Teoretyczne rozwi zanie problemu regularyzacji uzyskano przy zastosowaniu funkcji Greena G(x; xi) i mo e by przedstawione w postaci [41]
F ( x) =
1
λ
p i =1
[d i − F ( xi )]G ( x; xi ) (5. 9)
Wyra a si ono poprzez liniow superpozycj funkcji Greena, w której xj jest centrum rozwini cia, a wagi
d i − F ( xi )
Wi =
λ
reprezentuj nie znane współczynniki rozwini cia. Analogicznie do wzoru (5.4) funkcje
Greena G(x; xi) odgrywaj w standardowej postaci
rol
funkcji bazowych, a rozwi zanie problemu interpolacji jest wyra one
F ( x) =
p i =1
Wi G ( x; xi ) (5. 10)
Wprowadzaj c nast puj ce oznaczenia:
F = [ F ( x1 ), F ( x 2 ),..., F ( x p )]T d = [d1 , d 2 ,..., d p ]T G ( x1 ; x1 ) G ( x1 ; x 2 ) G ( x 2 ; x1 ) G ( x 2 ; x 2 ) G= ... ... G ( x p ; x1 ) G ( x p ; x 2 )
... G ( x1 ; x p ) ... G ( x 2 ; x p ) ... ... ... G ( x p ; x p )
W = [W1 , W2 ,...,W p ]T otrzymuje si równowa ny zapis równania (5.9) w postaci
F = GW (5. 11) Dla
W=
1
λ
[d − F ] równanie (5.11) przyjmie posta
(G + λ1)W = d (5. 12)
Sieci neuronowe w uj ciu algorytmicznym
107
w której G jest macierz funkcji bazowych Greena, a składnik λl stanowi czynnik regularyzacyjny, podobnie jak w metodzie optymalizacyjnej z regularyzacj Levenberga-Marquardta. Równanie (5.12) jest regularyzowanym odpowiednikiem równania wyj ciowego (5.6), a macierz Greena G odpowiednikiem macierzy 0. Dla pewnej klasy funkcji Greena macierz G jest równie nieosobliwa i dodatnio okre lona. Przewaga opisu (5.12) polega na czynniku regularyzacyjnym A, który, praktycznie bior c, dla dowolnej liczby funkcji bazowych umo liwia zregularyzowanie problemu interpolacyjnego, daj c rozwi zanie w postaci
W = (G + λ1) −1 d (5. 13) W praktyce funkcje Greena dobiera si w postaci radialnej
G ( x; xi ) = G ( x − xi ) (5. 14) a rozwi zanie (5.10) przyjmie wówczas posta
F ( x) =
p i =1
Wi G ( x − xi
) (5. 15)
Najbardziej popularnym typem radialnej funkcji Greena jest funkcja Gaussa
G ( x; xi ) = exp −
x − xi 2σ
2
= exp −
2 i
N
1 2σ
2 i k =1
(x
− xi , k )
2
k
(5. 16)
przy czym xi oznacza wektor warto ci rednich (centrów), a σi2 - wariancj . Przy gaussowskiej postaci funkcji Greena regularyzowane rozwi zanie problemu aproksymacji za pomoc funkcji radialnych przyjmie posta
F (x ) =
p i =1
Wi exp −
x − xi
2
(5. 17)
2σ i2
b d c liniow superpozycj wielowymiarowych funkcji Gaussa z centrami ulokowanymi w xi (przy warto ci p równej liczbie danych ucz cych wektor centrum odpowiada współrz dnym xi wektora ucz cego) i szeroko ci σi.
5.2. Sie neuronowa radialna Zastosowanie w rozwini ciu (5.15) p funkcji bazowych, przy czym p oznacza liczb wzorców ucz cych, jest niedopuszczalne z praktycznego punktu widzenia, gdy zwykle liczba tych wzorców jest bardzo du a i zło ono obliczeniowa algorytmu niepomiernie wzrasta. Rozwi zanie układu równa (5.12) o wymiarach p x p przy du ych warto ciach p staje si niezwykle trudne, gdy macierze bardzo du e s zwykle le uwarunkowane, a ich współczynnik uwarunkowania mo e osi ga warto ci rz du nawet 1020. Dlatego, podobnie jak w przypadku sieci wielowarstwowych, jest potrzebna redukcja wag, tutaj sprowadzaj ca si do redukcji liczby funkcji bazowych. Poszukuje si rozwi zania suboptymalnego w przestrzeni o mniejszym wymiarze, które z dostatecznie dobr dokładno ci aproksymuje rozwi zanie dokładne (5.10). Przy ograniczeniu si do K funkcji bazowych rozwi zanie aproksymuj ce mo na przedstawi w postaci
F * (x ) =
K i =1
Wi G ( x, t i ) (5. 18)
w której G(x; ti) = G(||x — ti||), K < p, a ti (i = 1,2,. . . , K ) jest zbiorem centrów, które nale y wyznaczy . W szczególnym przypadku przy zało eniu K = p otrzymuje si rozwi zanie dokładne (5.10) o ti = xi. Zadanie aproksymacji polega na dobraniu odpowiednich funkcji Greena G(x; ti) i takim doborze wag Wi (i = l, 2 , . . . , K), aby rozwi zanie (5.18) najlepiej przybli ało rozwi zanie dokładne (5.10). Rozwi zuje si je przy zastosowaniu metody wariacyjnej Galerkina minimalizuj c funkcjonał
( )=
LF
p
K
i =1
j =1
*
W j G ( xi − t i ) − d i
2
+ λ PF *
2
(5. 19)
Pierwszy składnik sumy reprezentuje norm euklidesow ||GW — d|| 2 , w której:
Sieci neuronowe w uj ciu algorytmicznym
108
[
d = d1 , d 2 ,..., d p
]
T
W = [W1 ,W2 ,...,WK ]
T
G ( x1 ; t1 ) G ( x1 ; t 2 ) G ( x 2 ; t1 ) G ( x 2 ; t 2 ) G= ... ... G (x p ; t1 ) G (x 2 ; t p )
... G ( x1 ; t K ) ... G (x 2 ; t K ) ... ... ... G (x p ; t K )
Przy ograniczeniu liczby funkcji bazowych macierz Greena G jest macierz prostok tn o liczbie wierszy zwykle du o wi kszej ni liczba kolumn. Czynnik stabilizuj cy w równaniu (5.19) mo e by wyra ony w postaci [41]
PF *
2
= W T GOW (5. 20)
przy czym G0 oznacza macierz symetryczn o wymiarach K x K
G ( x1 ; t1 ) G ( x1 ; t 2 ) G ( x 2 ; t1 ) G ( x 2 ; t 2 ) GO = ... ... G (x p ; t1 ) G (x 2 ; t p )
... G ( x1 ; t K ) ... G ( x 2 ; t K ) (5. 21) ... ... ... G (x p ; t K )
W efekcie problem optymalizacyjny (5.19) sprowadza si do rozwi zania układu równa liniowych wzgl dem W [41]
(G
T
G + λGO )W = G T d (5. 22)
z czynnikiem regularyzuj cym kontrolowanym przez warto współczynnika λ. Przy warto ci λ=0 (brak regularyzacji) rozwi zanie równania (5.22) przybiera posta
W = G + d (5. 23) przy czym
(
G + = GT G
)
−1
G T (5. 24)
oznacza pseudoinwersj macierzy prostok tnej G. W rozwi zaniach dyskutowanych dotychczas zakładano wyra enie funkcji bazowych Greena zale ne od normy euklidesowej wektora, G(||x — ti |). Bior c pod uwag , e funkcja wielowymiarowa mo e mie ró n zmienno w ka dej osi, wygodnie jest z praktycznego punktu widzenia wprowadzi współczynnik wagowy do definicji normy euklidesowej, przyjmuj c
x
2 Q
= (Qx ) (Qx ) = x T Q T Qx (5. 25) T
Rysunek 5.3 Ogólna posta sieci RBF
Sieci neuronowe w uj ciu algorytmicznym
109
Oznaczaj c iloczyn macierzy QTQ jako macierz C otrzymuje si
x
2 Q
N
=
N
i =1 j =1
C ij xi x j (5. 26)
W szczególno ci je li macierz Q jest diagonalna, to otrzymuje si
xQ=
N
2
i =1
Cii xi2 , a przy zało eniu
Q = l, norma wagowa Euklidesa sprowadza si do normy klasycznej
x
2 Q
= x
2
Przy zastosowaniu normy wagowej uzyskuje si uogólnione wyra enie rozwini cia funkcji radialnych
F * (x ) =
K i =1
(
Wi G x − t i
Q
) (5. 27)
Przy zało eniu postaci gaussowskiej funkcji radialnej Greena o centrum w ti i macierzy wagowej Qi zwi zanej z i-t funkcj bazow otrzymuje si uogólnion posta funkcji Gaussa
(
G x − ti
) = exp(− [x − t ] Q Q [x − t ]) = T
Qi
= exp − przy czym
T i
i
i
i
(5. 28) 1 (x − ti )T Si−1 (x − ti ) 2
1 −1 Si = QiT Qi pełni rol czynnika 1 2 σ 2 standardowej wielowymiarowej funkcji Gaussa 2
wyra onej wzorem (5.16). Uzyskane rozwi zanie (5.27) wyra aj ce funkcj aproksymuj c w przestrzeni wielowymiarowej mo e by zinterpretowane w postaci sieci neuronowej radialnej zwanej sieci RBF (Radial Basis Function) przedstawionej na rys. 5.3 (dla uproszczenia przyj to tylko jedno wyj cie), w której ϕi = G ( x ; t i ) . Jest to struktura dwuwarstwowa, w której jedynie warstwa ukryta reprezentuje odwzorowanie nieliniowe realizowane przez neurony o radialnej funkcji bazowej. Neuron wyj ciowy jest liniowy, a jego rol jest sumowanie wagowe sygnałów pochodz cych od neuronów warstwy ukrytej. Waga WQ, podobnie jak w przypadku funkcji sigmoidalnych, reprezentuje polaryzacj , wprowadzaj c składnik stały przesuni cia funkcji. Uzyskana architektura sieci radialnych ma struktur analogiczn do struktury wielowarstwowej sieci sigmoidalnych o jednej warstwie ukrytej. Rol neuronów ukrytych odgrywaj radialne funkcje bazowe ró ni ce si kształtem od funkcji sigmoidalnych. Pomimo podobie stwa istniej istotne ró nice mi dzy obu typami sieci. Sie radialna ma struktur ustalon o jednej warstwie ukrytej i liniowym neuronie wyj ciowym; sie sigmoidaln mo e mie ró n liczb warstw, a neurony wyj ciowe mog by zarówno liniowe, jak i nieliniowe. W przypadku stosowania funkcji radialnych wyst puje wi ksze zró nicowanie w doborze ich kształtu. Najbardziej popularnym odpowiednikiem funkcji sigmoidalnej jest tutaj funkcja bazowa Gaussa okre lona zale no ci
ϕ (r ) = exp −
r2 , przy czym r = ||x-t||, a σ jest parametrem, σ > 0. Stosuje si równie funkcje 2σ 2
pot gowe, z których wa n klas stanowi 2,...
ϕ (r ) =
1
r +σ 2
2
,
ϕ (r ) = r 2 + σ 2 , ϕ (r ) = r 2 n+1
dla n = O, l,
Sieci neuronowe w uj ciu algorytmicznym
110
Rysunek 5.4 Wykresy funkcji bazowych: a) funkcja Gaussa
ϕ (r ) =
ϕ (r ) = exp −
r2 ; b) funkcja Hardy'ego 2σ 2
1 2 2 ; c) funkcja wielomianowa ϕ (r ) = r + σ ; d) funkcja liniowa σ (r ) = r r +σ 2 2
Przykładowo na rys. 5.4 przedstawiono wykresy funkcji bazowych dwu zmiennych x = [x1, X2]T dla funkcji bazowej Gaussa (rys. 5.4a) oraz funkcji pot gowych (rys. 5.4b, c, d). Zró nicowanie kształtu tych funkcji jest znacznie wi ksze, ni to miało miejsce w przypadku funkcji sigmoidalnych. Funkcja nieliniowa radialna dla ka dego neuronu ukrytego ma inne parametry ti oraz σ i, w sieci sigmoidalnej natomiast stosuje si zwykle standardowe funkcje aktywacji o parametrze β identycznym dla ka dego neuronu. Argumentem funkcji radialnej jest odległo danej próbki x od centrum ti, a w sieci sigmoidalnej jest to iloczyn skalarny wektorów WTx.
5.3. Metody uczenia sieci neuronowych radialnych Metody doboru wag sieci radialnej, omówione w p. 5.2, zakładały, e parametry samych funkcji bazowych s znane, w zwi zku z czym macierze Greena s okre lone i zadanie sprowadza si do rozwi zania nadmiarowego układu równa liniowych o postaci (5.22). W rzeczywisto ci taki schemat działania obowi zuje tylko w przypadku nierealistycznego wyboru K = p, przy którym centra ti = xi s z góry znane, a wybór parametru σ i mo e by łatwo dokonany w drodze eksperymentalnej przy zachowaniu pewnego kompromisu mi dzy gładko ci a dokładno ci odwzorowania. W rzeczywisto ci zawsze K « p i problem uczenia sieci przy wybranym typie radialnej funkcji bazowej składa si z dwu etapów: • doboru centrów i parametrów kształtu funkcji bazowych, • doboru wag neuronów warstwy wyj ciowej. Bior c pod uwag rozwi zanie (5.23), główny problem w uczeniu sieci radialnych sprowadza si do punktu pierwszego. Spo ród wielu istniej cych metod doboru centrów tutaj ograniczono si do kilku najwa niejszych: wyboru losowego, samoorganizuj cego si procesu podziału na klastery i uczenia pod nadzorem. Uczenie b dzie dotyczy sieci radialnej o strukturze ogólnej przedstawionej na rys. 5.3. Przy klasycznym rozumieniu funkcji radialnej (macierz skaluj ca Q w normie euklidesowej ma posta jednostkow ) przedstawionej w rozdziale poprzednim ka dy kanał sieci bior cy udział w tworzeniu funkcji ϕ mo e by zilustrowany w postaci zbioru podstawowych operacji skalarnych, jak to przedstawiono na rys. 5.5. Sie tego typu jest nazywana sieci RBF. Funkcja radialna ϕi reprezentuje jedn z postaci omówionych wcze niej, zale nych od
r = x − ti =
N k =1
(x
k
− t k(i )
)
oraz od dodatkowego parametru σ obowi zuj cego zarówno
w przypadku funkcji pot gowej, jak i funkcji Gaussa. Przy klasycznym rozumieniu sieci radialnej ka da z funkcji bazowych charakteryzuje si wi c jedn ustalon warto ci współczynnika kształtu σ.
Sieci neuronowe w uj ciu algorytmicznym
111
Rysunek 5.5 Struktura sieci RBF Przy zastosowaniu normy wagowej Euklidesa opisanej zale no ci (5.25) wyst puje skalowanie ka dej składowej wektora (x — ti) funkcji radialnej. Przy zało eniu skalowania poprzez macierz Q argument uogólnionej i-tej funkcji radialnej wyrazi si w postaci
x − ti
2 Qi
= [Qi ( x − t i )] [Qi ( x − t i )] (5. 29) T
Implementacja tak zdefiniowanych funkcji radialnych w postaci układu z rys. 5.5 nosi nazw sieci HRBF (Hyper Radial Basis Function). Ilustracj sposobu aktywacji funkcji radialnej dla tego przypadku przy zało eniu dowolnej postaci macierzy Q przedstawiono na rys. 5.6.
Rysunek 5.6 Struktura sieci HRBF W odró nieniu od klasycznej postaci sieci radialnej z rys. 5.5, gdzie współczynnik kształtu σ i był ustalany wspólnie dla wszystkich składowych wektora x i wyst pował jako subparametr funkcji radialnej ϕi, w sieci implementuj cej norm wagow Euklidesa ka da ze składowych wektora xk podlega osobnemu skalowaniu poprzez kwadratow macierz skaluj c Qi
Q11( i ) (i ) Q21 Qi = ... Q N( i1)
Q12(i ) (i ) Q22 ... Q N(i )2
... Q1(Ni ) ... Q2( iN) ... ... (i ) ... Q NN
dobieran oddzielnie dla ka dej i-tej funkcji bazowej (i = 1,2,..., K). W szczególno ci cz sto u ywa si diagonalnej macierzy Q o postaci
[
(i ) Qi = diag Q11(i ) , Q22 ,
]
(i ) , QNN ,
przy której nie wyst puje mieszanie składników wektora x, a jedynie skalowanie indywidualne ka dego z nich w odpowiednim torze. Struktura poł cze w i-tym kanale przypomina wówczas t z rys. 5.5, przy czym sumowanie kwadratowych składników (xk — tk(i)) odbywa si z odpowiedni wag , wynikaj c z warto ci dobranego elementu diagonalnego macierzy Qi. W dalszych rozwa aniach przyj to najbardziej popularny gaussowski kształt funkcji bazowej.
5.3.1. Losowy wybór centrów funkcji bazowych Jest to rozwi zanie najprostsze, w którym wybór stałych parametrów funkcji bazowych jest dokonywany losowo przy rozkładzie równomiernym. Takie podej cie jest dopuszczalne dla klasycznych sieci radialnych pod warunkiem, e rozkład danych ucz cych dobrze odzwierciedla specyfik problemu. Przy wyborze gaussowskiej postaci funkcji
Sieci neuronowe w uj ciu algorytmicznym
112
radialnej zakłada si warto odchylenia standardowego funkcji zale n od rozrzutu dobranych losowo centrów ti, wobec czego gaussowska funkcja bazowa przyjmuje posta
(
G x − ti
2
) = exp −
x − ti d2
2
(5. 30)
K
dla i = l, 2, . . . , K, przy czym d oznacza maksymaln odległo mi dzy centrami tj. Jak z powy szego wzoru wynika, odchylenie standardowe funkcji gaussowskiej charakteryzuj ce szeroko krzywej, jest ustalane przy
wyborze losowym jako
σ =
d i jest jednakowe dla ka dej funkcji bazowej. Szeroko ka dej funkcji jest 2K
proporcjonalna do maksymalnego rozrzutu centrów i zmniejsza si wraz ze wzrostem ich liczby. Po ustaleniu parametrów funkcji bazowych pozostaje problem doboru wag neuronu wyj ciowego, sprowadzaj cy si do rozwi zania równania (5.22), które przy pomini ciu współczynnika regularyzacyjnego przybiera posta
GW = d (5. 31) w której elementy macierzy G s dane w postaci
Gij = exp −
xi − t i d2
2
(5. 32)
K
dla i — l, 2, . . . , p , j = l, 2, . . . , K. Elementy te s wyra one jako funkcje wielko ci wektorowych xi, t j . Rozpisuj c norm wektorow ||xi — t j || na wielko ci skalarne, mo na uzyska prostsze wyra enie okre laj ce elementy macierzy G N
Gij = ∏ exp
(x −
− t k( j )
(i ) k
d2
k =1
)
2
(5. 33)
K
przy czym wska nik dolny k jest skojarzony z k-t składow wektora, a wska niki górne i, j dotycz odpowiednio i-tego wzorca ucz cego i j-tego centrum. Rozwi zanie równania (5.31) wyra one zale no ci (5.23) za pomoc operacji pseudo inwersji uzyskuje si w praktyce przez zastosowanie rozkładu SVD [37] w stosunku do macierzy G. Macierz G jest rozkładana na iloczyn dwu macierzy ortogonalnych P i Q o wymiarach odpowiednio p x p i K x K oraz macierzy pseudo diagonalnej S o elementach diagonalnych Si≥0 (i = l, 2, . . . , K )
G = PSQ T (5. 34) Macierz pseudo odwrotna do G jest wówczas wyra ona w postaci
G+ = Q +
przy czym
= diag
1 1 , , S1 S 2
,
1 ,0, SK
+
p T (5. 35)
,0 a poszukiwany wektor wag W neuronu wyj ciowego
okre la zale no W = G+d.
5.3.2. Dobór parametrów funkcji radialnych przy zastosowaniu procesu samoorganizacji Znacznie lepsze rezultaty mo na uzyska przez zastosowanie samoorganizuj cego si procesu podziału danych ucz cych na klastery w jednej z jego licznych odmian. Proces samoorganizacji zastosowany do danych ucz cych automatycznie dzieli przestrze na obszary Voronoia, reprezentuj ce oddzielne grupy danych. Centrum klastera jest uto samiane z centrum odpowiedniej funkcji radialnej. Liczba tych funkcji jest równa liczbie klasterów i mo e by korygowana przez algorytm samoorganizacji. Proces podziału danych na klastery mo e by przeprowadzony przy u yciu jednej z wersji algorytmu LindegoBuzo-Graya [81], zwanego równie algorytmem AT — u rednie (K-means}. W wersji bezpo redniej
Sieci neuronowe w uj ciu algorytmicznym
113
aktualizacja centrum nast puje po ka dej prezentacji wektora x ze zbioru danych ucz cych. W wersji skumulowanej centra s aktualizowane jednocze nie po zaprezentowaniu wszystkich składników zbioru. W obu przypadkach wst pny wybór centrów odbywa si najcz ciej losowo przy wykorzystaniu rozkładu równomiernego w procesie doboru odpowiednich wektorów x ze zbioru danych ucz cych. W przypadku danych ucz cych reprezentuj cych funkcj ci gł wst pne warto ci centrów umieszcza si w pierwszej kolejno ci w punktach odpowiadaj cych wszystkim warto ciom maksymalnym i minimalnym funkcji. Dane odpowiadaj ce tym centrom oraz ich najbli szemu otoczeniu s usuwane ze zbioru ucz cego, a pozostałe centra s lokowane równomiernie w obszarze utworzonym przez dane pozostaj ce w zbiorze. W wersji bezpo redniej po zaprezentowaniu k-tego wektora xk ze zbioru ucz cego jest selekcjonowane centrum najbli sze w sensie wybranej metryki danemu wektorowi. To centrum podlega aktualizacji zgodnie z algorytmem WTA
t i (k + 1) = t i (k ) + η [x k − t i (k )] (5. 36) przy czym η jest współczynnikiem uczenia, stałym o małej warto ci (zwykle η « 1) lub zmiennym w czasie według malej cej funkcji. Pozostałe centra nie ulegaj zmianie. Ka dy wektor ucz cy x jest prezentowany kilkunastokrotnie, zwykle w kolejno ci losowej, a do ustalenia warto ci centrów. W wersji skumulowanej s prezentowane wszystkie wektory ucz ce x i ka dy z nich jest przyporz dkowany odpowiedniemu centrum. Zbiór wektorów przypisanych do jednego centrum tworzy klaster, którego nowe centrum jest redni poszczególnych wektorów składowych
t i (k + 1) =
1 Ni
Ni j =1
x j (k ) (5. 37)
przy czym Ni oznacza liczb wektorów x j (k) przypisanych w k-tym cyklu do i-tego centrum. Uaktualnianie warto ci wszystkich centrów odbywa si równolegle. Proces prezentacji zbioru wektorów x oraz uaktualniania warto ci centrów jest powtarzany wielokrotnie, a do ustalenia si warto ci centrów. W praktyce u ywa si najcz ciej algorytmu bezpo redniego ze wzgl du na jego nieco lepsz zbie no . Oba algorytmy nie gwarantuj jednak bezwzgl dnej zbie no ci do rozwi zania optymalnego w sensie globalnym, a jedynie zapewniaj optymalno lokaln , zale n od warunków pocz tkowych i parametrów procesu. Przy niefortunnie dobranych warunkach pocz tkowych pewne centra mog utkn w obszarze, w którym liczba danych ucz cych jest znikoma lub adna i proces modyfikacji ich poło e mo e zosta zahamowany. Pewnym rozwi zaniem tego problemu jest modyfikacja poło e wielu centrów wraz ze stopniowaniem warto ci η dla ka dego z nich. Centrum najbli sze aktualnemu wektorowi x jest modyfikowane najsilniej, pozostałe w zale no ci od ich odległo ci wzgl dem wektora x coraz słabiej. Innym rozwi zaniem jest stosowanie wagowej miary odległo ci okre lonego centrum od prezentowanego wektora x. Norma wagowa faworyzuje te centra, które najrzadziej wygrywały konkurencj . Oba rozwi zania nie gwarantuj 100-procentowej optymalno ci rozwi zania, gdy stanowi raczej form zaburzenia okre lonego procesu optymalizacji [12] . Trudny jest równie problem doboru współczynnika ucz cego η. Przy stosowaniu stałej warto ci η musi ona by bardzo mała dla zapewnienia zbie no ci algorytmu, co niepomiernie wydłu a czas uczenia. Adaptacyjne metody doboru η uzale niaj jej warto od czasu i zmniejszaj j w miar upływu iteracji k. Najbardziej znanym przedstawicielem tej grupy jest algorytm Darkena-Moody'ego [12] , w którym
η (k ) =
ηO k 1+ T
(5. 38)
Współczynnik T reprezentuje stał czasow dobieran indywidualnie do ka dego problemu. Przy k < T warto η jest prawie stała, po czym dla k > T maleje wykładniczo do zera. Metody adaptacyjne doboru η, jakkolwiek stanowi ce post p w stosunku do warto ci stałej, nie s najlepszym rozwi zaniem, zwłaszcza przy modelowaniu procesów zmiennych w czasie. Najlepszym rozwi zaniem wydaje si dobór dynamiczny współczynnika uczenia szacuj cy aktualny post p w uczeniu i w zale no ci od tego dobieraj cy warto η. Takim algorytmem jest rozwi zanie zaproponowane w pracy [12]. Aktualizacja warto ci centrum w tym rozwi zaniu jest modyfikacj zale no ci (5.36) i mo e by zapisana w postaci ogólnej
t i (k + 1) = t i (k ) + M i ( x k )[η (k )( x k − t i (k ))] (5. 39)
Sieci neuronowe w uj ciu algorytmicznym
114
Współczynnik Mi(xk) jest stał o warto ci l lub 0, decyduj c o wyborze centrum podlegaj cego adaptacji. O wyborze zwyci skiego centrum decyduje norma wagowa odległo ci centrum od aktualnego wektora x
) (
(
2
)
1 dla vi x k − t i ≤ v j x k − t j i≠ j M i (xk ) = (5. 40) 0 w pozostalych przypadkach 2
Waga vi reprezentuje zmienno w obszarze Ri przyci gania i-tego centrum i jest zdefiniowana w postaci [12]
vi = P( x ) x k − t i dx (5. 41) 2
Ri
przy czym P (x) okre la rozkład prawdopodobie stwa wektora x w całym obszarze zbioru wej ciowego. Aktualne estymacje warto ci wag vi skojarzone z poszczególnymi centrami nie s obliczane ze wzoru definicyjnego (5.41), ale podlegaj procesowi adaptacyjnemu okre lonemu zale no ci
vi (k + 1) = αvi (k ) + (1 − α )M i ( x k ) x k − t i
2
(5. 42)
w której iteracja k odpowiada kolejnej prezentacji wektora x. Współczynnik α jest stał blisk jedno ci (typowa warto α = 0,9999). Start procesu nast puje przy małych warto ciach vi (0) ustalanych losowo. Okre lenie wszystkich wag vi umo liwia równie wyznaczenie optymalnej warto ci współczynnika uczenia η(k). Strategia dynamicznego doboru η zakłada, e jej warto powinna by du a, je li stan zaawansowania procesu ucz cego jest niewielki a wagi neuronów dalekie od optymalnych (zapewnia to przyspieszenie procesu uczenia), i powinna male wraz z post pem samoorganizacji, umo liwiaj c precyzyjny dobór warto ci ko cowych centrów. Podstawowym zało eniem przy ocenie jako ci procesu jest przyj cie, e w stanie optymalnym wagi vi wszystkich centrów powinny by równe. Miar jako ci podziału na klastery przyj to w postaci funkcji entropii
H (v1 ,v 2 ,..., v N ) = przy czym
K k =1
− vˆk ln (vˆk ) (5. 43)
vˆk reprezentuje znormalizowan warto vk vˆk =
vk K i =1
(5. 44)
vi
Maksimum miary jako ci H(v1, v2, ..., vK ) = ln(K) wyst puje przy
vˆk =
1 dla k = l, 2, . . . , .K, a wi c K
przy optymalnym rozkładzie centrów. Dla tak przyj tej miary jako ci optymaln warto współczynnika ucz cego w k-tym kroku okre la zale no [12]
η (k ) = 1 −
H (v1 , v 2 ,..., v K ) (5. 45) ln (K )
Dobór warto ci η zale y od aktualnych post pów procesu samoorganizacji mierzonych funkcj H(v1, v2, ..., vK ) i jest bezpo rednio zwi zany z warto ci wag vi aktualizowanych w ka dym kroku procesu uczenia. Warto η jest bliska jedno ci, gdy warto H(v1, v2, ..., vK ) jest zbli ona do zera (co odpowiada pocz tkowi procesu uczenia) . W ko cowej fazie procesu uczenia aktualna warto H(v1, v2, ..., vK ) zbli a si do ln(K) i współczynnik uczenia automatycznie maleje do zera. Po ustaleniu poło e centrów s dobierane warto ci parametrów σj odpowiadaj cych poszczególnym funkcjom bazowym. Parametr σj funkcji radialnej decyduje o kształcie funkcji i wielko ci pola recepcyjnego, dla którego warto tej funkcji jest nie zerowa (wi ksza od pewnej ustalonej warto ci progowej ε). Dobór σj powinien by taki, aby pola recepcyjne wszystkich funkcji radialnych pokrywały cały obszar danych wej ciowych, przy czym dwa pola recepcyjne mog pokrywa si tylko w nieznacznym stopniu. Przy takim doborze warto ci σj odwzorowanie funkcji realizowane przez sieci radialne jest stosunkowo gładkie. W najprostszym rozwi zaniu za warto σj j-tej funkcji radialnej przyjmuje si odległo euklidesow j-tego centrum tj od jego najbli szego s siada [137].
Sieci neuronowe w uj ciu algorytmicznym
115
W innym algorytmie, uwzgl dniaj cym szersze s siedztwo, na warto σj wpływa odległo j-tego centrum od jego P najbli szych s siadów. Warto σj okre la si wtedy ze wzoru [94]
σj =
1 p
P k =1
t j − tk
2
(5. 46)
W praktyce liczba P nie przekracza zwykle trzech. Wst pny dobór liczby funkcji radialnych (neuronów ukrytych) do ka dego problemu jest spraw kluczow , decyduj c o dokładno ci odwzorowania. Im wi kszy jest wymiar wektora x, tym wi ksza jest wymagana liczba funkcji radialnych.
5.3.3. Algorytm probabilistyczny doboru parametrów funkcji radialnych Wymagania co do liczby neuronów mo na złagodzi przez wprowadzenie sieci typu HRBF, realizuj cej odwzorowanie radialne z norm wagow Euklidesa. Współczynniki
Q (jki ) macierzy skaluj cej Qi stowarzyszone z
poszczególnymi składowymi wektora x tworz cymi i-t funkcj radialn (rys. 5.6) stanowi dodatkowe parametry podlegaj ce doborowi i ułatwiaj ce aproksymacj danych ucz cych przez sie radialn . Przy zwi kszonej liczbie dobieranych parametrów ten sam efekt dokładno ci mo na osi gn w sieci HRBF przy mniejszej liczbie parametrów. Na rysunku 5.7 przedstawiono przykładow zale no procentowej wielko ci bł du klasyfikacji danych ucz cych 10-wymiarowych, reprezentuj cych 3 klasy, w funkcji liczby neuronów ukrytych [137] dla sieci radialnej RBF (krzywa górna na rysunku) i sieci HRBF z macierz Q diagonaln (krzywa dolna). Poza widocznym zmniejszeniem poziomu bł du klasyfikacji, sie HRBF umo liwiła w danym przykładzie zmniejszenie liczby neuronów ukrytych z warto ci ok. 160 (w przypadku sieci RBF) do warto ci ok. 120 (sie HRBF).
Rysunek 5.7 Wykres bł du klasyfikacji w funkcji liczby neuronów ukrytych dla sieci RBF i HRBF Doboru optymalnych warto ci centrów oraz współczynników Qij dla ka dej funkcji bazowej mo na dokona za pomoc zmodyfikowanego algorytmu, wpływaj cego jednocze nie na centrum i macierz Q. Jednym z takich algorytmów jest algorytm probabilistyczny zaprezentowany w pracy [137]. Przy zało eniu równomiernego rozkładu danych ucz cych x w zbiorze ucz cym i przy ograniczeniu si do macierzy skaluj cej diagonalnej Q, proces adaptacji centrów oraz elementów macierzy Qi jest opisany zale no ciami rekurencyjnymi:
Sieci neuronowe w uj ciu algorytmicznym
116
t i (k ) + α k [ϕ i ( x k )x k − t i (k )] (5. 47) (1 − α k ) + α k ϕ i (xk )
t i (k + 1) =
F (k ) + α k [ϕ i ( x k )[x k − t i (k )][x k − t i (k )] − Fi (k )] Fi (k + 1) = i (5. 48) (1 − α k ) + α k ϕ i (xk ) T
αk =
przy czym
α0
reprezentuje zmienny w czasie współczynnik uczenia, a α0 - warto stał dobieran z
k
przedziału [0, 1] (typowa warto α0 zawiera si w przedziale [0,5, 0,8]). W prezentowanej tu metodzie funkcja radialna ϕ(x) jest definiowana w postaci
ϕ ( x ) = exp −
1 [x − t i (k )]T Fi −1 [x − t i (k )] (5. 49) 2
przy czym Fi = diag[F11, F22, ..., FNN] Jej warto reprezentuje prawdopodobie stwo warunkowe, e wektor x nale y do klastera o centrum t i . Przy takim oznaczeniu macierzy Fi relacja mi dzy macierz skaluj c Qi wyst puj c w oznaczeniu sieci HRBF na rys. 5.6 a macierz Fi we wzorze (5.48) jest nast puj ca:
1 −1 Fi (5. 50) 2
Qi =
Bior c pod uwag diagonalny charakter obu macierzy Qi oraz Fi otrzymuje si
1 . 2 Fjj
Q jj =
W zale no ciach (5.47) i (5.48) na ka dym etapie algorytmu nast puje równocze nie adaptacja zarówno centrów, jak i macierzy wagowej Fi, przy czym parametry wszystkich funkcji radialnych sieci podlegaj adaptacji. Jest to istotna ró nica w stosunku do zale no ci adaptacyjnych wyst puj cych w algorytmie Ku rednie , przedstawionym w rozdziale poprzednim, gdzie tylko jedno centrum wygrywaj ce konkurencj podlegało uaktualnieniu. Zale no ci powy sze mog by dostosowane do sieci RBF przy zało eniu, e Fi = l, a adaptacja parametrów według wzoru (5.47) dotyczy tylko centrum o najwi kszej warto ci funkcji ϕi(x). W sieci HRBF po ustaleniu warto ci parametrów funkcji radialnych dobór wag Wi warstwy wyj ciowej przebiega identycznie jak w sieci RBF przy zastosowaniu strategii opartej b d na rozkładzie SVD omówionym wcze niej, b d przez bezpo redni minimalizacj funkcji kwadratowej bł du
E=
1 2
p
K
[W ϕ (x ( ) ) − d ( ) ] j
j =1 i = o
i
j
i
2
(5. 51)
definiowanej dla wszystkich wzorców ucz cych j (j = l, 2,... , p) w postaci par (x(j), d(j)). Przy ustalonych warto ciach ϕi(x(j)) jest to zadanie programowania kwadratowego, którego rozwi zanie mo e by dokonane przy zastosowaniu dowolnej metody optymalizacyjnej omówionej w rozdz. 2.
5.3.4. Algorytmy ucz ce oparte na propagacji wstecznej Odmienn klas algorytmów ucz cych funkcji radialnych s metody gradientowe realizuj ce uczenie z nadzorem, wykorzystuj ce algorytm propagacji wstecznej. Podobnie jak w sieciach sigmoidalnych, podstaw stanowi funkcja celu zdefiniowana w postaci (5.51). Dla uproszczenia zapisu uwzgl dnia si dalej tylko jeden wzorzec ucz cy ( x , d), przyjmuj c definicj funkcji celu w postaci
E=
1 2
K i =0
2
[Wiϕ i (x ) − d ]
(5. 52)
Zało ono przy tym ogóln posta gaussowskiej funkcji radialnej ϕi(x) odpowiadaj cej sieci HRBF, w której
ϕ i ( x ) = exp −
1 [Qi (x − t i )]T [Qi (x − t i )] (5. 53) 2
Sieci neuronowe w uj ciu algorytmicznym
117
z macierz Qi o dowolnej postaci. Niezale nie od wyboru metody gradientowej optymalizacji nale y okre li wektor gradientu wzgl dem wszystkich parametrów. Przy wyznaczaniu gradientu mo na wykorzysta metod grafów doł czonych przedstawion w rozdz. 2, umo liwiaj c okre lenie dowolnej składowej gradientu na podstawie analizy grafu oryginalnego i grafu doł czonego sieci. Graf sieci HRBF z oznaczeniami poszczególnych sygnałów przedstawiono na rys. 5.8. W grafie wyst puj 2 funkcje nieliniowe: funkcja kwadratowa f (z) = z2 i funkcja wykładnicza f (u) = e-0,5u. W grafie doł czonym odpowiadaj cym grafowi
oryginalnemu obie te funkcje staj
si
zlinearyzowanymi transmitancjami o warto ci
∂f ∂f i ∂z ∂u
okre lonymi w punkcie rozwi zania systemu oryginalnego, jak to przedstawiono na rys. 5.8b.
Rysunek 5.8 Ilustracja sposobu tworzenia składowych gradientu sieci HRBF przy wykorzystaniu metody grafu doł czonego: a) graf sieci oryginalnej; b) graf doł czony Kierunki wszystkich gał zi w grafie doł czonym s odwrócone w stosunku do grafu oryginalnego. ródłem wymuszaj cym w grafie doł czonym jest sygnał ró nicowy (y - d) reprezentuj cy aktualn warto niedopasowania. Poszczególne składowe gradientu okre la si bezpo rednio z obu grafów zgodnie z procedur opisan w rozdz. 2. Przyjmuj one nast puj ce postacie:
∂E = y − d (5. 54) ∂WO ∂E = e −0,5ui ( y − d ) (5. 55) ∂Wi N ∂E − 0 , 5 ui (i ) ˆ ( ) v e W y d Qkj(i ) z k(i ) (5. 56) = − = − j i (i ) ∂t j K =1
Sieci neuronowe w uj ciu algorytmicznym
118
∂E − 0 , 5 ui (i ) (i ) ˆ Wi ( y − d ) x k − t k(i ) z (ji ) (5. 57) (i ) = v k z j = −e ∂Q jk
(
)
w których:
z (ji ) =
N k =1
(
)
Q (jki ) x k − t k(i ) (5. 58)
ui =
N k =1
[z ( ) ]
2
i k
(5. 59)
Wyznaczenie składowych gradientu umo liwia skorzystanie z dowolnej metody gradientowej optymalizacji przy doborze parametrów, niezale nie od tego, czy jest to waga Wi, centrum tk(i) , czy współczynnik skaluj cy Qjk(i). Wszystkie gradientowe metody ucz ce zaprezentowane w rozdz. 2 mog by zastosowane w uczeniu, wł cznie z metodami doboru współczynnika uczenia η. Podstawowym problemem pozostaj cym do rozstrzygni cia pozostaje wybór warto ci startowych parametrów. Przy starcie uczenia z warto ci losowych prawdopodobie stwo utkni cia procesu w minimum lokalnym dalekim od rozwi zania wła ciwego jest wi ksze ni w przypadku sieci sigmoidalnych, ze wzgl du na siln nieliniowo funkcji wykładniczych. Z tego wzgl du losowe warto ci startowe parametrów funkcji radialnych stosuje si rzadko, zast puj c je odpowiedni procedur inicjalizacji, wykorzystuj c informacj zawart w zbiorze danych ucz cych. Do tego celu wykorzystuje si algorytmy samoorganizacji przedstawione w pierwszych punktach tego podrozdziału, ograniczaj c si do kilku zaledwie cykli. Warto ci parametrów funkcji radialnych otrzymane w wyniku ich działania przyjmuje si za warto ci startowe. Warto ci pocz tkowe wag Wi przyjmuje si zazwyczaj losowo, podobnie jak w typowym algorytmie ucz cym sieci sigmoidalnych.
5.3.5. Metody doboru liczby funkcji bazowych Dobór liczby funkcji bazowych, uto samianych z liczb neuronów ukrytych, jest kluczowym problemem przy wła ciwym rozwi zaniu problemu aproksymacji. Podobnie jak w sieciach sigmoidalnych, zbyt mała liczba neuronów uniemo liwia dostateczne zredukowanie bł du dopasowania na zbiorze danych ucz cych, natomiast zbyt du a ich liczba powoduje wzrost bł du uogólniania na zbiorze testuj cym. Dobór wła ciwej liczby neuronów zale y od wielu czynników, w tym wymiarowo ci problemu, liczby danych ucz cych, a przede wszystkim kształtu aproksymowanej funkcji w przestrzeni. Zwykle liczba funkcji bazowych K jest pewnym ułamkiem liczby danych ucz cych p, przy czym aktualna warto tego ułamka zale y od stopnia zró nicowania warto ci danych d(i), odpowiadaj cych wektorom wej ciowym x(i) (i = 1 , 2 ,. .. , p). Wobec niemo no ci okre lenia a priori dokładnej liczby neuronów ukrytych stosuje si metody adaptacyjne, które umo liwiaj ich dodanie lub usuni cie w trakcie procesu uczenia. Powstało szereg metod heurystycznych umo liwiaj cych takie operacje [10, 137]. Zwykle uczenie sieci zaczyna si od pewnej wst pnie zało onej liczby neuronów, a nast pnie kontroluje si zarówno stopie redukcji bł du redniokwadratowego, jak i zmiany warto ci dobieranych parametrów sieci. Je li rednia zmiana warto ci
∆Wi < ξ , to dodaje si dwie funkcje bazowe
wag po okre lonej liczbie cykli ucz cych jest zbyt mała,
i
(2 neurony) o centrach odpowiadaj cych odpowiednio najwi kszej i najmniejszej warto ci bł du dopasowania, kontynuuj c uczenie tak rozbudowanej struktury. Jednocze nie kontroluje si absolutne warto ci wag Wi poszczególnych neuronów. Je li s one mniejsze od zało onego na wst pie progu δ, to neurony im odpowiadaj ce s usuwane. Zarówno dodawanie neuronów, jak i usuwanie odbywa si po okre lonej liczbie cykli ucz cych i trwa przez cały czas uczenia a do uzyskania odpowiedniej dokładno ci odwzorowania. Jak wykazały wyniki bada eksperymentalnych prezentowane w pracy [10], algorytm jest stosunkowo mało wra liwy na wst pnie zało on liczb neuronów ukrytych, generuj c po okre lonej liczbie cykli ucz cych podobne struktury sieci i zbli ony poziom bł du odwzorowania. Na rysunku 5.9 przedstawiono typowy przebieg procesu doboru liczby neuronów ukrytych (rys. 5.9a) oraz towarzysz cego mu bł du
(
)
redniokwadratowego (rys. 5.9b) przy odwzorowaniu funkcji f ( x1 , x2 ) = x1 − x2 sin (0,5 x1 ) . Krzywe uczenia odpowiadaj ró nym liczbom wst pnie dobranych neuronów ukrytych, przyj tym w eksperymencie odpowiednio l, 10 i 26. Widoczny jest ró ny stopie post pu w uczeniu sieci w poszczególnych cyklach ucz cych, ale ko cowy rezultat uczenia jest podobny [10]. Inne podej cie do sterowania liczb neuronów ukrytych zaproponował Platt w pracy [118]. Jest to tzw. metoda hybrydowa, ł cz ca uczenie samoorganizuj ce si z uczeniem z nadzorem. Po ka dej prezentacji kolejnego wzorca ucz cego jest okre lana odległo euklidesowa mi dzy nim a najbli szym centrum
2
2
Sieci neuronowe w uj ciu algorytmicznym
119
istniej cej ju funkcji radialnej. Je li ta odległo jest wi ksza od zało onego progu σ(k), to jest tworzone nowe centrum funkcji radialnej (dodawany neuron), po czym sie podlega standardowemu douczeniu z wykorzystaniem metod gradientowych (uczenie z nadzorem). Proces dodawania neuronów trwa a do uzyskania okre lonej warto ci bł du odwzorowania. Kluczow spraw w tej metodzie jest dobór warto ci σ(k) decyduj cej o rozbudowie struktury sieci. Zwykle σ(k) zmienia si wykładniczo z czasem (liczb iteracji) od warto ci σmax na pocz tku procesu do warto ci σmin na ko cu. Wad takiego sposobu post powania jest niemo liwo redukcji liczby neuronów w trakcie procesu nawet wówczas, gdy w wyniku uczenia nast pi degeneracja pewnej ich liczby (złe umieszczenie centrum) lub równoczesne zdublowanie funkcji przez kilka neuronów. Poza tym metoda jest bardzo wra liwa na dobór parametrów procesu uczenia, zwłaszcza warto ci σmax i σmin.
Rysunek 5.9 Ilustracja procesu doboru optymalnej struktury sieci RBF za pomoc metody adaptacyjnej: a) wykres liczby neuronów w funkcji liczby iteracji; b) wykres bł du w funkcji liczby iteracji
5.3.6. Metoda ortogonalizacji Grama-Schmidta Najskuteczniejsz metod kontroli liczby neuronów ukrytych pozostaje zastosowanie specjalnej metody uczenia sieci opartej na metodzie ortogonalizacji najmniejszych kwadratów i wykorzystuj cej klasyczny algorytm ortogonalizacji Grama-Schmidta [8]. Punktem wyj cia w tej metodzie jest przedstawienie problemu uczenia jako liniowego dopasowania wektora wag W sieci, W = [W0,W1,... ,WK] T , minimalizuj cego warto wektora bł du E. Dla p próbek ucz cych wektor warto ci danych ma posta d = [d(1), d(2), ..., d(p)] T. Przy zało eniu K funkcji bazowych i p par ucz cych odpowiedzi neuronów ukrytych tworz macierz F
f 1(1) f (2 ) F= 1 ... f 1( p )
f 2(1) f 2(2 ) ... f 2( p )
... ... ... ...
f K(1) f K(2 ) (5. 60) ... f K( p )
w której fi(j) oznacza odpowied i-tego neuronu (warto i-tej funkcji radialnej) na j-ty wzorzec ucz cy, fi(j)=ϕi(x(j)) . Oznaczaj c przez fi = [fi(1), fi(2), ..., fi(p) ]T wektor odpowiedzi i-tej funkcji radialnej na wszystkie wzorce ucz ce, macierz F mo na przedstawi w postaci
F = [ f1 , f 2 ,..., f K ] (5. 61)
Sieci neuronowe w uj ciu algorytmicznym
120
Przy takich oznaczeniach na ka dym etapie uczenia jest spełnione równanie liniowe
d = FW + E (5. 62) w którym W jest wektorem wagowym, a E = [E(1), E(2), ..., E(p)]T odpowiada aktualnemu wektorowi bł du niedopasowania. Składnik FW podniesiony do kwadratu reprezentuje cz po dan energii zwi zanej z warto ciami sygnałów zadanymi wektorem d, która podlega maksymalizacji w procesie uczenia. Metoda ortogonalizacji najmniejszych kwadratów polega na przekształceniu wektorów fi, w zbiór bazowych wektorów ortogonalnych, umo liwiaj cych ocen wkładu ka dego z nich indywidualnie w ogóln warto energii reprezentowanej przez składnik FW. To z kolei umo liwia eliminacj tych wektorów, których znaczenie dla procesu jest minimalne. W procesie uczenia macierz F ∈ RpxK ulega rozkładowi na iloczyn macierzy Q ∈ RpxK o ortogonalnych kolumnach qi i macierzy górnotrójk tnej A ∈ RKxK z warto ciami jednostkowymi na przek tnej
F = QA (5. 63) przy czym
QT Q = H 1 α 12 α 13 0 1 α 23 A= ... ... ... 0 0 0 Macierz H jest macierz
diagonaln
o elementach
... α 1K ... α 2 K ... ... ... 1 H ii = qiT qi =
najmniejszych kwadratów dotycz ce zale no ci (5.62) mo e by wektorach ortogonalnych qi. Wprowadzaj c oznaczenie
p j =1
q 2ji . Rozwi zanie metod
zrzutowane w przestrze
rozpi t
na
g = AW (5. 64) z równania (5.62) otrzymuje si
d = Qg + E (5. 65) którego przybli one rozwi zanie metod najmniejszych kwadratów przyjmuje posta
[
]
−1
gˆ = Q T Q Q T d = H −1Q T d (5. 66) Bior c pod uwag diagonalny charakter macierzy H, otrzymuje si
qiT d (5. 67) qiT qi
gˆ i =
Rozwi zanie okre laj ce wektor wag W otrzymuje si bezpo rednio z zale no ci (5.64), która wobec operowania warto ciami przybli onymi przyjmie posta
gˆ = AWˆ (5. 68) Przy trójk tnej macierzy A rozwi zanie równania (5.68) wzgl dem W nie przedstawia adnych trudno ci natury obliczeniowej. Ortogonalizacja macierzy F opisana zale no ci (5.63) mo e by dokonana ró nymi metodami, z których najefektywniejszy jest algorytm ortogonalizacji Grama-Schmidta. W metodzie tej generacja macierzy A nast puje kolumna po kolumnie z jednoczesnym tworzeniem kolejnych kolumn ortogonalnej macierzy Q. W kroku k-tym tworzy si kolumn qk ortogonaln do wszystkich (k - 1) kolumn qi (i = l, 2,..., k - 1), utworzonych wcze niej. Procedur powtarza si dla warto ci k = 2,3,..., K. Matematyczny zapis operacji jest nast puj cy:
q1 = f 1 (5. 69)
Sieci neuronowe w uj ciu algorytmicznym
121
qiT f k aik = T (5. 70) q i qi qk = f k −
k −1 i =1
a ik q i (5. 71)
dla 1 ≤ i ≤ k, k = 2 , 3 , . . . , K . Procedura ortogonalizacji powtórzona wielokrotnie umo liwia utworzenie wszystkich wektorów ortogonalnych qk oraz macierzy A, na podstawie których mo na okre li rozwi zanie przybli one najmniejszych kwadratów gˆ (wzór (5.66)), a nast pnie z rozwi zania trójk tnego układu równa
(5.68) wektor Wˆ . Najwa niejsz zalet metody ortogonalizacji w tym zastosowaniu jest jednak mo liwo selekcji wektorów qi pod wzgl dem ich wa no ci w odwzorowaniu danych ucz cych. Przy zało onej na wst pie liczbie funkcji radialnych K zadanie polega na takim ustawieniu kolejnych wektorów qi, aby wyselekcjonowa pierwsze Kr najbardziej znacz ce pod wzgl dem energetycznym, przy czym zwykle KT « K. Uwzgl dnienie w dalszych obliczeniach tylko Kr funkcji radialnych odpowiada redukcji liczby neuronów ukrytych z warto ci wst pnej K do warto ci Kr. Bior c pod uwag energi zwi zan z sygnałami opisanymi wektorem d i uwzgl dniaj c zale no (5.65) otrzymuje si
K
dTd =
i =1
q i2 qiT q i + E T E (5. 72) 1 2 T g i qi qi mo e N
Przyjmuj c, e d reprezentuje wektor zadany o zerowej warto ci redniej, składnik
by zinterpretowany jako redni wkład przypadaj cy na jedn próbk ucz c wektora qi, odpowiadaj cego i-tej funkcji bazowej . Wzgl dny udział tego składnika w ogólnym bilansie energii wyra a zatem wzór
qi2 qiT qi εi = T (5. 73) d d dla i = 1,2, . . . , K . Okre lenie warto ci εi stowarzyszonych z poszczególnymi funkcjami bazowymi umo liwia okre lenie ich wkładu w odwzorowanie funkcyjne danych ucz cych, dzi ki czemu mo na podj decyzj o redukcji tych, których wpływ jest najmniejszy. Po wyselekcjonowaniu najbardziej znacz cej funkcji radialnej proces ortogonalizacji przeprowadza si powtórnie, okre laj c nowe rozwi zanie i selekcjonuj c nast pne, najbardziej znacz ce funkcje radialne. Przy zało eniu warto ci startowej K = p po wielu cyklach ortogonalizacji Grama-Schmidta mo na wyselekcjonowa Kr najbardziej znacz cych funkcji bazowych, pomijaj c pozostałe. W ten sposób liczb neuronów ukrytych redukuje si ze wst pnej warto ci K do Kr. Algorytm post powania prowadz cy do selekcji najbardziej znacz cych funkcji bazowych jest nast puj cy [8]: 1. W pierwszym etapie dla l < i < K nale y okre li :
q i (1) = f i
[qi (1)]T d [qi (1)]T qi (1) [q (1)]2 [qi (1)]T [qi (1)] (1) = i
q i (1) =
εi Zakłada si , e
ε i (1) = max{ε i (1)} 1
dTd
dla 1≤ i ≤ K
q1 = qi1 = f i1 2.
W nast pnych etapach k ≥ 2 dla 1≤ i ≤ K, i ≠ i1 ≠ ... ≠ ik-1 nale y kolejno okre li :
Sieci neuronowe w uj ciu algorytmicznym
122
(i )
a jk =
q Tj f i q Tj q j
qi (k ) = f i −
k −1 j =1
a (jki ) q j
[qi (k )]T d [qi (k )]T [qi (k )] 2 T [ qi (k )] [qi (k )] [qi (k )] ε i (k ) = dTd Zakłada si , e: ε i (1) = max{ε i (1)} dla a 1≤ i ≤ K, i ≠ i ≠ ... ≠ i qi (k ) =
1
1
q k = qik (k ) = f ik −
k-1
k −1 j =1
a jk q j
a jk = a (jkik ) dla 1 ≤ j ≤ k − 1 3.
Procedur ko czy si na etapie k = Kr, je li
1−
Kr j =1
εj < ρ
przy czym 0 < ρ < 1 jest przyj t z góry warto ci tolerancji. W jej wyniku zachowanych zostaje jedynie Kr najbardziej znacz cych funkcji radialnych poło onych w centrach przyporz dkowanych odpowiednim wzorcom ucz cym. Jednocze nie w wyniku działania algorytmu s okre lone poszczególne składowe wektorów gi, na podstawie których z zale no ci (5.64) otrzymuje si warto ci wag W warstwy wyj ciowej sieci. Interpretacja geometryczna przedstawionej reguły ortogonalizacji jest prosta. Na k-tym etapie algorytmu wymiar przestrzeni bazowej jest rozszerzany o jeden, z k - 1 do k przez wprowadzenie dodatkowej funkcji bazowej. Wprowadzaj c za ka dym razem funkcj bazow najbardziej znacz c , uzyskuje si optymalny dobór funkcji bazowych, co umo liwia uzyskanie najlepszych wyników dopasowania. Tolerancja p decyduj ca o zako czeniu procesu uczenia jest wa nym współczynnikiem decyduj cym z jednej strony o dokładno ci odwzorowania danych ucz cych, a z drugiej o stopniu zło ono ci sieci neuronowej. W wielu przypadkach jej warto mo e by oszacowana na podstawie rozkładu statystycznego danych ucz cych oraz aktualnych post pów w uczeniu. Metody doboru optymalnej warto ci p i ich zwi zku ze zło ono ci sieci neuronowej mo na znale w pracy [8] . Dodatkow zalet procesu ortogonalizacji jest mo liwo unikni cia złego uwarunkowania procesu
uczenia. Spełnienie relacji
q qk = 0 oznacza, e odpowiadaj cy jej wektor fk jest liniow kombinacj T k
wektorów f1, f2, ..., fk-1.. St d, je li w procesie ortogonalizacji iloczyn
qkT qk jest mniejszy od pewnej małej
warto ci progowej, funkcja fk powinna by pomini ta przy wyborze funkcji bazowych.
5.4. Porównanie sieci radialnych z sieciami sigmoidalnymi Sieci neuronowe o radialnych funkcjach bazowych znalazły zastosowanie zarówno w rozwi zywaniu problemów klasyfikacyjnych, zadaniach aproksymacji funkcji wielu zmiennych, jak i zagadnieniach predykcji, a wi c w tym obszarze zastosowa , gdzie sieci sigmoidalne maj od lat ugruntowan pozycj . W stosunku do sieci wielowarstwowych o sigmoidalnych funkcjach aktywacji wyró niaj si pewnymi wła ciwo ciami szczególnymi, umo liwiaj cymi lepsze odwzorowanie cech charakterystycznych modelowanego procesu. Sie sigmoidaln przez fakt, e działanie (niezerowa warto ) funkcji sigmoidalnej rozci ga si od okre lonego punktu w przestrzeni a do niesko czono ci, reprezentuje aproksymacj globaln funkcji zadanej, podczas gdy sie radialna, bazuj ca na funkcjach maj cych warto niezerowa jedynie w okre lonej przestrzeni wokół centrów, realizuje aproksymacj typu lokalnego, której zasi g działania jest zwykle bardziej ograniczony. W efekcie nale y si spodziewa , e zdolno ci uogólnienia sieci radialnych s gorsze ni sieci sigmoidalnych, zwłaszcza na granicach obszaru danych ucz cych. Sieci wielowarstwowe ze wzgl du na globalny charakter funkcji sigmoidalnej nie maj wbudowanego mechanizmu umo liwiaj cego zidentyfikowanie obszaru, na który najsilniej odpowiada dany neuron. Wobec niemo liwo ci fizycznego powi zania obszaru aktywno ci neuronu z odpowiednim obszarem danych ucz cych, w sieciach
Sieci neuronowe w uj ciu algorytmicznym
123
sigmoidalnych trudno jest okre li optymalny punkt startowy w procesie uczenia. Bior c pod uwag wielomodalno funkcji celu, osi gni cie minimum globalnego w tych warunkach jest trudne nawet przy wyrafinowanych metodach uczenia. Sieci radialne radz sobie z tym problemem znacznie lepiej. Funkcje radialne typu gaussowskiego, najcz ciej u ywane w praktyce, s z natury funkcjami lokalnymi o warto ci niezerowej jedynie wokół okre lonego centrum. Umo liwia to łatwe powi zanie parametrów funkcji bazowych z fizycznym rozmieszczeniem danych ucz cych w przestrzeni wielowymiarowej. Dlatego mo liwe jest stosunkowo łatwe uzyskanie dobrych warto ci startowych w procesie uczenia pod nadzorem. Zastosowanie podobnych algorytmów ucz cych przy warto ciach startowych bliskich optymalnym zwielokrotnia prawdopodobie stwo uzyskania sukcesu przez sieci radialne. Przestrzenie decyzyjne tworzone w sieciach radialnych s stosunkowo proste i w sposób naturalny ukształtowane. Przy rozwi zywaniu zada klasyfikacyjnych dla danych testuj cych, ró ni cych si od danych ucz cych sie radialna dostarcza nie tylko informacji, do jakiej klasy nale y wzorzec testuj cy, ale równie wskazuje na ewentualn mo liwo utworzenia oddzielnej klasy. Jest to problem szczególnie istotny w tych zagadnieniach, gdzie nie ma pewno ci, e w uczeniu zastosowano dostateczn liczb wzorców ucz cych, a rozkład wzorców testuj cych jest inny ni wzorców ucz cych. Przykładem mo e by zastosowanie sieci neuronowych do wykrywania komórek rakowych w organizmach ywych. Aktualna baza ucz ca mo e nie odpowiada danym testuj cym, w których pojawi si nowy rodzaj komórki rakowej. Sie radialna mo e wskaza na utworzenie nowego typu zwyrodnienia. Na ogól uwa a si [78, 137], e sieci radialne lepiej ni sieci sigmoidalne nadaj si do takich zada klasyfikacyjnych, jak wykrywanie uszkodze w ró nego rodzaju systemach, rozpoznawanie wzorców itp. Zastosowanie sieci radialnych w predykcji tak skomplikowanych szeregów czasowych, jak prze widywanie comiesi cznych zmian zatrudnienia w skali kraju [8], przewidywanie trendów ekonomicznych itp. umo liwia uzyskanie dobrych rezultatów, porównywalnych lub lepszych ni przy zastosowaniu sieci sigmoidalnych. Wa n zalet sieci radialnych jest znacznie uproszczony algorytm uczenia. Przy istnieniu tylko jednej warstwy ukrytej i cisłym powi zaniu aktywno ci neuronu z odpowiednim obszarem przestrzeni danych ucz cych, punkt startowy uczenia jest znacznie bli ej rozwi zania optymalnego, ni jest to mo liwe w sieciach wielowarstwowych. Dodatkowo mo liwe jest odseparowanie etapu doboru parametrów funkcji bazowych od doboru warto ci wag sieci, co mo e upro ci i przyspieszy proces uczenia. Zysk na czasie jest znacznie wi kszy, je li uwzgl dni si procedur kształtowania optymalnej pod wzgl dem zdolno ci uogólniania struktury sieci. W sieciach wielowarstwowych jest to zagadnienie bardzo czasochłonne, wymagaj ce zwykle wielokrotnego uczenia lub douczania. W sieciach radialnych przy zastosowaniu ortogonalizacji proces optymalnego kształtowania struktury sieci jest stałym fragmentem uczenia, nie wymagaj cym adnego dodatkowego wysiłku. Wspólny pozostał problem doboru liczby neuronów ukrytych, decyduj cy w bardzo du ym stopniu o dokładno ci odwzorowania i zdolno ciach uogólniania sieci. W przypadku sieci radialnej jest on jednak o wiele prostszy ni w sieciach sigmoidalnych, ze wzgl du na lokalny charakter aproksymacji reprezentowany przez poszczególne funkcje bazowe.
Sieci neuronowe w uj ciu algorytmicznym
6.
124
Sieci rekurencyjne
6.1. Wprowadzenie Sieci wielowarstwowe sigmoidalne i sieci o radialnych funkcjach bazowych rozwa ane dotychczas tworz jedn rodzin sieci neuronowych jednokierunkowych, w których przepływ sygnałów odbywa si tylko w jedn stron , od wej cia do wyj cia. Oddzieln grup stanowi sieci, w których istnieje sprz enie zwrotne mi dzy wyj ciem a wej ciem sieci. S to tak zwane sieci rekurencyjne. Wspóln cech tych sieci jest cz sto istnienie symetrycznych powi za synaptycznych mi dzy neuronami (Wij = Wji) oraz du a ich liczba w stosunku do ogólnej liczby neuronów. Podstawow cech wyró niaj c je z rodziny sieci neuronowych s zale no ci dynamiczne na ka dym etapie działania. Zmiana stanu jednego neuronu przenosi si przez masowe sprz enie zwrotne na cał sie , wywołuj c stan przej ciowy, ko cz cy si okre lonym stanem ustalonym, na ogół innym ni stan poprzedni. Je li funkcj aktywacji neuronu oznaczy si , tak jak poprzednio, przez f (u), przy czym u jest sum wagow
yi = f (u i ) = f
pobudze , zwan równie sygnałem aktywacji, to sygnał wyj ciowy neuronu
N j =1
Wij x j
oznacza jego stan. Bior c pod uwag , e przy masowym sprz eniu zwrotnym pobudzeniami dla neuronu s sygnały wej ciowe innych neuronów, zmiana stanu neuronów jest opisana układem równa ró niczkowych nieliniowych, które zapisuje si w postaci [20, 49]
Ti
du i = dt
N
Wij f (u j ) − u i − bi (6. 1)
j =1, j ≠ i
dla i = l, 2,..., N, przy czym bi jest warto ci progow , wynikaj c z zewn trznego ródła (odpowiednik polaryzacji w sieciach jednokierunkowych). Współczynnik τi, jest pewn stał warto ci liczbow , a jego interpretacja jest analogiczna do stałej czasowej w równaniach opisuj cych stan dynamiczny w obwodach RC. Stan neuronu uzyskuje si z rozwi zania równania ró niczkowego (6.1) jako y = f (u). Przy okre lonym stanie pobudzenia neuronów mo na przyporz dkowa sieci funkcj energetyczn Lapunowa [49]
1 E=− 2
Wij y i y j +
N
j i ,i ≠ j
i =1
1 Ri
xi
f i −1 ( y i )dy i +
0
N
bi y i (6. 2)
i =1
Jest ona skojarzona z ka dym stanem pobudzenia neuronu i ma charakter malej cy w funkcji stanu tych neuronów. Zmiana stanu jakiegokolwiek neuronu pocz tkuje zmian stanu energetycznego całej sieci w kierunku minimum tej energii a do jego osi gni cia. Sieci rekurencyjne ze sprz eniem symetrycznym nie mog oscylowa , mimo istnienia sprz enia zwrotnego. W przestrzeni stanów lokalne minima energii E reprezentuj punkty stabilne, zwane atraktorami ze wzgl du na wła ciwo ci przyci gania do najbli szego otoczenia. Na rysunku 6.1 przedstawiono graficzn posta portretu fazowego układu dynamicznego rekurencyjnego [51] w przestrzeni dwuwymiarowej o symetrycznych powi zaniach mi dzyneuronowych. Na rysunku 6.la przedstawiono przyj ty układ linii ekwipotencjalnych, a na rys. 6.1b - mo liwy zbiór trajektorii fazowych wynikaj cy z takiego układu. Strzałki reprezentuj dopuszczalny kierunek ruchu, który w ka dym przypadku ko czy si w okre lonym punkcie stanowi cym minimum lokalne. Linie ekwipotencjalne ci głe oznaczaj wzrost energii (wzgórze), linie przerywane - jej ubytek (dolin ). Punkt rodkowy doliny jest minimum lokalnym, w którym ko czy si trajektoria fazowa.
Sieci neuronowe w uj ciu algorytmicznym
125
Rysunek 6.1 Ukształtowanie obszarów atrakcji sieci rekurencyjnej o powi zaniach symetrycznych: a) wykres linii ekwipotencjalnych; b) odwzorowanie kierunków zmian potencjału w trakcie procesu uczenia7 Przy niesymetrycznych powi zaniach mi dzyneuronowych w układzie mog powsta oscylacje wokół punktów równowagi generuj ce nie ko cz ce si drgania. Mo na je wyeliminowa przez nało enie odpowiednich warunków na wagi, ale proces doboru tych wag jest trudniejszy. Dalsze rozwa ania dotycz układów stabilnych o symetrycznych powi zaniach mi dzyneuronowych.
6.2. Sie autoasocjacyjna Hopfielda 6.2.1. Zale no ci podstawowe
Jednym z podstawowych przedstawicieli sieci rekurencyjnych jest sie Hopfielda, ze wzgl du na pełnion funkcj nazywana równie pami ci asocjacyjn . Zadaniem pami ci asocjacyjnej jest zapami tanie zbioru wzorców wej ciowych (ucz cych) w taki sposób, aby w trybie odtwarzania przy prezentacji nowego wzorca układ mógł wygenerowa odpowied , która b dzie odpowiada jednemu z zapami tanych wcze niej wzorców, poło onemu najbli ej próbki testuj cej. Najcz ciej u ywan miar odległo ci mi dzy zbiorami w przypadku pami ci asocjacyjnej jest miara Hamminga. Dla wielko ci binarnych 0,1 odległo Hamminga dwóch wektorów y = [y1, y2, ..., yn]T i x = [ x 1 , x 2 , . . . , T xn] definiuje si w postaci [46, 105]
dH =
n i =1
[xi (1 − yi ) + (1 − xi ) yi ] (6. 3)
Miara Hamminga jest równa zeru jedynie wówczas gdy y = x. W przeciwnym przypadku jest ona równa liczbie bitów, o które ró ni si oba wektory. Uczenie (trening) sieci neuronowej do pełnienia funkcji pami ci asocjacyjnej ma za zadanie taki dobór wag Wij poszczególnych neuronów, aby na etapie odtwarzania sie była zdolna odnale zbiór danych, najbli szy w sensie miary Hamminga, wektorowi testowemu. Proces uczenia sieci kształtuje obszary przyci gania (atrakcji) poszczególnych punktów równowagi, odpowiadaj cych danym ucz cym. W przypadku pami ci autoasocjacyjnej wyst puje wektor ucz cy x lub zbiór tych wektorów, które w wyniku przeprowadzonego uczenia sieci ustalaj poło enia poszczególnych atraktorów. W dalszych rozwa aniach zało ono dla uproszczenia, e ka dy neuron ma funkcj aktywacji typu signum przyjmuj c warto ci ±1. Oznacza to, e sygnał wyj ciowy i-tego neuronu jest opisany funkcj
yi = sgn
N j =0
Wij x j + bi (6. 4)
Ogólny schemat pami ci autoasocjacyjnej przyjmuje si zwykle w postaci układu z bezpo rednim sprz eniem zwrotnym wyj cia z wej ciem (rys. 6.2). Cech charakterystyczn tego układu jest to, e sygnały wyj ciowe neuronów s jednocze nie sygnałami wej ciowymi sieci, x i ( k ) = yi(k — 1).
7
Rysunek reprodukowano za zgod autorów pracy prof. J. Hopfielda i D. Tanka „Computing with neural circuits: a model", Science, 1986, Vol. 233. Copyright 1986 American Association for the Advancement of Science.
Sieci neuronowe w uj ciu algorytmicznym
126
Rysunek 6.2 Struktura sieci Hopfielda W układzie nie wyst puje sprz enie neuronu z własnym wyj ciem, co oznacza Wii=0, a macierz wag w klasycznym rozwi zaniu Hopfielda jest symetryczna W= WT. Dla uproszczenia dalszych rozwa a przyj to, e składowa stała (polaryzacja) definiuj ca próg działania poszczególnych neuronów stanowi składnik wektora x. Przy pomini ciu opó nie jednostkowych sieci, reprezentuj cych tutaj tryb synchroniczny przekazywania sygnałów, zale no ci podstawowe opisuj ce sie mo na przedstawi w postaci
yi (k ) = sgn
N
Wij y j (k − 1) (6. 5)
j =1,i ≠ j
przy warunku pocz tkowym yj(0) = xj. W działaniu sieci Hopfielda mo na wyró ni dwa tryby: uczenia i odtwarzania. W trybie uczenia na podstawie zadanych wzorców ucz cych x s dobierane wagi Wij. W trybie odtwarzania przy zamro onych warto ciach wag i zało eniu okre lonego stanu pocz tkowego neuronów y(0) = x nast puje proces przej ciowy, przebiegaj cy według zale no ci (6.5), ko cz cy si w okre lonym minimum lokalnym, w którym y(k) = y(k - 1). Przy prezentacji jednego wzorca ucz cego x proces zmian przebiega dopóty, dopóki zale no (6.5) nie jest spełniona dla wszystkich N neuronów. Warunek ten b dzie automatycznie spełniony przy wyborze wag spełniaj cych relacj
Wij = gdy
tylko wówczas
1 N
N j =1
1 xi x j (6. 6) N
xi x j x j = xi (wobec bipolarnych warto ci elementów wektora x zawsze
xj2 = (±1)2 = 1). Zale no (6.6) reprezentuje przedstawion wcze niej reguł Hebba. Przy prezentacji wielu wzorców ucz cych x(k) dla k = 1, 2, ..., p wagi Wij s dobierane według uogólnionej reguły Hebba, zgodnie z któr
1 Wij = N
p k =1
xi(k ) x (jk ) (6. 7)
Przy takim trybie uczenia wagi przyjmuj warto ci u rednione wielu próbek ucz cych. Przy wielu wzorcach ucz cych istotne staje si poj cie stabilno ci pami ci asocjacyjnej. Stabilno działania sieci wymaga, aby odpowied i-tego neuronu yi(l) na l-ty wzorzec ucz cy x(l) była równa i-tej składowej xi(l) . Oznacza to, e przy uwzgl dnieniu zale no ci (6.7) otrzymuje si
Sieci neuronowe w uj ciu algorytmicznym
yi(1) = sgn
N j =0
127
Wij x (jl ) = sgn
1 N
N
p
j = 0 k =1
xi(k ) x (jk ) x (jl ) = xi(l ) (6. 8)
Je li sum wa on sygnałów wej ciowych neuronu i-tego oznaczy si przez ui(l) , to mo na wyró ni w niej czynnik po dany xi(l) oraz reszt zwan składnikiem przesłuchu
u i(l ) = xi(l ) +
1 N
N j =0 k ≠ l
xi(k ) x (jk ) x (jl ) (6. 9)
Wobec zało enia funkcji aktywacji typu signum, spełnienie zale no ci (6.8) jest mo liwe, je li składnik przesłuchu jest na tyle mały, aby nie mógł zmieni znaku xi(l) . Oznacza to, e mimo pewnej niezgodno ci bitów (składnik przesłuchu ró ny od zera) proces przej ciowy ko czy si we wła ciwym atraktorze. Pami asocjacyjna ma wła ciwo ci korekcyjne. Przy prezentacji próbki testuj cej ró ni cej si bitami na pewnych pozycjach wektora, sie neuronowa mo e dokona korekcji tych bitów i zako czy proces klasyfikacji we wła ciwym atraktorze. Istotnym parametrem pami ci asocjacyjnej jest jej pojemno . Przez pojemno pami ci rozumie si maksymaln liczb wzorców zapami tanych i odtwarzanych z akceptowalnym bł dem εmax. Przy okre laniu pojemno ci pami ci definiuje si zwykle współczynnik Ci(l) skojarzony z przesłuchem i definiowany w postaci (l )
(l )
Ci = − xi
1 N
N j =0 k ≠l
xi(k ) x (jk ) x (jl ) (6. 20)
Je li Ci(l) ≤ 0 , to składnik przesłuchu ma ten sam znak co xi(l) , a zatem nie szkodzi działaniu pami ci asocjacyjnej. Je li natomiast Ci(l) > l, to zmienia si znak sumy ui(l) w zale no ci (6.9), co wprowadza niestabilno w działaniu neuronu. Niestabilno ta jest rozumiana w ten sposób, e przy prezentacji wzorca testuj cego stan wyj ciowy neuronu i-tego odpowiadaj cy i-temu składnikowi wektora x(l) zmienia swój stan na przeciwny do xi(l) ,a wi c niewła ciwy. Zatem niestabilno procesu powoduje zmian stanu wyj ciowego neuronu na niewła ciwy w stosunku do oczekiwanego. W dalszych rozwa aniach przyj to, e wszystkie pami tane wzorce s losowe i e z równym prawdopodobie stwem warto ci poszczególnych bitów mog by równe +1 lub — 1. Niech ε oznacza prawdopodobie stwo, e Ci(l) > l, tzn. ε = P (Ci(l) > 1). Bior c pod uwag definicj współczynnika Ci(l) wida , e warto e ro nie wraz ze wzrostem liczby p zapami tanych wzorców i zale y od wymiaru N wektora x. Rozkład warto ci C\ jest w przybli eniu dwumianowy z warto ci redni zero i wariancj σ2 = p. Rozkład ten mo e by przybli ony przez rozkład Gaussa o takiej samej warto ci redniej i wariancji.
Rysunek 6.3 Rozkład prawdopodobie stwa przyj cia okre lonej warto ci C Prawdopodobie stwo, e Ci(l) > l, oznaczono na rys. 6.3 w postaci zakreskowanego obszaru. St d
Sieci neuronowe w uj ciu algorytmicznym
128
ε = P(C i > 1) =
1
(l )
2πσ
∞
− x2
ε 2σ dx ≈ e 2
−
1 2σ 2
(6. 11)
1
W tabeli 6.1 przedstawiono relacj pmax przy zało eniu ε = εmax Tabela 6.1
εmax 0,001 0,0036
pmax/N 0,105 0,138
εmax 0,01 0,05
pmax/N 0,185 0,37
Przy bł dzie εmax = 1% (1% bitów wzorca w niewła ciwym stanie) maksymalna pojemno pami ci (liczba zapami tanych wzorców) stanowi zaledwie 18,5% liczby neuronów tworz cych pami asocjacyjn . Przy definicji pojemno ci pami ci przyj to idealizuj ce zało enie, e niewła ciwy stan pocz tkowy pewnej liczby bitów był procesem odosobnionym i nie powodował dalszego powielania liczby niewła ciwych bitów w sieci. W rzeczywisto ci jest to zało enie nierealistyczne, gdy z powodu wzajemnego sprz enia zwrotnego ka dy niewła ciwie ustawiony bit na pocz tku procesu powoduje dalsze powielanie bł du, co jest równowa ne zmniejszeniu maksymalnej pojemno ci pami ci asocjacyjnej. W pracy [46] wykazano, e przy zastosowaniu reguły uczenia Hebba proces lawinowego powielania bł dów ustaje, je li pmax < 0,138N. St d w praktyce maksymaln pojemno pami ci asocjacyjnej przy εmax = 1% okre la zale no
p max = 0,138 N (6. 32) Z tabeli 6.1 wida , e odpowiada to stanowi pocz tkowemu sieci, w którym 0,36% ogólnej liczby neuronów znajduje si w niewła ciwym stanie. Na ogół, je li przyjmie si zało enie, e N / 2p > log N, to maksymaln pojemno sieci wyznacza wzór [75]
Pmax =
N (6. 13) 2 log N
6.2.2. Tryb uczenia sieci Hopfielda Faza ucz ca sieci Hopfielda ma za zadanie takie ukształtowanie warto ci wag, przy którym w stanie odtworzeniowym sieci zało enie stanu pocz tkowego neuronów bliskiego jednemu z wektorów ucz cych x prowadzi przy uwzgl dnieniu zale no ci (6.5) do stanu ustalonego, w którym stan neuronów y = x jest niezmienny dla dowolnej chwili. Istnieje wiele metod doboru warto ci wag sieci Hopfielda. Najprostsz jest zastosowanie reguły Hebba, opisanej zale no ci (6.7), któr tutaj przepisano w postaci macierzowej
W=
1 XX (6. 14) N
przy czym X jest macierz zło on z p kolejnych wektorów ucz cych x(i), X = [x(1), x(2), ..., x(p)], a N oznacza wymiar wektora x, równy liczbie neuronów sieci. Reguła Hebba zastosowana w powy szej postaci jest stosunkowo mało efektywna i w fazie odtworzeniowej sieci przy istnieniu szumu (wzorce pocz tkowe ró ni si od wzorców zapami tanych) prowadzi do licznych przekłama , czyli minimów lokalnych dalekich od rozwi zania wła ciwego. Inne znacznie lepsze podej cie zakłada procedur doboru wag sieci wynikaj c z pseudoinwersji. Punktem wyj cia w tej metodzie jest zało enie, e przy wła ciwie dobranych wagach ka dy wzorzec x podany na wej cie generuje na wyj ciu sieci samego siebie, prowadz c tym samym do natychmiastowego stanu ustalonego (zale no (6.5)). Oznacza to przy zapisie macierzowym
WX = X (6. 45) Jednym z rozwi za takiego liniowego układu Np równa (N - liczba neuronów, p - liczba wzorców) jest [90]
W = XX + (6. 17) Je li wektory ucz ce s liniowo niezale ne, ostatnia zale no mo e by znacznie uproszczona i przedstawiona w postaci [90, 115]
Sieci neuronowe w uj ciu algorytmicznym
129
(
W = X XTX
)
−1
X T (6. 17)
Pseudoinwersja macierzy o wymiarach N x p została tu zast piona zwykł inwersj macierzy kwadratowej XTX o wymiarach p x p. Dodatkow zalet wzoru (6.17) jest mo liwo jego zapisu w postaci zale no ci iteracyjnej, nie wymagaj cej obliczania macierzy odwrotnej. W tym przypadku zapis zale no ci (6.17) przyjmuje posta zale n od kolejnych wektorów ucz cych x(i) (i = 1, 2, ..., p)
W (i ) = W (i =1) +
1
[x ] x − [x( ) ] W ( )x( ) x[W ( ) x ( ) − x ( ) ][W ( ) x ( ) − x ( ) ] (i )
(i )
T
i =1
i
i T
i =1
i =1
i
i
i
x
(6. 18)
i T
przy warunku startowym W(0) = 0 [115]. Zale no (6.18) wymaga jednokrotnej prezentacji wszystkich p wzorców ucz cych, w wyniku której macierz wag W sieci przyjmuje warto ustalon W = W(p) .Zale no (6.17) lub jej iteracyjna odmiana w postaci (6.18) nosi nazw metody rzutowania. Nale y podkre li , e zastosowanie metod pseudoinwersji zwi ksza pojemno maksymaln sieci Hopfielda, która w tym przypadku przyjmuje warto równ N-1. Inn odmian metody rzutowania jest tak zwana metoda rzutowania ∆, b d ca gradientow odmian algorytmu minimalizacji odpowiednio zdefiniowanej funkcji celu. Zgodnie z t metod dobór wag odbywa si rekurencyjnie w cyklu po wszystkich wzorcach ucz cych, powtarzanym wielokrotnie
W ←W +
η
[ x ( ) − Wx ( ) ][x ( ) ] N i
i
i
T
(6. 19)
Współczynnik η jest stal uczenia dobieran zwykle z przedziału [0,7,0,9]. Jego znaczenie jest podobne jak w przypadku sieci wielowarstwowych. W odró nieniu od zwykłej metody rzutowania, metoda rzutowania ∆ wymaga wielokrotnej prezentacji wszystkich p wzorców ucz cych, a do ustalenia si warto ci wag. Proces uczenia przerywa si , gdy zmiany warto ci wektora wag s mniejsze od przyj tej z góry tolerancji ε. Implementacja komputerowa algorytmu opartego na metodach pseudoinwersji, dokonana w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej w postaci programu Hfnet (patrz dodatek C) , wykazała znaczn przewag nad zwykł metod uczenia Hebba opisan zale no ci (6.14). W trybie odtworzeniowym tolerowane s znacznie wi ksze odchyłki wektora pocz tkowego od odpowiadaj cego mu atraktora (jednego z wektorów u ytych w uczeniu). Na podstawie przeprowadzonych bada eksperymentalnych na wielu ró nych przykładach z zastosowaniem programu Hfnet mo na stwierdzi , e metoda rzutowania A nale y do efektywnych metod uczenia i tworzy sie o bardzo dobrych wła ciwo ciach odtworzeniowych, stosunkowo mało wra liwych na szumy. Pod tym wzgl dem mo e by porównana tylko ze zwykł metod rzutowania, góruj c nad ni nieco mniejsz zło ono ci obliczeniow . Nale y nadmieni , e uczenie sieci mo na sprowadzi równie do rozwi zania liniowego problemu optymalizacyjnego. Wykorzystuje si przy tym zale no (6.5), zgodnie z któr stan neuronu yi = sgn(ui) nie zmienia si , je li suma wagowa sygnałów
ui
Wij y j ma ten sam znak co yi. Stan neuronu jest stabilny, je li j
zachodzi warunek [63]
xi(k )
N j =0
Wij x (jk ) > 0 (6. 20)
dla i = l ,2,..., N i dla dowolnej k-tej próbki ucz cej (k= 1, 2, ..., p). Dobór wag Wij spełniaj cy warunek nierówno ciowy (6.20) jest rozwi zaniem problemu uczenia sieci, gdy odpowiada stanowi stabilnemu. Przy znanych wzorcach ucz cych x nierówno (6.20) jest liniowa wzgl dem wag Wij. Matematyczne rozwi zanie problemu (6.20) mo na przedstawi w postaci zagadnienia programowania liniowego
min c (6. 21) przy ograniczeniach
xi(k )
N j =0
Wij x (jk ) > 0 (6. 22)
Sieci neuronowe w uj ciu algorytmicznym
130
dla i = 1,2, ...,N, k = l, 2,..., p. Współczynnik c jest warto ci stał i stanowi jedynie wielko pomocnicz przy matematycznym sformułowaniu problemu programowania liniowego. Zagadnienie opisane zale no ciami (6.21) i (6.22) jest nietypowym sformułowaniem problemu programowania ze wzgl du na to, e minimalizowana funkcja nie zale y od zmiennych optymalizowanych, a główny problem sprowadza si do takiego doboru wag Wij, aby był spełniony warunek (6.22). Bior c pod uwag , e zmienne xi(k) s składowymi wektorów ucz cych x(k) (k = l, 2,...,p), zadanymi na pocz tku procesu uczenia, warunek (6.22) mo na zapisa w prostej postaci macierzowej
AW > 0 (6. 23) przy czym A jest zwi zana z macierz korelacji wzorców ucz cych, a wektor wagowy W= [W12, W13,..., W1N, W21,..., W2N, WN1,WN2,..., WN,N-1]T jest zło eniem wektorów wagowych poszczególnych neuronów sieci. Istnieje wiele metod rozwi zania problemu programowania liniowego, z których najefektywniejsza wydaje si zmodyfikowana metoda simpleksu [98], oparta na strategii ogranicze aktywnych. Implementacja tej metody z zastosowaniem rachunku macierzy rzadkich w formacie MPS (Mathematic Programming Standard) w postaci programu SOLYER, dokonana w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej [104, 134], wykazała dobr efektywno tego podej cia w uczeniu sieci Hopfielda, cho nieco gorsz ni metody oparte na metodach pseudoinwersji.
6.2.3. Tryb odtworzeniowy sieci Hopfielda W momencie dobrania wag sieci nast puje ich „zamro enie" i przej cie do fazy odtworzeniowej. W fazie tej na wej cie sieci podaje si wektor testowy x i oblicza odpowied sieci w postaci
y (i ) = sgn (Wy (i − 1)) (6. 24) (na starcie y(0) = x), a nast pnie proces iteracyjny powtarza si dla kolejnych warto ci y (i), a do ustalenia si odpowiedzi. Proces iteracyjny ustalania si odpowiedzi układu trwa zwykle wiele cykli i zajmuje du o czasu obliczeniowego. W innej sekwencyjnej metodzie Monte Carlo obliczenia powy sze przeprowadza si nie dla wszystkich N neuronów, a jedynie dla losowo wybranych, powtarzaj c wielokrotnie proces losowania, a do ustalenia si odpowiedzi sieci. Umo liwia to zmniejszenie liczby operacji matematycznych wymaganych na etapie rozpoznania. W procesie odtwarzania na podstawie zaszumionych próbek stanowi cych stan pocz tkowy neuronów sieci Hopfielda wyst puj trudno ci z uzyskaniem wła ciwego stanu ko cowego odpowiadaj cego jednemu z zapami tanych wzorców. W wielu przypadkach proces iteracyjny nie osi ga rozwi zania wła ciwego, ale rozwi zanie fałszywe. Przyczyn fizycznych tego zjawiska jest wiele. Po pierwsze, warto funkcji energetycznej wyra onej wzorem (6.2) zale y od iloczynu stanów dwu neuronów i jest symetryczna wzgl dem polaryzacji. Ten sam stan energetyczny jest przypisany obu polaryzacjom ±yi, ±yj, pod warunkiem, e obie zmieniaj si na przeciwny jednocze nie. St d w przypadku sieci 3-neuronowej stany (+1, -l, +1) oraz (-1, +1, -1) charakteryzuj si identyczn warto ci energii i oba stany stanowi jednakowo dobre rozwi zanie problemu. Przej cie z jednego stanu do drugiego jest mo liwe przez zwykł zamian polaryzacji stanów wszystkich neuronów jednocze nie. Drug przyczyn powstawania stanów fałszywych w sieci Hopfielda jest mo liwo mieszania ró nych składowych zapami tanych wzorców i tworzenia w ten sposób stabilnego stanu odpowiadaj cego minimum lokalnemu. Stan mieszany odpowiada wi c takiej liniowej kombinacji nieparzystej liczby wzorców, która odpowiada stanowi stabilnemu sieci. Charakteryzuje si on wy szym poziomem energetycznym neuronów ni stan po dany. Wreszcie przy du ej liczbie wzorców tworz si po rednie minima lokalne nie odpowiadaj ce adnemu z zapami tanych wzorców, a wynikaj ce z ukształtowania si funkcji energetycznej sieci. W trybie odtworzeniowym proces mo e utkn w jednym z takich minimów lokalnych powoduj c, e uzyskane rozwi zanie nie odpowiada adnemu stanowi neuronów bior cemu udział w procesie uczenia.
Sieci neuronowe w uj ciu algorytmicznym
131
Rysunek 6.4 Posta wzorców ucz cych i testuj cych dla sieci Hopfielda: a) wzorce ucz ce; b) zastosowane wzorce testuj ce Na rysunku 6.4 zilustrowano przykłady wzorców 10 cyfr przedstawionych w układzie pikselowym o wymiarach 7x7 zastosowane do badania skuteczno ci działania sieci Hopfielda. Liczba neuronów sieci wynosi wi c 49, liczba wzorców ucz cych 10. Uczenie przeprowadzono przy zastosowaniu programu Hfnet (patrz dodatek C) z u yciem 3 przedstawionych metod uczenia: metody Hebba, metody rzutowania i rzutowania ∆. Na etapie uczenia zastosowano wzorce idealne (niezaszumione) przedstawione na rys. 6.4a, uzyskuj c bezbł dne odtwarzanie przy metodach rzutowania i rzutowania ∆. Nauczon sie poddano nast pnie procesowi testowania na 20 wzorcach mocno zaszumionych, przedstawionych na rys. 6.4b. Wyniki odtwarzania s znacznie zró nicowane w zale no ci od zastosowanej metody uczenia. W przypadku uczenia Hebba tylko jeden wzorzec został odtworzony bezbł dnie, wszystkie pozostałe nie doprowadziły do rozstrzygni cia, utykaj c w minimach lokalnych bardzo dalekich od wzorców u ytych w uczeniu. Metody rzutowania i rzutowania ∆ umo liwiły prawie bezbł dne odtworzenie ka dego z zapami tanych wzorców. Z 20 testowanych wzorców 7 zostało odtworzonych bezbł dnie, w 9 przypadkach rozpoznany wzorzec ró nił si o jeden piksel od oryginału, a w 4 przypadkach ró nica ta wynosiła dwa piksele.
6.2.4. Implementacja sprz towa sieci Hopfielda
Sie Hopfielda, ze wzgl du na równoległ struktur układow i powtarzalny typ elementów, nadaje si do realizacji sprz towej przy u yciu standardowych elementów technologii mikroelektronicznej. Punktem wyj cia jest tu opis sieci równaniem ró niczkowym (6.1), które dla wygody przepiszemy tu w postaci
Ti
du i = −u i + dt
Hopfield [50] zaproponował implementacj przedstawionego na rys. 6.5.
Wij f (u j ) + bi (6. 25) j
równania ró niczkowego (6.25) przy u yciu obwodu
Rysunek 6.5 Schemat neuronu w sieci Hopfielda Jest to schemat i-tego neuronu zawieraj cy oprócz elementów pasywnych R, C tak e jeden element aktywny w postaci wzmacniacza o charakterystyce nieliniowej f(ui) typu sigmoidalnego oraz jedno ródło niezale ne pr du Ii reprezentuj ce b d to polaryzacj bi, b d te sygnał pochodz cy od wymusze zewn trznych układu. Inwerter wł czony na wyj ciu neuronu generuje sygnał wyj ciowy neuronu ze znakiem minus, u ywany w przypadku, gdy waga Wij wynikaj ca z projektowania sieci ma warto ujemn . Przy zało eniu, e pr d wej ciowy wzmacniacza iin = 0 równanie pr dowe w w le ui przyjmie posta
Sieci neuronowe w uj ciu algorytmicznym
Ci
132
1 (V j − ui ) + I i = j =1 Rij N
du i 1 = − ui + dt ri 1 = −u i + ri
N j =1
1 + Rij
N j =1
1 f (u j ) + I i Rij
(6. 26)
Wprowadzaj c oznaczenia:
1 1 = + Ri ri
N
1 (6. 27) j =1 Rij
i uwzgl dniaj c je we wzorze (6.26) otrzymuje si równanie sieci w postaci
Ri C i
du i = −u i + dt
Ri f (u j ) + Ri I i (6. 28) j =1 Rij N
Z porównania ostatniej zale no ci ze wzorem (6.25) wynikaj nast puj ce zwi zki:
Ti = Ri C i (6. 29) Wij =
Ri (6. 30) Rij
bi = Ri I i (6. 31) Jak z powy szych zale no ci wynika rol elementu całkuj cego odgrywa kondensator Ci. Parametry τi, Wij, bi zale od doboru parametrów wszystkich elementów. To wzajemne oddziaływanie jest bardzo niewygodne przy projektowaniu sieci. Wad t mo na wyeliminowa przyjmuj c warto rezystancji ri bardzo mał w stosunku do warto ci pozostałych rezystancji Rij. Przy takim doborze rezystancji uzyskuje si
1 1 = + Ri ri
N
1 1 ≈ i ri j = 0 Rij
poszczególne wagi oraz stałe czasowe systemu s regulowane przez warto ci pojedynczych rezystancji:
ri ≈ ri C i (6. 32) Wij ≈
ri (6. 33) Rij
bi ≈ ri I i (6. 34)
Sieci neuronowe w uj ciu algorytmicznym
133
Rysunek 6.6 Schemat sieci Hopfielda: a) schemat rezystancyjno-pojemno ciowy; b) symboliczne przedstawienie sieci Na rysunku 6.6 przedstawiono schemat całej sieci Hopfielda, przy czym rys. 6.6a przedstawia schemat elektryczny poł cze elementów, a rys. 6.6b - jego schematyczne przedstawienie zaproponowane przez Hopfielda. Uwzgl dniono jedynie sprz enia wzajemne neuronów, przyjmuj c sprz enia własne równe zeru (wagi Wii = 0). Oznaczenie wzmacniacza nieliniowego ±f(x) wskazuje, e w sieci s dost pne (w miar potrzeby) zarówno sygnały f(x) przy warto ci dodatniej wagi, jak i - f(x) przy warto ci ujemnej wagi. Nale y zaznaczy , e schemat układu zaproponowany przez Hopfielda nie jest jedynym rozwi zaniem równania (6.25). Całkowanie równa ró niczkowych mo e si odbywa przy u yciu członów całkuj cych, łatwych do realizacji w technologii scalonej MOS z wykorzystaniem b d elementów RC, b d układów z przeł czan pojemno ci [13, 16]. Niezale nie od szczegółów implementacji praktycznej, rozwi zania układowe sieci Hopfielda charakteryzuj si budow modułow o powtarzalnej strukturze ka dego kanału. Wszystkie elementy wchodz ce w skład układu s bezpo rednio realizowane w postaci scalonej przy wykorzystaniu najnowszej technologii VLSI. Z tego wzgl du sie Hopfielda od samego pocz tku była poddawana próbom realizacji scalonej. Do podstawowych nale zastosowania w rozwi zywaniu zagadnie optymalizacyjnych przy u yciu specjalizowanej struktury układu. Przykładem mo e by sie realizuj ca programowanie liniowe i kwadratowe [16, 161], programowanie minimaksowe i odcinkowo-liniowe [16, 105, 113], sie rozwi zuj ca problem komiwoja era czy podziału grafu na 2 cz ci zapewniaj ce minimaln liczb ł cze mi dzy obu cz ciami [46]. Drug rodzin zastosowa stanowi przetwarzanie sygnałów przy u yciu struktury Hopfielda. W tej grupie mo na wyró ni rozwi zania przetworników a/c, przekształcenie Fouriera czy przetwarzanie i dekompozycj sygnałów [16, 46, 56, 105]. Wspóln cech wszystkich układów opartych na sieci Hopfielda jest du a szybko działania. Dobieraj c stał czasow integratorów τi w zakresie nanosekund mo na uzyska rozwi zanie okre lonego problemu w czasie o rz d lub najwy ej dwa rz dy wielko ci dłu szym ni stała czasowa integratora, co odpowiada zakresowi mikrosekund. Mówi si wówczas, e układ działa w czasie rzeczywistym. Problemem, który nale y rozwi za korzystaj c z implementacji sprz towej sieci Hopfielda, jest stosunkowo skomplikowana metoda projektowania. W zastosowaniach praktycznych przy okre laniu optymalnych wag sieci korzysta si z metody obliczeniowej opartej na poj ciu funkcji energetycznej Lapunowa [41, 50]. Dla konkretnego problemu definiuje si funkcj celu wyra on jako funkcja wag sieci Hopfielda. Przez przyrównanie jej do ogólnej postaci funkcji energetycznej (6.2) uzyskuje si układ równa umo liwiaj cy okre lenie warto ci dobieranych wag. Wagi poł cze mi dzyneuronowych s wi c obliczane, a nie uzyskiwane w wyniku klasycznego uczenia sieci. Sie Hopfielda spełniaj ca okre lon funkcj ma wagi stałe nie podlegaj ce uczeniu. W tym sensie ka da sie jest specjalizowana do wykonywania okre lonego zadania. Zmiana warunków zadania wymaga ponownego przeprojektowania sieci, a nie douczenia, jak w przypadku sieci jednokierunkowych. Zmienia si przy tym zwykle struktura poł cze mi dzyneuronowych. Dobierane wagi sieci stanowi pami długoterminow . Podanie warunków niezerowych na sie powoduje uruchomienie procesu rekurencyjnego prowadz cego do jednego z minimów lokalnych, jakim odpowiadaj zakodowane wagi sieci. Stan stabilny neuronów stanowi tak zwan pami krótkoterminow . Niestety, oprócz minimów lokalnych wła ciwych powstaj równie minima paso ytnicze, w których mo e utkn aktualny punkt pracy, generuj c niewła ciwe rozwi zanie. Przeciwdziałanie niepo danym punktom równowagi odbywa si na etapie projektowania przez uwzgl dnienie ich wpływu drog odpowiedniej modyfikacji funkcji energetycznej lub stworzenie bardziej rozbudowanego układu logicznego współpracuj cego z sieci Hopfielda.
6.3. Sie Hamminga Sie Hamminga, zaproponowana przez Lippmanna w pracy [83], jest trójwarstwow struktur rekurencyjna, b d c rozwini ciem sieci Hopfielda. Jej zasada działania jako klasyfikatora wektorowego polega na minimalizacji odległo ci Hamminga wektora testowego podanego na wej cie sieci od wektorów reprezentuj cych wzorce ucz ce, zakodowane w strukturze sieci.
Sieci neuronowe w uj ciu algorytmicznym
134
Rysunek 6.7 Schemat sieci Hamminga Na rysunku 6.7 przedstawiono ogóln posta sieci Hamminga. Warstwa pierwsza jest jednokierunkowa z przepływem sygnałów od wej cia do wyj cia i ustalonymi warto ciami wag. Warstw drug , tak zwany MAXNET, stanowi neurony poł czone sprz eniem zwrotnym ka dy z ka dym, przy czym w odró nieniu od struktury Hopfielda istnieje niezerowe sprz enie neuronu z własnym wyj ciem. Wagi neuronu w warstwie MAXNET s stałe. Poł czenia mi dzy ró nymi neuronami s inhibicyjne (gasz ce) o warto ciach wag równych -ε, przy czym zwykle zakłada si warto ε odwrotnie proporcjonaln do liczby wzorców. Sprz enie neuronu z wyj ciem własnym jest pobudzaj ce o warto ci wagowej równej +1. Wagi polaryzacji neuronów przyjmuje si równe zeru. Neurony w tej warstwie działaj w trybie WTA, w którym tylko jeden neuron w stanie ustalonym jest pobudzony, a pozostałe w stanie spoczynkowym. Warstwa wyj ciowa jednokierunkowa reprezentuje wektor wyj ciowy stowarzyszony z wektorem wej ciowym. Wagi neuronów tej warstwy s ustalone w zale no ci od tego wektora. Wzorce ucz ce reprezentuj ce wektory W-wymiarowe przyjmuj warto ci bipolarne +1 lub –1. S one podawane na wej cia neuronów stanowi cych warstw pierwsz o skokowej funkcji aktywacji, przyjmuj cej warto 1 lub 0. W działaniu sieci mo na wyró ni dwie fazy. W fazie pierwszej na wej ciu sieci jest prezentowany N-elementowy wektor x. Czas prezentacji wektora musi by dostatecznie długi, aby neurony warstwy pierwszej uzyskały ustalone warto ci sygnałów wyj ciowych, inicjuj ce stan pocz tkowy neuronów warstwy drugiej (MAXNET-u). W fazie drugiej wektor wej ciowy x jest usuwany i rozpoczyna si proces iteracyjny w warstwie MAXNET zapocz tkowany stanem pocz tkowym, ustanowionym w fazie pierwszej. Proces iteracyjny trwa do chwili, a wszystkie neurony z wyj tkiem jednego osi gn stan zerowy. Neuron o niezerowym sygnale wyj ciowym (zwyci zca) reprezentuje klas , do której nale y wektor wej ciowy. Sie Hamminga reprezentuje pami heteroasocjacyjn , pami taj c pary wektorów (x, y), przy czym x jest wektorem wej ciowym, a y - wektorem wyj ciowym sieci, oba bipolarne o warto ciach elementów ±1. W zły wej ciowe sieci l, 2,..., N przyjmuj warto ci sygnałów zadane przez kolejne wektory x(i). Neurony warstwy pierwszej l, 2, ...,p okre laj odległo Hamminga mi dzy aktualnie podanym wektorem wej ciowym x a ka dym z p zakodowanych wektorów wzorcowych x(i). Neurony w warstwie MAXNET wykrywaj wektor o najmniejszej odległo ci Hamminga, ustalaj c w ten sposób klas , do której nale y dany wektor wej ciowy x. Wagi neuronów warstwy wyj ciowej odtwarzaj wektor stowarzyszony z danym wektorem wej ciowym. Przy p neuronach w warstwie pierwszej pojemno pami ci Hamminga jest równa p, gdy ka dy neuron reprezentuje jedn klas . Je li liczba zapami tanych wzorców m jest mniejsza ni p, zakłada si , e pozostałe p - m wzorców s zerowe. Inicjalizacja wag sieci jest bardzo prosta. Wagi warstwy pierwszej reprezentuj kolejne wektory wzorcowe x(i); st d
Wij(1) = x (ji ) (6. 35) dla i = 1,2,...,p. Podobnie wagi neuronów warstwy wyj ciowej reprezentuj kolejne wektory wzorcowe yi(i), stowarzyszone z xi(i)
W ji(2 ) = y (ji ) (6. 36)
Sieci neuronowe w uj ciu algorytmicznym
135
W przypadku neuronów w warstwie MAXNET działaj cych w trybie WTA inicjalizacja wag sieci ma za zadanie wzmocni własny sygnał neuronu i osłabi pozostałe. St d przyjmuje si
Wii(m ) = 1 (6. 37) oraz
1 < Wij(m ) < 0 (6. 38) p −1
−
Dla zapewnienia bezwzgl dnej zbie no ci algorytmu wagi Wij(m) powinny ró ni si mi dzy sob . Lippmann w swoim rozwi zaniu przyj ł
Wij(m ) = −
1 + ξ (6. 39) p −1
przy czym ξ jest warto ci losow o dostatecznie małej amplitudzie. Na pocz tku procesu warto ci sygnałów we wszystkich w złach układu s równe zeru, z wyj tkiem w złów wej ciowych, do których został podany wektor testuj cy x. Warto ci sygnałów wej ciowych poprzez wagi Wij(1) s dostarczane do neuronów warstwy pierwszej obliczaj cej odległo Hamminga od odpowiednich wektorów wzorcowych x(i) dla i =1,2, ...,p. Warto ci sygnałów wyj ciowych tych neuronów s okre lane wzorem [34]
Wij(1) x j + n yˆ i =
= 1−
j
2n
(
)
d H x (i ) , x (6. 40) n
w którym dH(x(i),x) oznacza odległo Hamminga mi dzy wektorem x a x(i), czyli liczb bitów, o które ró ni si oba wektory. Warto yˆ i = 1 , je li x = x(i), lub yˆ i = 0 , je li x = -x(i). W pozostałych przypadkach warto ci yˆ i s zawarte w przedziale [0, 1]. Po okre leniu warto ci
yˆi wektor wej ciowy x zostaje usuni ty z wej cia sieci, a stany neuronów yˆi
staj si stanami pocz tkowymi yi neuronów w warstwie MAXNET w nast pnej fazie działania. Zadaniem neuronów tej warstwy jest wyłonienie zwyci zcy, czyli neuronu, którego pobudzenie jest najbli sze warto ci 1. Neuron taki wskazuje na wektor wzorcowy o najmniejszej odległo ci Hamminga od wektora wej ciowego x. Proces wyłaniania zwyci zcy jest procesem rekurencyjnym przebiegaj cym według zale no ci [34]
yi (k ) = f
Wij(m ) y j (k − 1) = j
(6. 41)
= f y i (k − 1) + z warto ci startow yj(0)=
Wij y j (k − 1) (m )
j ≠i
yˆi . Funkcja aktywacji f(y) jest funkcj okre lon wzorem f (y) =
y dla y ≥ 0 (6. 42) 0 dla y < 0
Proces iteracyjny (6.41) jest powtarzany, a stan neuronów przestanie ulega zmianom i tylko jeden neuron jest aktywny, podczas gdy pozostałe przyjm stan zerowy. Neuron aktywny staje si zwyci zc i poprzez wagi Wij(2) neuronów warstwy wyj ciowej odtworzy wektor y(i) stowarzyszony z wektorem x(i) uznanym przez MAXNET za najbli szy wektorowi wej ciowemu x. W pracy [34] zaproponowano modyfikacj algorytmu wyłaniania zwyci zcy w warstwie MAXNET, przyspieszaj c działanie sieci i poprawiaj c zbie no procesu iteracyjnego. Przez zało enie jednakowych warto ci wag mi dzy ró nymi neuronami, zale nych tylko od numeru iteracji k,
ε (k ) =
1 , zale no rekurencyjna (6.41) została uproszczona do p−k
Wij( m ) = −ε (k ) , przy czym
Sieci neuronowe w uj ciu algorytmicznym
136
yi (k ) = f y i (k − 1) − ε (k − 1)
j ≠i
y i (k − 1) (6. 43)
Przypomina ona oryginalny wzór Lippmanna [83], w którym ε(k - 1) = 1/p = const. Na podstawie licznych bada eksperymentalnych wykazano, e sie rekurencyjna Hamminga daje lepsze rezultaty ni sie Hopfielda, w szczególno ci dla przypadków, w których wektory stowarzyszone x i y s losowe. Wa n zalet sieci Hamminga jest du a oszcz dno poł cze wagowych mi dzy neuronami. Przykładowo dla sieci o 100 wej ciach, koduj cej 10 ró nych klas wektorowych, sie Hopfielda wymaga 10 000 poł cze wagowych o dobieranych warto ciach wag. W przypadku sieci Hamminga liczba powi za wagowych jest zredukowana do 1100, z których 1000 wag wyst puje w warstwie pierwszej i 100 wag w warstwie MAXNET. Warstwa wyj ciowa w tym przypadku nie wyst puje, gdy sie Hamminga od powiadaj ca sieci Hopfielda jest autoasocjacyjna. Wi e si z tym zwi kszona pojemno maksymalna sieci, dla której przy p neuronach w warstwie MAXNET pojemno maksymaln sieci szacuje si na pmax — 2cp, przy czym c ≤ l [75].
6.4. Sie typu BAM 6.4.1. Opis działania sieci Kosko Uogólnieniem sieci Hopfielda na dwuwarstwow struktur rekurencyjna, umo liwiaj c zakodowanie zbiorów 2 wektorów wzajemnie stowarzyszonych, jest dwukierunkowa pami asocjacyjna BAM (Bidirectional Associative Memory), zaproponowana przez Kosko w pracy [73]. Jej ogóln struktur przedstawiono na rys. 6.8. Przepływ sygnałów jest dwukierunkowy: od wej cia do wyj cia i z powrotem. Tryb pracy jest synchroniczny, co oznacza, e w jednym cyklu przepływ sygnałów nast puje w jedn stron , okre lane s stany neuronów odbiorczych, po czym w nast pnym cyklu neurony te staj si ródłem wysyłaj cym sygnały w stron przeciwn i cykl powtarza si , a do ustalenia stanu równowagi.
Rysunek 6.8 Schemat sieci BAM zaproponowanej przez B. Kosko Funkcja aktywacji neuronów jest typu skokowego: binarnego o stanach l, 0 lub bipolarnego o stanach ±1. Przy zerowym sygnale pobudzenia neuronu, jego stan aktualny pozostaje równy stanowi poprzedniemu. Ze wzgl du na lepsze wła ciwo ci sieci w trybie odtworzeniowym na etapie uczenia u ywa si wył cznie wersji bipolarnej sygnałów ucz cych. Macierz wag W ł cz ca obie strony sieci jest na ogół macierz rzeczywist niesymetryczn . Ze wzgl du na symetri poł cze , przy jednym kierunku przepływu sygnałów, wagi s opisane macierz W, przy kierunku przeciwnym - macierz WT. Zało ono, e wej ciowe dane ucz ce s okre lone w postaci zbioru m par binarnych
{(ai , bi )}
przy czym ai=[ ai1, ai2, ..., ain], bi =[bi1, bi2, ..., bip] .Zbiorowi temu przyporz dkowuje si odpowiadaj cy mu zbiór par bipolarnych
{(xi , yi )}
w którym xi jest bipolarn reprezentacj ai (0 → -1,1 → 1), a yi jest bipolarn reprezentacj bi. Zgodnie z definicj Kosko [73] macierz wag W okre la si na podstawie zbioru {( xi , yi )} jako macierz korelacji
W=
m i =1
xiT y i (6. 44)
Sieci neuronowe w uj ciu algorytmicznym
137
Okre lenie wag powi za mi dzyneuronowych umo liwia prze ledzenie procesu ustalania si stanu ustalonego na obu ko cach sieci. Przy zało eniu, e stan pocz tkowy sieci był zadany w postaci pary (x0,y0), proces dwukierunkowego przetwarzania sygnałów tworzy kolejne cykle
f ( x0W ) = y1 → f ( y1W T ) = x1 → f ( x1W ) = y 2 →
→ f ( y 2W T ) = x 2 → f ( x 2W ) = y 2 → ...
...
...
...
→ f ( y f W T ) = x f → f (x f W ) = y f
...
w wyniku których na ko cu procesu s generowane 2 stabilne wielko ci xf oraz yf, stanowi ce stan ustalony sieci. Przy wej ciowej postaci binarnej (a0, b0) wielko ciom bipolarnym (xf, yf) przyporz dkowuje si odpowiadaj ce im postacie binarne (af, bf). Ka demu punktowi po redniemu procesu (xk, yk) mo na przyporz dkowa funkcj energetyczn Ek definiowan w postaci [73]
E k = − x k Wy TK (6. 45) Udowodniono [73], e kolejna zmiana stanu w procesie nieustalonym powoduje zmniejszanie si warto ci funkcji energetycznej sieci a do osi gni cia minimum lokalnego. Minimum to osi ga sie w sko czonej liczbie iteracji i ma ono warto
E min = − x f Wy Tf (6. 46) Innymi słowy, ka de inne rozwi zanie, wł cznie z najbli szym, odległym jedynie o l w sensie miary Hamminga od (xf, yf), b dzie si charakteryzowa zwi kszon warto ci funkcji energetycznej. Przy spełnieniu pewnych dodatkowych warunków par (xf, yf) jest jedna z par ucz cych, bior cych udział w tworzeniu macierzy W, najbardziej podobna (najbli sza w sensie miary Hamminga) do pary zadanej na pocz tku (x0, y0).
6.4.2. Modyfikacja uczenia sieci BAM W pracy [144] wykazano, e je li energia stowarzyszona z i-t par ucz c
Ei = − aiWbiT nie tworzy minimum
lokalnego, to para ucz ca (ai, bi) nie mo e by odtworzona przez sie nawet wówczas, gdy warto ci startowe s równe (ai, bi). Ponadto BAM generuje złe wyniki, je li w procesie uczenia uczestnicz pary danych ucz cych niepodobne do siebie, np. podobne wektory x s stowarzyszone z niepodobnymi do siebie wektorami y, przy czym podobie stwo wektorów mierzy si przy u yciu odległo ci Hamminga mi dzy wektorami, dH(ai, aj), to znaczy bada si stopie spełnienia warunku
1 1 d H (ai , a j ) ≈ d H (bi , b j ) (6. 47) n p dla wszystkich warto ci i oraz j. W pracy [145] zaproponowano modyfikacj reguły Kosko umo liwiaj c odtworzenie wektora (ai, bi), niezale nie od tego, czy tworzy on minimum lokalne, czy nie. Zamiast wzoru (6.44) zaproponowano
W=
m i =1
xiT y i + (q − 1)x Tj y j (6. 48)
l)xjTyj
Poprawka (q jest równowa na zwielokrotnionemu (q - 1) razy udziałowi pary (xj, yj) w procesie uczenia. Dobór warto ci q jest kluczowy dla zapewnienia dobrych zdolno ci odtworzeniowych pami ci asocjacyjnej. Procedur dodawania poprawek mo na powtarza dla kolejnych par nie spełniaj cych warunku kryterium minimum funkcji energetycznej, stosuj c zale no
W (i ) = W (i −1) + (q − 1)x Tj y j (6. 49) i przyjmuj c za W(i-1) macierz uzyskan w poprzednim cyklu ucz cym. Przykładowo, je li uczenie według reguły Kosko przeprowadzi si dla sieci BAM o 9 wej ciach i 9 wyj ciach przy 3 danych parach ucz cych o postaci: • binarnej a1=[1 0 0 1 1 1 0 0 0]
Sieci neuronowe w uj ciu algorytmicznym
•
138
a2=[0 1 1 1 0 0 1 1 1] a3=[1 0 1 0 1 1 0 1 1] b1=[1 1 1 0 0 0 0 1 0] b2=[1 0 0 0 0 0 0 0 1] b3=[0 1 0 1 0 0 1 0 1] bipolarnej
x1=[1 –1 –1 1 1 1 –1 –1 –1] y1=[1 1 1 –1 –1 –1 –1 1 –1] x2=[-1 1 1 1 –1 –1 1 1 1 ] y2=[1 –1 –1 –1 –1 –1 –1 –1 1] x3=[1 –1 1 –1 1 1 –1 1 1] y3=[-1 1 –1 1 –1 –1 1 –1 1] to macierz wag W = x1Ty1 + x2Ty2 + x3Ty3 ma posta
−1 1 −1 3 W = −1 −1 1 −1 −1
3 −3 −1 −1 3 3 −3 −1 −1
1 1 −1 −1 1 1 −1 −1 1 1 −1 −1 −3 1 −1 −1 1 −3 1 − 3 −1 −1 − 3 1 1 1 −1 −1 1 1 1 1 −1 −1 1 1 −1 −1 1 1 −1 −1 −3 1 −1 −1 1 −3 −3 1 −1 −1 1 −3
−1 1 3 −1 −1 −1 1 3 3
W trybie odtworzeniowym sieci przy warto ci startowej x0 = x2 uzyskuje si warto ko cow xf = x2 i yf = [l –l –1 –1 1 1 –1 –1 1] ≠ y2, a wi c ró ni c si od po danej pary (x2, y2). Porównuj c warto ci energii stowarzyszonej z obu stanami otrzymuje si E2 = -x2Wy2T = -71 i Ef = -xfWyfT = -75. W wyniku procesu odtworzeniowego otrzymano stan odpowiadaj cy minimum lokalnemu, a nie warto ci funkcji E2. Przy zastosowaniu zmodyfikowanej reguły uczenia Wanga [144] W = x1Ty1 + x2Ty2 + x3Ty3 uzyskana macierz W
−1 1 −1 5 W = −1 −1 1 −1 −1
5 −5 −3 −1 5 5 −5 −3 −3
3 1 −1 −1 1 3 − 3 −1 1 1 −1 − 3 −5 1 −1 −1 1 −5 1 −5 −3 −3 −5 1 3 1 −1 −1 1 3 3 1 −1 −1 1 3 − 3 −1 1 1 −1 − 3 −5 1 −1 −1 1 −5 −5 1 −1 −1 1 −5
−3 3 5 −1 −3 −3 3 5 5
umo liwiła bezbł dne odtworzenie wszystkich zapami tanych par (xi, yi). Z punktu widzenia energetycznego wprowadzona przez Wanga poprawka zmniejsza warto funkcji energetycznej skojarzonej z i-t par z warto ci
Ei (ai , bi ) = − aiWbiT do Ei' (ai , bi ) = − aiWbiT − (q − 1)ai xiT yibiT odpowiadaj cej minimum
lokalnemu. Metoda doboru warto ci q została zaproponowana przez Wanga w pracy [143] w postaci
q ≥ max 1, przy czym
ε oiA i ε oiB
ε oiA 2p
+ 1,
ε oiB 2n
+ 1 (6. 50)
s równe maksymalnej warto ci ró nic energii i-tego wektora oryginalnego i wektorów
odległych od niego o odległo Hamminga równ l, w zbiorze odpowiednio A i B,
ε oiA = max(EoiA − Eoi' ) ,
Sieci neuronowe w uj ciu algorytmicznym
139
ε oiB = max(EoiB − Eoi' ) . Jak wykazały dalsze badania, nie zapewnia ona jednak 100-procentowej poprawno
ci
działania fazy odtworzeniowej sieci BAM. Pewno tak daje dopiero rozszerzenie macierzy wagowej o pewien czynnik modyfikuj cy, zaproponowane w pracy [145].
6.4.3. Modyfikacja struktury sieci BAM Podstaw zrozumienia niewydolno ci algorytmu Kosko i podj cia odpowiednich kroków zaradczych jest prze ledzenie drogi sygnału podanego na wej cie sieci. Z analizy zale no ci xiW wynika
(
)
xiW = xi xiT y i + = ny i +
j ≠i
= ny i +
j ≠i
j ≠i
(x x )y
(x x )y i
T i
i
T i
j
j
=
=
[n − 2d (a , a )]y H
i
j
j
Składnik zawarty pod znakiem sumy mo e by zinterpretowany jako współczynnik wzmacniaj cy szum pochodz cy od składników pozostałych wzorców ucz cych zakłócaj cych wektor yi. Temu szumowi mo na przeciwdziała przez wł czenie dodatkowego składnika kompensuj cego. Autorzy pracy [145] zaproponowali zast pienie macierzy W macierz rozszerzon
Wˆ f
[
]
Wˆ f = W W y (6. 51) przy transmisji sygnału od strony x oraz macierz
Wˆb ,
[
]
Wˆ b = W T W x (6. 52) przy transmisji sygnału od strony y. W ten sposób wprowadzona poprawka zakłóca symetri przepływu sygnałów w dwu ró nych kierunkach. Macierze dodatkowe Wx i Wy s tak skonstruowane, e ich działanie znika przy wła ciwym działaniu oryginalnego algorytmu Kosko; wł cza si ono tylko przy zaburzeniu procesu odtworzeniowego. Niech p' i n' oznaczaj liczb par ucz cych, dla których proces odtworzeniowy generuje niewła ciwy wynik odpowiednio dla wektora y i wektora x. Wska nikiem y oznaczono proces powoduj cy generacj niewła ciwej postaci wektora y, a przez x - wektora x. Je li (xi, yi) jest kolejn k-t par ucz c , dla której f(xiW) ≠ yi to przyjmuje si yik = 1, yij = 0 dla j ≠ k (k = 1,2, ...,p’) Je li (xi, yi) spełnia relacj f(xiW) = yi, to yik = 0 dla k = l, 2, ...,p’. Składniki
yij tworz wektor yi , o długo ci p'. W identyczny sposób dla procesów
zachodz cych w kierunku przeciwnym przy zast pieniu wektorów y przez x otrzymuje si wektory długo ci n'. Macierze poprawkowe Wy, Wx tworzy si nast puj co [145]:
Wy = Wx =
m i =1
xiT y i (6. 53)
m i =1
y iT xi (6. 54)
W nast pnym kroku tworzy si macierze dodatkowych poł cze sieci Ty oraz Tx, przy czym:
Ty =
Tx =
m j =1
q y y Tj y j (6. 55)
m j =1
q x x Tj x j (6. 56)
xi o
Sieci neuronowe w uj ciu algorytmicznym
140
Rysunek 6.9 Zmodyfikowana struktura sieci BAM Parametry qx, qy s dobierane w taki sposób, aby spełniały relacje:
q y > n(m − 2 ) − 2 min i
q x > n(m − 2) − 2 min i
j ≠i
j ≠i
d H (ai , a j ) (6. 57) d H (bi , b j ) (6. 58)
Zmodyfikowan struktur sieci BAM uwzgl dniaj c powi zania przez macierze Tx i Ty przedstawiono na rys. 6.9. Neurony oznaczone w postaci zaczernionej zwi kszaj wymiar sieci koryguj c niewła ciwe działanie powi za przez macierz W. Po podaniu na wej cie sieci pary testuj cej (x0, y0) powstaje identyczny jak w sieci Kosko proces rekurencyjny, prowadz cy do ustalenia si warto ci ko cowej (xf, yf) (x0, y0) → (x1, y1) → ... → (xf, yf) przy czym opis poszczególnych etapów przej cia musi uwzgl dni dodatkowe powi zania wskazane na rys. 6.9. W przypadku wprowadzonych oznacze otrzymuje si :
y1 x1 ... yf xf
= f (x0W + G y (x0W y )Ty ) = f ( y1W T + G x ( y1Wx )Tx ) = ... = f (x f −1W + G y (x f −1W y )Ty ) = f ( y f W T + Gx ( y f Wx )Tx )
przy czym Gx() i Gy() oznaczaj wektory funkcji aktywacji dodatkowych neuronów korekcyjnych. W algorytmie Wanga funkcje te s dobrane nast puj co:
[
]
G y (v ) = g y (v1 ), g y (v 2 ),..., g y (v p ' ) (6. 59)
g y (vi ) =
1 dla vi > n − ε 1 (6. 60) 0 dla pozostalych
G x (v ) = [g x (v1 ), g x (v 2 ),..., g x (v n ' )] (6. 61) g x (vi ) =
1 dla vi > p − ε 2 (6. 62) 0 dla pozostalych
Warto ci ε1 i ε2 s warto ciami dodatnimi spełniaj cymi warunki:
Sieci neuronowe w uj ciu algorytmicznym
141
0 << ε 1 << 2 min{d H (ai , a j )} (6. 63) i≠ j
0 << ε 2 << 2 min{d H (bi , b j )} (6. 64) i≠ j
Jak udowodniono w pracy [145], przy tak zdefiniowanej modyfikacji sieci BAM uzyskuje si zawsze dobr odtwarzalno sygnałów zapami tanych w sieci niezale nie od tego, czy tworzyły one minima lokalne czy nie.
Rysunek 6.10 Kolejne fazy odtwarzania danych w zmodyfikowanej sieci BAM: a) stan wyj ciowy; b) stan po pierwszej iteracji; c) stan po drugiej iteracji; d) stan po trzeciej iteracji; e) stan ko cowy po czwartej iteracji Na rysunku 6.10 przedstawiono kolejne cykle działania zmodyfikowanej sieci BAM na przykładzie odtwarzania zaszumionego obrazu przedstawiaj cego symbol czołgu [145]. Dane ucz ce tworz ce wektory a i b s generowane na podstawie mapy pikselowej przedstawiaj cej uproszczony obraz czołgu (wektor a) oraz napisu
Sieci neuronowe w uj ciu algorytmicznym
142
TANK (wektor b). Wymiar wektora a jest równy 288, wektora b - 280. Proces odtworzenia obrazu oryginalnego pozbawionego szumów nie jest łatwy i zwykła struktura BAM nie jest w stanie tego dokona . Modyfikacja Wanga umo liwia uzyskanie rozwi zania wła ciwego, ale nawet tutaj wa ny jest odpowiedni dobór współczynników ε1 i ε2. Zbyt małe i zbyt du e warto ci tych współczynników daj efekt podobny zmniejszenie zdolno ci filtracyjnych sieci i niemo liwo uzyskania obrazu pozbawionego szumu. Wynik prezentowany na rysunku odpowiada warto ci ε1 = 40 (ε2 nie wyst pował w tym przykładzie ze wzgl du na bezbł dn odtwarzalno wektora x). Dla warto ci ε1 < 30 i ε1 > 110 zmodyfikowana struktura równie uniemo liwiła bezbł dne odtworzenie obrazu zaszumionego. Interesuj ce jest porównanie pojemno ci sieci BAM przy ró nych algorytmach ucz cych. Oryginalne rozwi zanie Kosko charakteryzuje si stosunkowo niewielk zdolno ci odtworzeniow sieci. Przy oznaczeniu przez n i p wymiarów wektora x i y dobre wła ciwo ci odtworzeniowe mo na uzyska przy pojemno ci
m < min(n, p ) .
Przy zastosowaniu zmodyfikowanej przez Wanga strukturze sieci nie wyst puj adne ograniczenia odtwarzalno ci wektorów zakodowanych w sieci. Dzieje si to jednak kosztem zwi kszenia wymiarów sieci i powi za mi dzyneuronowych. Przy
m >> min(n, p ) powi zania dodatkowe wprowadzane przez algorytm
s dominuj ce i one decyduj o działaniu sieci. W skrajnym przypadku mo na nawet usun powi zania wynikaj ce ze struktury sieci BAM, pozostawiaj c jedynie wagi korekcyjne bez adnego wpływu na wynik działania.
6.5. Rekurencyjna sie neuronowa typu RTRN 6.5.1. Opis struktury sieci Spo ród sieci rekurencyjnych na uwag zasługuje sie typu RTRN8 (Real Time Recurrent Network), b d ca sieci do przetwarzania sygnałów w czasie rzeczywistym. Ogóln struktur sieci opisan po raz pierwszy w pracy [153] przedstawiono na rys. 6.11.
Rysunek 6.11 Schemat sieci rekurencyjnej RTRN Liczba neuronów w sieci wynosi m i ka dy z nich tworzy sprz enie zwrotne, przy czym sygnały zwrotne podawane na sie s opó nione o jeden takt zegara (na rysunku zaznaczono to w postaci członów opó niaj cych z-1). W ród m neuronów tylko M stanowi wyj cie sieci, pozostałe K = m - M s neuronami ukrytymi, niedost pnymi dla sygnałów zewn trznych. Sie ma N wej zewn trznych, przy czym jednym z nich mo e by sygnał polaryzacji równy 1. Niech x(n) oznacza N-elementowy zewn trzny wektor wymuszaj cy podany w chwili n, a y(n + 1) odpowiadaj cy mu wektor sygnałów wyj ciowych wszystkich neuronów w chwili (n+1). Wektor x (n) i opó niony o jeden cykl wektor y(n) tworz wektor wymuszaj cy v(n) stanowi cy pobudzenie dla neuronów
8
Pełna nazwa sieci: sie rekurencyjna do przetwarzania sygnałów w czasie rzeczywistym.
Sieci neuronowe w uj ciu algorytmicznym
143
v(n ) = [x1 (n ),..., x N (n ), y1 (n ),..., y m (n )] (6. 65) T
Je li przez A oznaczy si zbiór wska ników i, dla których składniki wektora zewn trznego xi(n) tworz pobudzenie dla neuronów, a przez B zbiór wska ników i, dla których tym pobudzeniem jest stan poprzedni, to
xi (n ) dla i ∈ A (6. 66) y i (n ) dla i ∈ B
vi (n ) =
W odró nieniu od sieci Hopfielda wyst puj tutaj równie sprz enia zwrotne własne. Niech W oznacza macierz wag neuronów o wymiarach m x (m + N). W chwili n i-ty neuron wytwarza sum wagow
u i (n ) =
Wij (n )v j (n ) (6. 67)
i∈ A∪ B
stanowi c pobudzenie dla neuronu (A ∪ B oznacza sum logiczn zbiorów A i B). W nast pnej chwili jest obliczany sygnał wyj ciowy neuronu jako
y (n + 1) = f (u i (n )) (6. 68) przy czym f( ) oznacza ci gł funkcj aktywacji neuronu przyjmowan zwykle w postaci sigmoidalnej. Wa nym zało eniem przy rozpatrywaniu dynamiki sieci jest przyj cie, e stany neuronów zmieniaj si w takt zegara i jest przesuni cie w fazie mi dzy pobudzeniem neuronu a wygenerowaniem przez niego sygnału wyj ciowego stanu. Oznacza to, e pobudzenie x(n) nie ma wpływu na stan neuronów a do chwili (n + 1).
6.5.2. Algorytm uczenia sieci Algorytm uczenia sieci rekurencyjnej RTRN o dynamice okre lonej zale no ciami (6.67) i (6.68), opracowany przez Williamsa i Zipsera [153], jest algorytmem gradientowym minimalizuj cym warto bł du kwadratowego mi dzy warto ciami danymi na wyj ciu sieci dj(n) a warto ciami aktualnymi yj(n) wygenerowanymi przez sie . Warto chwilow bł du definiuje si w postaci
E (n ) =
1 2
M j =1
e 2j (n ) (6. 69)
przy czym
e j (n ) =
d j (n ) − y j (n ) dla j = 1, 2,..., M (6. 70) 0 dla pozostalych
Celem uczenia jest taki dobór wag sieci, który zminimalizuje warto funkcji celu Et zdefiniowan jako suma bł dów chwilowych po wszystkich chwilach n
E (n ) (6. 71)
Et = n
Przy zastosowaniu metody gradientowej najwi kszego spadku o aktualizacji warto ci wag decyduje wektor gradientu funkcji celu wzgl dem tych wag
∇E t = przy czym
∇E (n ) =
∂Et = ∂W
∇E (n ) (6. 72) n
∂E (n ) , przy którym równanie adaptacji dla wagi Wkl w chwili n przyjmie posta ∂W ∆Wkl (n ) = −η
∂E (n ) (6. 73) ∂Wkl (n )
Sieci neuronowe w uj ciu algorytmicznym
144
przy czym η oznacza współczynnik uczenia. Aby uzyska równanie adaptacji wag, nale y wprowadzi prosty i skuteczny algorytm okre lania składowych gradientu
∂E (n ) . Williams i Zipser podali algorytm działaj cy w ∂Wkl (n )
czasie rzeczywistym, od którego wzi ła nazw sie . Zgodnie z ich podej ciem
∂E (n ) = ∂Wkl (n ) Okre lenie pochodnej
M j =1
e j (n )
∂e j (n )
∂Wkl (n )
=−
M j =1
e j (n )
∂y j (n )
∂Wkl (n )
(6. 74)
∂y i (n ) ró niczkowania funkcji zło onej ∂Wkl (n )
∂y j (n + 1) ∂Wkl (n )
= f ' (u j (n ))
∂u j (n )
∂Wkl (n )
(6. 75)
przy czym
∂u j (n )
∂Wkl (n )
=
[
= i∈A ∪ B
Pochodna
∂W ij (n ) ∂Wkl (n )
]
∂ W ji (n )vi (n ) = i∈ A∪ B ∂Wkl (n )
∂vi (n ) ∂W ji (n ) W ji vi (n ) + ∂Wkl (n ) ∂Wkl (n )
(6. 76)
jest równa l, je li j = k, i = l, lub 0 przy niespełnieniu tych równo ci, w zwi zku z czym
∂u j (n )
∂Wkl (n )
= i∈ A∪ B
W ji (n )
∂vi (n ) + δ kj vl (n ) (6. 77) ∂Wkl (n )
przy czym δkj jest delt Kroneckera, równ l, gdy j = k, lub 0 dla pozostałych warto ci j. Z definicji vi(n) podanej poprzednio (wzór (6.66)) otrzymuje si
0 dla i ∈ A ∂vi (n ) ∂ y ( n ) = i dla i ∈ B (6. 78) ∂Wkl (n ) ∂Wkl (n ) Z równania (6.75) po uwzgl dnieniu zale no ci (6.77) i (6.78) otrzymuje si wzór rekurencyjny
∂y j (n + 1) ∂Wkl (n )
= f ' (u j (n ))
i∈B
W ji (n )
∂y i (n ) + δ kl vi (n ) (6. 79) ∂Wkl (n )
stanowi cy główn zale no w algorytmie Williamsa-Zipsera i umo liwiaj cy łatwe i szybkie okre lenie pochodnej
∂y i w dowolnej chwili na podstawie jej warto ci w chwili poprzedniej. Wobec minimalnej liczby ∂Wkl
wymaganych operacji matematycznych algorytm mo e dobra warto ci wag w czasie rzeczywistym. Warto ci startowe w algorytmie zakłada si zwykle zerowe, to znaczy
∂y i (0 ) = 0 . Po wstawieniu zale no ci (6.79) do ∂Wkl (0 )
wzorów (6.73) i (6.74) ostateczna posta wzoru aktualizuj cego wag Wkl jest nast puj ca:
∆Wkl (n ) = η przy czym Rjkl(n) spełnia równanie rekurencyjne
M j =1
e j (n )Rklj (n ) (6. 80)
Sieci neuronowe w uj ciu algorytmicznym
Rklj (n + 1) = f ' (u j (n ))
145
i∈B
W ji (n )Rklj (n ) + δ kl vl (n ) (6. 81)
Rjkl(0)
z warunkiem startowym = 0. Algorytm Williamsa-Zipsera uczenia sieci rekurencyjnej RTRN mo na przedstawi ostatecznie w nast puj cej postaci: 1. Dla ka dej chwili n (n = 0,1,2,...) nale y stosuj c zale no ci (6.67) i (6.68) okre li stan wszystkich m neuronów. Na tej podstawie mo na wyznaczy wektor v(n) stanowi cy pobudzenie dla neuronów w chwili n. Warto ci wst pne wag tworz cych macierz W przyjmuje si losowo zakładaj c rozkład równomierny. 2. Przy pomocy zale no ci (6.81) nale y okre li warto ci Rjkl(n) dla odpowiednich wska ników k, l, j. 3. Uaktualnianie wag odbywa si według zale no ci
Wkl (n + 1) = Wkl (n ) + η
M j =1
e j (n )Rklj (n ) (6. 82)
po czym nast puje powrót do punktu l dla nast pnej warto ci n. Zało enie na wst pie, e zmiana stanu neuronów nast puje o jeden cykl pó niej ni obliczenie warto ci sumacyjnej pobudzenia, umo liwiło znaczne uproszczenie algorytmu i przes dziło o jego działaniu w czasie praktycznie rzeczywistym. W symulacjach komputerowych ró nice mi dzy algorytmem Williamsa-Zipsera a algorytmem wykorzystuj cym dokładne okre lenie gradientu w tej samej chwili s nieznaczne, zwłaszcza przy małych warto ciach współczynnika uczenia. Omówiony tu algorytm nale y do grupy algorytmów nielokalnych, w którym dla adaptacji jednej wagi Wkl nale y zna warto ci wszystkich pozostałych wag sieci tworz cych macierz W oraz wektor e(n). Jego wymagania co do pami ci komputera s dodatkowo zwi kszone przez potrzeb przechowywania wszystkich warto ci Rjkl(n). Przy m neuronach i N wej ciach zewn trznych sieci istnieje m(m2 + mN) ró nych warto ci Rjkl, tworz cych macierz warto ci rzeczywistych o liczbie wierszy równej liczbie wag i liczbie kolumn odpowiadaj cych liczbie neuronów w sieci.
6.6. Rekurencyjna sie Elmana 6.6.1. Ogólne zale no ci opisuj ce sie
Sie neuronowa Elmana jest sieci cz ciowo rekurencyjna o strukturze dwuwarstwowej, w której sprz enie zwrotne dotyczy tylko warstwy ukrytej. Ogóln struktur tej sieci przedstawiono na rys. 6.12a, a szczegółowe poł czenia mi dzy warstwami s zaznaczone na rys. 6.12b.
Rysunek 6.12 Sie Elmana: a) posta ogólna; b) układ poł cze Wyj cie sieci stanowi neurony o poł czeniach synaptycznych tylko z warstw ukryt , podobnie jak w sieciach jednokierunkowych. Przepływ sygnałów odbywa si tutaj tylko w jedn stron , od warstwy ukrytej do
Sieci neuronowe w uj ciu algorytmicznym
146
warstwy wyj ciowej. Zasadnicza ró nica wyst puje w warstwie ukrytej, która ma sprz enie zwrotne realizowane za po rednictwem jednostkowych członów opó niaj cych z-1. Ka dy neuron ukryty ma swego odpowiednika w warstwie tak zwanej kontekstowej, stanowi cej wspólnie z wej ciami zewn trznymi sieci warstw wej ciow . Przy oznaczeniu zewn trznego wektora wymuszaj cego przez x (jego skład jak zwykle jest powi kszony o sygnał jednostkowy polaryzacji), stanu neuronów ukrytych przez v, a sygnałów wyj ciowych sieci przez y, o wymiarach odpowiednio: x∈ RN, v∈ RN, y∈ RN, i przy zało eniu, e próbkowanie sygnałów wymuszenia zewn trznego x jest opó nione o jeden cykl, ogólne równanie nieliniowe systemu mo na zapisa w postaci:
(
)
v(n + 1) = f Wvv(1)v(n ), Wvx(1) x(n ) (6. 83)
(
)
y (n + 1) = f W (2 )v(n + 1) (6. 84) przy czym f( ) oznacza wektor funkcji aktywacji neuronów, W(2) – macierz wagow warstwy wyj ciowej, a
Wvv(1) oraz Wvx(1) - macierze wagowe warstwy ukrytej skojarzone odpowiednio z wektorami v oraz x.
W szczególno ci przy zało eniu liniowej funkcji aktywacji sie równaniem stanu o standardowej postaci [160]
v(n + 1) A B = y (n + 1) C D przy czym A =
Elmana opisuje si
liniowym
v(n ) (6. 85) x(n )
Wvv(1) , B = Wvx(1) , C = W (2 )Wvv(1) , D = W (2 )Wvx(1) . O wła ciwo ciach dynamicznych układu
decyduje macierz stanu
Wvv(1) , odpowiadaj ca sprz eniu zwrotnemu mi dzy warstwami ukryt i wej ciow .
Liczba zmiennych stanu (rz d układu) jest równa liczbie neuronów w warstwie ukrytej. Rozwi zanie układu równa (6.85) jest dobrze znane w teorii systemów i wyra one w postaci równania ró nicowego rekurencyjnego
y (n ) = A1 y (n − 1) + ... + AK y (n − K ) + B0 x(n ) + + B1 x(n − 1) + ... + B N x(n − N )
(6. 86)
Sie Elmana stanowi w tym przypadku odpowiednik systemu dyskretnego liniowego o niesko czonej odpowiedzi impulsowej (IIR) i nie wnosi nowych elementów do rozwi zania. Jej nowe unikatowe wła ciwo ci wynikaj dopiero z zastosowania nieliniowych funkcji aktywacji neuronów, przy których dynamika sieci, opisana ogólnymi zale no ciami (6.83) i (6.84), umo liwia uzyskanie efektów przetwarzania sygnałów niemo liwych do uzyskania w sieciach liniowych, predysponuj cymi j do zastosowa w tak skomplikowanych problemach jak przetwarzanie szeregów czasowych, w tym d wi ków mowy.
6.6.2. Uczenie sieci przy zastosowaniu zmodyfikowanego algorytmu WilliamsaZipsera Uczenie sieci Elmana, a wi c dobór jej wag, jest do proste i mo e by rozwi zane przez poł czenie metody Williamsa-Zipsera z algorytmem propagacji wstecznej. Przy znanych wymaganiach co do warto ci danych na wyj ciu sieci funkcj celu mo na zdefiniowa dla danej chwili identycznie jak w przypadku sieci RTRN M
1 E (n ) =
2
przy czym
y j (n ) = f
K j =1
j =1
[d (n) − y (n )]
2
j
j
(6. 87)
Wij(2 )v j (n ) . Bior c pod uwag przesuni cie czasowe mi dzy wektorem
wej ciowym sieci a sygnałami wewn trz sieci, w ka dej chwili n układ mo e by traktowany jak perceptron wielowarstwowy, przesyłaj cy sygnały tylko w jednym kierunku. Uczenie wag warstwy wyj ciowej niczym si nie ró ni od przypadku sieci wielowarstwowej i mo e by dokonane przy zastosowaniu dowolnej metody gradientowej. Stosuj c na przykład metod najwi kszego spadku otrzymuje si
(
)
∆Wij(2 ) (n ) = −ηf ' u i(2 ) (n ) v j (n )[d i (n ) − y i (n )] (6. 89)
Sieci neuronowe w uj ciu algorytmicznym
147
Stosuj c zwykł propagacj wsteczn bł du wyj ciowego mo na okre li warto tego bł du na poziomie warstwy ukrytej. Rysunek 6.13 ilustruje metod jego okre lenia.
Rysunek 6.13 Układ wag warstwy wyj ciowej przy propagacji wstecznej sygnału bł du Sygnały bł du na poziomie warstwy wyj ciowej s okre lane bezpo rednio na podstawie warto ci danych i aktualnych odpowiedzi sieci
ek(2 ) (n ) = f ' (u k(2 ) (n ))[d k (n ) − y k (n )] (6. 89)
dla k = 1,2, ...,M, przy czym f’(ui(2)(n)) oznacza pochodn funkcji aktywacji k-tego neuronu w punkcie pobudzenia
uk(2 ) =
Wkj v j . Bł d propagacji wstecznej skojarzony z j-tym neuronem warstwy ukrytej, j
oznaczony ej(1) wyra a si zatem w postaci
e (j1) (n ) =
M i =1
Wij(2 )ei(2 ) (n ) (6. 90)
Bior c pod uwag , e warstwa ukryta nie ma sprz enia zwrotnego z warstw wyj ciow , okre lenie wektora
[ ()
]
bł du tej warstwy e (n ) = e1 (n ), e2 (n ), , eK (n ) sprowadza problem doboru jej wag dokładnie do problemu uczenia sieci RTRN. Przy pomini ciu bowiem warstwy wyj ciowej obie struktury sieci s sobie ekwiwalentne pod warunkiem, e m = K. Doboru wag neuronów ukrytych najskuteczniej mo na dokona przy zastosowaniu algorytmu Williamsa-Zipsera okre lonego zale no ciami rekurencyjnymi (6.80) i (6.81), które teraz przybior posta (1)
(1)
1
(1)
∆Wkl(1) (n ) = η a
Rjkl(n)
spełnia równanie rekurencyjne
(
K j =1
)[
T
e (j1) (n )Rklj (n ) (6. 91)
]
Rklj (n + 1) = f ' u (j1) (n ) W ji(1) Rklj (n ) + δ kl z l (n ) (6. 92) z warunkiem startowym Rjkl(0)=0, w którym zl(n) = xl(n) je li l dotyczy wej cia zewn trznego sieci, lub zl(n) = vl(n), je li l jest zwi zane z warstw kontekstow .
6.6.3. Zastosowanie algorytmu kaskadowej korelacji Fahlmana Oryginaln metod uczenia sieci Elmana zaprezentował Fahlman w pracy [33], stosuj c algorytm kaskadowej korelacji (patrz p. 3.5). Metoda nazwana przez autorów rekurencyjna korelacj kaskadow (Recurrent Cascade Correlation - RCC) modyfikuje nieco struktur sieci Elmana, przystosowuj c j do wymogów algorytmu. Bior c pod uwag kaskadow struktur sieci Fahlmana, niemo liwe jest tu uwzgl dnienie pełnego sprz enia zwrotnego wszystkich neuronów ukrytych. Kolejno wł czane do sieci neurony ukryte maj bowiem zamro on struktur poł czeniow i mog uwzgl dni tylko poł czenie od ju istniej cych neuronów. W efekcie
Sieci neuronowe w uj ciu algorytmicznym
148
zmodyfikowana struktura sieci Elmana tworzona przez algorytm ma posta przedstawion na rys. 6.14, przy czym dla zachowania przejrzysto ci rysunku liczb neuronów ograniczono do dwu.
Rysunek 6.14 Modyfikacja sieci Elmana wprowadzona przez Fahlmana Sprz enie zwrotne wyst puje tylko w ramach jednego neuronu. Wyj cie neuronu ukrytego opó nione o jeden krok czasowy tworzy dodatkowy składnik wektora wej ciowego tylko dla samego siebie. Sygnał wyj ciowy takiego neuronu jest opisany wówczas funkcj
v(n ) = f
N i =1
Wi xi (n ) + W f v(n − 1) (6. 93)
przy czym Wf oznacza wag sprz enia neuronu z własnym wyj ciem, a v(n - 1) - stan neuronu w chwili poprzedniej. Wszystkie wagi Wi, wł cznie z Wf, s trenowane na etapie wst pnym w taki sposób, aby zmaksymalizowa korelacj mi dzy sygnałem wyj ciowym neuronu a bł dem generowanym na wyj ciu sieci. Je li waga sprz enia zwrotnego przyjmie w wyniku uczenia du warto dodatni , to neuron b dzie funkcjonował jak przerzutnik, zmieniaj c stan na poprzedni, chyba e pozostałe sygnały pochodz ce od wej zewn trznych wymusz zmian . Przy du ej ujemnej warto ci wagi wyj cie neuronu oscyluje mi dzy warto ciami skrajnymi dopuszczanymi przez funkcj aktywacji, chyba e pozostałe sygnały pochodz ce od wej zewn trznych wymusz inne zachowanie. Przy warto ci zerowej wagi Wf sprz enie zwrotne nie istnieje i układ przestaje by rekurencyjny. Maksymalizacja korelacji mi dzy aktywno ci neuronu kandydata a bł dem sieci na etapie trenowania jego wag wej ciowych wymaga okre lenia pochodnych
∂v(n ) ∂v(n ) oraz .Ró niczkuj c zale no ∂Wi ∂W f
(6.93)
otrzymuje si :
∂v(n ) ∂v(n − 1) (6. 94) = f ' (n ) xi (n ) + W f ∂Wi ∂Wi ∂v(n ) ∂v(n − 1) (6. 95) = f ' (n ) v(n − 1) + W f ∂W f ∂W f Z powy szych wzorów wynika potrzeba zapami tania warto ci pochodnych
∂v ∂v oraz z kroku ∂Wi ∂W f
poprzedniego dla ka dego neuronu. Na starcie procesu dla n = 0 przyjmuje si wszystkie warto ci pochodnych równe zeru. Po dobraniu wag neuronu kandydata dalsza procedura jest identyczna jak w zwykłym algorytmie kaskadowej korelacji. Po zamro eniu warto ci tych wag neuron zostaje doł czony do sieci i nast puje etap doboru warto ci wag neuronów wyj ciowych. Oba etapy: trenowania neuronu kandydata i dobór wag
Sieci neuronowe w uj ciu algorytmicznym
149
wyj ciowych s powtarzane wielokrotnie, zwi kszaj c za ka dym razem liczb neuronów ukrytych o jeden. Proces ko czy si z chwil uzyskania wymaganej dokładno ci odwzorowania danych.
6.7. Rekurencyjna metoda propagacji wstecznej Rozwa ane dotychczas sieci rekurencyjne charakteryzowały si regularn struktur o wyró nionych warstwach neuronowych i okre lonych powi zaniach mi dzywarstwowych oraz przesuni ciem czasowym o jeden cykl mi dzy pobudzeniem a ustaleniem si stanu neuronów. W ogólnym przypadku mog istnie sieci o strukturze niejednorodnej i lu nych powi zaniach mi dzyneuronowych, w których ka dy neuron mo e odgrywa rol zarówno neuronu wej ciowego, przyjmuj cego wymuszenie zewn trzne, jak i neuronu wyj ciowego, dla którego sygnał jest okre lony. Wobec braku synchronizacji zewn trznej mi dzy neuronami stan chwilowy ka dego neuronu jest opisany raczej równaniem ró niczkowym typu (6.1) ni równaniem ró nicowym. W ogólnej postaci sieci rekurencyjnej ten sam neuron mo e by jednocze nie uwa any za neuron wej ciowy i wyj ciowy. W sieci mo e istnie równie pewna liczba neuronów ukrytych nie maj cych zwi zku ani z wymuszeniami zewn trznymi, ani z warto ciami danymi w układzie. Przykład takiej sieci rekurencyjnej przedstawiono na rys. 6.15.
Rysunek 6.15 Graf sieci rekurencyjnej Pobudzenia zewn trzne w postaci składowych wektora x s podane bezpo rednio jedynie do neuronów l, 2 oraz 4. S one neuronami wej ciowymi. Wyj cie sieci stanowi neurony 4 i 5. Neuron 4 pełni wi c jednocze nie dwie funkcje w układzie. Neuron 3 jest jedynym neuronem ukrytym. W takiej sieci przy braku wyró nionych warstw wymuszenia xi mo na traktowa jako polaryzacj θi , wspólnie rozumian dla całej sieci, przy czym
θi =
xi dla neuronu wejsciowego (6. 96) 0 dla pozostalych
Podobnie definiuj c bł d redniokwadratowy dla sieci rekurencyjnej, mo na przyj warto ei skojarzon z ka dym neuronem, przy czym
ei =
( y i - d i ) dla neuronu wyjsciowego (6. 97) 0 dla pozostalych
W przypadku neuronów ukrytych zarówno θi , jak i ei s równe zeru. Celem uczenia sieci jest taki dobór wag, aby stan ustalony neuronów, jaki po podaniu wymuszenia x ustali si w sieci, odpowiadał warto ciom danym d = [d1, d2, ..., dM]T okre lonym dla neuronów wyj ciowych. Je li ten stan ustalony dla neuronów wyj ciowych oznaczy si y = y∞= [y1, y2, ..., yM]T to dobór wag minimalizuj cy kwadratow funkcj celu
1 E= 2
M i =1
( y i − d i )2
(6. 98)
odbywa si zgodnie z gradientow metod najwi kszego spadku
∆Wrs = −η
∂E (6. 99) ∂Wrs
Sieci neuronowe w uj ciu algorytmicznym
150
Podstawowym problemem pozostaje wyznaczenie
∂E w sieci rekurencyjnej, gdzie powi zania dwustronne ∂Wrs
wykluczaj zastosowanie prostej metody propagacji wstecznej. Podstawowym algorytmem umo liwiaj cym wyznaczenie wektora gradientu jest algorytm Pinedy i Almeidy [117]. Algorytm ten ma swoj interpretacj graficzn przy zastosowaniu grafu doł czonego przepływu sygnałów [1]. Wad algorytmu Pinedy i Almeidy jest jednak konieczno wielokrotnych powtórze oblicze , tyle razy, ile wynosi liczba neuronów wyj ciowych. Wad t mo na wyeliminowa i upro ci wszystko do jednokrotnej analizy grafu oryginalnego ł grafu doł czonego przez uwzgl dnienie teorii obwodów doł czonych, uogólnionej i dostosowanej do oblicze gradientu przy wykorzystaniu grafów w pracy [106].
Rysunek 6.16 Ilustracja generacji wektora gradientu dla sieci rekurencyjnej przy zastosowaniu metody grafu doł czonego: a) graf podstawowy sieci; b) graf podstawowy z wydzieleniem gał zi nieliniowych; c) graf doł czony Jak pokazano w rozdz. 2, metoda grafu doł czonego umo liwia wyznaczenie wektora gradientu dowolnej sieci zarówno rekurencyjnej, jak i nierekurencyjnej. W przypadku sieci rekurencyjnej nale y zastosowa odpowiedni interpretacj grafu sieci i grafu do niego doł czonego. Dla wyja nienia metody przyjmijmy prost sie rekurencyjna o trzech neuronach, przedstawion na rys. 6.16a. W celu umo liwienia prze ledzenia drogi przepływu sygnałów w tym grafie wyró niono w zeł sumacyjny ka dego neuronu, oznaczony symbolem +, i jego funkcj aktywacji f(u). Odpowiedni modyfikacj grafu przedstawiono na rys. 6.16b. W grafie tym s od siebie odseparowane gał zie liniowe i nieliniowe. Z rozwi zania tego grafu (układu równa nieliniowych) okre la si stan wszystkich neuronów w sieci. Dla uproszczenia oznacze przyj to, e yi(∞) = yi, przy czym symbol ∞ odpowiada stanowi ustalonemu procesu iteracyjnego, prowadz cemu do rozwi zania. Graf doł czony do danego grafu G jest definiowany jako graf po zamianie kierunków przepływu sygnałów we wszystkich gał ziach grafu bez zmiany warto ci wag w przypadku gał zi liniowych i zamianie gał zi nieliniowej f(u) gał zi zlinearyzowan o wzmocnieniu
f ' (u ) =
∂f (u ) obliczonym w punkcie pracy systemu. Taka zamiana ∂u
oznacza, e wyj cie grafu G jest teraz wej ciem, a rola w złów sumacyjnego i zaczepowego uległa zamianie: w zeł sumacyjny stał si zaczepowym, a zaczepowy - sumacyjnym. Odpowiedni schemat przedstawiaj cy graf doł czony do grafu z rys. 6.16b podano na rys. 6.16c. Aby okre li wektor gradientu funkcji celu zdefiniowanej wzorem (6.98), graf doł czony powinien by pobudzony w w złach wej ciowych, odpowiadaj cych dawnym w złom wyj ciowym grafu oryginalnego. Sygnałami pobudzaj cymi s sygnały niedopasowania w danych w złach (yi - di) [106]. Przy takim zdefiniowaniu grafu doł czonego składowa gradientu odpowiadaj ca wadze Wrs jest okre lona w postaci iloczynu dwu sygnałów: jednego z grafu oryginalnego i drugiego z grafu doł czonego, przy czym w obu przypadkach jest to sygnał przyporz dkowany w złowi, z którego dana gał wychodzi w obu grafach. W przypadku oznacze jak na rys. 6.16 odpowiedni wzór przyjmie posta
Sieci neuronowe w uj ciu algorytmicznym
151
∂E = y s yˆr (6. 500) ∂Wrs Tak wi c do okre lenia dokładnej warto ci wektora gradientu wystarczy analiza dwu systemów: oryginalnego oraz doł czonego do niego o odpowiednim pobudzeniu. O ile analiza systemu oryginalnego jest zwi zana z rozwi zaniem układu równa nieliniowych, o tyle układ doł czony jest liniowy, a do jego rozwi zania mo na zastosowa dowoln metod analizy macierzowej. Relacja (6.100) zast puje do rozbudowany algorytm Pinedy i w rzeczywisto ci jest jemu równowa na. W algorytmie Pinedy, po zastosowaniu reguły ró niczkowania funkcji zło onej, główny punkt ci ko ci, skupiony wokół okre lania poszczególnych pochodnych cz stkowych, jest równowa ny rozwi zaniu zdefiniowanego tutaj grafu doł czonego. Nale y zauwa y , e graf doł czony z rys. 6.16c opisuje układ równa liniowych
1
− f1'W21
− f1'W31
− f 2'W12 − f 3'W13
1 − f 3'W23
− f 2'W32 1
yˆ1 f 1' ( y1 − d 1 ) yˆ 2 = f 2' ( y 2 − d 2 ) (6. 101) yˆ 3 f 3' ( y 3 − d 3 )
Macierz wyst puj ca po lewej stronie zale no ci jest macierz L definiowan przez Pined , o elementach
Lij = δ ij − f i ' (u i )W ji (6. 102) w której δij jest elementem Kroneckera, przy czym wobec braku sprz enia zwrotnego własnego Wii = 0. Rozwi zanie układu równa (6.101) ma posta
(L ) f (y −1
yˆ r =
' j
rj
j
− d j ) (6. 103)
j
w której (L-1)rj oznacza element macierzy odwrotnej do L nale cy do r-tego wiersza i j-tej kolumny. Po podstawieniu zale no ci (6.103) do wzoru (6.100) otrzymuje si ko cowy wzór algorytmu Pinedy. Algorytm uczenia dowolnej sieci rekurencyjnej o dynamice opisanej równaniem ró niczkowym (6.1) mo na przedstawi nast puj co: • Analiza sieci przy zadanych warto ciach wag (na wst pie s to warto ci losowe) i ustalonych wymuszeniach zewn trznych odpowiadaj cych ka demu wzorcowi ucz cemu. • Stworzenie zlinearyzowanego grafu doł czonego odpowiadaj cego grafowi sieci oryginalnej i pobudzenie go w w złach odpowiadaj cych neuronom wyj ciowym sygnałami niedopasowania w tych w złach. • Okre lenie sygnałów w złów zaczepowych yˆ i grafu doł czonego przez rozwi zanie układu równa •
liniowych opisuj cych graf. Uaktualnienie warto ci wszystkich wag sieci korzystaj c z zale no ci
∆Wrs = −ηy s yˆ r
i powrót do punktu l algorytmu. Proces uczenia sieci jest przeprowadzany a do uzyskania warto ci ustalonych wag. W przypadku wyst pienia wielu wzorców ucz cych poszczególne punkty algorytmu s wykonywane dla kolejnych wzorców. Jest równie mo liwy inny wariant, zwany skumulowanym, w którym analiza sieci oryginalnej i doł czonej jest wykonywana kolejno przy tych samych warto ciach wag oraz s obliczane warto ci składowych gradientu skumulowanego
∂E = ∂Wrs
p k =1
y s(k ) yˆ r(k ) (6. 604)
przy czym p oznacza liczb wzorców, a nast pnie jest dokonywana adaptacja wag według zale no ci
∆Wrs = −η
p k =1
y s(k ) yˆ r(k ) (6. 105)
Sieci neuronowe w uj ciu algorytmicznym
152
7. Sieci samoorganizuj ce si na podstawie reguły Hebba Omówione do tej pory sieci neuronowe nale ały do rodziny sieci trenowanych pod nadzorem, gdzie istotn rol odgrywało istnienie zadanego wzorca wyj ciowego, stowarzyszonego ze wzorcem wej ciowym. Drug komplementarn klas stanowi sieci samoorganizuj ce si , nie wymagaj ce nadzoru na etapie uczenia. Sieci te w trakcie uczenia same wykrywaj istotne cechy powi za mi dzy sygnałami, ucz c si ich, aby w fazie odtworzeniowej skorzysta z tych wła ciwo ci do wyznaczenia rozwi zania dla wzorców nie uczestnicz cych w uczeniu. Podstaw samoorganizacji jest obserwacja, e globalne uporz dkowanie sieci jest mo liwe przez działania samoorganizuj ce prowadzone lokalnie w ró nych punktach sieci, niezale nie od siebie. W wyniku doprowadzonych sygnałów wej ciowych nast puje aktywacja neuronów w ró nym stopniu, dostosowuj ca si przez zmiany warto ci wag synaptycznych do aktywno ci wzorców ucz cych. W procesie uczenia istnieje tendencja do wzrostu warto ci wag, tworz c rodzaj dodatniego sprz enia zwrotnego: wi ksze sygnały pobudzaj ce, wi ksze warto ci wag, wi ksza aktywno neuronów. Nast puje przy tym naturalne zró nicowanie w ród grup neuronów. Pewne neurony lub grupy neuronów współpracuj cych ze sob specjalizuj si w uaktywnianiu na okre lone wzorce, przewy szaj c inne swoj aktywno ci . Mo na tu mówi zarówno o współpracy mi dzy neuronami tej samej grupy, jak i konkurencji wyst puj cej wewn trz grupy i mi dzy grupami. Spo ród mechanizmów samoorganizacji mo na wyró ni dwie podstawowe klasy: mechanizm samoorganizacji oparty na regule asocjacji Hebba oraz mechanizm współzawodnictwa mi dzy neuronami wykorzystuj cy ogólnie poj t reguł Kohonena. Niezale nie od mechanizmów uczenia sieci samoorganizuj cych si wa n rol odgrywa nadmiarowo (redundancja) danych ucz cych, bez której nie byłoby mo liwe uczenie. Szeroki zakres danych ucz cych zawieraj cych wielokrotne powtórzenia podobnych wzorców stanowi „baz wiedzy" dla sieci, z której, przez odpowiednie skojarzenia, s wyci gane wnioski decyzyjne po podaniu na wej cie sieci okre lonego wzorca poddanego klasyfikacji. W tym rozdziale omówiono ró ne aspekty samoorganizacji przy zastosowaniu uogólnionych reguł Hebba. Przedstawiono podstawowe zastosowania tego typu sieci: reguła liniowa w zastosowaniu do analizy składników głównych danych wej ciowych oraz nieliniowe uogólnienie reguły do lepej separacji sygnałów.
7.1. Aspekt energetyczny samoorganizacji Hebba W uczeniu podstawowym Hebba przyjmuje si model liniowy neuronu, zgodnie z którym sygnał wyj ciowy yj neuronu opisuje funkcja
yi = θ j +
N i =1
W ji xi (7. 1)
Zgodnie z postulatem Hebba zmiana wagi neuronu po prezentacji wektora x przyjmuje posta
(
)(
)
∆W jk = η y j − y (j0 ) x k − x k(0 ) (7. 2) przy czym xk(0) , yk(0), s pewnymi stałymi, a η jest współczynnikiem uczenia. Przy uwzgl dnieniu całego zbioru wzorców ucz cych zmiana warto ci wag sieci w czasie mo e by wyra ona wzorem ogólnym [41, 82]
dW jk dt
=
N i =1
W ji C ik + k1 +
k2 N
N i −1
W ji (7. 3)
w którym k1 i k2 s pewnymi stałymi powi zanymi z xk(0) , yk(0), η, θ, natomiast Cik jest u rednion kowariancj aktywno ci neuronów i-tego oraz k-tego, zdefiniowan w postaci
C ik =
1 p
p
(x ( ) − x )(x ( ) − x ) (7. 4) j
j =1
i
j
i
k
k
Sieci neuronowe w uj ciu algorytmicznym
Stała
xi oznacza u rednion warto
u rednionego
x, x =
1 p
p
153
wzorców wej ciowych odpowiadaj cych i-tej składowej wektora
x (k ) .
k =1
Przyjmuj c, e zmiany wag zachodz według reguły najwi kszego spadku funkcji energetycznej E sieci, otrzymuje si N dW jk k dE =− = − W ji C ik − k1 − 2 dW jk dt N i =1
N i =1
W ji (7. 5)
Rozwi zuj c to równanie ró niczkowe otrzymuje si funkcj energetyczn w postaci
E = E c + E k (7. 6) przy czym:
Ec = −
1 2
N
N
i =1 k =1
W ji C ik W jk (7. 7)
N
k E k = −k1 W ji − 2 2N i =1
2
N i =1
W ji
(7. 8)
Funkcja energetyczna zawiera 2 składniki: Ec oraz Ek. Składnik pierwszy oznacza wariancj σj2 aktywno ci jtego neuronu, gdy
σ 2j = ( y j − y ) = 2
N
N
i =1 k =1
W ji CikW jk . Składnik drugi mo e by uto samiony ze
składnikiem kary funkcji energetycznej, zwanej równie w teorii optymalizacji funkcj kosztu lub funkcj celu. N
Przy ustalonych warto ciach wag i =1
W ji = const funkcja E przyjmuje warto minimaln wówczas, gdy
wariancja σj2 jest maksymalizowana. Z tego powodu uczenie Hebba powoduje tak organizacj neuronów (dobór ich wag), która maksymalizuje wariancj aktywno ci neuronów przy zało eniu pewnych ogranicze na ich wagi. Ze wzgl du na bli ej nie sprecyzowane ograniczenia wagowe funkcja ta mo e mie wiele maksimów lokalnych.
7.2. Analiza składników głównych (PCA) 7.2.1. Podstawy matematyczne Analiza składników głównych (Principal Component Analysis - PCA) jest metod statystyczn okre laj c przekształcenie liniowe y = W x przekształcaj ce opis stacjonarnego procesu stochastycznego w postaci wektora x ∈ RN w wektor y ∈ RK za po rednictwem macierzy W ∈ RKxN, przy K « N, w ten sposób, e przestrze wyj ciowa o zredukowanym wymiarze zachowuje najwa niejsze informacje dotycz ce procesu. Innymi słowy, przekształcenie PCA zamienia du ilo informacji zawartej we wzajemnie skorelowanych danych wej ciowych w zbiór statystycznie niezale nych składników według ich wa no ci. Stanowi zatem form kompresji stratnej, znanej w teorii komunikacji jako przekształcenie Karhunena-Loevego [16]. Niech x = [x1, x2, ..., xN] T oznacza wektor losowy o zerowej warto ci redniej, a Rxx = E[xxT] = xxT - warto oczekiwan ( redni ) macierzy autokorelacji po wszystkich wektorach x. Wi oznacza ortogonalne wektory warto ci własnych, stowarzyszone z warto ciami własnymi λi macierzy Rxx, Wi= [Wi1, Wi2, ...WiN]T, tzn.
RxxWi = λiWi
dla i = l, 2, . . . , N. Ustawiaj c warto ci własne w kolejno ci malej cej λ1 > λ2 > ... > λN ≥ 0 i ograniczaj c si jedynie do K najwi kszych, macierz przekształcenia W = [W1, W2, ...WK]T definiuje przekształcenie PCA w postaci
y = Wx (7. 9)
Sieci neuronowe w uj ciu algorytmicznym
154
Je li jest dany wektor x(t) = [x1(t), x2(t), ..., xN(t)]T z macierz przekształcaj c x(t) w y zgodnie ze wzorem (7.9), to odtworzona informacja posta [127]
(
xˆ = R xxW T WR xxW T
)
−1
korelacji Rxx i macierz
W
x na podstawie wektora y ma
y (7. 20)
Warto oczekiwana kwadratowej funkcji bł du E ( x − xˆ ) przyjmuje minimum, je li wiersze W s zło one z pierwszych K wektorów własnych macierzy Rxx [127]. Wtedy 2
WW T = 1, xˆ = W T y, a Rxx = W T LW , przy czym L = diag[λ1, λ2, .., λK],a macierz korelacji Ryy wektorów wyj ciowych y jest równa Ryy = WRXXWT = L. Diagonalna posta macierzy Ryy oznacza, e wszystkie składniki wektora y s nieskorelowane, z wariancj równ warto ciom własnym λi [127]. W praktyce macierz korelacji okre la si metod u rednie wielu wektorów wej ciowych
R xx ≈
1 p
p k =1
x k x kT =
1 XX T (7. 11) p
przy czym X = [x1, x2, ..., xp]. Z punktu widzenia statystycznego przekształcenie PCA okre la zbiór K wektorów ortogonalnych maj cych najwi kszy wkład w wariancj danych wej ciowych. Pierwszy składnik główny yi okre la znormalizowan kombinacj liniow tych składników wektorów wej ciowych, które daj najwi ksz warto redni
wariancji, równ
λi,
(
) (
)
var W1T x = E W1T x = W1T RxxW1 = λ1 . Celem przekształcenia PCA jest 2
okre lenie kierunków W1, W2, ..., WK, zwanych głównymi wektorami własnymi, w taki sposób, aby zmaksymalizowa warto
E Wi T x
2
przy spełnieniu warunku ortogonalno ci WiTWj = 0 dla j > i oraz WiTWj
= 1. Standardowe metody wyznaczania wektorów własnych na podstawie macierzy Rxx przy du ych wymiarach danych s zło one obliczeniowo i w praktyce stosuje si metody adaptacyjne oparte na uogólnionej regule Hebba, bez potrzeby wyznaczania macierzy Rxx.
7.2.2. Estymacja pierwszego składnika głównego Do wyznaczenia pierwszego składnika głównego y1 i stowarzyszonego z nim wektora W1 odpowiadaj cego macierzy Rxx Oja zaproponował sie zło on z jednego neuronu liniowego (rys. 7.1), dla którego
y1 = W1T x =
N j =0
W1 j x j (7. 32)
Rysunek 7.1 Liniowy model neuronu Hebba Dobór wag wektora W1 odbywa si według znormalizowanej reguły Hebba, zwanej reguł Oji, któr mo na zapisa w postaci skalarnej
[
]
W1 j (k + 1) = W1 j (k ) + η y1 (k )x j (k ) − W1 j (k ) y12 (k ) (7. 13) lub w postaci wektorowej
Sieci neuronowe w uj ciu algorytmicznym
155
[
]
W1 (k + 1) = W1 (k ) + η (k ) y1 (k )x(k ) − W1 (k ) y12 (k ) (7. 14) przy czym η(k) oznacza współczynnik uczenia. Pierwszy składnik wzoru odpowiada regule Hebba, a drugi zapewnia samonormalizacj , to jest ||W1||2 = l [103, 105]. Dobór warto ci η ma istotny wpływ na zbie no algorytmu. Dobre rezultaty uzyskuje si przyjmuj c warto η(k) malej c wraz z upływem czasu uczenia. Typowa posta η(k) to
η (k ) =
η (0) k
γ
, przy czym η(0) = 0,5[XTX], 0,5 ≤ γ < 1. Proces uczenia sieci trwa
zwykle długo z wielokrotnym powtarzaniem tych samych wzorców ucz cych.
7.2.3. Estymacja wielu składników głównych Okre lenie wielu składników PCA wymaga zastosowania wielu neuronów w warstwie wyj ciowej. Uogólniona reguła Oji staje si wówczas nielokalna i mało atrakcyjna obliczeniowo. Lepsze wyniki uzyskuje si stosuj c reguł Sangera [127]. Przy K neuronach liniowych w warstwie wyj ciowej generuj cych sygnały wyj ciowe według wzoru
yi (k ) =
N j =o
Wij (k )x j (k ) (7. 15)
adaptacja wag przebiega według nast puj cego wzoru:
Wij (k + 1) = Wij (k ) + η yi (k )x j (k ) − y i (k )
i h =1
Whj (k ) y h (k ) (7. 46)
dla j = 0, l, 2, ..., N, i = l, 2, ..., K . Przyjmuj c oznaczenie
x 'j (k ) = x j (k ) − zale no (7.16) mo na przedstawi w postaci
i −1 h =1
Whj (k ) y h (k ) (7. 17)
[
]
Wij (k + 1) = Wij (k ) + η y i (k )x 'j (k ) − Wij (k ) y i2 (k ) (7. 18) analogicznej do wzoru Oji (7.13), odpowiadaj cemu jednemu neuronowi. Dlatego nawet przy istnieniu K neuronów w warstwie wyj ciowej reguła uczenia pozostaje nadal lokaln pod warunkiem zmodyfikowania warto ci sygnału wej ciowego x'j. Zale no ci skalarne (7.17) i (7.18) mo na zapisa w postaci wektorowej:
x ' (k ) = x(k ) −
[
i =1 h =1
Wh (k ) y h (k ) (7. 59)
]
Wi (k + 1) = Wi (k ) + η y i (k )x ' (k ) − y i2 (k )Wi (k ) (7. 20) dla i = l, 2, . . . , K. Reguła jest lokalna, gdy dla adaptacji wag jednego neuronu nie wymaga rozwi zania równa całej sieci. Nale y zauwa y , e dla neuronu pierwszego (pierwszy składnik główny PCA) x' (k) = x(k). Dla neuronu drugiego otrzymuje si x'(k) = x(k) – W1(k)y1(k), wzór zale ny od znanych ju wag neuronu pierwszego. Podobnie dla trzeciego neuronu x'(k) = x(k) – W1(k)y1(k) – W2(k)y2(k) i wszystkich pozostałych, modyfikacja wektora x jest wyra ona przez wielko ci wcze niej okre lone i proces uczenia przebiega identycznie jak w przypadku uczenia Oji, z samonormalizuj cymi si wektorami Wi ||Wi|| = l [127]. W chwili obecnej istnieje wiele odmian algorytmów dokonuj cych przekształcenia PCA. Wyczerpuj cy przegl d tych algorytmów mo na znale w pracy [41] . Główne zastosowanie przekształcenia PCA to kompresja danych, gdzie du a ilo informacji wej ciowej jest zast piona zmniejszon ich dawk zawart w wektorach y oraz Wi. W zale no ci od stopnia kompresji (liczby składników głównych PCA) mo na uzyska ró n jako danych odtworzonych. Na rysunku 7.2 przedstawiono obraz zrekonstruowany na podstawie 2 składników głównych PCA przy współczynniku kompresji równym 28. Jako odtworzonego obrazu ci le zale y od liczby K składników głównych uwzgl dnionych w odtwarzaniu. Im wi cej jest tych składników, tym lepsza jest jako obrazu, ale mniejszy współczynnik kompresji.
Sieci neuronowe w uj ciu algorytmicznym
156
Rysunek 7.2 Obraz odtworzony na podstawie 2 składników głównych PCA
7.3. Sieci neuronowe typu Heraulta-Juttena 7.3.1. Zale no ci podstawowe sieci
Sieci Heraulta-Juttena [58] s sieciami liniowymi samoorganizuj cymi si o samoorganizacji opartej na uogólnionej regule Hebba. Sieci te, pierwotnie stosowane do lepej separacji sygnałów, mog odgrywa wiele innych ról, w tym dokonywa analizy składników głównych PCA, analizy składników niezale nych INCA (INdependent Component Analysis), dekonwolucji itp. Struktura sieci mo e mie posta rekurencyjna lub jednokierunkow , przy czym jest to zwykle adaptacyjna struktura liniowa, dokonuj ca przetwarzania sygnałów w czasie rzeczywistym. Funkcje nieliniowe odgrywaj bardzo wa n rol w algorytmie adaptacji wag, nie wpływaj c na sam struktur poł cze wagowych. Oryginalne rozwi zanie Heraulta-Juttena dotyczyło problemu separacji sygnałów si(t) na podstawie informacji zawartej w ich liniowej superpozycji. Przy istnieniu n niezale nych sygnałów si(t) i macierzy mieszaj cej A
a11 a A = 21 ... a n1
a12 a 22 ... an2
... a1n ... a 2 n (7. 21) ... ... ... a nn
s dost pne jedynie sygnały xi(t) b d ce liniow superpozycj si(t), przy czym
xi (t ) =
n j =1
aij s j (t ) (7. 22)
dla i = l,2,...,n. Główna trudno polega na tym, e zarówno aij, jak i sj(t) s nie znane. W pracy [58] zaproponowano rozwi zanie problemu przy zastosowaniu sieci liniowej rekurencyjnej o strukturze przedstawionej na rys. 7.3.
Rysunek 7.3 Struktura sieci rekurencyjnej Heraulta-Juttena
Sieci neuronowe w uj ciu algorytmicznym
157
Cz układu z lewej strony rysunku przedstawia proces mieszania sygnałów si(t), generuj cy sygnały wej ciowe xi(t) dla sieci neuronowej i nie nale y formalnie do układu tej sieci. Sie zawiera n liniowych neuronów powi zanych ze sob przez sprz enie zwrotne. Wagi synaptyczne — Wij s ró ne od zera tylko przy sprz eniach wzajemnych. Sprz enia własne w oryginalnym rozwi zaniu prezentowanym w pracy [58] nie wyst puj . Ka dy neuron w sieci generuje sygnał wyj ciowy
yi (t ) = xi (t ) −
n
Wij y j (t ) (7. 23)
j =1, j ≠ i
Przy oznaczeniu przez A macierzy mieszaj cej (7.21), przez W macierzy wagowej
0 W12 W 0 W = 21 ... ... Wn1 Wn 2
... W1n ... W2 n (7. 24) ... ... ... 0
przez x(t) = [x1(t), x2(t), ..., xn(t)]T - wektora obserwowanych sygnałów zmieszanych według zale no ci (7.22), przez s(t) = [s1(t), s2(t), ..., sn(t)]T - wektora sygnałów ródłowych, a przez y(t) = [y1(t), y2(t), ..., yn(t)]T -wektora sygnałów wyj ciowych, działanie sieci z rys. 7.3 opisuj równania macierzowe:
x(t ) = As (t ) (7. 25) y (t ) = x(t ) − Wy (t ) (7. 26) Przy nie znanych macierzy A oraz wektorze s(t) i zało eniu jedynie statystycznej niezale no ci składników wektora s(t) zadanie sieci sprowadza si do takiego okre lenia wektora rozwi zania y (t)
y (t ) = (1 + W ) x(t ) (7. 27) −1
które umo liwia odtworzenie sygnałów pierwotnych si(t) tworz ce wektor s(t). Odtworzenie to jest mo liwe z dokładno ci do pewnej, bli ej nie okre lonej skali di
y (t ) = Ds (t ) (7. 28) przy czym D jest macierz diagonaln , D = [di, d2, ..., dn], oraz kolejno ci wyst powania poszczególnych składników w wektorze
y (t ) = Ps(t ) (7. 29) przy czym P jest elementarn macierz permutacji odpowiedzialn za przestawienia kolejno ci składników wektora s(t). Rozwi zanie okre laj ce wektor y(t) spełniaj cy warunki (7.28) i (7.29) jest mo liwe do osi gni cia przy dowolnej liczbie n sygnałów. W szczególno ci przy małych warto ciach n rozwi zanie takie mo na uzyska analitycznie. Na przykład przy n = 2 otrzymuje si : x1(t) = a11s1(t) + a12s2(t), x1(t) = a11s1(t) + a12s2(t) Sie z rys. 7.3 jest wówczas zło ona z 2 kanałów o sygnałach wyj ciowych:
y1 (t ) =
x (t ) − W21 x1 (t ) x1 (t ) − W12 x 2 (t ) , y 2 (t ) = 2 1 − W12W21 1 − W12W21
Po podstawieniu zale no ci okre laj cych x1(t) i x2 (t) do powy szych wzorów otrzymuje si :
y1 (t ) =
(α 11 − W12α 21 )s1 (t ) + (α 12 − W12α 22 )s 2 (t )
1 − W12W21 (α − W21α 11 )s1 (t ) + (α 22 − W21α 12 )s 2 (t ) y 2 (t ) = 21 1 − W12W21 Dobieraj c odpowiednio wagi W12 i W21 mo na otrzyma 2 ró ne rozwi zania spełniaj ce warunki (7.28) i (7.29):
Sieci neuronowe w uj ciu algorytmicznym
•
•
je li
je li
W12 =
W12 =
α 12 α 22
i
α 11 α 21
i
W21 =
158
α 21 α 11
, to:
α 22 α 11
, to:
y1 (t ) = a11s1 (t ) ,
W21 =
y 2 (t ) = a22 s 2 (t )
y1 (t ) = a12 s2 (t ) ,
y2 (t ) = a21 s1 (t )
Bior c pod uwag ogólny warunek stabilno ci układu ze sprz eniem zwrotnym wymagaj cy, aby W12W21 < 0, tylko jedno z powy szych rozwi za jest akceptowane fizycznie. Na prostym przykładzie dwu ródeł pokazano istnienie teoretycznego rozwi zania problemu separacji. Przy wi kszej liczbie ródeł zamiast analitycznego podej cia, trudnego w implementacji praktycznej przy nieokre lonej z góry warto ci współczynników aij macierzy mieszaj cej, stosuje si metod adaptacyjnego doboru wag.
7.3.2. Algorytm Heraulta-Juttena w zastosowaniu do sieci rekurencyjnej Dla uproszczenia dalszych rozwa a przyj to macierz permutacji jednostkow P = l, co oznacza, e ka da kolejno składowych wektora x jest dopuszczalna. Przy wyprowadzaniu zale no ci ucz cych zakłada si , e na danym etapie uczenia aktualne warto ci wag s bliskie optymalnym, co oznacza, e (n - 1) sygnałów wyj ciowych yk(t) jest ju proporcjonalnych do sk(t), a ró nica wyst puje jedynie w kanale n-tym. St d
y n (t ) = x n (t ) −
n
Wnk y k (t ) (7. 30)
k =1, k ≠ n
Po uwzgl dnieniu zale no ci (7.22) otrzymuje si
y n (t ) =
k ≠n
(a nk − Wnk a kk )s k (t ) + a nn s n (t ) (7. 31)
Przy zało eniu, e badane sygnały zawieraj jedynie składowe zmienne (w praktyce polega to na zastosowaniu filtru górnoprzepustowego o odpowiednio dobranej cz stotliwo ci odci cia lub odci ciu warto ci rednich sn(t) i yn(t) od odpowiednich wielko ci) i uwzgl dnieniu statystycznej niezale no ci sygnałów, otrzymuje si
y n2 (t ) =
k ≠n
(a nk − Wnk a kk )2
2 s k2 (t ) + a nn s n2 (t ) (7. 32)
Przy dopasowaniu warto ci yn(t) do sn(t) otrzymuje si (ank — —Wnkakk) = 0 i rednia warto kwadratowa yn2 (t) osi ga minimum. St d czynnik yi2 (t) odgrywa rol bł du dla poszczególnych neuronów i = l, 2, . . . , n, podlegaj cego minimalizacji w procesie uczenia. Przy wykorzystaniu gradientowej metody najwi kszego spadku do minimalizacji warto ci chwilowej yi2(t) stosuje si reguł ucz c , zapisan tutaj w postaci ró niczkowej
dWij dt
= −η
∂y i2 (t ) (7. 33) ∂Wij
przy czym
∂y i2 (t ) ∂y (t ) (7. 34) = 2 y i (t ) i ∂Wij ∂Wij Aktualn warto sygnałów yi(t) okre la zale no (7.27), y(t) = (l + W)-1x(t). Po zastosowaniu reguł algebry macierzowej przy ró niczkowaniu tej zale no ci otrzymuje si :
∂y (t ) −1 ∂ (1 + W ) (1 + W )−1 x(t ) (7. 35) = −(1 + W ) ∂Wij ∂Wij
Sieci neuronowe w uj ciu algorytmicznym
159
∂y (t ) ∂W −1 (7. 36) = −(1 + W ) ∂Wij y (t ) ∂Wij W ostatniej zale no ci
∂W jest macierz kwadratow z jednym elementem niezerowym równym l ∂Wij
poło onym w i-tym wierszu i j-tej kolumnie. St d przy ograniczeniu si do i-tego elementu wektora y zale no wektorow (7.36) mo na przedstawi w postaci n równa ró niczkowych skalarnych o postaci
∂y i = − qii y j (t ) (7. 37) ∂Wij przy czym qii jest składnikiem macierzy (l + W)-1 poło onym w i-tym wierszu i j-tej kolumnie. Przy uwzgl dnieniu w rozwini ciu funkcji (l + W)-1 tylko pierwszych dwu składników szeregu qii ≈ 1 - Wii = 1. Po uwzgl dnieniu powy szej zale no ci reguła adaptacyjna (7.33) dla wagi Wij mo e by zapisana w postaci
dWij dt
= ηy i (t ) y j (t ) (7. 38)
w której współczynnik uczenia został zredefiniowany, η ← 2η. Zale no ucz ca (7.38) w swojej strukturze przypomina reguł Hebba, cho sposób jej otrzymania opiera si na całkowicie innych podstawach fizycznych. Jest to reguła lokalna, w której aktualizacja warto ci wagi wymaga u ycia tylko 2 sygnałów ci le powi zanych z dan wag , podobnie jak w regule Hebba. Zbie no procesu ucz cego wymaga, aby w stanie ustalonym warto
rednia
dWij dt
była równa
zeru. To z kolei poci ga za sob warunek, aby poszczególne sygnały wyj ciowe yi, yj nie były ze sob skorelowane, to znaczy
(y
i
− yi
)(y
j
− yk
)
= 0 . Bior c pod uwag poczynione na wst pie wymaganie
co do statystycznej niezale no ci sygnałów, reguła (7.38) musi zosta zmodyfikowana w celu uwzgl dnienia tego postulatu. Herault i Jutten zaproponowali modyfikacj tej reguły do postaci
dWij dt
= η (t ) f ( y i (t ))g ( y j (t )) (7. 39)
przy czym sygnały yi(t) oraz yj(t) zostały zast pione funkcjami nieparzystymi, odpowiednio f(yi(t)) oraz g(yj(t}), a współczynnik uczenia jest zmienny w czasie. Jak udowodniono w pracy [58], obie funkcje f( ) oraz g( ) wnosz momenty statystyczne wy szych rz dów, które przy zało eniu statystycznej niezale no ci sygnałów automatycznie zapewniaj warto redni f(yi(t)g(yj(t) równ zeru, co jest warunkiem zbie no ci algorytmu ucz cego. W praktyce funkcje f(x) i g(x) mog przyjmowa ró ne postacie, przy czym powinien by spełniony warunek, e jedna z nich jest typu wypukłego, a druga typu wkl słego. Najbardziej popularny wybór funkcji f (x) to f(x) = x3, f(x) = x5. W przypadku funkcji g(x) dobre rezultaty uzyskuje si przy g (x) = tgh(x), g (x) = arctg(x), g(x) = x, g(x) = sgn(x) itp. Reguła uczenia zdefiniowana zale no ci (7.39) mo e by w sposób ogólny zapisana za pomoc zale no ci macierzowej
dW T = η (t ) f ( y (t ))[g ( y (t ))] (7. 40) dt w której
f ( y (t )) = [ f ( y1 (t )), f ( y 2 (t )),
, f ( yn (t ))] , g ( y (t )) = [g ( y1 (t )), g ( y2 (t )), T
, g ( yn (t ))] .
Współczynnik uczenia η(i) jest zwykle funkcj na pocz tku stał , a nast pnie malej c wykładniczo w funkcji czasu t. Nale y zwróci uwag , e zale no adaptacyjna (7.40) dotyczy składowych zmiennych sygnałów. Przy istnieniu składowej stałej składow zmienn mo na otrzyma przez wydzielenie z sygnału warto ci redniej
Sieci neuronowe w uj ciu algorytmicznym
yi(t) . Warto
160
yi(t) mo na uzyska przez zastosowanie filtru dolnoprzepustowego, zwykle pierwszego
rz du, o transmitancji
T (s ) =
1 , przy istnieniu którego s +τ
y i (t ) = y i (t ) * e
−t
r
(7. 41)
* oznacza splot sygnałów. W praktyce zamiast wydzielania składowej zmiennej przez separacj warto ci redniej stosuje si filtr górnoprzepustowy, zwykle pierwszego lub drugiego rz du, przyjmuj c jego odpowied czasow za składow zmienn , yj(t) ← yj(t) * h(t), w której h(t) oznacza odpowied impulsow filtru górnoprzepustowego, a * jest znakiem splotu. St d niezale nie od istnienia składowej stałej w sygnale zmierzonym reguła uczenia (7.40) mo e by zapisana w postaci ogólnej
dW T = η (t ) f ( y (t ))[g ( y (t ) * h(t ))] (7. 42) dt Badania eksperymentalne sieci Heraulta-Juttena, przeprowadzone za pomoc zarówno symulacji komputerowej, jak i implementacji sprz towej, potwierdziły dobr zbie no algorytmu i mo liwo separacji wielu statystycznie niezale nych sygnałów o ró nym kształcie, cho o ograniczonym zakresie zmian amplitud.
7.3.3. Uogólniony algorytm uczenia sieci rekurencyjnej W praktyce metoda jest skuteczna przy niezbyt du ym zró nicowaniu amplitud poszczególnych sygnałów si(t). Je li ró nice wzgl dne amplitud sygnałów si(t) przekraczaj warto 102, to zdolno separacji małych sygnałów zanika. Przy du ym zró nicowaniu sygnałów znacznie skuteczniejszy jest algorytm zmodyfikowany Cichockiego [14], w którym wprowadza si sprz enie zwrotne własne neuronu z wag Wii ≠ 0. Sprz enie to powoduje samonormalizacj sygnałów wyj ciowych, sprowadzaj c je do takiego samego poziomu liczbowego i ułatwiaj c w ten sposób proces separacji. Według modyfikacji Cichockiego [14] zale no ci adaptacyjne wag opisuj wzory (przy zało eniu, e yi(t) nie zawieraj składowej stałej):
dWij dt
= η (t ) f ( y i (t ))g ( y j (t )) (7. 43)
dla i ≠ j oraz
dWii = η (t )[ f ( y i (t ))g ( y i (t )) − 1] (7. 44) dt dla i = l, 2, ..., n. Obie zale no ci mo na zapisa w ogólnej postaci macierzowej
[
]
dW T = η (t ) f ( y (t ))[g ( y (t ))] − 1 (7. 45) dt w której znaczenie poszczególnych składników jest identyczne jak we wzorze (7.42). Wektor y(t) okre la si w ka dej chwili z zale no ci (7.27), y(t) = (l + W)-1x(t), przy aktualnej warto ci macierzy wagowej W i wektorze sygnałów zmieszanych x(t). Na rysunku 7.4 przedstawiono schemat blokowy implementacji algorytmu ucz cego opisanego zale no ci (7.45) [92].
Sieci neuronowe w uj ciu algorytmicznym
161
Rysunek 7.4 Implementacja układowa zmodyfikowanej metody uczenia rekurencyjnej sieci HeraultaJuttena Wszystkie operacje matematyczne s jednoznacznie okre lone i łatwe do realizacji przy u yciu standardowych symulatorów algebry macierzowej, takich jak Matlab, Mathematica itp. Głównym ródłem zwi kszonej efektywno ci algorytmu jest samonormalizacja do warto ci jednostkowej sygnałów wyj ciowych yi(t). Mianowicie w stanie ustalonym
dW = 0 , sk d wynika, e f(yi(t))g(yi(t) = l i dt
niezale nie od poziomu sygnałów si(t) nast puje skalowanie wszystkich sygnałów w sieci do poziomu jednostkowego. Badania symulacyjne sieci o zmodyfikowanym algorytmie uczenia wykazały, e jest mo liwa separacja sygnałów o amplitudach ró ni cych si nawet w stosunku l : 1010. Na rysunku 7.5 zilustrowano proces separacji trzech przedstawionych sygnałów si(t) o znacznie ró ni cych si amplitudach (trzy górne wykresy) zmieszanych za po rednictwem macierzy A równej
0,65 − 0,61 A = 0,91 0,59
0,62
0,90 − 0,33 0,76 − 0,95
W wyniku zmieszania tych sygnałów powstały sygnały xi(t), b d ce sygnałami wej ciowymi sieci neuronowej (trzy rodkowe wykresy czasowe na rys. 7.5).
Sieci neuronowe w uj ciu algorytmicznym
162
Rysunek 7.5 Rysunek 7.5 Separacja sygnałów w układzie zmodyfikowanej sieci rekurencyjnej: a) trzy sygnały si(t) podlegaj ce identyfikacji; b) trzy sygnały zmieszane xi(t) stanowi ce sygnały wej ciowe sieci separuj cej; c) przebieg procesu wydzielania poszczególnych sygnałów yi(t) stanowi cych replik sygnałów si(t); kolejno i amplituda tych sygnałów s ró ne od sygnałów si(t) Przy du ym zró nicowaniu amplitud sygnałów ródłowych sygnał o najmniejszej amplitudzie jest niezauwa alny w przebiegach xi(t). Proces separacji został przeprowadzony przy u yciu programu BS [17] i przy zastosowaniu funkcji nieliniowych f(x) = x3, g(x) = tgh(10x) oraz współczynniku uczenia η(t) zmienianym adaptacyjnie przy warto ci startowej równej 2000. Umo liwił on separacj wszystkich sygnałów, niezale nie od
Sieci neuronowe w uj ciu algorytmicznym
163
poziomu amplitud (3 dolne wykresy czasowe na rys. 7.5). Odseparowane przez sie sygnały charakteryzowały si jednakowym poziomem amplitud uzyskanym dzi ki wprowadzeniu sprz enia własnego neuronów.
7.3.4. Algorytm ucz cy sieci jednokierunkowej Wad sieci rekurencyjnej Heraulta-Juttena, trudn do wyeliminowania w praktyce, jest problem stabilno ci wyst puj cy przy separacji sygnałów, zwłaszcza w przypadku, gdy macierz mieszaj ca A jest le uwarunkowana, a sygnały ródłowe ró ni si znacznie pod wzgl dem amplitudy. Zastosowanie sieci jednokierunkowej bez sprz e zwrotnych umo liwia w znacznym stopniu wyeliminowanie tych problemów. Na rysunku 7.6 przedstawiono schemat ogólny takiej sieci.
Rysunek 7.6 Schemat sieci jednokierunkowej separuj cej sygnały Sygnały zmieszane xi(t) stanowi jedyne ródło informacji dla sieci. Przetworzone przez liniowy układ wag synaptycznych Wij tworz wektor y
y = Wx (7. 46) przy czym macierz W∈ Rnxn jest macierz pełn . Przy takim rozwi zaniu sie równowa na sieci ze sprz eniem zwrotnym, je li macierz wag W spełnia relacj
(
jednokierunkowa jest
)
−1 W = Wˆ + 1 (7. 47)
w której
Wˆ oznacza macierz wag sieci rekurencyjnej. Przez proste przekształcenie matematyczne otrzymuje si Wˆ = W −1 − 1 (7. 48)
Algorytm ucz cy wag W mo na otrzyma bezpo rednio z zale no ci ucz cych dla sieci rekurencyjnych bior c pod uwag , e
dWˆ dW −1 = (7. 49) dt dt Po uwzgl dnieniu to samo ci macierzowej
(
)
(
)
d WW −1 = 0 otrzymuje si dt
d WW −1 dW −1 dW −1 W = 0 (7. 50) =W + dt dt dt sk d
dW dW −1 dWˆ W = −W = −W W (7. 51) dt dt dt Przyjmuj c w dalszych rozwa aniach jedn z reguł ucz cych wyprowadzonych dla sieci rekurencyjnej, mo na otrzyma jej odpowiednik dla sieci jednokierunkowej. Przykładowo, bior c pod uwag zmodyfikowan reguł Cichockiego [18] otrzymuje si zale no adaptacyjn zapisan w postaci macierzowej
Sieci neuronowe w uj ciu algorytmicznym
164
[
]
dW T = η (t )W 1 − f ( y (t ))[g ( y (t ))] W (7. 52) dt W odró nieniu od zale no ci ucz cej dla sieci rekurencyjnej w równaniu (7.52) zmiana wag zale y od ich aktualnej warto ci. W praktyce powstało wiele odmian zale no ci ucz cej (7.52), charakteryzuj cych si szczególnie dobrymi wła ciwo ciami przy złym uwarunkowaniu macierzy A lub przy du ym zró nicowaniu amplitud sygnałów ródłowych si(t). Spo ród nich mo na wymieni [19]: • algorytm Cichockiego-Moszczy skiego
[
]
dW = η (t ) 1 − f ( y (t ))g T ( y (t )) W (7. 53) dt •
algorytm Cichockiego-Dybały
[
]
dH = η 1 − f ( y (t ))g T ( y (t )) (7. 54) dt W = H H (7. 55) •
algorytm Cichockiego-Amari-Younga
[
]
dW = η (t ) 1 − f ( y (t ))g T ( y (t )) W -1 (7. 56) dt •
algorytm Cardossa [4]
[
]
dW = η (t ) 1 − y (t ) y T (t ) − αf ( y (t ))g T ( y (t )) + βg ( y (t )) f T ( y (t )) W (7. 57) dt przy czym a i β s współczynnikami liczbowymi z przedziału [0, 1]. We wszystkich algorytmach ucz cych współczynnik uczenia η(t) stanowi funkcj malej c w czasie do zera. Zwykle jest to funkcja wykładnicza postaci η(t) = Ae-t/τ , o warto ci amplitudy A i stałej czasowej dobieranej indywidualnie dla poszczególnych przypadków. Badania eksperymentalne przeprowadzone dla sieci jednokierunkowej wykazały dobr skuteczno separacji sygnałów o znacznym (dochodz cym do 108) zró nicowaniu wzgl dnym amplitud sygnałów ródłowych i złym uwarunkowaniu macierzy mieszaj cej A. Szczególnie dobre wyniki uzyskuje si przy zastosowaniu algorytmu Cichockiego-Moszczy skiego i algorytmu Cardossa. Na rysunku 7.7 przedstawiono wyniki separacji pi ciu sygnałów [18] o znacznie ró ni cych si poziomach amplitud: • s1(t) = 10-5sgn[cos(155t)] • s2(t) = 10-4sin(800t)sin(60t) • s3(t) = 10-3sin(300t) + 6cos(60t) • s4(t) = 10-2sin(90t) • s5(t) równy szumowi jednostkowemu o rozkładzie równomiernym
Sieci neuronowe w uj ciu algorytmicznym
165
Rysunek 7.7 Przebieg procesu separacji i identyfikacji 5 zmieszanych sygnałów o znacznie ró ni cych si amplitudach sygnałów wej ciowych
Rysunek 7.8 Zmiana warto ci wag jednego neuronu sieci w procesie separacji sygnałów z rys. 7.7
Sieci neuronowe w uj ciu algorytmicznym
166
Macierz mieszaj ca A o postaci
0,70 0,15 − 0,22 0,12 − 0,48 − 0,92 − 0,90 0,27 − 0,93 − 0,69 A = − 0,40 − 0,91 1,0 0,78 0,50 − 0,88 0,99 0,10 0,10 0,29 0,84 − 0,33 0,82 − 0,26 − 0,51
jest macierz o współczynniku uwarunkowania cond(A) = 19,6728. Zastosowano typowe funkcje nieliniowe: fi(yi(t)) = yi2sgn(yi), gi(yi(t)) = 3tgh(10yi) dla i = 1,2,3,4,5. Współczynnik uczenia η(t) zmieniał si według nast puj cej zale no ci:
η (t ) =
200 dla t < 0,25 s − 6 (t − 0 , 25 ) 200e dla t ≥ 0,25 s
Doboru wag dokonano przez rozwi zanie metod Rungego-Kutty'ego układu równa ró niczkowych wynikaj cych z algorytmu Cichockiego-Moszczy skiego. Jak wida z rys. 7.7, separacja sygnałów nast piła ju po kilkunastu okresach. Proces separacji poszczególnych sygnałów zachodził równomiernie i nie zale ał od poziomu amplitudy sygnałów ródłowych. Wszystkie odseparowane przez sie sygnały s znormalizowane o amplitudzie bliskiej jedno ci. Interesuj cy jest przebieg zmian adaptowanych wag sieci przy du ym zró nicowaniu amplitud sygnałów ródłowych. Na rysunku 7.8 zilustrowano przykładow adaptacj 5 wag jednego neuronu sieci separuj cej pi sygnałów z przykładu poprzedniego. Wagi neuronu odpowiadaj cego najsłabszym sygnałom przyjmuj du e warto ci, zrównuj c dzi ki temu wpływ ka dego z sygnałów na ko cow posta odseparowanych sygnałów yi(t).
7.3.5. Sie do separacji sygnałów z opó nieniami Rozwa ana dotychczas sie mo e by uogólniona na przypadek, gdy mieszanie sygnałów odbywa si z uwzgl dnieniem opó nie . W tym przypadku macierz mieszaj ca A jest zast piona szeregiem macierzy A(i) okre lanych dla ró nych dyskretnych chwil (n - i), maj cych wpływ na warto sygnału zmieszanego. Zale no ogólna (7.25) przekształca si wówczas w posta
x(n ) =
M i =0
A(i )s(n − i ) (7. 58)
Odseparowanie tak splecionych sygnałów jest zadaniem znacznie trudniejszym, ale mo liwym do zrealizowania przy u yciu tej samej strategii. Istnienie teoretyczne rozwi zania mo na pokaza na prostym przykładzie dwu sygnałów zmieszanych za po rednictwem filtru typu FIR o długo ci M i transmitancjach operatorowych A12(z) oraz A21(z) [59], przy czym A12(z)=a12(0) + a12(1)z-1 + ... + a12(M)z-M, A21(z)=a21(0) + a21(1)z-1 + ... + a21(M)z-M. Mianowicie:
x1 (n ) = s1 (n ) + x 2 (n ) = s 2 (n ) +
M k =0
α 12 (k )s 2 (n − k ) (7. 59)
M k =0
α 21 (k )s1 (n − k ) (7. 60)
Struktur sieci Heraulta-Juttena dla tego przypadku, umo liwiaj c separacj sygnałów si(t), przedstawiono na rys. 7.9. Jest to układ ze sprz eniem zwrotnym, w którym sygnały wyj ciowe s opisane relacj operatorow : Y1(z)=X1(z) – W12Y2(z), Y2(z)=X2(z) – W21Y1(z)
Sieci neuronowe w uj ciu algorytmicznym
167
Rysunek 7.9 Sie do separacji sygnałów przy uwzgl dnieniu opó nie Bior c pod uwag , e X1(z)
= S1(z) + A12(z)S2(z), X2(z) = S2(z) + A21(z)S1(z) otrzymuje si :
[1 − W12 A21 (z )]S1 (z ) + [A12 (z ) − W12 (z )]S 2 (z ) 1 − W12 ( z )W21 ( z ) [1 − W21 A12 (z )]S 2 (z ) + [A21 (z ) − W21 (z )]S1 (z ) Y2 ( z ) = 1 − W12 ( z )W21 ( z ) Y1 ( z ) =
Przyjmuj c W12(z) = A12(z) oraz W21(z) = A21(z) uzyskuje si separacj obu sygnałów przy Y1(z) = S1(z), Y2(z) = S2(z). Rozwi zanie teoretyczne uzyskane dla prostego splecenia dwu sygnałów dowodzi tylko istnienia rozwi zania problemu. Podobnie jak w przypadku poprzednim zastosowanie go w praktyce jest niemo liwe, ze wzgl du na nie znan posta transmitancji operatorowych Aij(z). Uogólnienie otrzymanych wcze niej zale no ci dla przypadku splecenia sygnałów podane w pracy [59] jest naturalnym ich przeniesieniem i mo e by przedstawione w postaci dyskretnej
Wij(n+1) (k ) = Wij(n ) (k ) + η ij f ( y i (n ))g ( y j (n − k )) (7. 61)
przy czym wagi Wij(k) s interpretowane jako współczynniki transmitancji Wij(z) = Wij(0) + Wij(1)z-1 + ... + Wij(M)z-M. Wska nik n dotyczy dyskretnej chwili i jest odpowiednikiem czasu t w zale no ciach ci głych. Wska nik k jest zwi zany z wag dotycz c okre lonego opó nienia, k = 0,1,2,...,M. Wska niki i, j wag zale od liczby n sygnałów ródłowych si i mog przyjmowa warto ci i, j = 1,2, ...,n, przy czym ze wzgl du na przyj t struktur sieci zakłada si i ≠ j (transmitancje Aii = 1). Badania eksperymentalne przedstawione w pracy [59] dotyczyły separacji mowy przy istnieniu przesłuchu typu splotowego pochodz cego od szumu. Przy długo ci zastosowanego filtru FIR powy ej 10 uzyskano separacj sygnałów mowy od zakłócaj cego j szumu. Badania w tej dziedzinie s nadal na etapie podstawowym i wiele problemów, przede wszystkim zwi zanych ze zbie no ci algorytmu i jego skuteczno ci przy wi kszej liczbie sygnałów, pozostaje do rozwi zania.
Sieci neuronowe w uj ciu algorytmicznym
168
8. Sieci samoorganizuj ce si działaj ce na zasadzie współzawodnictwa 8.1. Zale no ci podstawowe W ród sieci samoorganizuj cych si wa n klas stanowi sieci, których podstaw jest konkurencja mi dzy neuronami. S to zwykle sieci jednowarstwowe, w których ka dy neuron jest poł czony ze wszystkimi składowymi N- wymiarowego wektora wej ciowego x, jak to przedstawiono schematycznie dla N = 2 na rys. 8.1. Wagi poł cze synaptycznych tworz wektor Wi = [W1(i) , W2(i) , ..., WN(i)]T. Przy zało eniu normalizacji wektorów wej ciowych zwyci a we współzawodnictwie neuron, którego wagi najmniej ró ni si od odpowiednich składowych wektora x. Zwyci zca, neuron w-ty spełnia relacj
d ( x, Ww ) = min d ( x, Wi ) (8. 1) 1≤i ≤ n
w której d(x, W) oznacza odległo w sensie wybranej metryki mi dzy wektorem x a wektorem W , a n - liczb neuronów. Wokół neuronu zwyci zcy definiuje si topologiczne s siedztwo Sw(k} o okre lonym promieniu malej cym w czasie. Neuron zwyci zca i wszystkie neurony poło one w obszarze s siedztwa podlegaj adaptacji, zmieniaj c swoje wektory wag w kierunku wektora x (k) zgodnie z reguł Kohonena
Wi (k + 1) = Wi (k ) + η (k )[x − Wi (k )] (8. 2) dla i ∈ Sw(k), w której ηi(k) jest współczynnikiem uczenia i-tego neuronu z s siedztwa Sw(k) w k-tej chwili. Warto η(k) maleje wraz z odległo ci neuronu od zwyci zcy. Wagi neuronów spoza s siedztwa Sw(k) nie podlegaj zmianom. Na rysunku 8.2 ilustrowano graficznie proces adaptacji wag neuronu zwyci zcy i neuronów poło onych w jego s siedztwie. Rozmiar s siedztwa oraz warto ci współczynników uczenia poszczególnych neuronów s funkcjami malej cymi w czasie. Ritter i Schulten wykazali [123], e wzór adaptacyjny (8.2) jest odpowiednikiem gradientowej metody uczenia, w której minimalizacja dotyczy funkcji celu
E (W ) =
[
]
1 2 S i ( x(k )) x j (k ) − Wij (k ) (8.3) 2 i , j ,k
przy czym Si(x(k)) jest funkcj s siedztwa, zmienn w procesie uczenia. Wykazano, e przy takim sposobie uczenia [68, 70, 123] funkcja g sto ci rozkładu wektorów Wi poszczególnych neuronów jest zbie na do zdyskretyzowanego rozkładu g sto ci wektorów wymusze .
Rysunek 8.1 Schemat poł cze wagowych w sieci Kohonena o dwu wej ciach
Sieci neuronowe w uj ciu algorytmicznym
169
Rysunek 8.2 Ilustracji procesu adaptacji wag w sieci Kohonena Po podaniu dwu ró nych wektorów x, np. x1 i x2, uaktywni si dwa neurony sieci, ka dy reprezentuj cy wagi najbli sze współrz dnym wektorów x1 i x2. Wagi te oznaczone w postaci wektorowej W1 i W2 mog by zilustrowane w przestrzeni jako dwa punkty. Zbli enie do siebie wektorów x1 i x2 powoduje podobne zmiany poło e wektorów W1 i W2. W granicy W1 = W2 wtedy i tylko wtedy, gdy x1 i x2 s sobie równe lub zbli one do siebie. Sie spełniaj ca te warunki nazywa si map topograficzn (map Kohonena).
8.1.1. Miary odległo ci mi dzy wektorami
Istotnym problemem w procesie samoorganizacji jest wybór metryki, w jakiej jest mierzona odległo mi dzy wektorem x a wektorem Wi. Najcz ciej u ywane miary to: • miara euklidesowa
d ( x,Wi ) = x − Wi = •
N j =1
(x
j
− W j(i )
)
2
(8. 4)
iloczyn skalarny
d ( x,Wi ) = x ⋅ Wi = x Wi cos( x, Wi ) (8. 5) •
miara według normy L1 (Manhattan)
d ( x,Wi ) = •
N j =1
x j − W j(i ) (8. 6)
miara według normy L∞
d ( x, Wi ) = max x j −W j(i ) (8. 7) j
Przy u yciu miary euklidesowej podział przestrzeni na obszary dominacji neuronów jest równowa ny mozaice Voronoia, w której przestrze wokół punktów centralnych jest stref dominacji danego neuronu. Zastosowanie innej miary przy samoorganizacji kształtuje podział stref wpływów inaczej. W szczególno ci zastosowanie iloczynu skalarnego bez normalizacji wektorów mo e prowadzi do niespójnego podziału przestrzeni, przy którym wyst puje kilka neuronów w jednym obszarze, a w innym nie ma adnego. Przypadek taki mo e wyst pi dla wektorów wej ciowych dwuwymiarowych i braku normalizacji [26]. Na rysunku 8.3 przedstawiono ukształtowanie si obszarów dominacji 25 neuronów przy odwzorowaniu rozkładu równomiernego dwuwymiarowych danych ucz cych [25] i zastosowaniu ró nych metryk do obliczania odległo ci. O ile zastosowanie norm L1, L∞ i euklidesowej ukształtowało jednoznaczny podział stref wpływów poszczególnych neuronów, o tyle przy zastosowaniu iloczynu skalarnego nie uzyskano wła ciwej organizacji sieci. Pewne strefy wpływów s martwe ( aden neuron nie odpowiada za nie), a w innych wyst puj nawet 4 neurony. Zastosowanie normalizacji wprowadziło pełn organizacj , niezale nie od rodzaju zastosowanej normy.
Sieci neuronowe w uj ciu algorytmicznym
170
Rysunek 8.3 Rozkład obszarów atrakcji poszczególnych neuronów przy ró nych miarach odległo ci mi dzy wektorami nieznormalizowanymi: a) miara euklidesowa; b) iloczyn skalarny; c) miara według normy L1; d) miara według normy L∞
8.1.2. Problem normalizacji wektorów Wykazano, e proces samoorganizacji prowadzi zawsze do spójnego podziału przestrzeni danych, je li cho jeden z wektorów x lub W podlega normalizacji. Przy znormalizowanych wektorach ucz cych x wektory wag nad aj c za nimi staj si automatycznie znormalizowane. Z drugiej strony normalizacja wektora wagowego powoduje, e je li ||Wi|| = const., to dla wszystkich neuronów iloczyn ||x|| ||Wi|| jest tak e stały przy okre lonej warto ci x. O aktywacji neuronu decyduje wi c cos(x, Wi), staj c si wspóln miar dla całej sieci. Nale y zaznaczy , e przy normalizacji wektora wag miara euklidesowa i iloczyn skalarny s sobie równowa ne, gdy ||x - Wi||2 = ||x||2 + ||Wi||2 - 2xWi. St d min ||x – Wi||2 = max(xWi), je li ||Wi|| = const. Badania eksperymentalne potwierdziły potrzeb stosowania normalizacji wektorów przy małych wymiarach przestrzeni, np. n = 2, n = 3. Normalizacja taka mo e by dokonana na dwa ró ne sposoby: • redefinicja składowych wektora według wzoru
xi ←
xi
(8. 8)
N
x j =1
•
2 j
zwi kszenie wymiaru przestrzeni o jeden, RN —> RN+l, przy takim wyborze (N + l)-szej składowej wektora, e N i =1
xi2 = 1 (8. 9)
Przy tym sposobie normalizacji zachodzi zwykle konieczno wcze niejszego przeskalowania składowych wektora x w przestrzeni RN , umo liwiaj cego spełnienie równo ci (8.9). Przy zwi kszaniu wymiaru wektora wej ciowego efekt normalizacji staje si coraz mniej widoczny i przy du ych wymiarach sieci N > 200 normalizacja nie odgrywa wi kszej roli w procesie samoorganizacji. W pracy [26] wykazano, e przy losowym rozkładzie warto ci składowych wektorów x, o warto ci redniej µ i wariancji σ warto oczekiwana E(||x||) oznaczona w postaci µ||x|| i wariancja σ||x|| przy du ych warto ciach N wyra aj si wzorami:
µ x ≈ aN − b
(8. 30)
Sieci neuronowe w uj ciu algorytmicznym
171
σ w których
a = σ 2 + µ2 , b =
x
≈ b (8. 11)
4µ 2σ 2 − σ 4 + 4 µµ 3 + µ 4 . Współczynniki µ3 i µ4 oznaczaj momenty 4σ 2 + µ2
(
)
statystyczne trzeciego i czwartego rz du. Przy du ych wymiarach wektora wej ciowego standardowe odchylenie ||x|| jest zbie ne asymptotycznie do stałej, a warto rednia ro nie proporcjonalnie do pierwiastka kwadratowego z N. Z nierówno ci Czebyszewa
(
)
P x −µ x ≥ε ≤
σ ε
x 2
(8. 12)
wynika, e prawdopodobie stwo, e ||x|| wypadnie poza przedziałem o rodku w µ||x||, jest przy du ych wymiarach przestrzeni stałe, a bł d wzgl dny popełniany przez przyj cie µ||x|| zamiast ||x|| staje si pomijamy. Zale no (8.12) sugeruje efekt analogiczny do samoorganizacji wektorów wej ciowych: przy stałej warto ci N i ustalonym rozkładzie prawdopodobie stwa warto rednia µ||x|| jest, praktycznie bior c, stała, podobnie jak wariancja, stanowi c odpowiednik normalizacji.
8.1.3. Miara organizacji sieci Przy uczeniu sieci samoorganizuj cej podstawowym problemem jest ocena ilo ciowa stopnia zorganizowania si neuronów. Tylko przy dwuwymiarowym wektorze wej ciowym i równomiernym rozkładzie wzorców łatwo jest oceni stopie organizacji po równomierno ci rozkładu neuronów na płaszczy nie i regularno ci w złów siatki, mierzonej jako odległo ci mi dzy s siednimi punktami odpowiadaj cymi wektorom wag poszczególnych neuronów. Przy du ych wymiarach wektora wej ciowego, wi kszych ni 2, wprowadza si zwykle miar nierównomierno ci organizacji neuronów opart na statystycznym rozkładzie euklidesowych miar ró nic mi dzy wektorami wag poszczególnych neuronów. Miar nieuporz dkowania neuronów definiuje si w postaci [26]:
θ= w −1
h
µ∆ = h
σ∆ = przy czym
w−1
i =1 j =1
i =1 j =1
σ∆ µ∆
∆hij +
(8. 43)
h −1 w i =1 j = 0
∆vij (8. 14)
2 wh − w − h
(∆h
ij
− µ∆ )+
h −1 w i =1 j = 0
2 wh − w − h
(∆v
− µ∆ )
2
ij
(8. 15)
∆hij = Wij − Wi , j +1 , ∆vij = Wij − Wi+1, j . W powy szych wzorach Wij oznacza wektor wag (i,j)-
tego neuronu w siatce prostok tnej zawieraj cej h neuronów w osi pionowej i w neuronów w osi poziomej. Warto µ∆ reprezentuje redni odległo mi dzy wektorami wagowymi, a σ∆ - standardowe odchylenie tej odległo ci mi dzy dwoma przyległymi neuronami w sieci. Przy idealnej organizacji neuronów σ∆ d y do zera, podobnie jak miara nieuporz dkowania θ. Na rysunku 8.4 zestawiono wykresy θ w funkcji kolejnych iteracji sieci neuronowej 30 x 30 (900 neuronów) reprezentuj cej dane o rozkładzie równomiernym przy normalizacji i braku normalizacji wektora x i zastosowaniu iloczynu skalarnego jako miary odległo ci mi dzy wektorami [26]. Rysunek 8.4a odpowiada wymiarowi N = 3, rys. 8.4b - wymiarowi N = 200. Przy N = 3 sie była w stanie zorganizowa si tylko po wprowadzeniu normalizacji. Przy zwi kszeniu wymiaru wektora do 200 ró nice w stopniu organizacji obu sieci s nieznaczne, cho s jeszcze nieco lepsze przy znormalizowanym wektorze x.
Sieci neuronowe w uj ciu algorytmicznym
172
Rysunek 8.4 Wykres bł du nieuporz dkowania θ w funkcji iteracji dla sieci a) o 3 wej ciach; b) o 200 wej ciach, przy zastosowaniu iloczynu skalarnego i danych nieznormalizowanych oraz poddanych normalizacji
8.1.4. Mechanizm zm czenia neuronów
Lepsze rezultaty samoorganizacji obserwuje si , je li algorytm ucz cy uwzgl dnia liczb zwyci stw poszczególnych neuronów i organizuje proces uczenia w taki sposób, aby da szans zwyci stwa neuronom mniej aktywnym. Sugestia takiej organizacji uczenia bierze si z obserwacji zachowania neuronów biologicznych, gdzie neuron wygrywaj cy tu po zwyci stwie pauzuje przez okre lony czas, odpoczywaj c przed nast pnym współzawodnictwem [129]. Taki sposób uwzgl dniania aktywno ci neuronów jest nazywany mechanizmem zm czenia9. W praktycznym zastosowaniu tej zasady w sieciach samoorganizuj cych si wprowadza si potencjał pi dla ka dego neuronu, modyfikowany po ka dej k-tej prezentacji wzorca wej ciowego x, według zale no ci (we wzorze zało ono zwyci stwo neuronu w-tego)
pi (k ) +
1 pi (k + 1) = n pi (k ) − p min
dla i ≠ w
(8. 56)
dla i = w
Współczynnik pmin oznacza minimalny potencjał upowa niaj cy do udziału we współzawodnictwie. Je li aktualna warto potencjału pi spadnie poni ej pmin to neuron i-ty „odpoczywa", a zwyci zcy poszukuje si spo ród neuronów spełniaj cych relacj
d ( x,Ww ) = min{d ( x, Wi )} (8. 17) dla l ≤ i ≤ N i pi ≥ pmin. Maksymaln warto potencjału ogranicza si na poziomie równym 1. Wybór warto ci pmin wpływa na gotowo neuronu do współzawodnictwa. Przy pmin = 0 nie wyst puje zm czenie neuronów i ka dy z nich natychmiast po zwyci stwie jest gotowy do podj cia współzawodnictwa (standardowy algorytm Kohonena). Przy pmin = 1 wyst puje druga skrajno , przy której neurony zwyci aj kolejno, gdy w ka dej chwili tylko jeden jest gotowy do współzawodnictwa. W praktyce dobre rezultaty uzyskuje si przy pmin ≈ 0,75. Na rysunku 8.5 przedstawiono stopnie niezorganizowania θ neuronów po 20 000 iteracji przy trzech rodzajach uczenia samoorganizuj cego. Krzywa górna odpowiada wektorowi x nieznormalizowanemu, a krzywa rodkowa wektorowi znormalizowanemu przy klasycznym uczeniu Kohonena (pmin = 0). Krzywa dolna odpowiada wektorowi nieznormalizowanemu, ale z uwzgl dnieniem zm czenia neuronów (pmin = 0,75). Na osi poziomej oznaczono wymiar wektora x. Jak wida z wykresu, najlepsze wyniki samoorganizacji uzyskuje si przy uwzgl dnieniu zm czenia neuronów. Tylko przy małym wymiarze wektora x (N < 10) lepsze wyniki gwarantuje normalizacja wektora.
9
Oryginalna nazwa conscience mechanism jest w j zyku polskim nazywana równie mechanizmem sumienia.
Sieci neuronowe w uj ciu algorytmicznym
173
Rysunek 8.5 Wykres bł du nieuporz dkowania θ w funkcji wymiaru N wektora X po 20000 iteracji; krzywa 1 odpowiada iloczynowi skalarnemu bez normalizacji; krzywa 2 - iloczynowi skalarnemu z normalizacj ; krzywa 3- iloczynowi skalarnemu bez normalizacji, ale z uwzgl dnieniem zm czenia neuronów
8.2. Algorytmy uczenia sieci samoorganizuj cych si Celem uczenia sieci samoorganizuj cych si przez konkurencj neuronów jest takie uporz dkowanie neuronów (dobór warto ci ich wag), które zminimalizuje warto oczekiwan zniekształcenia, mierzon jako bł d popełniany przy aproksymacji wektora wej ciowego x warto ciami wag neuronu zwyci aj cego w konkurencji. Przy p wektorach wej ciowych x i zastosowaniu normy euklidesowej bł d ten mo e by wyra ony wzorem
1 E= p
p i =1
xi − Ww (i ) (8. 68)
w którym Ww(i) jest wag neuronu zwyci aj cego przy prezentacji wektora xi. Zadanie to jest równie zwane kwantowaniem wektorowym (Vector Quantization - VQ). Numery neuronów zwyci aj cych przy kolejnych prezentacjach wektorów x tworz tak zwan ksi k kodow . W klasycznym rozwi zaniu kodowania stosuje si algorytm K-u rednie (K-means) omówiony w rozdz. 5, zwany równie uogólnionym algorytmem Lloyda [81]. W przypadku sieci neuronowych odpowiednikiem algorytmu Lloyda jest algorytm WTA (Winner Takes All). W algorytmie tym po prezentacji wektora x jest obliczana aktywno ka dego neuronu. Zwyci zc staje si neuron o najwi kszym sygnale wyj ciowym, a wi c ten, którego iloczyn skalarny x * W jest najwi kszy. Przy zastosowaniu wektorów znormalizowanych, jak wykazano w poprzednim rozdziale, jest to równowa ne najmniejszej odległo ci euklidesowej mi dzy wektorem wej ciowym a wektorem wagowym neuronów. Zwyci zca ma przywilej adaptacji swoich wag w kierunku wektora x według reguły Ww ← Ww + η(x — Ww). Pozostałe neurony nie podlegaj adaptacji. Algorytm umo liwia uwzgl dnienie zm czenia neuronów przez wzi cie pod uwag liczby zwyci stw ka dego z nich i faworyzowanie jednostek o najmniejszej aktywno ci, dla wyrównania ich szans. Algorytmy WTA, w których tylko jeden neuron mo e podlega adaptacji w ka dej iteracji, s algorytmami słabo zbie nymi, szczególnie przy du ej liczbie neuronów. W praktyce zostały one zast pione algorytmami WTM (Winner Takes Most), w których oprócz zwyci zcy uaktualniaj swoje wagi równie neurony z jego s siedztwa, przy czym im dalsza jest odległo od zwyci zcy, tym mniejsza jest zmiana warto ci wag neuronu. Proces adaptacji wektora wagowego mo e by opisany uogólnion zale no ci (8.2), któr tutaj przepisano w postaci
Wi ← Wi + η i G (i, x )[x − Wi ] (8. 79) dla wszystkich neuronów i nale cych do s siedztwa Sw zwyci zcy. We wzorze tym oddzielono współczynnik uczenia ηi ka dego neuronu od jego odległo ci wzgl dem prezentowanego wektora x, uwzgl dnionej przez funkcj s siedztwa G(i,x). Definiuj c G(i,x) w postaci
G (i, x ) =
1 dla i = w (8. 80) 0 dla i ≠ w
Sieci neuronowe w uj ciu algorytmicznym
174
przy czym w oznacza numer zwyci zcy, otrzymuje si klasyczny algorytm WTA. Istnieje wiele ró nych odmian algorytmów WTM, ró ni cych si przede wszystkim postaci funkcji G(i, x).
8.2.1. Algorytm Kohonena W samoorganizuj cych si mapach odwzorowa topologicznych Kohonena [70] okre la si najpierw zwyci zc stosuj c euklidesow miar odległo ci, a nast pnie warto współczynnika adaptacji neuronów nale cych do s siedztwa zwyci zcy. W klasycznym algorytmie Kohonena funkcja G(i, x) jest definiowana nast puj co:
1 dla d(i, w ) ≤ λ (8. 21) 0 dla pozostalych
G (i, x ) =
We wzorze d(i, w) oznacza odległo euklidesow mi dzy wektorami wag neuronu zwyci zcy w i neuronu itego. Współczynnik λ jest promieniem s siedztwa o warto ci malej cej wraz z czasem uczenia. Tego typu s siedztwo nosi nazw s siedztwa prostok tnego. Drugim typem s siedztwa stosowanego w mapach Kohonena jest s siedztwo gaussowskie, przy czym funkcja G(i, x) jest okre lona wzorem
G (i, x ) = exp −
d 2 (i, w) (8. 22) 2λ2
O stopniu adaptacji neuronów z s siedztwa zwyci zcy decyduje tu nie tylko odległo euklidesowa neuronu i-tego od zwyci zcy (neuronu w-tego), ale równie promie s siedztwa λ. W odró nieniu od s siedztwa prostok tnego, gdzie ka dy neuron nale cy do s siedztwa zwyci zcy podlegał adaptacji w jednakowym stopniu, przy s siedztwie gaussowskim stopie adaptacji jest zró nicowany i zale y od warto ci funkcji Gaussa. S siedztwo gaussowskie prowadzi do znacz co lepszych rezultatów uczenia i lepszej organizacji sieci.
8.2.2. Algorytm stochastycznej relaksacji W algorytmie stochastycznej relaksacji zaproponowanym w pracy [155] wszystkie neurony sieci podlegaj adaptacji z prawdopodobie stwem okre lonym rozkładem Gibbsa
exp −
P(i ) = n
exp −
j =1
x − Wi
2
T x −Wj
2
(8. 23)
T
w którym T jest parametrem zwanym „temperatur " , podobnie jak w procesie symulowanego wy arzania. Przy wysokich temperaturach wszystkie neurony zmieniaj swoje wagi z prawdopodobie stwem
lim P(i ) = N . W skrajnym przypadku przy T → 0 P(i) → l tylko 1
dla zwyci zcy (i = w), a dla
T →∞
pozostałych neuronów (i ≠ w) P(i) → 0. W procesie uczenia „temperatur " obni a si od warto ci maksymalnej do zera, w wyniku czego w granicy algorytm stochastyczny przekształca si w zwykły algorytm WTA. W algorytmie stochastycznej relaksacji funkcja rozkładu G(i, x) jest okre lona wzorem
G (i, x ) =
1 dla P(i ) > P (8. 24) 0 dla pozostalych
w którym P oznacza liczb losow z przedziału [0,1]. Przy odpowiedniej organizacji procesu uczenia i wolnym obni aniu „temperatury" algorytm umo liwia unikni cie pułapek minimów lokalnych i uzyskanie dobrych wyników organizacji sieci. Cen za to jest bardzo istotne spowolnienie procesu ucz cego.
Sieci neuronowe w uj ciu algorytmicznym
175
8.2.3. Algorytm SCS Dla zwi kszenia szybko ci uczenia autorzy pracy [155] zaproponowali modyfikacj algorytmu stochastycznej relaksacji w postaci algorytmu łagodnego współzawodnictwa (Soft Competition Scheme - SCS). W modyfikacji tej warto binarn funkcji G(i, x) zast puje si aktualn warto ci prawdopodobie stwa P(i)
G (i, x ) = P(i ) (8. 25) przy czym P(i) jest okre lone, identycznie jak poprzednio, zale no ci (8.23). Dla uwzgl dnienia stopnia aktywno ci neuronów, faworyzuj cego jednostki mało aktywne, wprowadza si zró nicowan dla ka dego neuronu warto współczynnika uczenia ηi(k), zale n od (k - 1) poprzednich warto ci G(i, x)
η i (k ) =
1 1+
k −1 j =1
G j (i, x )
(8. 26)
przy czym j reprezentuje wszystkie poprzednie kroki (j = l, 2, . . . , k - 1), a Gj(i, x) - warto funkcji s siedztwa w j-tym kroku ucz cym. Algorytm SCS, implementuj cy zale no stochastyczn (8.23), stał si w istocie algorytmem deterministycznym stosuj cym miar euklidesow . W praktyce jego działanie jest skuteczniejsze ni działanie algorytmu stochastycznej relaksacji, cho szybko zbie no ci do rozwi zania jest mała.
8.2.4. Algorytm gazu neuronowego Znaczn popraw samoorganizacji sieci i zwi kszenie szybko ci zbie no ci mo na uzyska stosuj c metod zaproponowan przez Martinetza, Berkovicha i Schultena w pracy [84], zwan przez autorów algorytmem gazu neuronowego ze wzgl du na podobie stwo jego dynamiki do ruchu cz steczek gazu. W algorytmie tym w ka dej iteracji wszystkie neurony s sortowane w zale no ci od ich odległo ci od wektora x. Neurony s nast pnie ustawiane w kolejno ci odpowiadaj cej narastaj cej odległo ci
d 0 < d1 < d 2 ... < d n −1 (8. 27) przy czym dm = ||x-Wm(i)|| oznacza odległo i-tego neuronu zajmuj cego w wyniku sortowania m-t pozycj w szeregu za neuronem zwyci zc . Warto funkcji s siedztwa i-tego neuronu G(i, x) okre la zale no
G (i, x ) = e
−
m (i )
λ
(8. 28)
w której m(i) oznacza kolejno uzyskan w wyniku sortowania (m(i) = l, 2, . . . , n - 1), a λ jest parametrem analogicznym do promienia s siedztwa w algorytmie Kohonena, malej cym w funkcji czasu. Przy λ = 0 tylko neuron zwyci zca podlega adaptacji i algorytm przekształca si w zwykły algorytm WTA, natomiast przy λ ≠ 0 adaptacji podlegaj wagi wielu neuronów w stopniu zale nym od warto ci funkcji G(i, x). Algorytm gazu neuronowego przypomina tu nieco strategi zbiorów rozmytych, w której ka demu neuronowi przypisuje si warto funkcji przynale no ci do s siedztwa, okre lon zale no ci (8.28). Z matematycznej analizy algorytmu wynika, e funkcja energetyczna stowarzyszona z nim i podlegaj ca minimalizacji w procesie uczenia ma posta silnie zale n od warto ci λ [84]. Przy λ → ∞ kształt tej funkcji jest paraboliczny, przy λ → 0 funkcja ta staje si funkcj wielomodaln o wielu minimach lokalnych. Aby uzyska dobre rezultaty samoorganizacji, proces uczenia powinien rozpoczyna si z du warto ci λ, po czym powinna ona male wraz z upływem czasu do zera. Dzi ki wolnej zmianie λ przej cie z funkcji jednomodalnej na wielomodaln odbywa si stopniowo, umo liwiaj c umkni cie pułapki minimum lokalnego. Współczynnik uczenia η jest w algorytmie okre lany indywidualnie dla ka dego neuronu i przyjmuje warto ci równie malej ce w czasie. Oba parametry λ i współczynnik uczenia η w algorytmie gazu neuronowego zmieniaj si według funkcji pot gowej
λ (k ) = λmax
λmin λmax
k / k max
(8. 29)
przy czym λ(k) oznacza warto λ w k-tej iteracji, a λmin i λmax s odpowiednio przyj tymi warto ciami minimaln i maksymaln λ. Współczynnik kmax oznacza maksymaln zało on liczb iteracji. Współczynnik uczenia i-tego neuronu zmienia si według podobnej zale no ci
Sieci neuronowe w uj ciu algorytmicznym
η η i (k ) = η i (0) min η i (0)
176
k / k max
(8. 30)
w której ηi(0) oznacza pocz tkow warto współczynnika uczenia, a ηmin -zało on z góry warto minimaln odpowiadaj c k = kmax. Algorytm gazu neuronowego jest w praktyce najskuteczniejszym narz dziem organizacji neuronów w sieci. Przy odpowiednim doborze parametrów steruj cych procesem mo na uzyska doskonał organizacj sieci przy szybko ci działania przewy szaj cej nawet algorytm Kohonena.
8.2.5. Porównanie algorytmów samoorganizacji Porównania przedstawionych wcze niej algorytmów dokonano na podstawie odwzorowania danych ucz cych dwuwymiarowych, zgrupowanych w 15 klasterach kształtu prostok tnego, jak to przedstawiono na rys. 8.6 [84]. Rozkład danych wewn trz ka dego klastera jest jednorodny. Do odwzorowania danych u yto 60 neuronów. Przy idealnym uporz dkowaniu na ka dy klaster powinny przypada 4 neurony. Kropkami zaznaczono poło enia wektorów wag. Przy wyborze λmax = 10, λmin = 0,01, kmax = 100 000, ηi(0) = 0,5 oraz ηmin = 0,005 uzyskano prawie perfekcyjne odwzorowanie danych. Rysunki 8.6a do d przedstawiaj kolejne etapy adaptacji wag, poczynaj c od stanu pocz tkowego (rys. 8.6a), poprzez stany po rednie po 5000 iteracji (rys. 8.6b), 15 000 iteracji (rys. 8.6c) a do stanu ko cowego (rys. 8.6d), w którym ka demu klasterów! odpowiadaj cztery, symetrycznie poło one neurony.
Rysunek 8.6 Ilustracja kolejnych faz uporz dkowania neuronów metod gazu neuronowego; wykresy a) stan pocz tkowy, b) - stan po 5000 iteracji, c) - stan po 15000 iteracji, d) - stan po 80000 iteracji. Kwadraty oznaczaj klastery danych, kropki - poło enie poszczególnych neuronów Dla porównania algorytmu gazu neuronowego z innymi przeprowadzono uczenie z zastosowaniem tych algorytmów przy odpowiednio dobranych parametrach. W algorytmie WTA jedyny parametr λi podlegaj cy doborowi został przyj ty za funkcj czasu identycznie jak wy ej. W algorytmie Kohonena wybrano skuteczniejsz wersj z s siedztwem typu gaussowskiego o warto ci λ okre lonej funkcj (8.29) przy λmax = 2 i λmin = 0,01. Współczynnik uczenia 17 zmieniał si identycznie jak w poprzednich przypadkach. W algorytmie łagodnego współzawodnictwa funkcja s siedztwa była opisana wzorem (8.25) przy warto ci temperatury
T (k ) = Tmax
Tmin Tmax
k k max
, przy Tmax = l, Tmin = 10-5, a współczynnik uczenia uwzgl dniał aktywno neuronów
według wzoru (8.26). Na rysunku 8.7 przedstawiono wykres wzgl dny bł du kwantowania (E – E0) / E0 jako funkcj kolejnych iteracji dla ka dego z tych algorytmów. Warto E0 oznacza minimaln warto teoretyczn bł du dla przyj tych danych ucz cych. Algorytm gazu neuronowego przewy sza wszystkie pozostałe nie tylko pod wzgl dem stopnia organizacji sieci, ale równie pod wzgl dem szybko ci zbie no ci do rozwi zania. W celu zmniejszenia liczby operacji matematycznych wymaganych w algorytmie gazu neuronowego mo na zastosowa pewne uproszczenie, polegaj ce na uwzgl dnieniu w sortowaniu tylko neuronów o najbardziej znacz cych warto ciach funkcji G(i, x). Korzysta si przy tym z zale no ci (8.28), z której wynika, e je li m(i)» λ, to warto G(i, x) ≈ 0. Przyjmuj c na przykład K = 3λ, sortowanie neuronów, a nast pnie ich adaptacj mo na ograniczy jedynie do pierwszych K jednostek. Podobnie do algorytmu mo na wprowadzi współczynnik uwzgl dniaj cy aktywno neuronów.
Sieci neuronowe w uj ciu algorytmicznym
177
Rysunek 8.7 Porównanie efektywno ci samoorganizacji przy zastosowaniu ró nych metod uczenia (metoda Kohonena, K-u rednie , łagodnego współzawodnictwa SCS, gazu neuronowego) Je li ka demu neuronowi przyporz dkowuje si pewien potencjał pi, to odległo i-tego neuronu od wektora x mo na zredefiniowa w postaci
d m = p i x − Wm(i ) (8. 31) przy czym pi w ka dej iteracji uaktualnia swoj warto wg zale no ci [27]
pi ← p i +
1
τ
(G (i, x ) − pi ) (8. 32)
Współczynnik τ jest stał czasow dobieran przez u ytkownika (typowa warto τ = 20n), przy czym n oznacza liczb neuronów w sieci. Neurony o du ej aktywno ci (du a warto G(i, x)) maj du warto potencjału pi zwi kszaj c odległo dm okre lon według zmodyfikowanego wzoru (8.31) i zmniejszaj c ich szans zwyci stwa. W ten sposób szans zwyci stwa neuronów gorzej dopasowanych do wektora wej ciowego x rosn , przyczyniaj c si tym samym do likwidacji problemu neuronów martwych (nigdy nie zwyci aj cych).
8.3. Sie odwzorowa jedno- i dwuwymiarowych Przy testowaniu sieci neuronowej samoorganizuj cej si wa n rol odgrywa odwzorowanie danych jedno- i dwuwymiarowych, ze wzgl du na przejrzysty układ siatki tworzonej przez neurony. Bior c pod uwag , e wagi neuronów s odpowiednikiem współrz dnych punktów centralnych klasterów, na jakie jest dzielony zbiór danych, ka demu wektorowi wagowemu mo na przypisa odpowiedni punkt na płaszczy nie. Ł cz c te punkty z najbli szymi s siadami otrzymuje si regularn siatk odwzorowuj c topologiczny rozkład danych. Siatka mo e mie kształt prostok tny, je li ka demu neuronowi przyporz dkuje si 4 najbli szych s siadów (rys. 8.8a), lub sze ciok tny, je li uwzgl dni si 6 s siadów (rys. 8.8b). Przy równomiernym rozkładzie wektorów ucz cych x na płaszczy nie, spodziewane odwzorowanie wagowe poszczególnych neuronów przedstawione na płaszczy nie jest równie równomierne. Je li rozkład danych jest nierównomierny, zag szczenie wyst pi tam, gdzie prawdopodobie stwo wyst pienia wektorów ucz cych jest wi ksze. Na rysunku 8.9 przedstawiono kolejne fazy uczenia sieci Kohonena przy u yciu danych wej ciowych rozło onych równomiernie i zało eniu maski kwadratowej, uzyskane na symulatorze SOMA [25] z zastosowaniem gaussowskiej funkcji s siedztwa. Rozkład wag 400 neuronów przedstawiono w kolejnych fazach samoorganizacji, poczynaj c od losowego rozkładu na pocz tku (lewy górny róg), a ko cz c na równomiernym rozkładzie ko cowym (prawy dolny róg).
Sieci neuronowe w uj ciu algorytmicznym
178
Rysunek 8.8 S siedztwo: a) prostok tne; b) heksagonalne u ywane do prezentacji uporz dkowania neuronów
Rysunek 8.9 Kolejne fazy uporz dkowania neuronów w sieci Kohonena odwzorowuj cej dane losowe o rozkładzie równomiernym zawarte w masce kwadratowej
Sieci neuronowe w uj ciu algorytmicznym
179
Bardzo istotn rol odgrywa w uczeniu rodzaj zastosowanej funkcji s siedztwa. Na rysunku 8.10 przedstawiono dla porównania rezultaty samoorganizacji uzyskane dla danych rozło onych równomiernie tworz cych mask kołow i trójk tn , przy zastosowaniu prostok tnej funkcji s siedztwa opisanej wzorem (8.21) oraz funkcji gaussowskiej zdefiniowanej wzorem (8.22). Rozkład górny odpowiada funkcji gaussowskiej, dolny - funkcji prostok tnej. Ró nice w stopniu regularno ci siatki s wyra nie widoczne, zwłaszcza w przypadku maski trójk tnej.
Rysunek 8.10 Wyniki uporz dkowania neuronów odwzorowuj cych dane losowe rozło one równomiernie w masce kołowej i trójk tnej przy zastosowaniu: a), b) s siedztwa gaussowskiego; c) d) s siedztwa prostok tnego Odwzorowanie danych dwuwymiarowych przy zastosowaniu s siedztwa jednowymiarowego Kohonena zakłada, e ka dy neuron ma tylko dwóch najbli szych s siadów, a nie 4 lub 6, jak to było przy sieci dwuwymiarowej. Przy wizualizacji poł cze wagowych poszczególnych neuronów ka dy neuron ma teraz tylko 2 poł czenia z dwoma najbli szymi s siadami. Podobnie jak w przypadku dwuwymiarowym lepsze rezultaty organizacji (mniejszy bł d kwantowania definiowany wzorem (8.18)) uzyskuje si przy gaussowskiej funkcji s siedztwa. Na rysunku 8.11 przedstawiono kolejne fazy organizacji neuronów sieci jednowymiarowej odwzorowuj cej dane rozmieszczone wewn trz maski kwadratowej, trenowanej z zastosowaniem funkcji s siedztwa gaussowskiego (rozkład górny) oraz prostok tnego (rozkład dolny). Obrazy z lewej strony rysunku odpowiadaj stanowi pocz tkowemu, z prawej - stanowi ko cowemu uporz dkowania. Bardziej zró nicowany kształt otrzymanej funkcji wiadczy o lepszym odwzorowaniu i mniejszym bł dzie kwantowania.
Rysunek 8.11 Kolejne fazy uporz dkowania neuronów odwzorowuj cych dane losowe rozło one równomiernie w masce prostok tnej przy zastosowaniu s siedztwa gaussowskiego (górna cz rysunku) i s siedztwa prostok tnego (dolna cz rysunku) z wykorzystaniem odwzorowania jednowymiarowego
Sieci neuronowe w uj ciu algorytmicznym
180
Rysunek 8.12 Odwzorowanie danych jednowymiarowych przez sie powi za jednowymiarowych Kohonena (linia kropkowana - dane ucz ce, linia ci gła - odwzorowanie wagowe sieci Kohonena) Dobre rezultaty otrzymuje si równie przy odwzorowaniu danych jednowymiarowych przez sie samoorganizuj c si . Przykładowo na rys. 8.12 zilustrowano uporz dkowanie neuronów odwzorowuj cych układ danych tworz cych ró ne kształty w przestrzeni jednowymiarowej przez sie powi za jednowymiarowych. Uczenie zostało przeprowadzone przy zastosowaniu programu KOHON [130].
8.4. Odwzorowanie Sammona Podstawowa zaleta sieci samoorganizuj cych si jest widoczna w całej pełni dopiero przy danych wielowymiarowych, gdzie zawodzi zdolno człowieka do wyobra enia sobie ich rozkładu przestrzennego. Mechanizmy samoorganizacji wbudowane w algorytmy ucz ce takich sieci działaj niezale nie od wymiarowo ci problemu. Podstawow funkcj pełnion przez sie jest tutaj kwantowanie wektorowe, polegaj ce na tym, e ogromna liczba danych tworz cych klaster jest odwzorowana przez wektor wagowy jednego neuronu. Rozkład przestrzenny neuronów umo liwia okre lenie rozkładu skupienia danych oraz jego zasadnicze cechy, u yteczne z punktu widzenia u ytkownika. Niezale nie jednak od zmniejszenia skali zadania pozostaje problem graficznego przedstawienia rozkładu danych wielowymiarowych, zrozumiałego i widzianego przez człowieka. Najcz ciej u ywanym rozwi zaniem w tej dziedzinie pozostaje odwzorowanie Sammona [126]. Zało ono, e danych jest n wektorów N-wymiarowych xi (i =1, 2,..., n) i odpowiednio do nich definiuje si n wektorów w przestrzeni M-wymiarowej (M = 2,3), oznaczonych przez yi. Odległo ci mi dzy poszczególnymi wektorami w przestrzeni N- wymiarowej oznaczono d*ij = d(xi, xj), a w przestrzeni M-wymiarowej dij = d(yi,yj). Do okre lenia odległo ci mi dzy wektorami mo na zastosowa dowoln metryk , w szczególno ci euklidesow . Zadanie odwzorowania nieliniowego Sammona polega na takim doborze wektorów y, aby zminimalizowa funkcj bł du E zdefiniowan w postaci
E=
[
1 n * d ij − d ij c i< j
]
2
/ d ij* (8. 33)
przy czym:
c=
n i< j
d ij =
M k =1
[y
d ij* (8. 34)
ik
− y jk
]
2
(8. 35)
w której yij oznacza j-t składow wektora yi. W minimalizacji funkcji bł du (8.33) Sammon zastosował metod optymalizacyjn Newtona, uproszczon do postaci
y pq (k + 1) = y pq (k ) − η∆ pq (k ) (8. 36) w której
Sieci neuronowe w uj ciu algorytmicznym
181
∆ pq (k ) =
∂E ∂y pq
(8. 37)
∂2E ∂y 2pq
reprezentuje iloraz odpowiedniej składowej gradientu i diagonalnego składnika hesjanu, okre lone w k-tej iteracji. Współczynnik η jest odpowiednikiem stałej uczenia przyjmowanej z przedziału [0,3, 0,4]. Przy definicji funkcji bł du w postaci (8.33) odpowiednie składowe gradientu i hesjanu s dane wzorami:
∂E 2 =− ∂y pq c 2 ∂2E =− 2 c ∂y pq
n
1 * j =1, j ≠ p d pj d pj
n
d *pj − d pj
j =1, j ≠ p
d pj d *pj
(d
* pj
)
− d pj −
(y
[y
pq
]
− y jq (8. 38)
− y jq )
2
pq
d pj
1+
d *pj − d pj d pj
(8. 39)
Przykład odwzorowania zbioru danych reprezentuj cych 75 punktów rozło onych losowo według 5 ró nych rozkładów gaussowskich w przestrzeni 4-wymiarowej w przestrze 2-wymiarow [126] przedstawiono na rys. 8.13. Odpowiednie zbiory punktów nale cych do poszczególnych rozkładów tworz klastery w przestrzeni 2wymiarowej, zachowuj c najwa niejsze cechy oryginalnego zbioru danych.
Równanie 8.13 Ilustracja odwzorowania Sammona danych z przestrzeni 4-wymiarowej w przestrze 2-wymiarow
8.5. Przykłady zastosowa sieci samoorganizuj cych si Podstawowym zastosowaniem sieci Kohonena jest kompresja danych, polegaj ca na tym, e du e grupy danych wej ciowych tworz cych klaster s reprezentowane przez jeden wektor wag neuronu zwyci zcy. Przy p danych podzielonych na P klasterów i reprezentacji ka dego klastera przez jeden z n neuronów uzyskuje si znaczne zmniejszenie ilo ci informacji, zwane kompresj . Jest to kompresja typu stratnego, której towarzyszy bł d kwantowania okre lony zale no ci (8.18).
8.5.1. Kompresja obrazów Typowym przykładem zastosowania sieci Kohonena jest kompresja obrazów, maj ca za zadanie zmniejszenie ilo ci informacji reprezentuj cej dany obraz, przy zachowaniu bł du odwzorowania na okre lonym poziomie (zapewnienie odpowiednio du ej warto ci współczynnika PSNR). Zało ono, e obraz o wymiarach Nx x Ny pikseli jest podzielony na równomierne ramki zawieraj ce nx x ny pikseli. Ka da ramka stanowi jeden wektor wej ciowy x zawieraj cy nx x ny składników, reprezentuj cych stopie szaro ci poszczególnych pikseli w ramce. Sie samoorganizuj ca si zawiera n neuronów, ka dy poł czony wagami synaptycznymi ze wszystkimi składnikami wektora wej ciowego x. Uczenie sieci przy zastosowaniu jednego z algorytmów samoorganizacji polega na takim doborze wag poszczególnych neuronów, aby zminimalizowa bł d kwantowania (8.18). W wyniku procesu uczenia nast puje
Sieci neuronowe w uj ciu algorytmicznym
182
taka organizacja sieci, przy której wektorowi x ka dej ramki odpowiada wektor wagi zwyci zcy. Przy podobnym ukształtowaniu składników wektora x ró nych ramek, b dzie zwyci a ten sam neuron albo grupa neuronów o podobnych wektorach wagowych. Przy kolejnej prezentacji ramek ustala si numery neuronu zwyci zcy, np. l, l, 3, 80 itd. Numery neuronów zwyci zców tworz ksi k kodow , a wagi tych neuronów reprezentuj u rednion warto odpowiadaj c poszczególnym składowym wektora x (stopie szaro ci pikseli tworz cych ramk ). Bior c pod uwag , e liczba neuronów n jest zwykle du o mniejsza od liczby ramek P, otrzymuje si zmniejszenie ilo ci informacji przypisanej danemu obrazowi. Współczynnik kompresji obrazu definiuje si tutaj w postaci [7]
Kr =
N r n x n yT N r log 2 n + nn x n y t
(8. 40)
przy czym nx i ny oznaczaj wymiary ramki w osi x i y, Nr - liczb ramek, n - liczb neuronów, a T i t - liczb bitów przyj tych w reprezentacji odpowiednio stopnia szaro ci pikseli i warto ci wag. Ten sposób post powania umo liwia uzyskanie współczynnika kompresji obrazów rz du nawet 16 przy współczynniku PSNR około 2627 dB. Na rysunku 8.14 przedstawiono wyniki uczenia sieci Kohonena dla obrazu o wymiarach 256 x 256 pikseli podzielonego na ramki 16-elementowe (4x4 piksele). Sie Kohonena zawierała 512 neuronów. Przy 8bitowej reprezentacji danych uzyskany stopie kompresji wynosi Kr = 8. Na rysunku 8.14b przedstawiono obraz odtworzony na podstawie wag neuronów zwyci aj cych przy prezentacji kolejnych ramek. Współczynnik PSNR dla obrazu odtworzonego równał si 26,2. Ró nice w jako ci obrazu oryginalnego (rys. 8.14a) i obrazu odtworzonego (rys. 8.14b) s do małe i trudno dostrzegalne wzrokowo.
Rysunek 8.14 Wynik kompresji obrazu za pomoc sieci Kohonena: a) obraz oryginalny; b) obraz odtworzony. Obraz był u yty w uczeniu sieci Wa n zalet sieci neuronowych, z cał wyrazisto ci uwidoczniaj c si przy kompresji obrazów, jest zdolno uogólniania sieci, a wi c mo liwo skompresowania (przyporz dkowania poszczególnym ramkom nowego obrazu numerów neuronów zwyci zców wytrenowanej wcze niej sieci) i zdekompresowania (przypisania odpowiednich wektorów wagowych zwyci zców poszczególnym ramkom). Jako odtworzonego obrazu, który nie podlegał wcze niej procesowi uczenia, nie odbiega zwykle od jako ci obrazu poddanego uczeniu pod warunkiem, e stopnie zró nicowania obu obrazów s podobne. Na rysunku 8.15a i b przedstawiono przykładowe obrazy poddane procesowi kompresji i dekompresji przy pomocy sieci Kohonena wytrenowanej przy zastosowaniu obrazu z rys. 8.14. Stopie zniekształcenia obrazu odtworzonego jest porównywalny z obrazem poddanym uczeniu (PSNR= 26,7).
Sieci neuronowe w uj ciu algorytmicznym
183
Rysunek 8.15 Wynik kompresji obrazu za pomoc sieci Kohonena: a) obraz oryginalny; b) obraz odtworzony. Obraz u yty tylko w fazie testowania
8.5.2. Zastosowanie sieci do wykrywania uszkodze Sieci samoorganizuj ce si s szeroko stosowane do wykrywania uszkodze ró nego typu urz dze . Wykorzystuje si przy tym ich zdolno do kompresji, czyli reprezentacji zbioru punktów za pomoc wektora wagowego jednego neuronu. Zbiór punktów pomiarowych urz dzenia, tworz cy jego charakterystyk w ró nych warunkach pracy, jest podawany jako wektor x (ka dy odpowiadaj cy okre lonym warunkom pracy) na wej cie sieci. W zale no ci od warunków pracy, rodzaju uszkodzonego elementu i stopnia uszkodzenia otrzymuje si ró ne charakterystyki tego samego urz dzenia. Zwykle okre lony typ uszkodzenia jest stowarzyszony ze specyficznym przebiegiem charakterystyki, wła ciwym tylko dla niego. Neuron wygrywaj cy konkurencj przy okre lonym typie charakterystyki reprezentuje zatem b d normalny stan pracy, b d okre lone uszkodzenie, umo liwiaj c tym samym jego lokalizacj . Typowy schemat do wykrywania uszkodze przedstawiono na rys. 8.16. Baz danych stanowi zbiór charakterystyk odpowiadaj cy ró nym stanom awaryjnym i stanowi normalnemu w okre lonych warunkach pracy, w których zwykle urz dzenie poddaje si ocenie. Podstawowym warunkiem wła ciwego funkcjonowania systemu jest wyst powanie zró nicowania charakterystyk przy ró nych stanach awaryjnych. Je li dwie ró ne awarie daj identyczny efekt, to ich rozró nienie b dzie niemo liwe. Przygotowanie odpowiedniej bazy danych, na podstawie której b dzie nast powa uczenie, a nast pnie faza odtworzeniow sieci (wła ciwe wykrywanie uszkodzenia), wymaga wykonania takich pomiarów, które jednoznacznie wska okre lony stan pracy urz dzenia. Nale y przy tym uwypukli te fragmenty charakterystyki, które ró ni je od siebie. W tym celu mo na dokonywa ró nych operacji i przekształce liniowych i nieliniowych na całej bazie danych. Tego typu rozwi zanie zostało zastosowane mi dzy innymi do wykrywania typowych uszkodze wyst puj cych w transformatorach elektroenergetycznych [105] na podstawie pomiarów charakterystyki admitancyjnej |y| = f(uin).
Sieci neuronowe w uj ciu algorytmicznym
184
Rysunek 8.16 Schemat układu sieci Kohonena do wykrywania uszkodze W pracy [110] pokazano przykład zastosowania sieci Kohonena do wykrywania uszkodze elementów aktywnego filtru elektrycznego RC na podstawie charakterystyki cz stotliwo ciowej dwu funkcji obwodu: transmitancji napi ciowej i admitancji wej ciowej. Sie nauczona odwzorowa tych charakterystyk w stanach idealnego zwarcia i rozwarcia mogła wła ciwie wskaza uszkodzenie przy połowicznym uszkodzeniu (np. warto rezystancji równa 10% warto ci znamionowej jest rozpoznawana jako zwarcie). Wła ciwo sieci Kohonena do pobudzania jednego neuronu odpowiedzialnego za cały klaster danych mo na wykorzysta do wykrywania uszkodzonego elementu z uwzgl dnieniem tolerancji pozostałych. Przykład takiego zastosowania przedstawiono w pracy [110]. Układ typu drabinkowego o kolejnych elementach oznaczonych w postaci admitancyjno-impedancyjnej (admitancji dla elementu poprzecznego Y0,Y2,Y4, Y6, Y8 i impedancja w przypadku elementu podłu nego Z1, Z3, Z5, Z7) została poddana pomiarom napi cia w punktach w złowych w ró nych stanach awaryjnych. Dzi ki zastosowaniu normalizacji napi zmierzonych
xj =
V j , a − V j ,n n j =1
(V
− V j ,n )
(8. 41)
2
j ,a
i wobec liniowo ci obwodu wystarczy w danych ucz cych uwzgl dni tylko jedn warto uszkodzonego elementu. Dla uwypuklenia ró nic charakterystyk zastosowano w uczeniu sygnały ró nicowe mi dzy stanem awaryjnym (Vj,a) a stanem normalnym (Vj,n) pracy, wst pnie odpowiednio przeskalowane przy zastosowaniu funkcji nieliniowej. Sie nauczona rozpoznawania okre lonego typu uszkodzenia w obwodzie dawała sobie doskonale rad przy uwzgl dnieniu tolerancji pozostałych, nie uszkodzonych elementów. Wykorzystywała przy tym swoj naturaln zdolno do wykrywania klasterów. Przykład wyst puj cej klasteryzacji danych testuj cych odpowiadaj cych uwzgl dnieniu 20% tolerancji elementów nie uszkodzonych w układzie drabinkowym o czterech ogniwach przedstawiono na rys. 8.17 [110], na którym zaznaczono klastery danych odpowiadaj ce awarii okre lonego elementu. Dane z przestrzeni 5- wymiarowej (5 w złów pomiarowych tworzy wektor x) zostały zrzutowane na 2 wymiary przy zastosowaniu przekształcenia Sammona. Klastery tworzone przez dane pomiarowe wynikaj z uwzgl dnienia tolerancji elementów nie uszkodzonych. Przy 10% tolerancji elementów nie uszkodzonych i 50% zmianie warto ci elementów uszkodzonych poło enie pewnych punktów nale cych do ró nych klasterów (uszkodze ró nych elementów) jest bliskie sobie, co mo e by ródłem bł du klasyfikacji. Przy 200 losowych danych testuj cych tylko l wskazanie było niewła ciwe, co dobrze wiadczy o mo liwo ciach klasyfikacyjnych sieci Kohonena.
Rysunek 8.17 Rozkład danych testuj cych sieci do wykrywania uszkodze elementów układu drabinkowego
Sieci neuronowe w uj ciu algorytmicznym
185
8.5.3. Prognozowanie obci e systemu elektroenergetycznego W tym punkcie przedstawiono szczegóły rozwi zania dotycz cego prognozowania obci e godzinnych systemu elektroenergetycznego z. wyprzedzeniem 24-godzinnym. Ma ono cisły zwi zek z rozpoznawaniem wzorców, przedstawionym w punkcie poprzednim. Zadaniem sieci jest nauczenie si rozpoznawania ró nych charakterystyk obci e godzinnych, odpowiadaj cych ró nym dniom roku. Jak pokazano w rozdz. 4, ka dy dzie roku ma swoj specyfik obci enia godzinnego, która w niewielkim tylko stopniu zmienia si z roku na rok. Pewne dni nale ce zwykle do tej samej pory roku i reprezentuj ce ten sam typ dnia ró ni si minimalnie. Tworz one zatem klastery, które mog by reprezentowane przez wagi jednego neuronu. Aby uniezale ni si od pewnego trendu ogólnego, wynikaj cego z ogólnego rozwoju kraju z roku na rok, pod uwag bierze si jedynie cz zmienn po odj ciu warto ci redniej. Przy oznaczeniu warto ci redniej obci enia systemu w dniu j-tym przez Pm(j), a jego wariancji przez σ(j) definiuje si tak zwany profil godzinny dnia j-tego w postaci
p( j, h ) =
P( j , h ) − Pm ( j ) (8. 42) σ ( j)
dla h = l, 2, . . . , 24, przy czym P(j, h) oznacza rzeczywisty pobór mocy w systemie elektroenergetycznym o godzinie h w dniu j-tym. Warto ci p(j, h) tworz wektory obci e profilowych dnia pj =[p(j,1),p(j, 2), . . . ,p(j, 24)]. Je li s dost pne obci enia systemu co pół godziny, to wektor 24-elementowy mo e by zast piony wektorem 48-elementowym. Co wi cej, wygodnie jest za punkt startu w liczeniu czasu wybra godzin o najstabilniejszym obci eniu w skali całego roku. Tak godzin jest zwykle godzina nocna (mi dzy 300 a 500 z rana). Wtedy składnik p(j, 1) odpowiada w rzeczywisto ci obci eniu o tej godzinie, p(j, 2) - godzinie nast pnej itd. Dla ka dego dnia roku wyst puj cego w bazie danych tworzy si wektor profilowy według wzoru (8.42). Baza danych powinna obejmowa kilka ostatnich lat w celu zmniejszenia wpływu obci e przypadkowych. Zbiór wektorów profilowych jest podawany na wej cie sieci Kohonena zawieraj cej n neuronów. Proces samoorganizacji sieci powoduje samoczynn klasteryzacj danych i przypisanie ka demu klasterowi jednego neuronu sieci. Jest to neuron zwyci zca o wagach najlepiej dopasowanych do u rednionych wag wektorów profilowych tworz cych dany klaster. Reprezentuje on okre lon klas . Charakterystyczne jest, e s siednie wektory maj zbli one charakterystyki profilowe. Podobie stwo wag neuronów poło onych blisko siebie jest zrozumiałe, bior c pod uwag mechanizm s siedztwa w algorytmach samoorganizacji. Oznacza to, e ten sam dzie roku w ró nych latach, przy drobnych ró nicach w obci eniach godzinnych, mo e pobudza ró ne neurony poło one blisko siebie i tworz ce rodzaj klasterów, grupuj cych podobne sobie klasy. Dla ułatwienia dalszej klasyfikacji zbiór neuronów mo na podzieli na kilkana cie obszarów, w skład których wchodz neurony o minimalnych ró nicach wagowych. W ten sposób otrzymuje si map rozkładu klas obci e , przedstawion na rys. 8.18. Charakterystyczn cech tego rozkładu jest wyra ne ukształtowanie si czterech obszarów: jednego odpowiadaj cego dniom roboczym i trzech odpowiadaj cych dniom wolnym od pracy (soboty i niedziele oraz wi ta).
Rysunek 8.18 Mapa rozkładu obci e systemu elektroenergetycznego uwzgl dniaj ca ró ne pory roku i typy dni
Sieci neuronowe w uj ciu algorytmicznym
186
Znajomo tabeli rozkładów umo liwia stosunkowo łatwe przewidzenie obci enia godzinnego dowolnego dnia roku. W tym celu tworzy si tabel przynale no ci ka dego dnia roku do okre lonej klasy, z zaznaczeniem liczby wyst pie danego typu dnia w okre lonej klasie. Podano tutaj przykładow tabel dotycz c czwartków w styczniu na przestrzeni ostatnich 4 lat Tabela 8.1 Miesi c Stycze Stycze Stycze Stycze Stycze
Rodzaj dnia Czwartek Czwartek Czwartek Czwartek Czwartek
Klasa 51 61 71 72 81
Liczba wyst pie 3 6 4 3 1
Wszystkie klasy przynale no ci s siaduj ze sob i maj zbli one wektory profilowe. Aby wyznaczy przewidywane obci enie aktualnego dnia (np. czwartek) w danym miesi cu (np. w styczniu), przyjmuje si u rednione warto ci wag neuronów tworz cych klasy, do których przynale ał w przeszło ci dany typ dnia. Je li liczb wyst pie i-tej klasy odpowiadaj c j-temu dniu oznaczy si w postaci kji, a odpowiednie wektory wagowe klasy przez Wi, to przewidywany wektor profilowy dnia j-tego oblicza si według wzoru n
pˆ =
i =1 n
k jiWi
i =1
(8. 43)
k ji
w którym kji = 0, je li dana klasa nigdy nie wyst piła w klasyfikacji. Po okre leniu wektora profilowego rzeczywiste obci enie odpowiadaj ce poszczególnym godzinom danego dnia oblicza si na podstawie wzoru (8.42) w postaci
Pˆ ( j ) = σ ( j ) pˆ j + p m ( j ) (8. 44) Taka metoda predykcji obci e systemu elektroenergetycznego umo liwia znaczne zmniejszenie bł du redniego MAPE, z warto ci ok. 2,5% przy klasycznym prognozowaniu liniowym do warto ci ok. 1,5%, niezale nie od typu dnia i miesi ca [5].
Sieci neuronowe w uj ciu algorytmicznym
9.
187
Podstawy matematyczne systemów logiki rozmytej
Omawiane dotychczas sieci neuronowe w procesie zarówno uczenia, jak i testowania wykorzystywały jedynie informacje numeryczne, wi ce w sposób cisły i jednoznaczny dane wej ciowe systemu z jego odpowiedzi . Drugim typem informacji, który jest niezrozumiały dla klasycznych sieci neuronowych, to informacja lingwistyczna, operuj ca poj ciami opisowymi, nie zwi zanymi ci le z warto ciami numerycznymi. Przykładem takim s deskryptory „mały", „du y", „bardzo mały", „bardzo du y", które s zrozumiałe dla człowieka, ale trudne do zaadoptowania w postaci numerycznej. Co wi cej, ka de z tych okre le lingwistycznych, wobec niezbyt precyzyjnie zdefiniowanych ró nic mi dzy nimi, stanowi poj cie nieostre, rozmyte (fuzzy). Przykładowo, to co dla jednego człowieka jest du e, w ocenie drugiego mo e by bardzo du e, natomiast dla trzeciego wprost przeciwnie -małe. Wielko ciom lingwistycznym mo na przyporz dkowa okre lone zmienne numeryczne, dla których mo na z kolei wyznaczy odpowiednie funkcje opisuj ce i zakres zmienno ci parametrów z nimi zwi zanych. W ten sposób mo na stworzy reguły okre laj ce w sposób cisły systemy tego typu, wytworzy metody ich adaptacji (uczenia) oraz testowania. Struktura układowa odpowiadaj ca tym regułom jest podobna do sieci neuronowych (struktura warstwowa, wiele neuronów w warstwie, równoległe przetwarzanie informacji), a sposób uczenia i testowania równie oparty na metodach stosowanych w sieciach neuronowych. Sieci podlegaj ce uczeniu i wykorzystuj ce przy tym poj cia i zale no ci logiki rozmytej s nazywane sieciami neuronowymi rozmytymi (neurofuzzy). W procesie uczenia korzystaj one zarówno z informacji lingwistycznych, jak i numerycznych, przy czym wykorzystuje si ró ne sposoby poł cze obu typów informacji. Najcz ciej stosowanym podej ciem jest wykorzystanie informacji lingwistycznej na etapie wst pnego doboru parametrów, opieraj c wła ciwe uczenie na informacji numerycznej.
9.1. Podstawowe poj cia systemów rozmytych 9.1.1. Wprowadzenie Podstawowym poj ciem teorii zbiorów, obok samego zbioru U, jest relacja przynale no ci elementu do tego zbioru (u ∈ U). W odró nieniu od zbiorów o nierozmytej przynale no ci, w zbiorach rozmytych nie ma ostrej granicy mi dzy elementami, które do danego zbioru nale , a tymi, które nale do innych zbiorów. W takim przypadku okre la si raczej stopie przynale no ci elementu do zbioru, czyli liczb z przedziału [0, 1]. Ka dej zmiennej u mo na przyporz dkowa inn warto funkcji przynale no ci do zbioru. W dalszym ci gu rozwa a b dzie si zakłada , e zmienne u s liczbami rzeczywistymi, to znaczy u ∈ Rn. Zbiór rozmyty F nale cy do U b dzie scharakteryzowany przez funkcj przynale no ci µ F (u), przyjmuj c warto z przedziału [0 , 1] i okre laj c stopie przynale no ci zmiennej do zbioru rozmytego F. Zbiór rozmyty mo e wi c by scharakteryzowany jako zbiór uporz dkowanych par (u, µ F(u)). Warunek µF(U) = l oznacza pełn przynale no u do zbioru F, to jest u ∈ F. Warto µ F(U) = 0 oznacza brak tej przynale no ci, u ∉ F. Warto ci po rednie µ F(U) wyra aj przynale no cz ciow u do zbioru F. Na rysunku 9.la przedstawiono funkcje przynale no ci trzech zbiorów rozmytych, okre laj cych wzrost człowieka jako „niski", „ redni" i „wysoki". Na osi poziomej oznaczono wzrost, na osi pionowej warto ci funkcji przynale no ci odpowiadaj ce poszczególnym zbiorom rozmytym. Przy wzro cie 175 cm zbiór „ redni" jest scharakteryzowany warto ci funkcji przynale no ci równ 0,5, podobnie jak zbiór „wysoki". Warto funkcji µ F odpowiadaj ca zbiorowi rozmytemu „niski" , jest w tym punkcie równa zeru. W odró nieniu od algebry Boole'a, która jednoznacznie klasyfikuje dane wej ciowe przyporz dkowuj c im w sposób nierozmyty odpowiedni zbiór (przykład takiej klasyfikacji przedstawia rys. 9.1b), w przypadku algebry rozmytej tej samej warto ci zmiennej wej ciowej mo na przyporz dkowa ró ne zbiory z okre lon warto ci funkcji przynale no ci do danego zbioru.
Sieci neuronowe w uj ciu algorytmicznym
188
Rysunek 9.1 Przykładowy rozkład funkcji przynale no ci: a) system rozmyty; b) system przynale no ci ostrej Na rysunku 9.1 przedstawiono funkcje przynale no ci w postaci graficznej. Mo na je przedstawi równie w postaci zapisu macierzowego. W przypadku systemu rozmytego o dwu wej ciach u1, u2 i jednym wyj ciu v, opisanego trzema regułami rozmytymi, wszystkie informacje dotycz ce systemu mog by zawarte w dwóch wektorach opisuj cych zmienne wej ciowe i jednym wektorze wyj ciowym oraz trzech macierzach podaj cych warto ci funkcji przynale no ci, z których dwie dotycz zmiennych wej ciowych i jedna - zmiennej wyj ciowej. Przykładowo, je li dane liczbowe dotycz ce zmiennych wej ciowych u1 i u2 oraz wyj ciowej v s zdefiniowane w postaci wektorów: u1 = [0 0,2 0,4 0,6 0,8 1,0] u2 = [5 10 15 20 25 30 35 40] v = [-3 –2 –1 0 1 2 3] to, przy zało eniu istnienia 3 okre lonych reguł rozmytych wnioskowania, macierze funkcji przynale no ci tych wektorów mog by podane w postaci:
0
0
0,4 0,8 1 1
A1 = 1 1 0,6 0,2 0 0 0 0,5 1 0,5 0 0 0
0,1 0,3 0,6 0,9
1
1
1
A2 = 0 0,4 0,8 1 1 0,8 0,4 0 1 1 0,8 0,5 0,2 0 0 0 0 0,3 0,6 0,9
1
1
1
AV = 0 0,4 0,8 1 0,8 0,4 0 1 1 0,7 0,3 0,1 0 0 Ka dy wiersz macierzy odpowiada jednej regule logicznej. Liczba kolumn macierzy odpowiada wymiarowi odpowiedniego wektora wej ciowego lub wyj ciowego. Opis macierzowy funkcji rozmytych umo liwia uproszczenie organizacji oblicze numerycznych i sprowadzenie ich do operacji algebraicznych na macierzach.
9.1.2. Podstawowe definicje Centrum zbioru rozmytego jest punkt u ∈ F, w którym warto funkcji przynale no ci µ F(U) przyjmuje warto jednostkow . Taki zbiór jest wówczas uwa any za normalny. Zbiór elementów u, dla których warto funkcji przynale no ci µ F(U) > 0, jest nazywany no nikiem zbioru rozmytego F. Przeci cie dwu zbiorów rozmytych F1 i F2 nale cych do U, oznaczane F1 ∩ F2, jest równie zbiorem rozmytym o funkcji przynale no ci okre lonej dla wszystkich warto ci u ∈ U w postaci
µ F ∩ F (u ) = min{µ F (u ), µ F (u )} = µ F (u ) ∩ µ F (u ) (9. 1) 1
2
1
2
1
2
Sieci neuronowe w uj ciu algorytmicznym
189
Rysunek 9.2 Interpretacja graficzna operacji: a) przeci cia; b) sumy; c) uzupełnienia na zbiorach rozmytych Suma dwu zbiorów rozmytych F1 i F2 nale cych do U, oznaczana
µ F ∪ µ F (u ) , 1
2
jest zbiorem
rozmytym o funkcji przynale no ci okre lonej dla wszystkich warto ci u ∈ U w postaci µ F1 ∩ F2 (u ) = max µ F1 (u ), µ F2 (u ) = µ F1 (u ) ∪ µ F2 (u ) (9.2)
{
}
Dopełnieniem zbioru rozmytego F ∈ U jest zbiór rozmyty o funkcji przynale no ci zdefiniowanej w postaci
µ F (u ) = 1 − µ F (u ) (9. 3) Na rysunku 9.2 przedstawiono interpretacje graficzne zdefiniowanych operacji na zbiorach rozmytych. Cz zakreskowana oznacza interpretacj graficzn odpowiedniej relacji logicznej przeci cia, sumy i uzupełnienia. Zmienna lingwistyczna, podstawowy element informacji lingwistycznej, mo e przyjmowa warto w postaci okre lonego słowa (np. „niski", „wysoki", „ redni") lub warto ci numerycznej odpowiadaj cej danemu słowu (np. wzrost redni mo e by rozumiany jako zmienna u z przedziału [160, 175] cm). Zmienna lingwistyczna jest cz sto kojarzona z okre leniem stopnia intensywno ci przez dodanie okre lenia „bardzo" lub „troch " . Ich znaczenie jako intensyfikatora jest przenoszone na funkcj przynale no ci w nast puj cy sposób [142]:
µ bardzo F (u ) = [µ F (u )]2
(9. 2)
µ troche F (u ) = [µ F (u )]0,5
(9. 5)
Intensyfikator „bardzo" jest kojarzony z podniesieniem do kwadratu funkcji przynale no ci zbioru podstawowego µ F(u). Jest to tzw. operacja jedno-argumentowa koncentracji. Z kolei intensyfikator „troch " jest skojarzony z pierwiastkowaniem i jest zwany operacj jednoargumentow rozpraszania.
9.2. Zasady wnioskowania w zbiorach rozmytych Podstawow cech zbiorów rozmytych, decyduj c o ich znaczeniu praktycznym, jest wnioskowanie. Ogólny zapis wnioskowania ma posta je li przesłanka logiczna to konkluzja Przykładowo, je li F i G s podzbiorami zbiorów rozmytych U i V, to zapis je li
x ∈ F to y ∈ G (9. 6)
oznacza, e je li zmienna x jest elementem zbioru rozmytego F, to zmienna y nale y do zbioru rozmytego G. Mo na to zapisa w skróconej formie implikacji F G. W przypadku gdy x jest n- wymiarowym wektorem, przesłank stanowi iloczyn logiczny składowych tego wektora, a zasad wnioskowania mo na rozumie nast puj co: je li
x1 ∈ F1(l ) ∧ x 2 ∈ F2(l ) ∧ ... ∧ x n ∈ Fn(l ) to y ∈ G (l ) (9. 7)
w której ∧ oznacza iloczyn logiczny, a górny wska nik l l-t reguł wnioskowania logicznego dla danego zbioru rozmytego. Przy wi kszej liczbie wyj układu, na przykład M, liczba obowi zuj cych zasad wnioskowania odpowiednio wydłu y si , gdy dla ka dego wyj cia obowi zuje relacja analogicznego typu.
Sieci neuronowe w uj ciu algorytmicznym
190
Reguła wnioskowania mo e by niekompletna, to znaczy, nie musi zawiera wszystkich składowych wektora x. Zapis je li
x1 ∈ F1(l ) ∧ x 2 ∈ F2(l ) ∧ ... ∧ x m ∈ Fm(l ) to y ∈ G (l ) (9. 8)
przy m < n jest równowa ny zale no ci (9.7) przy nast puj cym uzupełnieniu powy szej relacji:
jesli x1 ∈ F1(l ) ∧ ... ∧ x m ∈ Fm(l ) ∧
∧ x m +1 ∈ C (l ) ∧ ... ∧ x n ∈ C (l ) to y ∈ G (l )
(9. 9)
przy czym C(l) jest zbiorem rozmytym o µ j(l) = 1 dla wszystkich warto ci l. Je li w regule wnioskowania obok iloczynu logicznego ∧ wyst puje spójnik sumy logicznej or, to tak reguł mo na zapisa w postaci szeregu niekompletnych reguł zawieraj cych jedynie spójniki ∧. Na przykład reguła wnioskowania o postaci
jesli x1 ∈ F1(l ) ∧ ... ∧ x m ∈ Fm(l ) or x m+1 ∈ Fm(l+)1 ∧ ... ∧ x n ∈ Fn(l ) to y ∈ G (l )
(9. 10)
mo e by zapisana w postaci 2 reguł nie zawieraj cych ł cznika or:
jesli x1 ∈ F1(l ) ∧ ... ∧ x m ∈ Fm(l ) to y ∈ G (l )
jesli x m +1 ∈ Fm(l+)1 ∧ ... ∧ x n ∈ Fn(l ) to y ∈ G (l ) Istotnym problemem jest sposób tworzenia samych reguł wnioskowania. Jednym z rozwi za jest zastosowanie eksperta, który na podstawie zdobytego wcze niej do wiadczenia okre li sposób post powania dla poszczególnych przypadków, które mog si zdarzy w trakcie procesu. Zadaniem eksperta b dzie wtedy konstrukcja zarówno samej reguły wnioskowania, jak i doboru funkcji przynale no ci dla ka dego przypadku. Innym rozwi zaniem jest konstrukcja reguł wnioskowania na podstawie szeregu wykonanych bada eksperymentalnych. W takim przypadku podstaw modelu podejmowania decyzji s wyniki numeryczne eksperymentów, okre laj ce zarówno reguły wnioskowania, jak i funkcje przynale no ci.
9.3. Interpretacja reguł wnioskowania w systemie wielowymiarowym Interpretacja matematyczna implikacji F1 F2 jednoznacznie zrozumiała dla systemu jednowymiarowego o jednym wej ciu i jednym wyj ciu mo e by uogólniona na przypadek wielowymiarowy (n wej , jedno wyj cie). Istnieje wiele ró nych interpretacji, tutaj ograniczono si jedynie do najcz ciej u ywanych w praktyce in ynierskiej. Je li zbiory l-tej reguły rozmytej dotycz cej poszczególnych zmiennych x1 , x 2 ,..., x n , y oznaczy si w postaci FJ , której
F1(l ) , F2(l ) ,..., Fn(l ) , G (l ) , to relacja (9.7) mo e by zinterpretowana jako implikacja A
A = F1(l ) × F2(l ) × ... × Fn(l ) , B = G (l ) . Funkcja przynale no ci opisuj ca tak
przybiera ró ne postacie, z których najbardziej znane s [22, 142]: • interpretacja w postaci wspólnej cz ci zbiorów
µ A→ B ( x, y ) = min[µ A ( x ), µ B ( y )] (9. 11) •
interpretacja iloczynowa
µ A→ B ( x, y ) = µ A ( x )µ B ( y ) •
(9. 12)
interpretacja arytmetyczna
µ A→ B ( x, y ) = min[1,1 − µ A ( x ) + µ B ( y )] (9. 13) •
interpretacja minimaksowa
µ A→ B ( x, y ) = max{min[µ A ( x ), µ B ( y )],1 − µ A ( x )} (9. 14)
implikacj
B, w mo e
Sieci neuronowe w uj ciu algorytmicznym •
191
interpretacja boolowska
µ A→ B ( x, y ) = max{1 − µ A ( x ), µ B ( y )} (9. 15) Funkcja o przynale no ci µ A(x) dotycz ca wektora x mo e by minimalnego zbioru wspólnego dotycz cego zmiennych xi
interpretowana zarówno w postaci
µ A (x ) = min{µ F (x1 ), µ F ( x 2 ),..., µ F (x n )} (9. 16) 1
n
2
jak i w postaci iloczynowej, w której
µ A ( x ) = µ F ( x1 ), µ F ( x 2 ),..., µ F ( x n ) (9. 17) 1
2
n
Wszystkie wymienione reguły interpretacji maj odbicie w dziedzinie zbiorów, a wybór jednej z nich zale y od specyfiki problemu podlegaj cego rozwi zaniu.
9.4. Układy logiki rozmytej w rodowisku pomiarowym Omówione wcze niej zasady wnioskowania w systemach rozmytych zakładaj istnienie zmiennych i reguł rozmytych. W przypadku zastosowa technicznych wielko ciami wej ciowymi i wyj ciowymi s zwykle warto ci zmierzone, przyporz dkowuj ce w sposób nierozmyty wielko ciom wej ciowym odpowiednie wielko ci wyj ciowe. W celu umo liwienia współdziałania tych dwu rodzajów zbiorów wprowadza si system rozmyty z tak zwanym fuzyfikatorem na wej ciu i defuzyfikatorem na wyj ciu [142]. Schemat takiego systemu przedstawiono na rys. 9.3. Układ fuzyfikatora przekształca zbiór danych wej ciowych w zbiór rozmyty, natomiast zadaniem defuzyfikatora jest działanie odwrotne, to jest podj cie jednoznacznej decyzji dotycz cej warto ci zmiennej wyj ciowej na podstawie wielu wnioskowa rozmytych, dostarczanych przez człon wykonawczy układu rozmytego. Sygnał wyj ciowy członu wykonawczego mo e mie posta M zbiorów rozmytych zapisanych w postaci odpowiednich reguł wnioskowania.
9.4.1. Fuzyfikator Fuzyfikator przekształca n-wymiarowy wektor wej ciowy
x = [x1 , x 2 ,..., x n ] w zbiór rozmyty F, T
scharakteryzowany funkcj przynale no ci µ F(x). Jakkolwiek systemy rozmyte mog si charakteryzowa dowolnymi kształtami funkcji przynale no ci, z punktu widzenia praktycznego najwi ksz popularno uzyskały funkcje gaussowskie oraz funkcje trójk tne i trapezoidalne.
Rysunek 9.3 Schemat układu rozmytego z fuzyfikatorem i defuzyfikatorem
Sieci neuronowe w uj ciu algorytmicznym
192
Rysunek 9.4 Ilustracja wpływu parametrów funkcji gaussowskiej na jej kształt: a) wpływ poło enia centrum c przy (r = 0,5; b) wpływ warto ci a przy stałej warto ci c = l Ogólny zapis funkcji gaussowskiej dla zmiennej x o centrum w c i wariancji σ2 odpowiadaj cej zbiorowi F ma posta
µ F ( x ) = exp −
x−c
σ
2
(9. 18)
Na rysunku 9.4 przedstawiono kształt typowych funkcji gaussowskich przy ró nych warto ciach parametrów, przy czym rys. 9.4a przedstawia wpływ poło enia centrum c przy nie zmienionej warto ci σ, a rys. 9.4b -wpływ warto ci σ przy ustalonej warto ci c. Parametr c oznacza centrum zbioru rozmytego, a jego zmiana odpowiada przesuni ciu funkcji przynale no na osi poziomej.
Rysunek 9.5 Wykres krzywej dzwonowej przy ró nych warto ciach parametru b Parametr σ, zwany niekiedy szeroko ci , odpowiada za kształt funkcji. Im mniejsza jest jego warto , tym funkcja jest bardziej stroma. Pewn modyfikacj funkcji gaussowskiej jest krzywa dzwonowa, opisana zale no ci
Sieci neuronowe w uj ciu algorytmicznym
193
µ F ( x ) = exp −
x−c
b
2
(9. 19)
σ
operuj ca trzema parametrami: c, σ oraz b. Warto parametru b wpływa w istotny sposób na kształt krzywej, co przedstawiono na rys. 9.5. Warto b = l odpowiada standardowej funkcji gaussowskiej. Niekiedy krzyw dzwonow opisuje si w postaci
µ F (x ) =
1 1+
x−c
2
b
(9. 20)
σ
której przebieg jest zbli ony do funkcji opisanej wzorem (9.19). Innym, obok gausssowskiej, typem funkcji przynale no ci, cz sto stosowanym w praktyce, jest symetryczna funkcja trójk tna, któr mo na opisa w postaci
µ F (x ) = 1 − 0
x−c d
dla x ∈ [c − d , c + d ] (9. 21) poza tym przedzialem
Interpretacj punktu centralnego c oraz szeroko ci d dla funkcji trójk tnej przedstawiono jest na rys. 9.6. Funkcja ta jest równie unormowana, przyjmuj c warto jednostkow w punkcie centralnym c. Uogólnieniem funkcji trójk tnej jest trapezoidalna funkcja przynale no ci, której kształt i oznaczenia parametrów przedstawiono na rys. 9.7. Definiuj c zmienne
y =c−
t 1 t 1 − , z = c + + , przy czym s 2 s 2 s
oznacza warto nachylenia, trapezoidalna funkcj przynale no ci opisuje si zale no ci
Rysunek 9.6 Wykres trójk tnej funkcji przynale no ci
Rysunek 9.7 Wykres trapezoidalnej funkcji przynale no ci
Sieci neuronowe w uj ciu algorytmicznym
194
dla x > z lubx < y t t 1 dla c − ≤ x ≤ c + 2 2 µ F ( xi ) = (9. 22) t s ( z − x ) dla c + ≤ x ≤ z 2 t s ( x − y ) dla y ≤ x ≤ c − 2 0
Przyj cie warto ci t = 0 redukuje funkcj trapezoidaln do postaci trójk tnej.
9.4.2. Defuzyfikator Defuzyfikator dokonuje przekształcenia zbioru rozmytego w ci le zdeterminowany punkt rozwi zania y. Tutaj ograniczymy si jedynie do dwu, najcz ciej u ywanych rodzajów funkcji defuzyfikuj cej. Pierwszy z nich to defuzyfikator według rednich warto ci centrów ( rodka ci ko ci) M
y=
( )
c L µ F ( l ) x (l )
i =1 M
(9. 23)
µ F ( ) ( xl ) l
i =1
w którym cl oznacza centrum zbioru rozmytego G(l) zmiennej wyj ciowej, to znaczy punkt zbioru V, dla którego µ G ( l ) osi ga maksimum, a µ F (l ) - funkcj przynale no ci zbiorów rozmytych F(l) odpowiadaj cych danemu wektorowi wej ciowemu. Drugim typem defuzyfikatora, uwzgl dniaj cym kształt funkcji przynale no ci
µ G( ) ( y ) , l
jest
defuzyfikator wa ony rednich warto ci centrów M
y=
cl
i =1 M
i =1
w którym znaczenie cl oraz
µF( ) l
µ F ( ) ( xl ) l
σ (l )
µ F ( ) ( xl ) σ (l )
(9. 24)
l
jest identyczne jak poprzednio, natomiast parametr σ(1) zwi zany ze zbiorem
wyj ciowym G(l) wpływa na kształt funkcji przynale no ci. Im mniejsza jest jego warto , tym funkcja ta jest w sza. W przypadku funkcji Gaussa okre lonej zale no ci (9.18) jest on równy σ(1). Zastosowanie zmodyfikowanego defuzyfikatora wa onego umo liwia uwzgl dnienie silnego wpływu kształtu krzywej na ko cowy wynik okre laj cy warto y. Korzystaj c z wprowadzonych opisów defuzyfikatora dowoln funkcj ci gł f(x) o n-elementowym wektorze x mo na opisa przy wykorzystaniu poj logiki rozmytej. Stosuj c defuzyfikator według warto ci rednich centrów (9.23) i interpretacj iloczynow (9.17) wektorowej funkcji przynale no ci, otrzymuje si N
M
f (x ) =
l =1
Cl
M i =1
∏ µ (x ) i =1
Fi( l )
i
N
∏ µ (x ) i =1
Fi( l )
(9. 25)
i
przy czym l = l, 2, . . . , M oznacza kolejn reguł logiczn (mo e by ona uto samiona z kolejnymi danymi wej ciowymi), a N jest wymiarem wektora wej ciowego. Parametr cl oznacza punkt centralny zbioru rozmytego odpowiadaj cego zmiennej wyj ciowej, to jest tak warto y = cl, dla której µ G (l ) ( y ) = 1 . Podobnie zastosowanie defuzyfikatora wa onego rednich warto ci centrów umo liwia uzyskanie opisu funkcji f(x) w postaci
Sieci neuronowe w uj ciu algorytmicznym
195
N
M
f (x ) =
l =1
Cl
M i =1
∏ µ (x ) i =1
Fi( l )
N
∏ µ (x ) Fi( l )
i =1
/ σ (l )
i
i
(9. 26)
/σ
w której σ(1) jest parametrem charakteryzuj cym zmienn wnioskowania.
(l )
wyj ciow , odpowiadaj cym l-tej regule
Jako przykład rozwa ono zbiór rozmyty dwu zmiennych
µ F (x1 ), µ F ( x 2 ), µ G ( y ) przedstawionych na rys. 9.8. Zało 1
2
(1)
(2 )
(1)
x = [x1 , x 2 ] o funkcjach przynale no ci T
ono, e zmienne wej ciowe x1 i x2 przyjmuj 2
(2 )
ró ne warto ci x1 , x1 oraz x 2 , x 2 , a odpowiadaj ca im zmienna wyj ciowa y – warto ci y(1) oraz y(2) jak to przedstawiono na rys. 9.8. Do obliczenia wektorowej warto ci funkcji przynale no ci zastosowano interpretacj iloczynow . (1)
Dla danych wektorów wej ciowych x = warto ci funkcji przynale no ci w postaci: • dla pierwszego wektora wej ciowego
{x ( ) , x ( ) } 1 1
1 2
T
oraz
{
}
x (2 ) = x1(2 ) , x 2(2 ) okre lono odpowiednie T
µ F (x (1) ) = µ F (x1(1) )µ F (x 2(1) ) = 0,8 1
2
Rysunek 9.8 Funkcje przynale no ci zmiennych u ytych w przykładzie: a) x1; b) x2 c) y •
dla drugiego wektora wej ciowego
µ F (x (2 ) ) = µ F (x1(2 ) )µ F (x 2(2 ) ) = 0,63 1
2
Z wykresu na rys. 9.8c odczytane warto ci funkcji µ G odpowiadaj ce y(1) oraz y(2) wynosz odpowiednio 0,9 i 0,6. Nale one do zakresu działania reguły oznaczonej jako S2 o centrum c1 (zmienna y(1)) oraz reguły S1 o centrum c2 (zmienna y(2)). Wynik ten mo na odnie i zapisa w kategoriach wnioskowania logicznego rozmytego, przedstawionych w punkcie poprzednim: je li x{{) £ S2 je li je li
x1(1) ∈ S 2 ∧ x 2(1) ∈ S 3 to y (1) ∈ S (2 )
x1(2 ) ∈ S 2 ∧ x 2(2 ) ∈ S 3 to y (2 ) ∈ S (1)
co oznacza, e w pierwszej regule wnioskowania na µ F(x(1)) b dzie si składa warto funkcji przynale no ci dla zmiennej x1(1) odpowiadaj ca zakresowi S2 i dla zmiennej x2(1) odpowiadaj ca zakresowi S3. Podobnie w przypadku drugim na µ F(x(2)) b dzie si składa warto funkcji przynale no ci dla zmiennej x1(2)odpowiadaj ca
Sieci neuronowe w uj ciu algorytmicznym
196
zakresowi S2 i dla zmiennej x2(2) odpowiadaj ca zakresowi S1. Odpowiednie wyniki zostały wcze niej oznaczone jako µ F(x(1)) oraz µ F(x(2)). St d stosuj c defuzyfikator według rednich warto ci centrów otrzymuje si
y=
0,8c1 + 0,63c 2 0,8 + 0,63
Przy warto ci c1 = l i c2 = 2 otrzymuje si y = 1,44. Powy sza zale no w sposób jednoznaczny okre la odpowied systemu rozmytego y na wymuszenie w postaci dwu wektorów wej ciowych x(1) oraz x(2). W przypadku stosowania defuzyfikatora o zmodyfikowanych rednich warto ciach centrów nale y najpierw okre li miar σ(l) (l = l, 2) przyjmowan do oceny kształtu funkcji przynale no ci. W przypadku funkcji trójk tnych, z jakimi mamy do czynienia w przykładzie, za miar σ(l) mo na przyj wielko b okre laj c rozpi to trójk ta wzgl dem jego centrum, jak to zaznaczono na rys. 9.8c (wielko ci b1 oraz b2)Przy takim zało eniu odpowied systemu, uwzgl dniaj ca wagi wynikaj ce z kształtu funkcji przynale no ci, przyjmie posta
0,8 0,63 c1 + c2 b1 b2 y= 0,8 0,63 + b1 b2 Zakładaj c podobnie jak poprzednio c1 = 1 i c2 = 2 oraz b1 = 0,5, b2 = 0,2 otrzymuje si warto y równ 1,66, a wi c bli sz centrum c2, odpowiadaj cemu w szej funkcji przynale no ci. Zdolno funkcji rozmytych do reprezentacji dowolnej ci głej funkcji nieliniowej f(x) umo liwia ich zastosowanie w aproksymacji funkcji wielu zmiennych i zbudowanie w oparciu o nie odpowiedniej sieci rozmytej realizowanej w postaci układu, podobnie jak to było w przypadku klasycznych sieci neuronowych. Jak udowodniono w pracy [142], ka da funkcja ci gła g(x) okre lona na zbiorze U ∈ Rn mo e by aproksymowana z dowoln dokładno ci ∈ przez układ opisany funkcj rozmyt f(x) o postaci (9.25) lub (9.26). Równanie okre laj ce bł d aproksymacji jest dane wzorem
f ( x ) − g ( x ) dx ≤ ε (9.27) 2
U
Zdolno aproksymacji dowolnej ci głej funkcji nieliniowej wielu zmiennych przez układ rozmyty, scharakteryzowany przez szereg funkcji nieliniowych jednej zmiennej, zdecydowała o mo liwo ciach zastosowa praktycznych takich sieci. W nast pnym rozdziale zostan pokazane podstawowe metody uczenia sieci rozmytych i ich zastosowanie w rozwi zywaniu ró norodnych zagadnie przetwarzania sygnałów.
Sieci neuronowe w uj ciu algorytmicznym
10.
197
Sieci neuronowe o logice rozmytej
Reprezentacja dowolnej funkcji nieliniowej wielu zmiennych za pomoc sumy funkcji rozmytych jednej zmiennej, scharakteryzowanych przez funkcje przynale no ci µ(xi), uzasadnia ide zastosowania funkcji rozmytych do odwzorowania dowolnych procesów nieliniowych ci głych i stanowi alternatywne podej cie do klasycznych sieci neuronowych jednokierunkowych. Co wi cej wyra enie funkcji aproksymuj cej f(x) za pomoc relacji (9.25) b d (9.26) umo liwia ich implementacj numeryczn w strukturze równoległej wielowarstwowej, identycznie jak w przypadku sieci neuronowych sigmoidalnych lub radialnych. Struktury te w dalszej cz ci ksi ki s nazywane sieciami o logice rozmytej lub w skrócie sieciami neuronowymi rozmytymi. Stwarza to mo liwo adaptacji metod uczenia sieci neuronowych klasycznych do sieci rozmytych. W rozdziale tym przedstawiono trzy podstawowe strategie uczenia sieci neuronowych rozmytych: metod gradientow opart na propagacji wstecznej, metod samoorganizacji opart na podziale obszaru na klastery oraz metod tablicow , nie znajduj c odpowiednika w klasycznych sieciach neuronowych.
10.1. Gradientowa metoda uczenia sieci rozmytej 10.1.1. Zale no ci ucz ce sieci
Bez ograniczenia ogólno ci rozwa a przyj to opis gaussowski funkcji przynale no ci dla ka dej i-tej zmiennej xi odpowiadaj cej l-tej regule w postaci
(l )
µ i = exp −
x i − c i(l )
2
σ i(l )
(10. 1)
i funkcj aproksymuj c f (x) wyra on przez rednie warto ci centrów
Rysunek 50.1 Schemat sieci neuronowej rozmytej
Sieci neuronowe w uj ciu algorytmicznym
xi − ci(l )
N
M
f (x ) =
198
l =1
Wl ∏ exp −
σ i(l )
i =1
M
N
∏ exp
(l )
xi − ci
−
2
(10. 2)
2
σ i(l )
l =1 i =1
w której Wl odpowiada centrum c(l) wyst puj cemu w zale no ci (9.23). Funkcji (10.2) mo na przyporz dkowa struktur wielowarstwow o jednym kierunku przepływu sygnałów, przedstawion na rys. 10.1, któr dalej b dzie nazywana sieci neuronow rozmyt . Przedstawiona na rysunku sie składa si z 3 warstw. W warstwie pierwszej nast puje zasadnicze nieliniowe przetworzenie sygnałów według funkcji przynale no ci µ. Warstwa druga jest liniowa i zawiera szereg sumatorów. Warstw trzeci tworzy element nieliniowy (lub ich szereg przy wielu wyj ciach) dokonuj cy dzielenia sygnałów. Liczba neuronów w warstwie wyj ciowej zale y od wymiaru funkcji f (x).
x i − c i(l )
Symbolem µ i(l) oznaczono wyra enie nieliniowe exp −
2
. Zadaniem sieci jest odwzorowanie
σ i(l )
par danych wej cie-wyj cie (x, d) w taki sposób, aby warto dana d stanowi ca po dan odpowied systemu, była odwzorowana przez funkcj f(x). Bez ograniczania ogólno ci rozwa a przyj to układ jednowyj ciowy (d i f (x) w postaci skalarnej). Uczenie sieci polegaj ce na doborze parametrów Wl, ci(l) oraz σi(l) (i — l, 2,..., N oraz l = 1,2,..., M) b dzie przeprowadzane przez minimalizacj bł du kwadratowego mi dzy warto ci dan d a jej odwzorowaniem w postaci f(x). Ograniczaj c si do jednej próbki ucz cej, bł d ten mo e by wyra ony w postaci
E=
1 [ f (x ) − d ]2 (10. 3) 2
przy czym x oznacza jeden z wektorów wej ciowych sieci, a d - warto dan odpowiadaj c mu. Bior c pod uwag zale no (10.2) okre laj c f(x) proces uczenia sieci b dzie polega na takim doborze parametrów Wl, ci(l) oraz σi(l), aby bł d osi gn ł warto minimaln dla ka dej próbki ucz cej. Aktualizacja wag, podobnie jak w klasycznych sieciach neuronowych, mo e si odbywa bezpo rednio po prezentacji ka dej próbki ucz cej (system a-daptacyjny) b d po zaprezentowaniu wszystkich próbek tworz cych dane ucz ce. Algorytm uczenia sieci, bazuj cy na minimalizacji funkcji bł du, b dzie si opiera na metodach optymalizacji gradientowej, omówionych w rozdz. 2. Kluczem do jego zastosowania jest informacja zawarta w wektorze gradientu ∇E. W przypadku układu z rys. 10.1 mo na wyró ni 3 ró nego rodzaju składniki tego wektora:
∂E ∂E , oraz ∂Wt ∂ci(l )
∂E dla l = l, 2,..., M oraz i = l, 2,..., N. ∂σ i(l ) Korzystaj c z reguł ró niczkowania funkcji zło onej zastosowanych do wzoru (10.3) otrzymuje si N
∂E = ( f (x ) − d ) ∂Wt
∏ exp
po
uwzgl dnieniu
oznacze
z
rys.
−
M
N
∏ exp i =1
10.1,
w
2
σ i(l )
i =1
i =1
lub
xi − ci(l )
−
(l )
xi − ci
(10. 4)
2
σ i(l )
których
N
yl = ∏ exp − i =1
xi − ci(l )
2
σ i(l )
y ∂E = ( f ( x ) − d ) l (10. 5) ∂Wt f2 Podobnie otrzymuje si wyra enie okre laj ce składow gradientu wzgl dem ci(l) oraz σi(l). Mianowicie
Sieci neuronowe w uj ciu algorytmicznym
199
∂f ( x ) ∂y l ∂E ( ( ) ) f x d = − ∂y l ∂ci(l ) ∂ci(l ) Bior c pod uwag , e:
∂f ( x ) Wl − f ( x ) = f2 ∂y l
∂y t xi − ci(l ) 2 = y l 2 ∂ci(l ) σ i(l )
[ ]
otrzymuje si
( f (x ) − d ) y [W − f (x )] xi − ci(l ) (10. 6) ∂E 2 = t l 2 f2 ∂ci(l ) σ i(l )
[ ]
W identyczny sposób otrzymuje si
przy czym
∂E . Mianowicie ∂σ i(l ) ∂E ∂f ( x ) ∂y l (l ) = ( f ( x ) − d ) ∂y l ∂σ i(l ) ∂σ i
(
∂y l xi − ci(l ) y = 2 t 3 ∂σ i(l ) σ i(l )
[ ]
)
2
St d
(
( f (x ) − d ) y (W − f (x )) xi − ci(l ) ∂E = 2 l l 3 f2 ∂σ i(l ) σ i(l )
[ ]
)
2
(10. 7)
Po wyznaczeniu wektora gradientu, dobór optymalnych parametrów sieci mo e przebiega według jednej ze strategii zmian tych parametrów, okre lonych w rozdz. 2. Dla przykładu, stosuj c metod najwi kszego spadku, kolejne iteracje prowadz ce do rozwi zania lokalnie optymalnego maj posta
z i (k + 1) = z i (k ) − η
∂E (10. 8) ∂z i (k )
przy czym k i k + 1 oznaczaj kolejne iteracje, a zi, jest ogólnym oznaczeniem parametrów podlegaj cych optymalizacji: Wl, ci(l) oraz σi(l). W przypadku zastosowania opisu ró niczkowego rozwi zanie mo na zapisa w postaci
dz i ∂E (10. 9) = −α dt ∂z i (k ) Metoda gradientowa u yta w procesie doboru optymalnych warto ci parametrów sieci rozmytej jest analogiczna do metody propagacji wstecznej w sieciach neuronowych klasycznych i cz sto nosi tak nazw . Podobnie jak tam, bł d niedopasowania (f (x) — d) mierzony na wyj ciu sieci i znormalizowany przez wielko f2 jest przesyłany przez sie o propagacji wstecznej (odwrócone kierunki przepływu sygnałów w gał ziach). Zasadnicza ró nica tkwi w typie nieliniowo ci i miejscu wyst pienia parametrów optymalizowanych. Zamiast funkcji sigmoidalnych wyst puj tu funkcje gaussowskie, a parametrami dobieranymi s zarówno wagi Wl (podobnie jak w sieciach sigmoidalnych), jak i subparametry funkcji wykładniczych ci(l), σi(l). podobnie jak w przypadku sieci o radialnych funkcjach bazowych). St d algorytm gradientowy uczenia sieci rozmytych oparty na metodzie propagacji wstecznej, podobnie jak dla innych sieci jednokierunkowych, składa si z 2 faz: • podanie na wej cie sieci sygnałów wej ciowych tworz cych wektor x i okre lenie wszystkich sygnałów wewn trznych oraz wyj ciowych sieci, wyst puj cych w wyra eniu okre laj cym gradient; • okre lenie warto ci funkcji bł du na wyj ciu sieci i przez jego propagacj w kierunku wej cia wyznaczenie wszystkich składowych wektora gradientu; adaptacja parametrów sieci odbywa si z
Sieci neuronowe w uj ciu algorytmicznym
200
kroku na krok według wybranej metody gradientowej z krokiem uczenia η b d zmienianym według okre lonej strategii.
stałym, b d
Jakkolwiek ogólna posta funkcji aproksymuj cej rozmytej przypomina funkcje radialne, omówione w rozdz. 5, ma ona pewne cechy szczególne, których brakuje funkcjom radialnym. Podstawow ró nic jest interpretacja parametrów funkcji. Posta (10.2) funkcji aproksymuj cej powstała jako matematyczne odzwierciedlenie zasady wnioskowania logicznego w zbiorach rozmytych, zawieraj cych cz warunkow „je li” ...i cz wynikow „to". Wagi Wl odpowiadaj ci le centrom cz ci „to", natomiast parametry ci(l) oraz σi(l) s odpowiednio centrami i szeroko ciami cz ci „je li” wnioskowania logicznego rozmytego. Ta cisła interpretacja dobieranych współczynników funkcji f(x) umo liwia opracowanie stosunkowo prostych metod doboru warto ci wst pnych zmiennych optymalizowanych, wi c je ze zmierzonymi wielko ciami wej ciowymi i wyj ciowymi. Umo liwia to istotne przyspieszenie procesu uczenia i unikni cie utykania w minimum lokalnym dalekim od rozwi zania optymalnego. Drug istotn ró nic jest mo liwo wł czenia w proces uczenia informacji lingwistycznej, zawieraj cej si w naturalny sposób we wnioskowaniu logicznym. Wiedza eksperta równolegle do danych pomiarowych mo e zosta wprz gni ta w proces uczenia, w szczególno ci na etapie wst pnym przy doborze pocz tkowych warto ci parametrów optymalizowanych. Dotyczy to zwłaszcza trudnych zagadnie sterowania procesami nieliniowymi, takimi jak procesy ekonomiczne, podejmowanie decyzji w systemach wieloparametrowych czy sterowanie obiektami nieliniowymi.
10.1.2. Zastosowanie sieci rozmytych w problemach identyfikacji nieliniowych obiektów dynamicznych Identyfikacji podlega nieliniowy układ dynamiczny opisany równaniem ró nicowym nieliniowym o ogólnej postaci
d (n ) = f (d (n − 1), d (n − 2),..., d (n − K ), x(n ), x(n − 1),..., x(n − m )) (10. 10) przy czym /() jest oznaczeniem nie znanej funkcji podlegaj cej identyfikacji, a x(j) i d(j) oznaczaj sygnały odpowiednio wej ciowy i wyj ciowy w j-tej chwili. Przyj to dodatkowo, e układ ma N wej , x(n) = [x1(n),x2,(n), . . . ,xN(n)] T i jedno wyj cie. Układ jest rekurencyjny, a jego odpowied w dowolnej chwili zale y od odpowiedzi w K ostatnich chwilach oraz wektora wymusze o długo ci m. Jak udowodniono w pracy [97], model nieliniowy identyfikacji takiego systemu opiera si na adaptacyjnym doborze funkcji aproksymuj cej y(n) modelu, przy czym zale no funkcyjna opisuj ca j , podobnie jak w opisie systemu oryginalnego, zale y od warto ci funkcji w chwilach poprzednich oraz od warto ci wymusze w odpowiednich chwilach. Bior c pod uwag , e do dyspozycji jest zarówno informacja o obiekcie (warto d(n)), jak i o modelu (warto y(n)), jest mo liwe oparcie si w procesie identyfikacji na odpowiedziach opó nionych zarówno obiektu, jak i modelu. W efekcie mo na otrzyma 2 modele identyfikacji: • wykorzystuj cy opó nione odpowiedzi modelu
y (n ) = fˆ ( y (n − 1), y (n − 2 ),..., y (n − K ), x(n ), x(n − 1),..., x(n − m )) (10. 11) •
wykorzystuj cy opó nione odpowiedzi obiektu
y (n ) = fˆ (d (n − 1), d (n − 2),..., d (n − K ), x(n ), x(n − 1),..., x(n − m )) (10. 12) W powy szych zale no ciach fˆ ( ) oznacza funkcj systemu rozmytego u ytego w identyfikacji. Zale no ciom (10.11) i (10.12) mo na przyporz dkowa odpowiednie schematy układowe, przedstawione na rys. 10.2. Człon TDL oznacza funkcj operatora opó nienia (operator l + z-1 + . . . + z-K), zastosowany zarówno wzgl dem sygnału wej ciowego x, jak i sygnału sprz enia zwrotnego pochodz cego od obiektu (d) lub modelu (y). W oznaczeniu funkcji przyj to x = [x(n),x(n — 1), . . . , x(n — m)] T, a wektory d i y w postaci d = (d(n-l), d(n-2), . . . , d(n-K)] T, y = [y(n-l), j/(n-2), . . . , y(n-K}] T. System jest adaptacyjny, co oznacza, e sygnał bł du słu y do doboru parametrów charakteryzuj cych funkcj Ogólny schemat adaptacji b dzie si
fˆ ( ) , opisuj c model rozmyty obiektu.
opiera
na minimalizacji funkcji bł du E
=
1 2 ε (n ) , 2
odpowiadaj cej zale no ci (10.3), przy zastosowaniu procedury uczenia omówionej w podrozdziale poprzednim.
Sieci neuronowe w uj ciu algorytmicznym
201
Istotn cech zastosowanego modelu rozmytego, wyró niaj c go spo ród innych modeli neuronowych, jest wykorzystanie informacji wi cej interpretacj parametrów układu rozmytego z wła ciwo ciami badanego przebiegu, do optymalnego doboru warto ci pocz tkowych parametrów podlegaj cych uczeniu. Jest tu mo liwe wykorzystanie zarówno informacji numerycznej, jak i lingwistycznej, podanej w postaci reguł wnioskowania logicznego. Na pocz tku zało ono, e dost pna jest jedynie informacja numeryczna dotycz ca warto ci wej ciowych układu w dowolnej chwili, xi(l) (l-ta chwila i-tej składowej wektora wej ciowego x) oraz warto odpowiedzi
Rysunek 10.2 Schematy identyfikacji obiektu za pomoc modelu rozmytego: a) schemat wykorzystuj cy opó nienie odpowiedzi obiektu; b) schemat wykorzystuj cy opó nienie odpowiedzi modelu obiektu d(l) oraz modelu y(l). Dla ujednolicenia rozwa a przyj to, e y(l) oznacza warto b d d(l) dla układu z rys. 10.2a, b d y(l) dla układu z rys. 10.2b. Schemat modelu rozmytego przy takim zało eniu b dzie wówczas identyczny dla obu układów z rys. 10.2. Mo na go przedstawi jak na rys. 10.3, na którym dla uproszczenia przyj to m = 0 oraz ograniczono si do warto ci yˆ (n − 1) odpowiadaj cej K = 1. Liczba reguł rozmytych M jest tu uto samiona z liczb opó nie branych pod uwag przy tworzeniu odpowiedzi modelu y (n ) = fˆ ( x, yˆ ) . Pierwsze M odpowiedzi układu nie tworzy próbek ucz cych, a jedynie słu y do wła ciwego doboru warto ci pocz tkowych optymalizowanych parametrów. Uczenie sieci rozpoczyna si od chwili M, stanowi cej warunki pocz tkowe uczenia. Przyjmuj c parametry pocz tkowe układu rozmytego w postaci:
c x(li ) (M ) = xi (l ) (10. 13) c (yl ) (M ) = yˆ i (l − 1) (10. 14) Wl (M ) = f ( x(l ), d (l − 1)) (10. 15)
Sieci neuronowe w uj ciu algorytmicznym
202
dla l = 1,2,...,M, oraz zakładaj c warto ci pocz tkowe parametrów σi(l) odpowiednio małe, mo na osi gn na starcie procesu uczenia dopasowanie
Rysunek 10.3 Schemat poł cze sieci neuronowej rozmytej przy identyfikacji obiektu dynamicznego odpowiedzi modelu do odpowiedzi obiektu z dowoln dokładno ci ε, to jest
f ( x, d ) − fˆ (x, yˆ ) ≤ ε (10. 16) co umo liwia dobre dopasowanie krzywych w dalszym procesie uczenia. W dowodzie twierdzenia zało ono, e warto ci pocz tkowe wszystkich parametrów σi(l) s takie same i równe σ. Funkcja układu rozmytego mo e by wówczas zapisana w postaci
fˆ ( x(l ), yˆ (l − 1)) = M
=
j =1
f ( x( j ), d ( j − 1)) exp − M
exp −
yˆ (l − 1) − y ( j − 1)
σ
yˆ (l − 1) − y ( j − 1)
σ
j =1
2
N
∏ exp
−
xi (l ) − xi ( j )
(10. 17)
i =1
2
N
∏ exp
xi (l ) − xi ( j )
−
2
2
σ
i =1
Po wydzieleniu z powy szego wyra enia składnika odpowiadaj cego j = l otrzymuje si
fˆ ( x(l ), yˆ (l − 1)) = f ( x(l ), d (l − 1)) + =
M j =1, j ≠ l
1+
f ( x( j ), d ( j − 1)) e −
M
e j =1, k ≠ l
−
yˆ (l −1)− y ( j −1) 2 N
σ
yˆ (l −1)− y ( j −1) 2 N
∏e
∏e
σ
i =1
−
−
xi (l )− xi ( j ) 2
σ
(10. 18)
xi (l )− xi ( j ) 2
σ
i =1
Zakładaj c, e xi(l) ≠ xj(l) dla l ≠ j, mo na dobra tak mał warto parametru σ, aby warto funkcji
∏
j =1, j ≠ l
exp −
xi (l ) − xi ( j )
σ
2
< ε 1 . W takim przypadku
Sieci neuronowe w uj ciu algorytmicznym
203
fˆ ( x(l ), yˆ (l − 1)) − f ( x(l ), d (l − 1)) < ε (10. 19) przy czym ε jest funkcj ε1. Z zale no ci (10.19) wynika, e dla dowolnej chwili l(l = 1,2, . . . ,M) jest spełniona zale no (10.16) gwarantuj ca dobre dopasowanie obu krzywych, danej d oraz generowanej przez układ y. Oznacza to, e pierwsze M par zmierzonych wielko ci (x(l), d(l)) zostało dopasowanych do odpowiedzi modelu. Je li wielko ci te s charakterystyczne dla danego procesu odwzorowania wielko ci wej ciowych w wyj ciowe, to mo na zało y , e sie rozmyta bardzo szybko osi gnie optymalne warto ci parametrów w sensie globalnym. Dobór wst pnej warto ci parametru σ ma do istotny wpływ na skuteczno uczenia. Ze wzgl du na dokładno wst pnego dopasowania pierwszych M par (x(/), d(l)) warto ta powinna by jak najmniejsza. Zbyt mała warto nie jest jednak wskazana w procesie uczenia sieci, gdy dla dalszych próbek ucz cych l = M + 1, M + 2,..., mo e spowodowa znaczny wzrost bł du. W praktyce jest zalecany zró nicowany dobór warto ci σ, spełniaj cy relacj [142]:
σ y(l ) (M ) =
max{y (l − 1)} − min{y (l − 1)} (10. 20) 2M max{xi (l )} − min{xi (l )} (10. 21) 2M
σ x(l ) (M ) = i
dla l = l, 2,..., M, i = 1,2, ...,N, gwarantuj cy skuteczno działania algorytmu. W drugim przypadku zało ono, e oprócz informacji numerycznej dost pnych jest L reguł wnioskowania rozmytego o postaci je li
x1 ∈ Fx(1l ) ∧ ... ∧ x N ∈ FX(lN) ∧ yˆ (l − 1) ∈ Fy(l ) to f ( x, d ) ∈ G (l ) (10. 22)
dla l = 1,2, . . .,L, przy czym Fi(l) oraz G(l) s zbiorami rozmytymi o danej funkcji przynale no ci. Zało ono, e wszystkie funkcje przynale no ci s typu gaussowskiego. W takim przypadku trenowanie sieci rozpoczyna si po upływie M — L punktów czasowych (zakłada si M ≥ L), przyjmuj c pierwsze M — L punktów jedynie do analizy. Warto ci pocz tkowe optymalizowanych parametrów przyjmuje si wówczas nast puj co [142]:
c x(li ) (M − L ) = c F(li ) (10. 23)
σ x(l ) (M − L ) = σ F(l ) i
i
(10. 24)
c (yl ) (M − L ) = c F(ly) (10. 25)
Sieci neuronowe w uj ciu algorytmicznym
204
Rysunek 10.4 Sie neuronowa rozmyta w zastosowaniu do identyfikacji obiektu nieliniowego rozmytego z przykładu: a) układ ogólny sieci identyfikacyjnej; b) schemat modelu obiektu
σ y(l ) (M − L ) = σ F(l ) y
(10. 26)
Wl (M − L ) = cG(l ) (10. 27) dla l = l, 2, . . . , L, a dla pozostałych warto ci l = L + 1, L + 2, . . . , M w sposób identyczny z przedstawionymi wcze niej (zale no ci (10.13)-(10.15)) zast puj c warto M przez M — L. Jak pokazano w pracy [142], taki dobór parametrów gwarantuje start procesu uczenia z warunków pocz tkowych, w których bł d dopasowania
fˆ ( x, yˆ ) − f ( x, d ) < ε . Przy reprezentatywno ci L reguł
wnioskowania logicznego i danych numerycznych branych pod uwag przy ustalaniu warto ci pocz tkowych parametrów funkcji rozmytych mo na przyj , e warto ci pocz tkowe tych parametrów s bliskie warto ciom optymalnym i proces adaptacji (uczenia) umo liwi dopasowanie odpowiedzi modelu do obiektu w sensie globalnym. Jako przykład rozwa ono identyfikacj obiektu opisanego równaniem ró nicowym [97]
d (n + 1) = 0,3d (n ) + 0,6d (n − 1) + f ( x(n ))
w którym f(x) = 0,6sin(πx) + 0,3 sin(3πx) + 0,1sin(5πx) przy x = x1. Zgodnie z prac [142] zakładamy, e cz liniowa jest znana, a identyfikacji podlega jedynie cz nieliniowa f(x). Model ogólny układu identyfikuj cego b dzie miał posta przedstawion na rys. 10. 4a. Na rysunku 10. 4b
przedstawiono układ rozmyty realizuj cy funkcj fˆ ( x ) przy zało eniu M = 35. Pierwsze M punktów czasowych słu y jedynie do doboru warto ci pocz tkowych parametrów gaussowskiej funkcji przynale no ci µ 1(l) (c1(l),σ1(l)) oraz wag Wl dla l = 1,2,..., M:
Sieci neuronowe w uj ciu algorytmicznym
205
c1(l ) (M ) = x1(l )
Wl (M ) = d (l )
σ 1(l ) (M ) =
max{x1 (l )} − min{x1 (l )} 2M
Uczenie sieci przeprowadza si dopiero od (M + l)-szej próbki czasowej. W praktycznej implementacji uczenia został wykorzystany algorytm najwi kszego spadku wyra ony wzorami (10.4)-(10.8). Jako sygnału wej ciowego x(n) u yto generatora funkcji sinusoidalnej
x(n ) = sin
2πn . 250
Uzyskane w wyniku uczenia przebiegi czasowe od chwili startu dobrze przybli ały warto ci dane (rys. 10.5). Zadaniem układu adaptacyjnego było podtrzymanie tych tendencji w dalszym procesie uczenia. W eksperymencie numerycznym uczenie zostało zatrzymane przy n = 500. Dalsze odcinki czasowe od n = 501 do 1600 dotyczyły badania zdolno ci predykcyjnych sieci. Uzyskane wyniki z du dokładno ci odzwierciedlaj przebieg dany, potwierdzaj c w ten sposób dobre wła ciwo ci uogólniaj ce sieci.
Rysunek 10.5 Wykres czasowy krzywej identyfikowanego obiektu: linia ci gła odpowiada odpowiedzi obiektu, linia przerywana - odpowiedzi modelu
10.2. Uczenie samoorganizuj ce si sieci rozmytych Drug , obok algorytmu gradientowego, metod uczenia sieci neuronowych rozmytych jest samoorganizacja, wykorzystuj ca grupowanie danych poło onych przestrzennie blisko siebie poprzez mechanizm współzawodnictwa. Zało ono, e jest p par ucz cych, ka da w postaci wektora wej ciowego x oraz warto ci danej d. Traktuj c ka d z tych par jako reprezentanta okre lonej reguły logicznej l, to jest (x(l), d(l)), mo na uzyska ich odwzorowanie z dowoln dokładno ci ε, przy wykorzystaniu standardowego opisu rozmytego (10.2). Co wi cej, zakładaj c M = p i przyjmuj c okre lon warto współczynnika szeroko ci σ krzywej rozmytej, tak sam dla ka dej reguły rozmytej, opis (10.2) mo na upro ci do postaci
Sieci neuronowe w uj ciu algorytmicznym
206
p
d f (x ) =
(l )
exp −
x − x (l )
σ2
l =1
p
−
x − x (l )
l =1
2
2
(10. 28)
σ2
przy czym ||x — x(l)|| oznacza norm euklidesow wektora (x — x(l)). Warto parametru σ decyduje o gładko ci takiego odwzorowania. Przy uwzgl dnieniu w zale no ci aproksymuj cej wszystkich p próbek ucz cych ka da z tych próbek ma odpowiednik funkcyjny w zale no ci (10.28). St d im mniejsza jest warto σ, tym lepsze jest dopasowanie w danym punkcie, ale jednocze nie gorsza gładko funkcji. Na rysunku 10.6 przedstawiono przebieg funkcji aproksymuj cej 21 punktów na płaszczy nie (x, y) przy dwu warto ciach parametru σ. Przy wła ciwie dobranej warto ci a otrzymuje si idealne dopasowanie krzywej zarówno w punktach pomiarowych, jak i poza nimi. Przy zbyt małej warto ci σ dopasowanie krzywej w punktach pomiarowych jest wprawdzie idealne, ale poza nimi odwzorowanie nie jest wła ciwe (zbyt szybki zanik do zera poszczególnych funkcji gaussowskich). Przyj ty powy ej opis systemu rozmytego jest skuteczny jedynie przy małej liczbie próbek ucz cych p. Przy bardzo du ej warto ci p reprezentacja zbioru w postaci bezpo redniej zale no ci (10.28) zawodzi ze wzgl du na praktyczn nieskuteczno takiego odwzorowania dla setek tysi cy czy milionów danych. Ponadto nale y zauwa y , e nie istnieje taka potrzeba, gdy wiele danych jest poło onych blisko siebie w przestrzeni Nwymiarowej, tworz c klastery, które mog by reprezentowane z dostateczn dokładno ci przez dane u rednione, jedna para danych dla ka dego klastera. W ten sposób p danych mo e by z powodzeniem reprezentowane przez M klasterów, przy czym przy du ej liczbie danych zachodzi relacja M << p . Istotnym problemem staje si podział przestrzeni na klastery i dobór parametrów wektora reprezentuj cego okre lony klaster. Algorytm automatycznego
Rysunek 10.6 Przykład: a) wła ciwego; b) niewła ciwego doboru parametru a funkcji rozmytej podziału przestrzeni danych na klastery, b d cy odmian algorytmu K-u rednie przedstawionego w rozdz. 5, mo na przedstawi nast puj co: • Startuj c z pierwszej pary danych (x(1), d(1)) jest tworzony pierwszy klaster o centrum c(1) = x(1) Zało ono W(1) = d(1) oraz liczebno zbioru L(1) = 1. Niech r oznacza odległo euklidesow wektora x od centrum, poni ej której dane b d traktowane jako nale ce do danego klastera. Dla zachowania ogólno ci rozwa a zało ono, e w chwili startu algorytmu istnieje M klasterów o centrach c(1), c(2), ... , c(M)) i odpowiadaj ce im warto ci W(i) oraz L(i) (i = l, 2,..., M). • Po wczytaniu k-tej pary ucz cej (x(k), d(k)) nast puje okre lenie odległo ci wektora x(k) od wszystkich centrów
x (k ) − c (l ) dla l = 1,2,... , M. Zało ono, e najbli szym centrum jest c (lk ) W takim
przypadku w zale no ci od warto ci 1.
W
W (M
Je li
to
jest
tworzony
nowy
klaster
c(M+1)
=
x(k),
(k ) = d , L (k ) = 1 . Parametry istniej cych dotychczas klasterów nie ulegaj (k ) = W (l ) (k − 1), L(l ) (k ) = L(l ) (k − 1) dla l = l, 2,..., M. Liczba klasterów M zostaje zwi
( M +1)
(l )
x ( k ) − c (lk ) > r ,
x (k ) − c (lk ) mo e nast pi jeden z dwu przypadków:
M + 1).
(k )
( M +1)
przy
czym
zmianie, tzn. kszona o jeden
Sieci neuronowe w uj ciu algorytmicznym
2. Je li
207
x (k ) − c (lk ) < r dane s zaliczane do lk-tego klastera, którego parametry nale y uaktualni zgodnie z
zale no ci [142]:
W (lk ) (k ) = W (lk ) (k − 1) + d (k ) (10. 29) L(lk ) (k ) = L(lk ) (k − 1) + 1 (10. 30) c
(l k )
c (lk ) (k − 1)L(lk ) (k − 1) + x (k ) (k ) = (10. 31) L(lk ) (k )
pozostawiaj c pozostałe klastery nie zmienione, tzn.
c (l ) (k ) = c (l ) (k − 1) dla l = 1,2,...,M (l ≠ lk). •
W (l ) (k ) = W (l ) (k − 1), L(l ) (k ) = L(l ) (k − 1) i
Po uaktualnieniu parametrów systemu rozmytego funkcja aproksymuj ca dane wej ciowe przyjmuje posta M
W fˆ ( x ) =
l =1
M l =1
(l )
(k ) exp
x − c (l ) (k )
−
L(l ) (k ) exp −
2
σ2 x − c (l ) (k )
2
(10. 32)
σ2
Przeprowadzaj c powy sze etapy algorytmu a do k = p i uaktualniaj c za ka dym razem warto M, otrzymuje si podział obszaru danych na M klasterów, przy czym liczebno ka dego z nich jest okre lana przez L(l) = L(l)(k), jego centrum przez c(l) = c(l)(k), a warto skumulowanej funkcji d przyporz dkowanej mu przez W(l) = W(l)(k). Algorytm jest nazywany samoorganizuj cym si , gdy podział na klastery odbywa si samoczynnie bez udziału człowieka, odpowiednio do przyj tej warto ci progu r. Przy małej warto ci r liczba klasterów wzrasta, w rezultacie czego aproksymacja danych jest bardziej dokładna, ale nast puje to kosztem bardziej zło onej funkcji i wi kszej liczby wymaganych operacji matematycznych. Przy zbyt du ej warto ci r zło ono obliczeniowa maleje, ale równocze nie zwi ksza si bł d aproksymacji. Dobór wła ciwej warto ci progu r musi uwzgl dni kompromis mi dzy dokładno ci odwzorowania a zło ono ci obliczeniow . Zwykle optymaln warto r dobiera si metod prób i bł dów w drodze eksperymentów numerycznych. Nale y zwróci uwag , e algorytm samoorganizacji w odniesieniu do sieci rozmytej okre la jednocze nie zarówno parametry sieci, jak i jej struktur (liczb neuronów w warstwie ukrytej). W przypadku odwzorowania przebiegów zmieniaj cych si w czasie po dane jest uwypuklenie bie cych danych ze stopniowym „zapominaniem" starych próbek ucz cych. W takim przypadku przy aktualizacji parametrów nale y wprowadzi współczynnik wagowy, odpowiadaj cy za tłumienie starych próbek i wzmacniaj cy znaczenie próbek bie cych. Szczegółowe wzory adaptacji parametrów układu dla tego przypadku mo na znale w pracy [142].
10.3. Uczenie bezpo rednie na podstawie tabeli przej W przypadku sieci neuronowych rozmytych jest mo liwe bezpo rednie wykorzystanie reguł wnioskowania do sterowania procesem. Zamiast dopasowywania warto ci numerycznych wag, umo liwiaj cych okre lenie sygnału wyj ciowego sieci, jest mo liwe wyznaczenie tej warto ci bezpo rednio na podstawie tak zwanych tabeli przej , bez konieczno ci obliczania poprzednich warto ci poszczególnych parametrów układu. Na podstawie zadanego ci gu danych ucz cych
(x ( ) , d ( ) ), (x ( ) , d ( ) ), ... 1
1
2
2
przy czym x(l) oznacza wektor wej ciowy, a d(l) warto dan układu dla l-tej próbki, jest tworzony zbiór reguł logicznych typu przesłanka konkluzja, okre laj cych w sposób jednoznaczny pełne zachowanie si układu przy zadanych warunkach pocz tkowych. Kolejne zastosowanie tych reguł umo liwia przeprowadzenie
Sieci neuronowe w uj ciu algorytmicznym
208
zmiennej wyj ciowej od poło enia pocz tkowego do po danego poło enia ko cowego. Najistotniejszym etapem w tej metodzie jest generacja odpowiednich reguł logicznych na podstawie danych numerycznych i reguł lingwistycznych, okre laj cych kolejne etapy wnioskowania, umo liwiaj ce przeprowadzenie procesu od warunków pocz tkowych do warunków ko cowych zadania. W podej ciu tym mo na wyró ni kilka etapów, z których najwa niejsze mo na zdefiniowa nast puj co: 1. Podział przestrzeni danych wej ciowych i wyj ciowych na podzbiory rozmyte Zało ono, e s znane dolny i górny zakresy zmienno ci poszczególnych zmiennych wej ciowych xi(i = 1,2,...,N) oraz wyj ciowej y (dla uproszczenia zało ono, e system jest jednowej ciowy).
Rysunek 10.7 U yte w przykładzie funkcje przynale no ci dla zmiennej: a) x1; b) x2; c) d Ka dy z tych zakresów jest dzielony na 2n+l podzakresów (n mo e by ró ne dla ka dej zmiennej), przy czym ka dy podzakres mo e mie ró n długo . Ka demu z podzakresów przyporz dkowano odpowiedni funkcj przynale no ci. Przykład takiego podziału dla funkcji d = f(x1, x2) przedstawiono na rys. 10.7, przy czym zarówno liczba podzakresów, jak i ich długo ci s ró ne. W przypadku pierwszej zmiennej wej ciowej x1 liczba podzakresów jest równa 5 (L2, L1, CE, Pl, P2), a w przypadku drugiej zmiennej wej ciowej x2 i zmiennej wyj ciowej d jest ona równa 7 (L3, L2, L1, CE, P1, P2, P3). Funkcje przynale no ci zało ono w postaci trójk tnej. 2. Generacja reguł rozmytych na podstawie danych ucz cych Zało ono, e jest dany ci g par ucz cych (x(i), d(i)) dla i = 1,2, ...,M, przy czym Ka dej danej warto ci zmiennej
[
]
x (i ) = x1(i ) , x 2(2 ) ,..., x N(i ) . T
x (ji ) ( j = 1,2,..., N , i = 1,2,...M ) oraz d(i) przyporz dkowano stopie
przynale no ci do ka dego zakresu rozmytego. Na przykład zmienna x1(i) charakteryzuje si nast puj cymi warto ciami stopni przynale no ci:
µ L (x1(1) ) = 0,8, µ L (x 2(1) ) = 0,2, µ z (x1(1) ) = 0 1
Podobnie w przypadku zmiennej x2(i) oraz d(i) jest
µ L (d (1) ) = 0,7, µCE (d (1) ) = 0,3, µ z (d (1) ) = 0 1
µ L (x2(1) ) = 1, µ z (x2(1) ) = 0 2
2
dla z = CE, P1, P2.
(z = L3,L1,CE,P1,P2,P3) oraz
(z = L3, L2, P1, P2, P3).
Dan zmienn przypisuje si do obszaru o najwi kszej warto ci funkcji przynale no ci. W przypadku danych z rys. 10.7 dla zmiennej x1(1) b dzie to L1, dla zmiennej x2(1) - L2, a dla d(1) – L1. Na tej podstawie mo na zdefi-
Sieci neuronowe w uj ciu algorytmicznym
209
niowa odpowiednie reguły wnioskowania dla ka dej pary ucz cej. W przypadku rys. 10.7 b d to nast puj ce reguły:
x1(1) ∈ L1 ∧ x 2(1) ∈ L 2 to y (1) ∈ L1 (2 ) (2 ) (2 ) je li x1 ∈ P1 ∧ x 2 ∈ CE to y ∈ CE je li
W ten sposób przy M parach ucz cych (x(i), d(i)) mo na utworzy M reguł rozmytych wnioskowania logicznego. 3. Hierarchizacja reguł Przy M regułach wnioskowania utworzonych w etapie poprzednim cz reguł mo e by sprzeczna w tym sensie, e tym samym zakresom zmiennych wej ciowych odpowiada ró ny zakres wnioskowania przyporz dkowany zmiennej y. Rozstrzygni cie tych sprzeczno ci nast puje przez przyporz dkowanie ka dej regule odpowiedniego stopnia w hierarchii. W przypadku wyst pienia sprzeczno ci za obowi zuj c przyjmuje si reguł o najwi kszym stopniu. Stopie przypisany regule oznaczono przez Dr i okre lono według wzoru
Dr = µ1 ( x1 )µ 2 ( x 2 )...µ N ( x N )µ d (d ) (10. 33) Przykładowo dla przypadku przedstawionego na rys. 10.7 otrzymuje si :
( ) ( ) ( ) (x )µ (x( ) )µCE (d ( ) ) = 0,9 × 0,7 × 0,6 = 0,378
Dr1 = µ L1 x1(1) µ L2 x 2(1) µ L1 d (1) = 0,8 × 1 × 0,7 = 0,56
Dr2 = µ P1
(2 )
1
CE
2 2
2
W przypadku gdy istnieje dodatkowa informacja o systemie (na przykład w postaci wiedzy eksperta), mówi ca o wa no ci jakiego czynnika lub braku jego wpływu na proces (według oceny eksperta), mo na j uwzgl dni w postaci dodatkowego czynnika iloczynowego, definiowanego jako warto funkcji przynale no ci µ (i). Definicj stopnia przypisanego i-tej regule modyfikuje si wówczas w postaci
Dri = µ1 ( x1 )µ 2 ( x2 )...µ N ( xN )µ d (d )µ (i ) (10. 34) Czynnik w postaci opinii eksperta mo e mie wa ne znaczenie, gdy dane numeryczne s otrzymywane w drodze pomiarów, których dokładno w ró nych zakresach jest niejednakowa. Opinia eksperta uwzgl dniona w definicji stopnia reguły mo e spowodowa w efekcie odrzucenie tych danych, które s najmniej wiarygodne, gdy zostały otrzymane z najwi kszym bł dem. 4. Tabela reguł wynikowych podejmowania decyzji Dla ka dej zmiennej xi zestawia si wszystkie reguły rozmyte obowi zuj ce w zakresie zmian tej zmiennej. Przy dwu zmiennych jest tworzona tabela dwuwymiarowa, przy wi kszej liczbie zmiennych - tabela wielowymiarowa. Tabela 10.1 jest przykładem tabeli dwuwymiarowej dopasowanej do liczby zakresów z rys. 10.7. Tabela 10.1 L2
L1
CE
P1
P2
L3 L2 L1 CE P1 P2 P3 Ka da cz tabeli le ca na przeci ciu kilku reguł odpowiada spójnikowi AND (w przesłance logicznej) poszczególnych reguł, a warto przypisana tej cz ci odpowiada funkcji przynale no ci konkluzji (w tym przypadku zmiennej y). Przy niejednoznacznym przyporz dkowaniu reguł obowi zuje reguła o najwi kszym stopniu. 5. Strategia defuzyfikacji W celu okre lenia konkretnej warto ci y odpowiadaj cej wymuszeniu opisanemu wektorem podanemu na wej cie układu o logice rozmytej stosuje si nast puj ce etapy:
x (i ) (i = 1,2,.., M )
Sieci neuronowe w uj ciu algorytmicznym •
210
okre lenie warto ci kombinowanej funkcji przynale no ci wektora x^ do ró nych stref zmiennej wyj ciowej
µ y(i()) = µ I ( ) ( x1 )µ I ( ) ( x 2 )...µ I ( ) ( x N ) (10. 35) i
i
i
1
i N
2
przy czym y(i) oznacza zakres zmiennej wyj ciowej odpowiadaj cej regule i-tej, a Ij(i) - zakres zmiennej wej ciowej xj odpowiadaj cy regule i-tej. Przykładowo dla przypadku przedstawionego na rys. 10.7 otrzymuje si :
µ y(1() ) = µ L1 ( x1 )µ L 2 ( x2 ) 1
µ y(2( )) = µ P1 (x1 )µ CE ( x2 ) 2
•
wyznaczenie warto ci zmiennej wyj ciowej y odpowiadaj cej zbiorom wektorów x(i) według reguły u rednionych centrów M
y=
d (i )µ y(i()i )
i =1 M
(10. 36)
(i )
µ y( ) i
i =1
przy czym d(i) oznacza warto centraln i-tego zakresu zmiennej wyj ciowej, a wi c warto d, przy której funkcja przynale no ci jest równa l (dla funkcji trapezoidalnej jest to najmniejsza warto d). M jest liczb reguł logicznych zastosowanych do okre lenia odpowiedzi układu (liczba ró nych warto ci wektora wej ciowego x). Przy wi kszej liczbie wyj układu post puje si identycznie dla ka dej zmiennej wyj ciowej. Dla j-tej zmiennej wzór (10.36) przyjmie posta M
y=
d (ji )µ y(i()i )
i =1 M
i =1
j
(i )
(10. 37)
µ y( ) i j
Przy zastosowaniu przedstawionych wy ej zasad post powania kolejne etapy sterowania polegaj na wielokrotnym wykorzystaniu tabeli podejmowania decyzji, za ka dym razem przyporz dkowuj ce wektorowi wej ciowemu x odpowiedni zakres i przypisan mu reguł logiczn . Tabela dostarcza informacji o zakresie i odpowiadaj cej mu regule logicznej dotycz cej zmiennej wyj ciowej. Warto zmiennej wyj ciowej przypisana wektorowi x okre la wzór defuzyfikacji (10.36) w przypadku jednego wyj cia lub wzór (10.37) w przypadku wielu wyj . Taki algorytm post powania, do zło ony na etapie przygotowania tabeli reguł wynikowych podejmowania decyzji, umo liwia bezpo rednie sterowanie systemami w fazie odtworzeniowej bez potrzeby uczenia. Cała informacja ucz ca jest zawarta w tabeli reguł podejmowania decyzji, stanowi cej baz wiedzy o systemie.
Sieci neuronowe w uj ciu algorytmicznym
211
11. Implementacja sieci neuronowych w technologii VLSI Realizacja sprz towa algorytmów ucz cych sieci neuronowych stanowiła i nadal stanowi powa ne wyzwanie dla technologii o wielkim stopniu scalenia. Podstawowe problemy stwarza ogromna liczba neuronów i poł cze mi dzyneuronowych, zwłaszcza tych adaptacyjnych, dobieranych „on-line" w wyniku zastosowania algorytmu ucz cego, zaimplementowanego sprz towo. W tak skomplikowanych zadaniach, jak przetwarzanie mowy czy obrazów w czasie rzeczywistym s wymagane sieci zawieraj ce nierzadko 106 wag synaptycznych i umo liwiaj ce wykonanie l giga poł cze na sekund , przy małym poborze mocy, mniejszym ni 100 mW i małej powierzchni zajmowanej przez kostk , mniejszej ni 20 x 20 mm2. Powa ny problem stanowi zapewnienie odpowiedniej dokładno ci dla warto ci wag synaptycznych i funkcji aktywacji przez uwzgl dnienie minimum 8-bitowej reprezentacji. Przy obecnym poziomie rozwoju technologii o wielkim stopniu scalenia dost pne technologie analogowe zapewniaj , praktycznie bior c, dokładno maksymalnie do 8 bitów. Wi ksze dokładno ci mog by zrealizowane tylko przy zastosowaniu techniki cyfrowej, bardziej skomplikowanej układowe, ale zapewniaj cej dokładno odpowiadaj c nawet 16 bitom. W rozdziale tym zaprezentowano przegl d niektórych rozwi za analogowych i cyfrowych dotycz cych wybranych rodzajów sieci. W zako czeniu przedstawiono krótkie zestawienie najnowszych rozwi za komercyjnych osi galnych na rynku.
11.1. Elementy rozwi za analogowych sieci neuronowych 11.1.1. Realizacja neuronu sigmoidalnego Interesuj ce rozwi zanie układowe dotycz ce neuronów sigmoidalnych przedstawiono w pracy [76]. Dla zapewnienia łatwej zmiany konfiguracji sieci i ł czenia neuronów ze sob zaproponowano rozdzielenie schematu neuronu na dwie cz ci: cz synaptyczn (synaps chip), realizuj c mno enie wag przez odpowiednie składowe wektorów wej ciowych, oraz cz aktywacyjn (neuron chip), poddaj c sum wagow działaniu funkcji aktywacji.
Rysunek 61.1 Schemat rozwi zania analogowego cz ci synaptycznej neuronu Schemat cz ci synaptycznej przedstawiono na rys. 11.1 [76]. Składa si ona z szeregu układów mno cych zrealizowanych ka dy na 4 tranzystorach MOSFET, współpracuj cych ze wzmacniaczem operacyjnym. Element transkonduktancyjny gj zapewnia przekształcenie sygnału napi ciowego w sygnał pr dowy isj, stanowi cy wej cie dla drugiej cz ci układu realizuj cego sigmoidaln funkcj aktywacji (rys. 11.2). Cz synaptyczna układu jest równoległ struktur zbudowan z tranzystorów CMOS, realizuj c mno enie macierzy wag przez wektor sygnałów wej ciowych. Sygnały vw,jik odpowiadaj elementom macierzy wagowej j-tego neuronu, natomiast vy,ik stanowi elementy wektora wej ciowego. Jak pokazano w pracy [76], układ realizuje nast puj c funkcj :
is , j =
gj
n
(W / L )out (vc1 − vc2 ) i =1
(W / L )in (v w, ji1 − v w, ji 2 )(v y ,i1 − v y ,i 2 ) (11. 1)
przy czym gj jest transkonduktancj elementu wyj ciowego układu, (vw,ji1 – vw,ji2) oraz (vy,i1 – vy,i2) s napi ciami reprezentuj cymi współrz dne odpowiednio wektora wagowego neuronu oraz sygnału wej ciowego x sieci. Sygnał (vC1 — vC2) jest napi ciem steruj cym podwójnym tranzystorem MOSFET wł czonym w układzie
Sieci neuronowe w uj ciu algorytmicznym
212
sprz enia zwrotnego, a (W/L)in okre la stosunek szeroko ci do długo ci kanału tranzystorów Mi.
Rysunek 11.2 Schemat rozwi zania analogowego cz ci aktywacyjnej neuronu Cz aktywacyjna układu zawiera przetwornik pr du isj na napi cie V’ oraz realizacj sigmoidalnej funkcji tgh przy u yciu pary ró nicowej tranzystorów, generuj cej pr d ró nicowy
iC1 − iC 2 = αI b tgh
v' 2vt
(11. 2)
Ib jest pr dem progowym tranzystora, vt - napi ciem termicznym, a α = = -iC / iE przy czym iC,iE s odpowiednio pr dem emitera i kolektora tranzystora LPNP. Napi cie wyj ciowe układu opisuje wzór
vout = Vref + αRt I b tgh przy czym:
1
Rt = KN
W L
(vt1 − vt 2 )
R g i sj
(11. 3)
2vt 1
, Rg = KN
t
W L
(v
g1
− vg 2 )
g
KN jest transkonduktancj tranzystorów Mg i Mt, a VREF jest napi ciem odniesienia. ródłem sygnału wyj ciowego neuronu jest wtórnik napi ciowy, zrealizowany na wzmacniaczu operacyjnym. Badania testowe rozwi zania zrealizowanego w postaci układu zawieraj cego 4 neurony w kostce scalonej potwierdziły dobre wła ciwo ci statyczne i dynamiczne układu, umo liwiaj ce uzyskanie rozdzielczo ci odpowiadaj cej 10 bitom [76]. Dodatkow zalet układu jest łatwo uzyskania adaptacyjnych warto ci wag, a wi c mo liwo sprz towej realizacji algorytmu ucz cego. W tym celu wystarczy doł czy dodatkowy układ realizuj cy strategi ucz c , dostarczaj cy sygnałów wagowych vw,jik Przez odpowiednie poł czenia kaskadowo/równoległe mo na uzyska zwi kszenie liczby neuronów w warstwie i dowoln liczb warstw w sieci.
11.1.2. Realizacja scalona sieci rekurencyjnych Interesuj ce rozwi zanie sieci rekurencyjnych przedstawiono w pracy [3]. Punktem wyj cia w realizacji jest równanie dynamiczne opisuj ce sieci rekurencyjne, które tutaj zostanie napisane w postaci ogólnej
C
dy i = − g ( yi ) + dt
N j =1
W ji y j + I i (11. 4)
dla i = l, 2, . . . , N, przy czym N oznacza liczb neuronów, a g(y) = f -1(y) jest odwrotn funkcj aktywacji. Równaniu mo na przyporz dkowa obwód elektryczny z rys. 11.3, wykorzystuj cy elementy transkonduktancyjne jako
Sieci neuronowe w uj ciu algorytmicznym
213
Rysunek 11.3 Model obwodowy równania dynamicznego (11.4) mno niki synaptyczne Wji dokonuj ce mno enia sygnałów napi ciowych yj przez wagi Wij. Schemat układu wykorzystuj cego tranzystory MOSFET do realizacji elementu transkonduktancyjnego, przekształcaj cego napi cie V w pr d Iout z mno nikiem Wji, przedstawiono na rys. 11.4 [3], Rezystor nieliniowy wyst puj cy w obwodzie reprezentuje poł czone równolegle rezystancje wyj ciowe mno ników synaptycznych oraz dodatkowy rezystor nieliniowy o tak ukształtowanej charakterystyce, aby wypadkowa charakterystyka pr dowonapi ciowa układu odpowiadała odwrotnej funkcji aktywacji. Układ z rys. 11.3 odpowiada obwodowej realizacji sieci Hopfielda. Z tych samych bloków mo na zło y sie BAM bior c pod uwag równania ró niczkowe opisuj ce j :
C
C
dAi = −αAi + dt dB j dt
= −αB j +
M j =1
M i =1
W ji f (B j ) + I i (11. 5) W ji f ( Ai ) + I j (11. 6)
Rysunek 11.4 Model analogowy elementu transkonduktancyjnego
Sieci neuronowe w uj ciu algorytmicznym
214
Rysunek 11.5 Struktura sieci BAM zrealizowana przy u yciu elementów transkonduktancyjnych przy czym Ai, Bj oznaczaj sygnały wyj ciowe neuronów warstwy pierwszej i drugiej, f( ) jest funkcj sigmoidaln , α i C - współczynnikami stałymi, a Wji = Wij - wag synaptyczn identyczn w obu kierunkach przepływu sygnałów. Implementacja równa (11.5) i (11.6) mo e by przedstawiona w postaci układu dwuwymiarowego poł czonych ze sob neuronów o strukturze przedstawionej na rys. 11.5, realizuj cej jednocze nie wektor A (neurony pionowe) i wektor B (neurony poziome). Jest to typowa struktura modułowa, poddaj ca si procesowi scalenia. Autorzy zaproponowali równie rozwi zanie umo liwiaj ce wł czenie procesu uczenia (doboru wag) jako fragmentu rozwi zania układowego, wykorzystuj c przy tym model adaptacyjny uczenia Kosko, według którego
Cw
dW ji dt
= − βW ji + kAi B j (11. 7)
Współczynniki Cw,β oraz k s stałymi dodatnimi. Schemat ideowy, realizuj cy obwodowe równanie (11.7) przedstawiono na rys. 11.6, na którym M1, M2, M3 oznaczaj mno niki transkonduktancyjne. Uczenie sieci jest zrealizowane przez sekwencyjne przykładanie zbioru par ucz cych w postaci ródeł pr dowych Ii oraz J j w układzie sieci BAM. Wyniki bada eksperymentalnych przeprowadzonych na prototypie scalonym sieci BAM zawieraj cej 5 + 5 neuronów oraz dyskusj uzyskanych wyników mo na znale w pracy [3].
Sieci neuronowe w uj ciu algorytmicznym
215
Rysunek 11.6 Schemat obwodowy realizuj cy sprz towo adaptacj wag w sieci BAM
11.1.3. Realizacja scalona układu WTA Innym problemem technicznym wyst puj cym w sieciach wyłaniaj cych zwyci zc we współzawodnictwie neuronów (np. sie Kohonena, sie Ham-minga) jest rozwi zanie układu WTA, umo liwiaj ce szybkie, dynamiczne zmiany stanu neuronów i decyduj ce o sprawnym funkcjonowaniu sieci. Jedno z takich rozwi za wyró niaj ce si dobrymi wła ciwo ciami dynamicznymi przedstawiono na rys. 11.7, w którym ograniczono si do 4 kanałów. Układ zawiera na ogół m pojemno ci C1, C2, ..., Cm, które stanowi efektywn pojemno tranzystorów polowych, widzian z zacisków wej ciowych. W zły wej ciowy i wyj ciowy s tymi samymi punktami obwodu. Ka dy kanał zawiera m — l tranzystorów pMOS i jeden tranzystor nMOS. Tranzystory pMOS tworz p tle z dodatnimi sprz eniami zwrotnymi, podczas gdy ka dy tranzystor nMOS sterowany sygnałem bramkowym <£i tworzy sprz enie ujemne o działaniu gasz cym aktywno pozostałych. Obwód jest sterowany zegarem dwufazowym o przesuni tych impulsach steruj cych, tworz cych 3 fazy działania: wst pne ładowanie kondensatorów, faz poszukiwania warto ci minimalnej i wzmocnienie tej warto ci do standardowego poziomu. W fazie wst pnej, gdy aden klucz nie jest zał czony, kondensatory s ładowane do okre lonej warto ci. Przy ró nych warto ciach pojemno ci lub ró nych napi ciach wej ciowych gromadzi si na nich ró ny ładunek. Gdy φ2 osi gnie stan wysoki (faza druga), nast puje proces rozładowywania kondensatorów przez tranzystory.
Sieci neuronowe w uj ciu algorytmicznym
216
Rysunek 11.7 Rozwi zanie analogowe układu WTA: a) schemat układu tranzystorowego; b) posta impulsów steruj cych Je li przyjmie si , e QC1 > > QC2 > ••• > QCm, to w procesie rozładowania podobna relacja obowi zuje równie w stosunku do napi vC1(t) > vC2(t) > ••• > vCm(t). Je li napi cie kondensatora spadnie poni ej progu przewodzenia tranzystorów pMOS przył czonych do odpowiedniego w zła, tranzystory zostan odci te, przestaj c wpływa na proces zachodz cy w układzie. Odcinanie kolejnych sekcji tranzystorowych zachodzi do chwili, gdy w obwodzie pozostanie tylko jedna sekcja przył czona do kondensatora o najwi kszym ładunku. Kondensator ten jest zwyci zc we współzawodnictwie. Tranzystory o bramkach przył czonych do zwyci zcy przewodz , a tranzystory o drenach przył czonych do zwyci zcy s wył czone. W efekcie rozładowanie kondensatora zwyci zcy ustaje, a pozostałych kondensatorów nie, prowadz c do pełnego ich rozładowania. W fazie trzeciej, gdy φ1 jest w stanie niskim, a φ2 - wysokim, nast puje ponowne doładowanie kondensatorów, w wyniku którego odizolowany zwyci zca przyjmuje stan wysoki wynikaj cy z napi cia doładowuj cego go, a pozostałe kondensatory, zwarte przez przewodz ce tranzystory sterowane stanem wysokim zwyci zcy, pozostaj zwarte, utrzymuj c swój stan niski. Tego typu rozwi zanie wyłaniaj ce zwyci zc we współzawodnictwie zostało zastosowane przez autorów pracy [43] przy realizacji scalonej sieci Kohonena i Hamminga.
11.1.4. Rozwi zania dotycz ce sieci neuronowych rozmytych Kluczowym układem sieci neuronowych rozmytych jest obwód realizuj cy funkcj
przynale no ci o
Sieci neuronowe w uj ciu algorytmicznym
217
okre lonym kształcie i parametrach zmienianych za pomoc sygnałów lub elementów zewn trznych. Na rysunku 11.8 przedstawiono schemat obwodowy realizuj cy funkcj przynale no ci o ustawianym kształcie i parametrach. Ko cówki Xin i Vout oznaczaj w zły odpowiednio wej ciowy i wyj ciowy układu. Blok AK jest kluczem analogowym sterowanym zewn trznym sygnałem P.
Rysunek 11.8 Schemat obwodu realizuj cego ró ne postacie funkcji przynale no ci
Rysunek 11.9 Postacie funkcji przynale no ci realizowane przez obwód z rys. 11.8 Przy stanie niskim oba klucze analogowe s wył czone i pr d ródeł pr dowych I0 zamyka si w obwodzie zło onym odpowiednio z tranzystorów Q1, Q3, Q4 i Q6, Q8, Q9 oraz rezystorów Rc odkładaj c na nich napi cie IoRc ≈ 5 V. Poprzez układ zło ony z tranzystorów Q5, Q10, Q11 oraz 2 ródeł pr dowych I0’ napi cie na wyj ciu układu Vout pozostaje stałe, niezale nie od napi cia wej ciowego Xin. Układ znajduje si w stanie wył czonym. Je li P jest w stanie wysokim i ko cówki X0 — X1 s przył czone do rezystora RXL, a ko cówki X2 — X3 otwarte, to obwód realizuje funkcj przynale no ci kształtu S przedstawion na rys. 11.9a. Je li P jest w stanie wysokim i ko cówki X2 — X3 s przył czone do rezystora RXR a ko cówki X0 — X1 otwarte, to obwód realizuje funkcj przynale no ci kształtu Z przedstawion na rys. 11.9b. Je li P jest w stanie wysokim i ko cówki X0 — X1 oraz X2 — X3 s przył czone odpowiednio do rezystorów RXL i RXR, to jest realizowana funkcja trójk tna przedstawiona na rys. 11.9c. W przeciwnym przypadku przy P w stanie wysokim i ko cówkach X0 — X1 oraz X2 — X3 przył czonych odpowiednio do RXL + DL i RXR + DR jest realizowana funkcja trapezoidalna, przedstawiona na rys. 11.9d.
Sieci neuronowe w uj ciu algorytmicznym
218
Warto napi cia steruj cego Vs wpływa na punkty charakterystyczne krzywych, jak to przedstawiono na rys. 11.9, i umo liwia uzyskanie przesuni cia tych krzywych w osi poziomej. Dodatnie i ujemne nachylenia ka dej funkcji s odwrotnie proporcjonalne do RXL oraz RXR. Przez dobór tych rezystorów mo na regulowa stopie rozmycia odpowiadaj cy okre lonej warto ci sygnału wej ciowego Xin. W praktyce zmiana kształtu i parametrów funkcji przynale no ci odbywa si za po rednictwem 5-bitowego sygnału steruj cego. Szczegóły rozwi zania przedstawiono w pracy [156]. Drugim charakterystycznym układem dla sieci rozmytych jest układ defuzyfikatora przedstawiony na rys. 11.10. Zawiera on dzielnik napi ciowy AD538, dokonuj cy dzielenia sumy wagowej sygnałów poszczególnych funkcji przynale no ci przez prost sum sygnałów tych samych funkcji (sygnały od We0 do We24). Dodatkowy układ wyj ciowy zawiera sterowane rezystory RG i RNDC, umo liwiaj ce utrzymanie bipolarnych sygnałów wyj ciowych w zakresie od - 5 do 5 V oraz dobór odpowiedniej polaryzacji i wzmocnienia wzmacniacza wyj ciowego. Przegl d rozwi za analogowych dotycz cych sieci neuronowych rozmytych wraz z przykładami ich praktycznego zastosowania mo na znale w pracy [156].
Rysunek 11.10 Analogowy układ defuzyfikatora
Sieci neuronowe w uj ciu algorytmicznym
219
11.2. Przegl d komercyjnych układów scalonych W chwili obecnej powstało wiele rozwi za scalonych realizuj cych ró ne rodzaje sieci neuronowych i działaj cych w ró nych trybach jako jednostki samodzielne b d koprocesory współpracuj ce z komputerami. W przypadku trybu pracy jako koprocesor karta realizuj ca sie neuronow ma wykona zadanie zlecone jej przez komputer, a nast pnie wysła wyniki z powrotem do komputera. W przypadku pracy samodzielnej sie neuronowa mo e by zaimplementowana jako specjalizowany neurokomputer, zbudowany z elementów cyfrowych standardowych b d specjalizowanych. Szczególn odmian realizacji scalonej s kostki, z których mo na składa elementy wi kszych sieci neuronowych działaj cych samodzielnie lub we współpracy z mikrokomputerami. S one realizowane zarówno w technice cyfrowej, analogowej, jak i analogowo-cyfrowej. W realizacji układów scalonych sieci mo na wyró ni wiele czynników decyduj cych o jako ci i nowoczesno ci rozwi zania. Podstawowe parametry, na podstawie których mo na porównywa poszczególne rozwi zania, to: • liczba neuronów zawartych w jednej kostce scalonej podlegaj ca jednoczesnemu uczeniu, • liczba wej , czyli poł cze neuronu z sygnałami zewn trznymi uczestnicz cymi w procesie uczenia, • szybko uczenia mierzona w jednostkach zwanych MCUPS (Million Connection Updates Per Second), • szybko w fazie odtwarzania mierzona w jednostkach MCPS (Million Connections Per Second), • sposób realizacji scalonej: analogowy, cyfrowy, kodowany impulsowo, • dokładno (liczba bitów) u yta przy kodowaniu wag i okre laniu warto ci funkcji aktywacji sygnału wyj ciowego neuronu, • sposób uczenia sieci (wbudowany w struktur kostki b d realizowany zewn trznie poza kostk ), • liczba tranzystorów i powierzchnia zajmowana przez układ, • technologia wykonania, • pobór mocy przy jednej operacji i mocy całkowitej zu ywanej przez kostk .
11.2.1. Koprocesory neuronowe Powstało wiele rozwi za koprocesorów współpracuj cych z mikrokomputerami. Jednym z pierwszych był HNC ANZA Plus współpracuj cy z mikrokomputerem IBM PC [158]. Zawierał szereg mikroprocesorów MC68020 z numerycznym koprocesorem MC68881 oraz 4 MB DRAM pami ci głównej. Umo liwiał realizacj wielu algorytmów ucz cych, w tym algorytmu propagacji wstecznej, uczenie sieci Hopfielda, BAM, kontrpropagacji itp. Wbudowana pami umo liwiała wykonanie 1,5 miliona poł cze i zapami tanie stanu miliona neuronów. Szybko działania systemu to 1,5 MCUPS i 1,5 MCPS. Z nowszych rozwi za koprocesorów najbardziej znane to „Recogni-tion Accelerator" NI1000 firmy Nestor/Intel oraz COKOS (COprocessor for KOhonen Selforganizing map) opracowany na uniwerystecie w Tybindze, współpracuj ce z mikrokomputerami IBM PC. Koprocesor NI1000, opracowany przez firm Intel w 1993 r. [99], realizuje działania matematyczne dotycz ce sieci o radialnych funkcjach bazowych i umo liwia pełn realizacj sieci tego typu wł cznie z procesem uczenia i fazy odtworzeniowej. Sie RBF mo e zawiera 256 wej , 1024 neuronów ukrytych i 64 neuronów wyj ciowych. Koprocesor potrafi przetworzy w ci gu sekundy 40 000 wzorców o wymiarze 256, wykonuj c 16,5 miliardów operacji. Algorytm ucz cy jest wbudowany w struktur układu i stanowi jego integraln cz . Całe rozwi zanie zawiera 3,5 miliona tranzystorów. Podstawowe zastosowania układu to przetwarzanie obrazów, zwłaszcza w dziedzinie automatycznego rozpoznawania kodów pocztowych, przetwarzanie dokumentów-biurowych, kontrola jako ci ró nych procesów przemysłowych, wykrywanie uszkodze w systemach kart kredytowych itp. Koprocesor COKOS [132] jest przeznaczony do współpracy z mikrokomputerem IBM PC do realizacji działa zwi zanych z procesem samoor-ganizacji sieci Kohonena. Jego prototyp składa si z 8 równoległych jednostek przetwarzaj cych zwanych MAB (Memory Arithmetic Board), układu sumatora i sterownika umo liwiaj cego współprac z komputerem. Ka da jednostka MAB zawiera układ odejmuj cy, mno nik i sumator, poł czone kaskadowo, przesyłaj ce wynik swego działania do pami ci RAM (rys. 11.11). Elementy wektora wagowego s kodowane 16-bitowo. Ka dy blok MAB oblicza kwadrat ró nicy mi dzy odpowiedni składow wektora x oraz wag . Sumy poszczególnych kwadratów realizowane przez sumator tworz norm wektorow ró nic porównywan z odpowiednimi normami ró nych neuronów przez blok selekcjonuj cy warto maksymaln układu WTA.
Sieci neuronowe w uj ciu algorytmicznym
220
Rysunek 11.11 Ogólny schemat poł cze koprocesora COKOS Układ WTA przesyła współrz dne zwyci zcy do komputera wyznaczaj cego neurony nale ce do s siedztwa, podlegaj ce adaptacji, oraz parametry u yte w uaktualnianiu wag tych neuronów. Wektor x jest przesyłany powtórnie do koprocesora i uczestniczy w adaptacji neuronów podlegaj cych douczaniu. Zastosowanie koprocesora umo liwia w istotny sposób przyspieszenie procesu uczenia. Autorzy COKOS-a opracowali nast pny koprocesor, tym razem do sieci wielowarstwowej trenowanej przy u yciu algorytmu propagacji wstecznej [133]. Jest to koprocesor KOBOLD umo liwiaj cy przeprowadzenie uczenia w trybie „on-lin ". W układzie 128-procesorowym jego moc obliczeniowa wynosi 122 MCUPS. Dzi ki jego zastosowaniu mo liwe stało si ponad 800-krotne przyspieszenie oblicze numerycznych na stacji SUN SPARC10.
11.2.2. Specjalizowane rozwi zania neurokomputerów Pierwszym komercyjnym rozwi zaniem neurokomputera był TRW MARK III Hechta-Nielsena [45], a nast pnie jego ulepszona wersja w postaci TRW MARK IV, współpracuj ce z komputerem VAX. Wersja czwarta miała pojemno 250 000 neuronów i 5,5 miliona poł cze synaptycznych. Szybko uczenia wynosiła 5 MCUPS, a odtwarzania 5 MCPS. W kodowaniu wag wykorzystano 21 bitów w systemie stałopozycyjnym, a w przypadku funkcji aktywacji 8 bitów. W latach 1990-1992 w International Computer Science Institute (ICSI) w Berkeley, a nast pnie w firmie Fujitsu w Japonii powstały rozwi zania procesorów o strukturze pier cieniowej (Ring Array Processor RAP) [158]. Ogóln struktur tego rozwi zania przedstawiono na rys. 11.12. Dane zewn trzne dostarczane sieci, sygnały wyj ciowe poszczególnych warstw neuronów, jak równie bł dy dopasowania przetwarzane przez algorytm propagacji wstecznej s przesyłane za po rednictwem magistrali w układzie pier cieniowym w jednym kierunku. Ka da dana zawiera swój adres, po którym jest rozpoznawana przez odpowiedni procesor, a nast pnie zapami tywana. Obie wersje ró ni si liczb procesorów sygnałowych (40 w wykonaniu ICSI i 256 w wykonaniu Fujitsu). Podstawowe przetwarzanie sygnałów zachodz ce w strukturze pier cieniowej jest wspomagane oprogramowaniem realizuj cym podstawowe procedury biblioteki macierzowej u ywanej przy przesyłaniu sygnałów ucz cych w sieci neuronowej w obu kierunkach wymaganych w metodzie propagacji wstecznej. Przy 40 procesorach RAP w wykonaniu ICSI osi gn ł maksymaln moc 558,3 MCPS w trybie odtwarzania i 102,1 MCUPS w trybie ucz cym. 256-procesorowy RAP Fujitsu osi gn ł maksymaln moc obliczeniow 567 MCUPS przy rozwi zaniu problemu NETtalk [158] w strukturze jednokierunkowej sieci sigmoidalnej 203-12026 (203 wej , 120 neuronów ukrytych i 26 neuronów wyj ciowych).
Sieci neuronowe w uj ciu algorytmicznym
221
Rysunek 11.12 Neurokomputer o strukturze pier cieniowej RAP: a) ogólny schemat poł cze procesorów; b) schemat jednego procesora Oprócz wymienionych ju neurokomputerów budowanych z elementów standardowych powstały równie rozwi zania specjalizowane, wykorzystuj ce układy scalone zaprojektowane specjalnie w tym celu. Mo na tu wymieni neurokomputer HNC SNAP firmy Hecht-Nielsen Neurocomputer, HNC Inc., CNAPS firmy Adaptive Solutions, SYNAPS -1 firmy Siemens czy CNS-1 Instytutu ICSI w Berkeley. Systemy SNAP i CNAPS s dost pne w sprzeda y komercyjnej od 1992 r., SYNAPSE-1 od 1994 r,, a CNS-1 jest jeszcze w fazie opracowywania. Struktura neurokomputera SNAP mo e zawiera maksymalnie 4 płyty główne, zawieraj ce po 4 kostki, na których znajduj si po 4 procesory sygnałowe (PE), ka dy współpracuj cy z pami ci (M) o pojemno ci 64 MB (rys. 11.13). Procesor sygnałowy PE zawiera układ mno cy zmiennopozycyjny i jednostk arytmetyczno-logiczn ALU pracuj ce równolegle i maj ce poł czenie przez liniow szyn systoliczn z dwoma najbli szymi procesorami. Współprac koprocesorów z komputerem (IBMPC, SUN, IBM RS 6000 Workstation) zapewnia sterownik, steruj cy procesem przetwarzania informacji w systemie. Maksymalna moc obliczeniowa rozwi zania to 302 MCUPS zmierzona dla sieci jednokierunkowej dwuwarstwowej o strukturze 512-512-512 [158]. Znacznie wi ksz moc obliczeniow ma neurokomputer CNAPS. Najwi ksza z wersji zawiera 512 procesorów sygnałowych CNAPS 1064, umo liwiaj cych uzyskanie 5800 MCPS w trybie odtworzeniowym pracy i 1950 MCUPS w trybie ucz cym. Realizacja sprz towa współpracuje ze rodowiskiem oprogramowania, dysponuj cym bibliotek podstawowych programów w assemblerze i j zyku C, umo liwiaj c równie dalszy rozwój własnego oprogramowania u ytkowego.
Sieci neuronowe w uj ciu algorytmicznym
222
Rysunek 11.13 Struktura neurokomputera SNAP Neurokomputer SYNAPSE-1 Siemensa bazuje na specjalnie zaprojektowanym procesorze neuronowym MA16 wykonuj cym operacje najbardziej zło one obliczeniowo. Operacje mniej zło one wykonuje procesor Mo-toroli MC 68040 znajduj cy si na segmencie danych. Funkcje sterowania systemem i komunikowania si z komputerem głównym wykonuje moduł sterowania procesora MC 68040. Wagi synaptyczne s przechowywane w pami ci DRAM o pojemno ci 128 MB. Ogólny schemat rozwi zania SYNAPSE-1 przedstawiono na rys. 11.14. Moc obliczeniowa SYNAPSE-1 przy 40 MHz cz stotliwo ci zegara wynosi 5,1 x 109 operacji mno enia/dodawania, przy czym mno enie jest 16-bitowe, dodawanie 32-bitowe, a akumulator 48-bitowy. Ocenia si , e w tych warunkach b dzie zdolny wykona 2 GCUPS, a wi c wielokrotnie wi cej ni jakikolwiek jego poprzednik.
Rysunek 11.14 Struktura ogólna neurokomputera SYNAPS -1 W 1994 r. ukazała si wst pna seria 20 sztuk tego neurokomputera przeznaczona dla wy szych uczelni i zastosowa przemysłowych. W chwili obecnej oprogramowanie neurokomputera umo liwia przeprowadzenie fazy ucz cej i odtworzeniowej ró nego typu sieci neuronowych, w tym sieci wielowarstwowych sigmoidalnych, rekurencyjnych, sieci Hopfielda, maszyny Boltzmanna, sieci ART-2 Grossberga, sieci Kohonena, RBF itp.
11.2.3. Układy scalone analogowe Oprócz procesorów cyfrowych, dost pnych b d w postaci oddzielnego koprocesora, b d w postaci neurokomputera, omówionych wcze niej, istniej rozwi zania analogowe bazuj ce na technologii całkowicie analogowej lub analogowo-cyfrowej. Główn ich zalet jest mniejsza zaj to powierzchni, umo liwiaj ca
Sieci neuronowe w uj ciu algorytmicznym
223
budow wi kszych układów o wi kszej liczbie neuronów i poł cze synaptycznych. Wad , przy obecnym stanie technologii, jest mniejsza osi galna dokładno , odpowiadaj ca najcz ciej 4-8 bitom. Do najbardziej znanych analogowych układów scalonych nale opracowania firmy AT&T, Bell Telephone Holding Company, Bellcore oraz firmy Intel. Rozwi zania firmy AT&T z 1991 r. realizowane w technologii 0,9 µm CMOS umo liwiły uzyskanie 256 neuronów i 8192 poł cze wagowych na powierzchni 4,5x 7 mm2. Układ scalony umo liwia uzyskanie zmiennej struktury sieci i zró nicowanej liczby poł cze wagowych. Dokładno ustawienia warto ci wag odpowiada 4 bitom. Nie istniej mo liwo ci przeprowadzenia doboru wag metod uczenia „on-line". Maksymalna moc obliczeniowa w fazie odtwarzania wynosi 80 GCPS. Rozwi zanie firmy Bellcore (dost pne dane z 1991 r.) umo liwia umieszczenie na powierzchni 7x8 mm2 około 160 000 tranzystorów, co odpowiada 32 neuronom i 992 poł czeniom synaptycznym. Moc obliczeniowa jest stosunkowo niewielka, około 100 MCPS. Dokładno zadawania wag odpowiada 5 bitom. Układy mo na ł czy w systemy kaskadowe z wyj ciem jednego układu przył czonym bezpo rednio do wej cia nast pnego. Rozwi zanie firmy Intel w postaci układu 80170NX, znanego równie jako ETANN (Electrically Trainable Analog Neural Network) zawiera 64 neurony i 10 260 poł cze wagowych podlegaj cych uczeniu „on-line". Zostało wykonane w technologii CMOS III EEPROM. Schemat ogólny układu przedstawia rys. 11.15 [54]. 64 wej cia analogowe za po rednictwem bufora s przekazywane do tablicy wag synaptycznych o wymiarach 64 x 64, w której odbywa si proces mno enia wektorowego. Druga tablica o identycznych wymiarach mo e słu y do rozszerzenia wymiaru wektora wej ciowego lub zmiany typu sieci na rekurencyjn . Mno enie odbywa si poprzez oddziaływanie wag na pr d tranzystorów, który jest nast pnie sumowany w układzie sumatora analogowego. Funkcja sigmoidalna jest równie realizowana przez układy analogowe. Sygnały wyj ciowe s tak e wyprowadzane na zewn trz z mo liwo ci sprz enia zwrotnego z wej ciem. Zmiany warto ci wag w systemie 6-bitowym odbywaj si przy pomocy napi programuj cych, steruj cych bramkami odpowiednich tranzystorów za po rednictwem układu adresowego. Układ scalony mo e współpracowa z mikrokomputerem za po rednictwem systemu INNTS, oferowanego przez firm Intel. Teoretyczn moc obliczeniow układu zło onego z 8 jednostek ETANN ocenia si na 16 GCPS. Na etapie rozwoju znajduje si wiele rozwi za scalonych zarówno w technologii analogowej, jak i hybrydowej, w której cz operacji jest wykonywana analogowo, a cz cyfrowo. Przykładem takiego rozwi zania jest kostka oferowana przez Korea Telecom Development Center [38], zrealizowana w technologii 1,0 (im CMOS. Zawiera on 135 424 wag synaptycznych z mo liwo ci doboru od 92 do 1472 synaps na neuron. Dokładno ustawienia warto ci wag odpowiada 8 bitom. Przy impulsowo kodowanym systemie obliczeniowym, zastosowanym w rozwi zaniu, moc obliczeniowa wynosi 200 GCPS w fazie odtworzeniowej.
Sieci neuronowe w uj ciu algorytmicznym
224
Rysunek 11.15 Schemat neuronowego układu analogowego ETANN Nale y podkre li , e rozwój tej dziedziny technologii, obejmuj cej układy o ultra wielkim stopniu scalenia (ULSI), jest ogromny i ka dy rok przynosi post py odpowiadaj ce w przybli eniu podwojeniu dotychczasowych osi gni .
Sieci neuronowe w uj ciu algorytmicznym
225
Dodatek 10 A - Opis programu Netteach Program Netteach opracowany w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej jest programem ucz cym sieci neuronowych wielowarstwowych sigmoidalnych przy zastosowaniu metody zmiennej metryki i gradientów sprz onych oraz minimalizacji kierunkowej do doboru optymalnej warto ci współczynnika uczenia. Został w cało ci napisany w j zyku C i C~-+ z wykorzystaniem rozszerzenia systemu DOS (kompilator WATCOM, wersja 9.5b). Program dopuszcza istnienie dowolnej liczby warstw o funkcji aktywacji neuronów w ka dej warstwie okre lanej oddzielnie. Do wyboru pozostaje funkcja liniowa Lin, sigmoidalna unipolarna Sigm lub sigmoidalna bipolarna Bip.
A.1. Przygotowanie plików z danymi Okre lanie struktury sieci przez u ytkownika odbywa si za po rednictwem pliku wej ciowego (standardowe rozszerzenie .net). Struktura pliku mo e mie nast puj cy posta : {NeuralNetwork: %Pocz tek pliku ~Layer.~INPJ n = N bias = P fun=Sigm~RJ :Layer} %Warstwa wej ciowa ~Layer:~1J n = N bias = P fun=Bip(~3J :Layer} %Warstwa #1 ~Layer:(mJ n = N bias = P f fun=Lin~~3J :Layer} %Warstwa #m :NeuralNetwork} %Koniec pliku Program zaczyna si lini {NeuralNetwork:, a ko czy lini :NeuralNetwork} lub nawiasem klamrowym zamykaj cym }. Ka da linia pliku definiuje jedni warstw neuronów poczynaj c od warstwy wej ciowej [INP), po której nast puje kolejne warstwy ukryte [l~, [2), ..., [m~, przy czym m oznacza jednocze nie warstw wyj ciowi. Wyra enie n = N definiuje liczb N neuronów w warstwie. Deklaracja opcjonalna bias deklaruje poł czenie neuronów w warstwie z polaryzacj P, przy czym zwykle P przyjmuje warto równi 1 lub 0. Ostatnie wyra enie w linii jest deklaracji typu funkcji aktywacji (Lin, Sigm lub Bip). Funkcja sigmoidalna jest zapisana jako Sigm[β] lub Bip[β], przy czym ~3 jest współczynnikiem wyst puj cym w funkcji sigmoidalnej (warto wbudowana równa 1). Dane ucz ce sie s~ przygotowane w pliku z rozszerzeniem .inp. Składaj si z szeregu linii definiuj cych składowe wektorów wej ciowych x oraz warto ci dane wyra one za pomoc składowych wektorów d. Plik ma nast puj c struktur : {NetworkSignals: %Pocz tek pliku danych {Inp: %Pocz tek próbki ucz cej x1 x2 … xN %Składowe wektora x Dest: d1 d2 … dM % Składowe wektora d } %Koniec próbki ucz cej ... NetworkSignals} %Koniec pliku danych Dane wej ciowe mog zajmowa dowoln liczb linii - ich ogranicznikiem jest nawias klamrowy zamykaj cy ka dy próbk ucz c. Struktura danych przedstawiona powy ej dotyczy sieci typu heteroasocjacyjnego. W przypadku sieci autoasocjacyjnych zamiast wypisywania kolejnych współrz dnych wektora d mo na zapisa : Dest := Inp. W obu plikach dopuszczalne s linie komentarza rozpoczynaj ce si znakiem %. Program dopuszcza ograniczenia na okre lone wagi neuronów w sieci. Dopuszczalne s ograniczenia równo ciowe typu Wij = Wkl lub Wij = const. Ograniczenia tego typu nakładane przez u ytkownika powinny by zawarte w pliku z rozszerzeniem .eqx. Format pliku jest zadany w nast puj cej postaci: {EqXconstr: %Pocz tek pliku ogranicze W [i][j][k] = W [r][l][s] %Waga jednego neuronu równa innej lub W[i][j][k] = W[r][l][s] = W[p][q][t] %Wiele wag neuronów równych sobie lub 10
Programy opisane w dodatkach A, B, C s zamieszczone na dyskietce doł czonej do ksi ki.
Sieci neuronowe w uj ciu algorytmicznym
W [i][j][k] = A EqXconstr}
226
%Waga równa stałej A %Koniec pliku ogranicze
Przy oznaczeniu wagi W [i][j][k] przyj to zasad , e pierwszy wska nik [i] oznacza numer warstwy (pierwsza warstwa ukryta nosi numer 1), wska nik drugi [j] oznacza numer neuronu w warstwie, natomiast wska nik trzeci [k] oznacza numer neuronu, od którego wychodzi poł czenie mi dzyneuronowe.
A.2. Opcje wywołania programu Sposób wywołania programu jest nast puj cy: Netteach [ -? – switches] arg1 arg2 [arg3] [arg4] Znaczenie poszczególnych opcji wyst puj cych w linii wywołania programu jest nast puj ce: - ? - help wyja niaj cy sposób wołania programu arg1 - nazwa pliku ze struktur sieci arg2 - nazwa pliku z danymi ucz cymi arg3 - nazwa pliku, do którego s~ wpisywane warto ci nauczone wag sieci (bez tej opcji b d dopisane do netteach.net) arg4 - nazwa pliku, do którego s wpisywane wyniki testowe sieci na danych ucz cych po nauczeniu sieci. Zawieraj one wektor ucz cy x, wyniki aktualne na wyj ciu sieci w postaci wektora y oraz warto ci zadane wektorem d Dodatkowo program poza ingerencj u ytkownika generuje plik netteach.tab zawieraj cy wyniki testowe sieci w postaci tabelarycznej dotycz ce jedynie wektora wyj ciowego y. Przeł czniki zadawane w postaci opcji -switches mog mie posta : •
-a~alyseOnly, przy którym sie dokonuje jedynie analizy sygnałowej przy zadanym ci gu wektorów wej ciowych x (tryb odtworzeniowy sieci)
•
-eqxFile, przy którym sie przyst puje do uczenia z zadanymi ograniczeniami na wagi sieci
•
-lo, warto minimalna nakładana na wagi w czasie uczenia
•
-up, warto maksymalna nakładana na wagi w czasie uczenia
•
-gtol, tolerancja normy gradientu warunkuj ca zako czenie procesu uczenia (warto wbudowana równa lE-5)
•
-cgMethod, niezale nie od ilo ci zmiennych program przeł cza si sprz onych
na algorytm gradientów
Przy pomini ciu wszystkich polece opcjonalnych nast puje proces uczenia sieci bez adnych ogranicze nakładanych na wagi, przy standardowym oznaczeniu poszczególnych plików pojawiaj cych si w linii wywołania. Przed przyst pieniem do uczenia nale y dokona „randomizacji" wag (patrz rozdz. 2) w zakresie okre lonym parametrem treshold. Dokonuje si tego przez wywołanie programu w_rand według wzorca: w_rand [-? -ini -seed -abs -treshold value] inputfile [outputfile] w którym -? - help wyja niaj cy sposób wołania programu -ini - opcja przypisania wst pnych warto ci losowych wagom sieci (bez tej opcji warto ci losowe s dodawane do aktualnych warto ci wag) -seed - warto startowa generatora losowego (warto wbudowana 1) -treshold value - zakres warto ci losowych wag (równy value) inputfile - plik zawieraj cy opis struktury sieci (z rozszerzeniem .net) outputfile - plik zawieraj cy opis struktury sieci z warto ciami dobranymi wag (warto wbudowana równa inputf ile)
Sieci neuronowe w uj ciu algorytmicznym
227
Dodatek B - Opis programu Cascor Program Cascor jest implementacj algorytmu kaskadowej korelacji Fahlmana, słu cym do jednoczesnego budowania struktury sieci neuronowej i doboru jej parametrów. Aktualna wersja programu bazuje na programie ródłowym Cascor.c dost pnym w Internecie pod adresem wskazanym w rozdz. 3 i jest wersy zmodernizowani w Instytucie Elektrotechniki Teoretycznej i Miernictwa Elektrycznego Politechniki Warszawskiej. Program skompilowany z zastosowaniem kompilatora WATCOM 9.5b wymaga przy uruchomieniu programu dos4gw.exe.
B.1. Opis parametrów wywołania programu Program jest wołany poleceniem Cascor, po którym mo na wczyta plik opisuj cy struktur sieci i dane ucz ce (polecenie loadData), jak równie dane konfiguracyjne sieci (polecenie loadConfig) po ich uprzednim zapami taniu polecenia saveConfig oraz wagi wytrenowanej sieci (polecenie loadNet) po ich uprzednim zapami taniu (opcja saveWeights on). Dodatkowe polecenia dost pne w programie to: help - pomoc, ? wy wietlenie jednostronicowej uproszczonej wersji help, go - uruchomienie programu, quit - opuszczenie programu. Podstawowa jednostronicowa wersja help zawiera uproszczony opis parametrów steruj cych działaniem programu. Znaczenie poszczególnych parametrów wyst puj cych w uproszczonej wersji help jest nast puj ce (w nawiasach kwadratowych pokazano warto ci wbudowane): bias [1.000] - Polaryzacja (bias), zwykle równa 1 candChangeThreshold [0.03] - Zmiana korelacji najlepszego neuronu kandydata uznana za istotn candDecay [0.000] - Współczynnik redukcji zmiany warto ci wag neuronu kandydata candEpochs [200] - Maksymalna liczba cykli ucz cych neuronów kandydatów candEpsilon [100.000] - Warto tolerancji epsilon wpływaj ca na za ko czenie procesu uczenia neuronu kandydata candMu [2.000] - Maksymalny wzrost wagi wzgl dem warto ci poprzedniej dla neuronu kandydata candNewType [Sigmoid] - Funkcja aktywacji neuronu kandydata: Sig, Asig, Varsig, Gaussian candPatience [12] - Maksymalna dopuszczalna liczba cykli ucz cych bez poprawy wyniku dla neuronu kandydata errorIndexThreshold [0.20] - Dopuszczalny bł d neuronu wyj ciowego przy zastosowaniu miary ci głej errorMeasure [Bits] - Miara bł du: Bits - liczba neuronów nie spełniaj cych dokładno ci, Index -miara Lapedesa maxNewUnits [25] - Maksymalna liczba neuronów ukrytych Ncand [8] - Maksymalna liczba neuronów kandydatów na etapie wst pnego uczenia Ntrials [1] - Liczba podj tych prób uczenia sieci outDecay [0.000] - Współczynnik redukcji zmiany warto ci wag neuronu wyj ciowego outEpochs [200] - Maksymalna liczba cykli ucz cych dla neuronu wyj ciowego outEpsilon [1.000] - Warto eps wpływaj ca na proces uczenia neuronu wyj ciowego outErrorThreshold [0.010] - Zmiana bł du wyj ciowego uwa ana za znacz c outMu [2.000] - Maksymalny wzrost wagi w porównaniu z warto ci poprzedni dla neuronu wyj ciowego outPatience [12] - Liczba dopuszczalnych cykli ucz cych bez poprawy wyniku dla neuronu wyj ciowego outSigMax [0.500] - Maksymalna warto sigmoidy neuronu wyj ciowego dla funkcji aktywacji typu Varsig outSigMin [-0.500] - Minimalna warto sigmoidy neuronu wyj ciowego dla funkcji aktywacji typu Varsig parseInBinary [False] - Sposób prezentacji danych wej ciowych: True - binarny, False – dziesi tny parseOutBinary [False] - Sposób prezentacji danych wyj ciowych: True - binarny, False – dziesi tny predictOnly [True] - Testowanie sieci: True - bez fazy ucz cej, False - z faz ucz c scoreThreshold [0.400] - Dopuszczalny bł d neuronu wyj ciowego dla miary binarnej sigMax [0.500] - Maksymalna warto sigmoidy neuronu kandydata dla funkcji aktywacji typu Varsig
Sieci neuronowe w uj ciu algorytmicznym
sigMin [-0.500] sigPrimeOffset [0.100] test [True] useCache [True] validate [False] valPatience [12] weightMultiplier [1.000] weightRange [1.000] win.R,adius [3]
228
- Minimalna warto sigmoidy neuronu kandydata dla funkcji aktywacji typu Varsig - Warto progowa zaburzaj ca sigmoid dla unikni cia minimum lokalnego - Testowanie sieci po nauczeniu: True - tak, False – nie - Korzystanie z pami ci podr cznej: True - tak, False – nie - Ustawienie sprawdzenia uczenia: True - tak, False – nie - Liczba cykli ucz cych bez poprawy wyniku neuronu kandydata - Mno nik wag neuronów wyj ciowych - Zakres randomizacji wag ( (+-) weight - Range) - Liczba wzorców przed/po aktualnym wzorcu, uwzgl dnianych na danym etapie uczenia
B.2. Przygotowanie plików ucz cych Plik ucz cy dla programu Cascor zawiera jednocze nie opis liczby i rodzajów wej i wyj sieci (wielko ci stałe nie podlegaj ce modyfikacji przez program) oraz danych ucz cych (po słowie kluczowym $TRAIN),, danych sprawdzaj cych stopie wytrenowania (po słowie kluczowym $VALIDATION) oraz danych testuj cych (po słowie kluczowym $TEST). Sposób umieszczenia wszystkich rodzajów danych jest jednakowy: najpierw składowe wektora wej ciowego x rozdzielone przecinkami, a potem po znaku => składowe wektora wyj ciowego d. Wszystkie linie programu s zako czone rednikiem. rednik na pocz tku linii stanowi pocz tek linii komentarza. Poni ej pokazano fragmenty pliku danych ucz cych problemu 2 spiral dla programu Cascor operuj ce dwoma typami danych: binarne (BINARY) oznaczone w postaci + lub - oraz liczbowe ci głe (CONT) w postaci liczb rzeczywistych: ;Przykład pliku danych do problemu 2 spiral $SETUP PROTOCOL: I0; OFFSET: 0; INPUTS: 2; OUTPUTS: 1; IN [i]: CONT {6.50,-6.50};
Sieci neuronowe w uj ciu algorytmicznym
229
Dodatek C - Opis programu Hfnet Program Hfnet słu y do uczenia i testowania sieci Hopfielda. Jest to program graficzny, interakcyjny, w którym wszystkie wzorce ucz ce i testuj ce zadaje si graficznie z u yciem myszki. Uczenie sieci mo e przebiega zgodnie z metody Hebba, metod rzutowania lub rzutowania O. Wybór opcji jest dokonywany równie myszki z menu pojawiaj cego si po wybraniu opcji NET. Przykładowo posta ekranu po wywołaniu programu pokazano na rysunku C.1. Lewa cz ekranu słu y do wpisywania wzorców podlegaj cych bud uczeniu, b d odtwarzaniu, natomiast prawa - wzorcom odtworzonym przez sie wytrenowani na bazie wzorców ucz cych. Opcja NET powoduje zapocz tkowanie pracy (wybór rozdzielczo ci wzorca, metody uczenia i polaryzacji). Lewy przycisk myszki powoduje przesuw submenu do przodu, prawy przycisk - do tyłu. Opcja LOAD powoduje załadowanie pliku ucz cego, jednego spo ród ju istniej cych. Opcja INPUT umo liwia wpisywanie nowych wzorców (zaczernienie pola nast puje przez klikni cie lewym przyciskiem myszki, powtórne klikni cie powoduje powrót do stanu pocz tkowego). Zako czenie wpisywania wzorca odbywa si po naci ni ciu prawego przycisku myszki i wybraniu opcji ENTER na polu menu. Opcja LEARN umo liwia przeprowadzenie fazy ucz cej sieci przy zastosowaniu metody wybranej wcze niej podczas definiowania sieci (opcja NET). Po jej przeprowadzeniu wpisanie nowego wzorca (opcja INPUT) jest traktowane jako pocz tek fazy odtworzeniowej, czyli testowania wytrenowanej sieci na nowych wzorcach. Wej cie w t faz nast puje po wybraniu opcji EXEC. Wynik fazy odtworzeniowej jest przedstawiony na prawej połówce ekranu, obok prezentowanego na lewej połówce wzorca wej ciowego. Opcja QUIT umo liwia wyj cie z programu. Program generuje dwa pliki wynikowe: weigicts.net zawieraj cy warto ci wag sieci oraz Patterns.net przedstawiaj cy wzorce ucz ce wprowadzone podczas fazy ucz cej. Przedstawiona tu wersja programu u ywa kompilatora WATCOM 9.5c, st d katalog roboczy powinien zawiera program dos4gw.exe.
Rysunek C.1 Przykładowa posta ekranu po wywołaniu programu
Sieci neuronowe w uj ciu algorytmicznym
230
Bibliografia 1. 2. 3. 4. 5.
6.
7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
21. 22. 23. 24. 25. 26. 27.
Almeida L. B.: Backpropagation in non-feedforward networks. Proc. of the NATO ARW on Neural Computers. Springer Verlag, Heidelberg 1993, s. 74-91. Amari S. L, Mathematical theory of neural learning. New Geraeratiora Computing, 1991, Vol. 8, s. 281-294. Barranco B., Sanchez-Sinencio E., Rodriguez-Vazquez A., Huertas J.: A CMOS analog adaptive BAM with on-chip learning and weight refreshing. IEEE Trans. Neurnd Networks, 1993, Vol. 4, s. 445-455. Cardosso J. F., Belouchrani A., Laheld B.: A new composite criterion for adaptive and iterative blind source separation. Proc. ICASSP, Adalaide 1994, Vol. IV, s. 273-276. Cottrell M., Girard B., Girard Y., Muller C., Rousset P.: Daily electrical power curve: classification and forecasting using a Kohonen map. W: Prom Natural to Artiftcial Neurad Computation. Eds J. Mira, F. Sandoval. IWANN, Malaga 1995, s. 1107-1113. Cottrell G., Munro P., Zipser D.: Image compression by back propagation: an example of extensional programming. Technical Report ICS report 8702, ICS-UCSD, San Diego, California, USA, February 1987. Chang W., Soliman H. S., Sung A. H.: A vector quantization neural network to compress still monochrome images. Proc. ICNN, Orlando 1994, s. 4163-4168. Chen S., Cowan C. F., Grant P. M.: Orthogonal least squares learning algorithm for radial basis function networks. IEEE Tra~as. Neural Networks, 1991, Vol. 2, s. 302-309. Chen D., Jain C.: A robust back propagation learning algorithm for function approximation. IEEE Trans. Neural Networks, 1994, Vol. 5, s. 467-479. Cheng Y. H., Lin C. S.: Learning algorithm for radial basis function network with the capability of adding and pruning neurons. Proc. ICNN, Orlando 1994, s. 797-801. Chauvin Y.: A back propagation algorithm with optimal use of hidden units, w Advances in NIPS. Ed. D. Touretzky. Morgan Kaufmann, San Mateo 1989, s. 519-526. Chinrungrueng C., Sequin C. H.: Optimal adaptive K-means algorithm with dynamit adjustment of learning rate. IEEE Trans. Neurad Networks, 1995, Vol. 6, s. 157-169. Cichocki A., Unbehauen R.: SC neural networks for differential optimization. Int. J. C. T. Appd., 1991, Vol. 19, s. 161-187. Cichocki A., Moszczy ski L.: New learning algorithm for blind separation of sources. Electranics Letters, 1992, Vol. 28, s. 1986-1987. Cichocki A., Unbehauen R.: Neural networks for solving systems of linear equations and related problems. IEEE Trans. CAS, 1992, Vol. 39, s. 124-138. Cichocki A., Unbehauen R.: NeuraI Networks for Optz~nizataon and Sagnal Processing. J. Wiley, New York 1993. Cichocki A., Moszczy ski L.: BS - program of blind separation of sources, user manual. Politechnika Warszawska, Warszawa 1994. Cichocki A., Unbehauen R., Moszczy ski L., Rummert E.: A new on-line adaptive learning algorithm for blind separation of source signals. ISANN, Taiwan 1994, s. 421-427. Cichocki A., Moszczy ski L.: Improved adaptive algorithms for blind separation of sources. KKTOiUE, Zakopane 1995. Cohen M. A., Grossberg S.: Absolute stability of global pattern formation and parallel memory storage by competitive neural networks. IEEE Trans. Systerras, Man and Cybernetacs, 1983, Vol. 13, s. 815826. Cover T.: Geometrical and statistical properties of systems of linear inequalities with applications in pattern recoquition. IEEE Trans. Electronic Computers, 1965, Vol. 14, s. 326-334. Czogała E., Pedrycz W.: Elementy i metody teorii zbiorów rozmytych. PWN, Warszawa 1985. Danielewski M.: Sieci neuronowe wielowarstwowe w zastosowaniu do kompresji danych. Praca dyplomowa. Politechnika Warszawska, Warszawa 1993. Darken C., Moody J.: Learning schedules for stochastic optimization. Proc. IEEE Conf. NIPS - Natural and Syntetic, 1990, s. 518-523. Demartines P.: Analyse de donnees par reseaux de neurones auto-organises. Diss. de 1'Institut National Polytechnique de Grenoble, 1994. Demartines P., Blayo F.: Kohonen self organizing maps: is the normalization necessary?. Complex Systems, 1992, Vol. 6, s. 105-123. Demartines P., Herault J.: Representation of nonlinear data structures through fart V(aP neural network. Proc. Neuronimes, Nimes 1994, France, s. 1-18.
Sieci neuronowe w uj ciu algorytmicznym
231
28. Demuth H., Beale M.: Neural Network Toolbox for use witki Matlab. The MathWorks, Inc., Natick 1992. 29. Denoeux J., Lengalle R.: Initializing back propagation networks witki prototypes. Neurai Networks, 1993, vol 6, s. 351-363. 30. Engelbreck A. P., Cloete L, urada J.: Determining the significance of input parametrs using sensitivity analysis. W: Prom Natural to Artzfacaad Neural Computataons. J. Eds. Mira, F. Sandoval, IWANN, Malaga 1995, s. 382-388. 31. Fahlman S. E.: Faster learning variatious on backpropagation: en empirical study. W Proc. Connectionist Models Summer School, Morgan Kaufmann, Los Altos 1988, USA, s. 38-51. 32. Fahlman S. E., Lebiere C.: The cascade-correlation learning architecture. W Advances in NIPS2, Ed. D. Touretzky, 1990, s. 524-532. 33. Fahhnan S. E.: The recurrent cascade-correlation architecture. Technical Report CMU-CS-91100, Carnegie Mellon University, Pittsburg 1991, PA15213, School of Computer Science, 1991. 34. Floreen P.: The convergence of Hamming memory networks. IEEE Trans. Neural Networks, 1991, Vol. 2, s. 449-457. 35. Gill P., Murray W., Wright M.: Pmct cal Optimization. Academic Press, New York 1981. 36. Girosi F., Jones M., Poggio T.: Regularization theory and neural network architecture. Neural Computataon, 1995, Vol. 7, s. 219-270. 37. Golub G., Van Loan C.: Matrix Corraputataons, Academic Press, New York 1991. 38. Han I-S., Ahn K-W.: Implementation of million connections neural hardware witki URAN-1. Proc. ICANN, Amsterdam 1993, s. 1030-1033. 39. Hampel F. R., Rousseeuw P. J., Ronchetti E. M., Stahel W.: Robust Statistics - the Approach Based on Influence Function, J. Wiley, New York 1986. 40. Hassibi B., Stork D.: Second order derivaties for network prunning: Optimal bram surgeon. W Advances an NIPSS. Ed. D. Touretzky, Morgan Kaufmann, San MAteo 1993, s. 164-171. 41. Haykin S.: Neural Networks, a Comprehensive Fouradataon. Macmillan College Publishing Company, New York 1994. 42. He Y., Ciringiroglu U.: A charge based on-chip adaptation Kohonen neural network. IEEE ZTrans. Neural Netmorks, 1993, Vol. 4, s. 462-469. 43. He Y., Cilingiroglu Y., Sanchez-Sinencio E.: A high density and low power charge based Hamming network. IEEE Trnns. YLSI Systems, 1993, Vol. 1, s. 56-62. 44. Hebb D.: Orgaraizatdon of $ehavaour. J. Wiley, New York 1949. 45. Hecht-Nielsen R.: Neurocomputing. Addison Wesley, Amsterdam 1991. 46. Hertz J., Krogh A., Palmer R. G.: Wst p do teor i obl cxe neuroreotvych. Wyd. II WNT, Warszawa 1995. 47. Hinton G., Sejnowski T.: Learning and relearning in Boltzmann machines. W ParaItel Distributed Processing: ExpIorntiorx dn Micnostructure of CognitBOn. Eds. D. Rummelhart, J. McClelland. Mass. Press, Cambridge 1986. 48. Hopfield J.: Neural networks and physical systems with emergent collective computational abilities. Proc. Natioraal Academy of Science USA, 1982, Vol. 79, s. 2554-2558. 49. Hopfield J.: Neurons with graded response have collective computational properties like those of twostate neurons. Proc. National Academy of Sciences of USA, 1984, Vol. 81, s. 3008-3092. 50. Hopfield J., Tank D.: Neural computations of decisions in optimization problems. BaoIogacal Cybersaetics, 1985, Vol. 52, s. 141-152. 51. Hopfield J., Tank D.: Computing with neural circuts: a model. Scaerece. 1986, Vol. 233,s. 625-633. 52. Hornik K., Stinchcombe M., White H.: Multilayer feedforward networks are universal approximators. Neural Netzvorks, 1989, Vol. 2, s. 359-366. 53. Hush D., Horne B.: Progress in supervised neural networks. IEEE Sagnal Processirag Magazine, 1993, January, s. 8-39. 54. Intel Corp., Intel 80170NX Electrically trainable analog neural network, Product Description and Data Sheet, Intel Corp., 1991. 55. Jacobs R. A.: Increased rates of convergence through learning rate adaptation. Neural Netvuorks, 1988, Vol. 1, s. 295-307. 56. Jankowski S.: Neural networks - theories and applications. XV KKTOiUE, Szczyrk, 1992, s. 626-644. 57. Johnson D., Aragon C., Schevon C.: Optimization by simulated annealing: an experimental evaluation. Part I: Graph partitioning. Oper~taons Reasearch, 1989, Vol. 37, s. 865-892. 58. Jutten C., Herault J.: Blind separation of sources. Part I: An adaptive algorithm based on neuromimetic architecture. Signal Processang, 1991, Vol. 24, s. 1-10.
Sieci neuronowe w uj ciu algorytmicznym
232
59. Jutten C., Nguyen T., Dijkstra E., Vittoz E., Caelen J.: Blind separation of sources: an algorithm for separation of convolutive mixtures. Workshop of Higher Order Statistics, Chamrouse 1991, s. 273-276. 60. Karayiannis N., Venetsanopoulos A.: Fast learning algorithms for neural networks. IEEE Ti~.ns. Neural Netv~orks, 1992, Vol. 39, s. 453-474. 61. Karayiannis N.: Accelerating training of feedforward neural network using generalized hebbian rules for initializing the internal representation. IEEE Proc. ICNN, Orlando 1994, s. 1242-1247. 62. Karnin E. D.: A simple procedure for pruning back-propagation trained neural networks. IEEE Trans. Neural Networks, 1990, Vol. l,s. 239-242. 63. Khorasani K., Cu$'aro A., Grigorin T.: A new learning algorithm for bidirectional associative memory neural networks. IEEE Proc. ICNN, Orlando 1994, s. 1115-1120. 64. Khotanzad A., Lu J.: Classification of' invariant image reconstruction using neural networks. IEEE Trans. ASSP, 1990, Vol. 38, s. 1028-1038. 65. Kirby M., Sirovich L.: Application of Karhunen-Loeve procedures for the characterization of human faces. IEEE Trans. Pattern Anadysis, 1990, Vol. 12, s. 103-108. 66. Kirkpatrick S., Gelatt C. D., Vecchi M. P.: Optimization by simulated annealing. Sc ence, 1983, Vol. 220, s. 671-680. 67. Klimauskas G.: Neural Ware - User manual. Neural Ware Inc., Nat.ick 1992, USA. 68. Kohonen T.: The self organising map. Proc. of IEEE, 1990, Vol. 78, s. 1464-1479. 69. Kohonen T., Kangas J., Laakson J.: SOMPAK, the selforganizing map program package. Technical Report, Helsinki University of Technology, Espoo, Finland 1992. 70. Kohonen T.: Self-organ zing Maps, Springer Verlag, Berlin 1995. 71. Kołmogorov A. N.: On the representation of continuous functions of urany variables by superposition of continuous functions of one variable and addition. Dokd. Akad. Nauk ZSRR, 1957, Vol. 114, s. 953956. 72. Korbicz J., Obuchowicz A., Uci ski D.: Sztuczne sieci neuronowe - podstawy i zastosowania. Akademicka Oficyna Wydawnicza PLJ, Warszawa 1994. 73. Kosko B.: Bidirectional associative memories. IEEE Trans. Systems, Man and Cybernet cs, 1988, Vol. 18, s. 49-60. 74. Krzy ak A., Leung S. Y., Suen C. Y.: Reconstruction of 2-D patterns by Fourier descriptor. Proc. 9th ICPR, Rome 1988, s. 555-558. 75. Kung S. Y.: D g tal Neural Netqvorks, Prentice Hall, Englewood Cli$ , N. Jersey 1993. 76. Lansner J., Lehmann T.: An analog CMOS chip set neural networks with arbit.rary topologies. IEEE Trans. Neural Networks, 1993, Vol. 4, s. 441-444. 77. LeCun Y., Denker J., Solla S.: Optimal bram damage. W Advances in NIPS~. Ed. D. Touretzky. Morgan Kaufmann, San Mateo 1990, s. 598-605. 78. Leonard J. A., Kramer M. A.: Radial basis function networks for classifying process faults. IEEE Controd Systerra Magaz n,e, 1991, April, s. 31-38. 79. Li Q., Tufts D.: Synthesizing neural networks by sequencial addition of hidden modes. IEEE Proc. ICNN, Orlando 1994, s. 708-713. 80. Liano K.: A robust approach to supervised learning in neural network. IEEE Proc. ICNN, Orlando 1994, s. 513-516. 81. Linde Y., Buzo A., Gray R.: An algorithm for vector quantizer design. IEEE Trans. Comm., 1980, Vol. 28, s. 84-95. 82. Linsker R.: From basic network principles to neural architecture. Proc. of National Academy of Sc en,ces of th,e USA, 1986, Vol. 83, s. 7508-7512. 8390-8394, 8779-8783. 83. Lippmann R.: An introduction to computing with neural nets. IEEE ASSP Magazine, April, 1987, s. 422. 84. Martinetz M., Berkovich S., Schulten K.: „Neural-gas" network for vector quantization and its application to time series prediction. IEEE Tra~,s. Neural Networks, 1993, Vol. 4, s. 558-569. 85. Marquardt D.: An algorithm for least squares estimation of nonlinear parameters. SIAM, 1963, s. 431442. 86. Masters T.: PracticaL Neural Network Rec pes in C-J--I-. Academic Press, Boston 1993. 87. Matsuoka K.: Noise injection finto inputs in back-propagation learning. IEEE Trans. on Systems, Man, end Cybernet cs, 1992, Vo1.22, s. 436-440. 88. McCulloch W. S., Pitts W. H.: A logical calculus of ideas immanent in nervous activity. Bull Math.. Biophysics, 1943, Vol. 5, s. 115-119.
Sieci neuronowe w uj ciu algorytmicznym
233
89. Mehrotra K., Mohan C., Ranka S.: Bounds on the number of samples needed for neural learning. IEEE Trans. Neuro,l Networks, 1991, Vol. 2, s. 548-558. 90. Michel A., Farrel J.: Associative memories via artificial neural networks. IEEE Corstrol System Magazine, 1990, April, s. 6-16. 91. Minsky M., Papert S.: Perceptrons. Cambridge, MA, 1969. 92. Moszczy ski L.: Układy adaptacyjne w zastosowaniu do separacji sygnałów elektrycznych. Praca doktorska. Politechnika Warszawska, Warszawa 1995. 93. Moller M. F.: A scaled conjugate gradient algorithm for fart supervised learning. Neura.l Netmorks. 1993, Vol. 6, s. 525-533, also irzterraad memo of Computer Science Dep., Universaty of Aarhus, Denmark, preprint PB-339, 1991. 94. Moody T. J., Darken C. J.: Fast tearnareg ara netu~orks of locally tuned processing units. Neural Computation, 1989, Vol. 1, s. 151-160. 95. Mougeot M., Azencott R., Angeniol B.: Image compression with backpropagation: improvement of the visual restoration using different tost functions. Neural Nettvorks, 1991, Vol. 4, s. 467-476. 96. Mozer M., Smolensky P.: Skeletonization - a technique for trimming the fat Erom a network via televance assessment. W Advareces in NIPS1. Ed. D. Touretzky. Morgan Kaufmann, San Mateo 1989, s. 107-115,. 97. Narendra K. S., Parthasarathy K.: Identification and control of dynamical systems using neural networks. IEEE Trans. Neural Netxuorks. 1990, Vol. 1, s. 4-27. 98. Nazareth J. L.: Computer SoIutzon of L near Programs. Oxford University Press, Oxford 1987. 99. Nestor Inc., NI1000 recognition accelerator and data sheet (2pp), Nestor Inc. Providence, RI09906, 1994. 100. Nestor Inc., NI1000 development system, data sheet (2pp), Nestor Inc. Providence, RI09906, 1994. 101. Oja E., Ogawa H., Wangviwattana J.: Learning in nonlinear constrained hebbian networks. Proc. ICANN, Espoo 1991, Finland, s. 385-390. 102. Oja E.: Principal components, minor components and linear neural networks. Neural Netavorks, 1992, vol 5, s. 927-935. 103. Oja E.: Simplified neuron model as a principal component analyzer. J. Math. Biology, 1982, Vol. 15, s. 267-273. 104. Osowski S.: Optimisation approach to the analysis of PWL convex circuts. IEEE Proc.-G, 1992, Vol. 139, s. 295-300. 105. Osowski S.: Sieci Neuronowe. OWPW, Warszawa 1994. 106. Osowski S.: Signal floty graphs and neural networks. Biodogacal Cybernetscs, 1994, Vol. 70, s. 387395. 107. Osowski S., Stodolski M., Bojarczak P.: Fast second order learning algorithm for feedforward multilayer neural networks and its applications. Neural Netruorks, 1995, (w druku). 108. Osowski S., Waszczuk R., Bo,jarczak P.: Image compression using feedformed neural networks hierarchical approach. W Erom Natural to Artificial Neural Computataora, Eds. J. Mira, F. Sandoval. IWANN, Malaga 1995, s. 1009-1015. 109. Osowski S., Herault J.: Signal floty graphs as an ef cient tool for gradient and hessian determination. CompIex Systems, 1995, Vol. 9, s. 29-45. 110. Osowski S., Herault J., Demartines P.: Fault location in analogue circuits using Kohonen neural network. Bulletine Acaderraae Polona£se, 1995, Vol. 43, No 1, s. 111-123. 111. Osowski S., K dzielawa A.: Short term load forecasting for the electric power using neural networks, KKTOiUE, Zakopane 1995. 112. Osowski S., Bojarczak P.: Interpolating neural networks and their applications, ECCTD, Istanbul 1995, s. 315-318. 113. Osowski S.: Neural network approach to the solution of linear complementarity problems. Int. Journal of Numerical Modelling, Electronic Networks, Devices and Fields, (w druku). 114. Pao Y. H.: Adapt ve Pattern Recogreition, an.d Neural Networks. Addison Wesley, Reading 1989. 115. Personnaz L., Guyon L, Dreyfus G.: Collective computational properties of neural networks: new learning mechanism. Ph,ys. Rev., A, 1986, Vol. 34, No 5, s. 4217-4228. 116. Pineda F. J.: Dynamics and architecture in neural computation. Journad of Co~rrópdeaaty, 1988, Vol. 4, s. 216-245. 117. Pineda F. J.: Generalization of backpropagation to recurrent and higher order neural networks in NIPS. Ed. D. Anderson. American Institute of Physics, New York, s. 602-611. 118. Platt J.: A resource-allocating network for function interpolation. Neural Corrxputat on, 1991, Vol. 3, pp 213-225.
Sieci neuronowe w uj ciu algorytmicznym
234
119. Powell M. J.: The theory of radial basis functions approximation. W Advances ra NumericaI Analysis, Vol. II: Wavelts, subdivision algorithms and radial basis functions. Ed. W. A. Light. Oxford University Press, 1992, s. 105-210. 120. Psychogios D., Ungar L.: SVD-net: an algorithm which automatically selects network structures. IEEE Trans. Neural Netzuorks (w druku). 121. Reed R.: Pruning algorithms - a survey. IEEE ?ans. NeuraI Netaoorks, 1993, Vol. 4, s. 740-747. 122. Riedmiller M., Braun H.: RPROP - a Past adaptive learning algorithm. Technical Report, University Karlsruhe, 1992. 123. Ritter H., Schulten K.: On the stationary state of the Kohonen self-organizing sensory mapping. B olog cal Cybernet cs, 1986, Vol. 54, s. 234-249. 124. R.osenblatt F., Pranc ple of Neurodyna~rra cs, Spartan, New York 1962. 125. Rumelhart D. E., Hinton G. E., Williams R. J.: Learning internal representations by error propagation. W Paradlel D stributed Processing: Eaplorat a~as n the M crostructures of Cogn t on, Eds. D. E. Rumelhart, J. L. McClelland. Vol. 1. MIT Press, Cambridge 1986. 126. Sammon J.: A nonlinear mapping for data structure analysis. IEEE Trans. Computers, 1969, Vol. 18, s. 401-409. 127. Sanger T. D.: Optimal unsupervised learning in single layer linear feedformed neural network. NeuraI Netauorks, 1989, Vol. 2, s. 459-473. 128. Sejnowski T.: Strong covariance witki nonlinearly interacting neurons. Jour. Matki. Biology, 1977, Vol. 4, s. 385-389. 129. DeSieno D.: Adding a conscience to competitive learning. Neural Networks, 1988, Vol. 1; s. 117-124. 130. Siwek K.: Implementacja komputerowa wybranych algorytmów ucz cych i aplikacyjnych sieci samoorganizuj cych si Kohonena. Praca dyplomowa. Politechnika Warszawska, Warszawa 1995. 131. Skoneczny S.: Classical and neural methods of image filtering. Praca doktorska. Politechnika Warszawska, Warszawa 1994. 132. Speckmann H., Thole P., Rosenthiel W.: COKOS: a coprocessor for Kohonen self organizing map. ICANN, Amsterdam 1993, s. 1040-1044. 133. Speckmann H., Thole P., Bagdan M., Rosentiel W.: Coprocessors for special neural networks: KOKOS and KOBOLD. IEEE Proc. ICNN, Orlando 1994. 134. Stodolski M.: Program SOLVER do rozwi zywania zagadnie programowania liniowego i kwadratowego w formacie MPS - podr cznik u ytkownika. Politechnika Warszawska, Warszawa 1993. 135. Sutton R. S.: Temporal credit assignment in reinforcement learning. Ph. D. dissert., Univ. Mass., Mass., 1984. 136. Tadeusiewicz R.: Sieci neuronozve, Akademicka Oficyna Wydawnicza, Warszawa 1993. 137. Tarassenko L., Roberts S.: Supervised and unsupervised learning in radial basis function classifiers. IEE Proc. Vis. Image Signal Process., 1994, Vol. 141, s. 210-216. 138. Thimm G., Fiesler E.: Neural network initialization. W Erom Natural to Artdfxcaal Neurad Computatio~a. Eds. J. Mira, F. Sandoval. IWANN, Malaga 1995, s. 533-542. 139. N. Vapnik V.: Principle of risk minimization for learning theory. NIPS4. Eds. J. A~Ioody, S. Hansom R. Lippmann. Morgan Kaufmann, San Mateo 1992, s. 831-838. 140. Vapnik V. N., Chervonenkis A.: On the uniform convergence of relative frequencies of events to their probabilities. Theory of Probabidity ared its Applicatzorts, 1971, Vol. 16, s. 264-280. 141. Veith A. C., Holmes G.: A modified quickprop algorithm. Neural Computation, 1991, Vol. 3, s. 310311. 142. Wang L.-X.: Adaptive Fuzxy Systerras ared Control. Design a~,d Stabilny Ancalysas. Prentice Hall, N. J., 1994. 143. F. Wang Y., Cruz J., Mulligan J.: On multiple training for BAM. IEEE Tra~as. Neural Netauorks, 1990, Vol. l,s. 275-276. 144. F. Wang Y., Cruz J., Mulligan J.: Two codiug strategies for bidirectional associative memory. IEEE Traycs. Neural Netmorks, 1990, Vol. 1, s. 81-92. 145. J. Wang W., L. Lee D.: A modified bidirectional decoding strategy based on BAM structure. IEEE Trans. Neaerad Networks, 1993, Vol. 4, s. 710-717. 146. Waszczuk R.: Kompresja obrazów z u yciem sieci neuronowych. Praca dyplomowa. Politechnika Warszawska, Warszawa 1994. 147. F. L., Wessel, Barnard E.: Avoiding false local minima by proper initialization of connections. IEEE 71-ans. Neural Netzuorks, 1992, Vol. 3, s. 899-905. 148. Weymaere N., Martens J. P.: On the initialization and optimization of multilayer perceptron. IEEE Trans. Neural Netsvorks, 1994, Vol. 5, s. 738-751.
Sieci neuronowe w uj ciu algorytmicznym
235
149. Widrow B., Hofl' M.: Adaptive switching circuits. Proc. IRE WESCON Corave~ation Record, 1960, s. 107-115. 150. Widrow B., Winter R., Baxter R.: Layered neural nets for pattern recognition. IEEE Trans. ASSP, 1988, Vol. 36, s. 1109-1118. 151. Widrow B., Bilello M.: Nonlinear adaptive signal processing for inverse control. Proc. Worki Congress on Neural Networks, San Diego 1994. 152. Wierzbicki A., Findeisen W., Szymanowski J.: Teoria i metody obliczeniowe opty~raalizacji. WNT, Warszawa 1977. 153. Williams R., Zipser D.: A learning algorithm for continually running fully recurent neural networks. Nexaral Computers, 1989, Vol. 1, s. 270-280. 154. Xue Q., Hu Y., Tompkins W.: Analysis of hidden units of back propagation model by SVD. Proc. IJCNN, Washington 1990, s. I739-742. 155. Yair E., Zeger K., Gersho A.: Competitive learning and soft competition for vector quantizer design. IEEE Trens. Signal Process ng, 1992, Vol. 40, s. 294-309. 156. Yamakawa T.: A fuzzy interference engine in nonlinear analog made and its application to fuzzy logic control. IEEE Trans. Neural Net9vorks, 1993, Vol. 4, s. 496-522. 157. Yuceer C., Oflazer K.: A rotation, scaling and translation invariant pattern classification system. Pattem Recogn£tion,, 1993, Vol. 26; s. 687-710. 158. Zell A.: Simudation Neaero~aude Netze. Addison Wesley, 1994. 159. Zell A.: SNNS - Stuttgart Neural Network Simulator, User manual. Stuttgart 1993. 160. Zuben F., Netto M. A.: Exploring the nonlinear dynamit behaviour of artificial neural networks. IEEE Proc. ICNN. Orlando 1994, s. 1000-1005. 161. ak S., Upatising V., Hui S.: Solving linear programming problems with neural networks: a comparative study. IEEE Trans. Neural Netu~orks, 1995, Vol. 6, s. 94-104. 162. Zurada J.: In.troduction to Artzficidl Neurad Systems, West Publishing Co, 1992. 163. urada J., Malinowski A., Cloete L: Sensitivity analysis for minimization of input data dimension for feedforward neural network. IEEE Symp. CAS, London 1994.