Sieci Neuronowe. Liniowe Sieci Neuronowe

Podobne dokumenty
Wykład 2. Model Neuronu McCulocha-Pittsa Perceptron Liniowe Sieci Neuronowe

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.

Sztuczna inteligencja

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

8. Neuron z ciągłą funkcją aktywacji.

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

Lekcja 5: Sieć Kohonena i sieć ART

wiedzy Sieci neuronowe

Metody Sztucznej Inteligencji II

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Podstawy Sztucznej Inteligencji (PSZT)

SIECI KOHONENA UCZENIE BEZ NAUCZYCIELA JOANNA GRABSKA-CHRZĄSTOWSKA

Sieci Neuronowe - Rok III - kierunek IS w IFAiIS UJ 2008/2009. Sieci Neuronowe. Wykład 4 Wariacje na temat propagacji wstecznej Sieci CP

SIECI NEURONOWE Liniowe i nieliniowe sieci neuronowe

Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu

Sztuczne sieci neuronowe

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Elementy Sztucznej Inteligencji. Sztuczne sieci neuronowe cz. 2

Oprogramowanie Systemów Obrazowania SIECI NEURONOWE

SZTUCZNA INTELIGENCJA

ZASTOSOWANIA SIECI NEURONOWYCH

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

Zastosowania sieci neuronowych

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

Sieć przesyłająca żetony CP (counter propagation)

Temat: Sieci neuronowe oraz technologia CUDA

METODY INTELIGENCJI OBLICZENIOWEJ wykład 5

SIECI REKURENCYJNE SIECI HOPFIELDA

METODY INŻYNIERII WIEDZY

Sztuczne sieci neuronowe Ćwiczenia. Piotr Fulmański, Marta Grzanek

Sztuczne Sieci Neuronowe

Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.

Definicja pochodnej cząstkowej

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Wstęp do teorii sztucznej inteligencji

Uczenie sieci typu MLP

BIOCYBERNETYKA SIECI NEURONOWE. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Elementy inteligencji obliczeniowej

A B. Modelowanie reakcji chemicznych: numeryczne rozwiązywanie równań na szybkość reakcji chemicznych B: 1. da dt. A v. v t

Podstawy sztucznej inteligencji

Sieci Neuronowe - Rok III - kierunek IS w IFAiIS UJ 2008/2009. Sieci Neuronowe

Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2014/2015

Sieci Neuronowe - Rok III - kierunek IS w IFAiIS UJ 2008/2009. Sieci Neuronowe. Wykład 8 Sieci rezonansowe

Dla naszego obiektu ciągłego: przy czasie próbkowania T p =2.

2.4. Algorytmy uczenia sieci neuronowych

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM

jest rozwiązaniem równania jednorodnego oraz dla pewnego to jest toŝsamościowo równe zeru.

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Inteligentne systemy informacyjne

Aproksymacja funkcji a regresja symboliczna

Inteligentne systemy przeciw atakom sieciowym

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

I EKSPLORACJA DANYCH

MODELOWANIE RZECZYWISTOŚCI

Elementy kognitywistyki III: Modele i architektury poznawcze

Zastosowania sieci neuronowych

Sztuczne sieci neuronowe (SNN)

Spis treści. 1. Cyfrowy zapis i synteza dźwięku Schemat blokowy i zadania karty dźwiękowej UTK. Karty dźwiękowe. 1

Seminarium magisterskie. Dyskusja nad tematem pracy magisterskiej pisanej pod kierunkiem pani Dr hab. Małgorzaty Doman

Wstęp do teorii sztucznej inteligencji

Uczenie sieci radialnych (RBF)

1. Podstawowe pojęcia

wiedzy Sieci neuronowe (c.d.)

Ćwiczenie 14. Maria Bełtowska-Brzezinska KINETYKA REAKCJI ENZYMATYCZNYCH

Optymalizacja ciągła

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

OCENA DZIAŁANIA AE. METODY HEURYSTYCZNE wykład 4 LOSOWOŚĆ W AE KRZYWE ZBIEŻNOŚCI ANALIZA STATYSTYCZNA:

Politechnika Lubelska

Algorytmy sztucznej inteligencji

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Optymalizacja systemów

Widzenie komputerowe

Systemy Inteligentnego Przetwarzania wykład 7: Sieci RBF

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Sztuczne sieci neuronowe. Uczenie, zastosowania

ELEMENTY SZTUCZNEJ INTELIGENCJI. Sztuczne sieci neuronowe

Wykład 1: Wprowadzenie do sieci neuronowych

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

Wstęp do sztucznych sieci neuronowych

Obliczenia inteligentne Zadanie 4

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2013/2014

Obliczenia Naturalne - Sztuczne sieci neuronowe

Prawdopodobieństwo i statystyka

Sztuczne sieci neuronowe

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 7 AiR III

KADD Minimalizacja funkcji

Sztuczne Sieci Neuronowe

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Filtracja obrazu operacje kontekstowe

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka ADALINE.

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Transkrypt:

Sieci Neuronowe Liniowe Sieci Neuronowe Paweł KrzyŜanowski ETI 9.4 Sieci Liniowe Sieci liniowe, znane w literaturze pod nazwami ADALINE i MADALINE są najprostsze w budowie, a równocześnie są w wielu wypadkach wysoce uŝyteczne. Neurony Elementy z których buduje się sieci, charakteryzują się występowaniem wielu wejść i jednego wyjścia. Sygnały wejściowe x i (i=1, 2,...n) oraz sygnał wyjściowy y mogą przyjmować wartości z pewnego ograniczonego przedziału. Z dokładnością do prostej funkcji skalującej moŝna przyjąć, Ŝe x i [-1, 1] dla kaŝdego i, a takŝe y [-1, 1] ZaleŜność y = f( x 1, x 2,..., x n ) w najprostszym przypadku moŝe być rozwaŝana jako liniowa n y = Σ x i i=1 1

Sieci Liniowe Element opisany powyŝszym równaniem liniowym jest między innymi zdolny do rozpoznawania wejściowych sygnałów. Sygnały wejściowe Sygnał wyjściowy x 1 x 2 x n... Zmienne Parametry y Współczynniki, nazywane wagami synaptycznymi, podlegają modyfikacjom w trakcie procesu uczenia, który stanowi jeden z zasadniczych wyróŝników sieci neuronowych jako adaptacyjnych systemów przetwarzania informacji. Sieci Liniowe Niech zestaw sygnałów wejściowych neutronu stanowi wektor x = x 1 x 2.. x 1 x 2 x n ω 1 ω 2 e y ω n Σ Próg Θ ϕ x n Wektor ten moŝna interpretować jako punkt w n-wymiarowej przestrzeni X, nazywanej przestrzenią wejść. Wektor ten moŝemy teŝ zapisać jako X = < x 1, x 2,..., x n > T Zestaw n współczynników wagowych moŝemy równieŝ rozpatrywać jako wektor W = < ω 1, ω 2,..., ω n > T wyznaczający punkt w n-wymiarowej przestrzeni zwanej przestrzenią wag: y = W X (iloczyn skalarny) 2

Sieci Liniowe Rozpoznawanie sygnału: Z własności iloczynu skalarnego, moŝna powiedzieć, Ŝe wartość y będzie tym większa im bardziej połoŝenie wektora X będzie przypominać połoŝenie wektora wag. JeŜeli załoŝymy, Ŝe wektory X, W są znormalizowane do 1, to wówczas y = cos(φ) gdzie φ jest katem pomiędzy wektorem X i W. JeŜeli na wejście neuronu będziemy podawali róŝne sygnały, X, to sygnał na wyjściu neuronu będzie miał tym większą wartość, im bardziej podany sygnał X będzie podobny do sygnału wzorcowego, który neuron pamięta w postaci swojego zestawu wag W. Warstwa neuronów jako najprostsza sieć RozwaŜmy warstwę neutronów, z których kaŝdy ma ten sam zestaw sygnałów wejściowych X = < x 1, x 2,..., x n > T, natomiast kaŝdy ma swój własny wektor wag. Ponumerujmy neurony i oznaczmy jako W (m) = < ω 1, ω 2,..., ω n > T wektor wag m-tego neuronu ( m = 1,2,..., k). Sygnał wyjściowy m-tego neuronu moŝna wyznaczyć ze wzoru: y m = W (m) X = n Σ (m) x i i=1 Omawiana struktura stanowi najprostszy przykład sieci neuronowej. Działanie sieci polega na tym, Ŝe pojawienie się określonego wektora wejściowego X powoduje powstanie sygnałów wyjściowych y m na wszystkich neuronach wchodzących w skład rozwaŝanej warstwy. 3

Warstwa neuronów jako najprostsza sieć y 1 y 2 y 3 (1), w 2 (1)...w n (1) (2), w 2 (2)...w n (2) (3), w 2 (3)...w n (3) x 1 x 2 x 3 Oczekujemy maksymalnego sygnału w tym neuronie, którego wektor wag W (m) najbardziej przypomina X. Sieć tego typu moŝe rozpoznawać k róŝnych klas obiektów, gdyŝ kaŝdy neuron zapamiętuje jeden wzorcowy obiekt na którego pojawienie się jest uczulony. Wzorce róŝnych klas zawarte są w poszczególnych neuronach w postaci ich wektorów wag. Stosując notacje wektorową moŝemy zapisać Y = < y 1, y 2,..., y k > T Warstwa neuronów jako najprostsza sieć MoŜemy wprowadzić macierz W k o wymiarach k n, utworzoną w taki sposób, Ŝe jej kolejnymi wierszami są (transponowane) kolejne wektory W (m) (dla m = 1,2,...,k). Macierz W (m) ma więc następującą budowę: ω (1) 1 ω (2) 1... ω (k) 1 ω(1) 2... ω(1) n ω(2) 2... ω(2) n ω(k) 2... ω(k) n y 1 y 2 y 3 (1), w 2 (1)...w n (1) (2), w 2 (2)...w n (2) (3), w 2 (3)...w n (3) x 1 x 2 x 3 4

Warstwa neuronów jako najprostsza sieć Wykorzystując macierz W k moŝna zapisać funkcję realizowaną przez całą sieć w formie y 1 y 2 y 3 Y = W k X (1), w 2 (1)...w n (1) (2), w 2 (2)...w n (2) (3), w 2 (3)...w n (3) x 1 x 2 x 3 Macierz W k zadaje odwzorowanie liniowe sygnału X R n w sygnał Y R k. Odwzorowanie to moŝe być w zasadzie dowolne (np. transformacja Fouriera). Przekształcenie sygnału X w sygnał Y moŝna teŝ interpretować jako filtrację, w związku z tym o sieci neuronowej dokonującej takiego przekształcenia moŝemy mówić jako o filtrze. Uczenie pojedynczego neuronu. O zachowaniu pojedynczego neuronu decydował wektor wag W, a o działaniu sieci macierz wag Wk. Istnieje moŝliwość zastąpienia jednorazowego aktu zaprogramowania sieci, iteracyjnym, wieloetapowym procesem jej uczenia. Aby zapewnić moŝliwość uczenia, trzeba wprowadzony juŝ model neuronu uzupełnić o dwa dodatkowe elementy: procesor zmiany wag oraz detektor błędu. Tak zmodyfikowany neuron nazywany bywa ADALINE (ADAptive LINear Element), i wykazuje zastanawiająco bogate moŝliwości w zakresie dostosowywania swojego działania do wymagań wynikających z postawionego zadania. x 1 z w 2 w n δ - y 5

Uczenie pojedynczego neuronu. ZałóŜmy, Ŝe zadanie stawiane ADALINE polega na tym, by sygnał wyjściowy y był związany z sygnałami wejściowymi X pewną zaleŝnością funkcyjną x 1 y = f (X) w 2 y Funkcja f nie musi być zadana w sposób jawny; wystarczy, Ŝe dla kaŝdego konkretnego wektora wejściowego potrafimy wskazać konkretną wartość z w n δ - z = f(x) stanowiącą referencyjną wartość odnośnie sygnału wyjściowego y. Uczenie pojedynczego neuronu Zasada działania ADALINE przy rozwiązaniu tego zadania oparta jest na podstawowym algorytmie uczenia wprowadzonym przez Widrowa i Hoffa, zwanym regułą DELTA. Wraz z kaŝdym wektorem wejściowym X, do neuronu podany jest równieŝ sygnał z, czyli Ŝądana (wymagana) odpowiedź neuronu na sygnał X. Neuron odpowiada na sygnał X sygnałem x 1 z w 2 w n δ - y y = W X, przy czym jeśli neuron nie jest nauczony, sygnał ten jest inny niŝ wymagany, czyli y z. Wewnątrz neuronu ADALINE istnieje blok skladający sie z sumatora i inwertora oceniający wielkość błędu δ = z y 6

Uczenie pojedynczego neuronu Na podstawie sygnału błędu δ oraz wektora wejściowego X moŝliwe jest takie skorygowanie wektora wag W, by neuron lepiej realizował zadaną funkcję y = f(x). Nowy wektor wag obliczany jest ze wzoru W = W + η δ X x 1 z w 2 w n δ - y gdzie η jest współczynnikiem liczbowym, decydującym o szybkości uczenia. Korekta W jest tym silniejsza im większy został odnotowany błąd. Matematyczne aspekty procesu uczenia sieci Wprowadźmy pojecie ciągu uczącego. Ciąg ten ma następującą budowę: U = < < X (1), z (1) >, < X (2), z (2) >,..., < X (N), z (N) > > czyli składa się z par postaci < X, z > zawierających wektor X podany w j-tym kroku procesu uczenia i informacje o wymaganej odpowiedzi neutronu z w tym kroku. Regułę uczenia moŝemy napisać następująco: W (j+1) = W + η δ X gdzie δ = z - y oraz y = W X Reguła ta daje się łatwo stosować pod warunkiem wprowadzenia początkowego wektora wag W (1) ; zwykle zakłada sięŝe wektor ten ma składowe wybrane losowo. 7

Matematyczne aspekty procesu uczenia sieci Celem procesu uczenia jest uzyskanie zgodności odpowiedzi neutronu y z wymaganymi wartościami z, co daje się sprowadzić do problemu minimalizacji funkcji kryterialnej Q = ½ ( z - y ) 2 Σ N j=1 powyŝszy wzór moŝemy teŝ zapisać jako Q = Q, j=1 gdzie Q = ½ ( z - y ) 2 Σ N Matematyczne aspekty procesu uczenia sieci PoniewaŜ Q = Q(W), zatem poszukiwanie minimum moŝe być dokonywane metodą gradientową. Skupiając uwagę na i-tej składowej wektora W, moŝemy więc zapisać: ω i - = = η Q Wzór ten moŝna interpretować w sposób następujący: poprawka jakiej powinna podlegać i-ta składową wektora W, musi być proporcjonalna do i-tej składowej gradientu funkcji Q. Znak w omawianym wzorze wynika z faktu, Ŝe gradient Q wskazuje kierunek najszybszego wzrastania tej funkcji, podczas gdy w omawianej metodzie zaleŝy nam na tym, by zmieniać W w kierunku najszybszego malenia błędu popełnianego przez sieć, czyli w kierunku najszybszego malenia funkcji Q. Współczynnik proporcjonalności η (i) określa wielkość kroku i moŝe być w zasadzie wybierany dowolnie. 8

Matematyczne aspekty procesu uczenia sieci Przy wyborze współczynnika η (i) mogą pojawić się pewne subtelności: a) Z teorii aproksymacji stochastycznej moŝna wyprowadzić wniosek, Ŝe η (i) powinny spełniać warunki Σ j=1 η (i) =, ( η (i) ) 2 < W najprostszym przykładzie warunki te spełnia ciąg η (i) = η (0) /j ale szybkie malenie η (i) moŝe ograniczać skuteczność procesu uczenia. b) w celu ograniczenia malenia η (i) oraz ograniczenia rośnięcia modułu wektora W, często proponuje się η (i) = λ / X 2, Σ j=1 gdzie λ jest pewną ustaloną stałą (zwykle 0.1 < λ < 1). Matematyczne aspekty procesu uczenia sieci Gradientowa minimalizacja funkcji błędu (funkcji kryterialnej) Rozpisując wzór gradientowego uczenia dla kroku j, otrzymujemy: ω (j+1) i - ω i = ω Q i = - η Uwzględniając fakt, Ŝe Q zaleŝne jest od y, a dopiero y jest funkcją wektora wag W, moŝemy zapisać wzór, odpowiadający pochodnej funkcji złoŝonej Q Q = y y Na podstawie zaleŝności Q = ½ ( z - y ) 2 moŝna ustalićŝe, y = - ( z y ) = - δ 9

Matematyczne aspekty procesu uczenia sieci Natomiast liniowa funkcja wiąŝąca sygnał wyjściowy y z wektorem wag W powoduje, Ŝe y = x i Zbierając razem wszystkie powyŝsze rozwaŝania, końcowa formuła uczenia neuronu typu ADALINE wygląda następująco: = η δ x i co potwierdza jej poprawność. Proces uczenia jest zbieŝny i pozwala wyznaczyć potrzebny wektor wag W*, zapewniający dokładną realizację przez neuron wymaganej funkcji y = f(x), jeśli f jest funkcją liniową, lub gwarantujący optymalną (w sensie minimum średniokwadratowego) aproksymację tej funkcji, jeśli jest ona nieliniowa. Uczenie sieci elementów liniowych W sposób analogiczny do opisanego algorytmu uczenia pojedynczego neuronu moŝna uczyć takŝe całą sieć elementów liniowych. y 1 y 2 y k (1), w 2 (1)... w n (1) (2), w 2 (2)... w n (2) (k), w 2 (k)... w n (k) x 1 x 2 x k 10

Uczenie sieci elementów liniowych Objektem podlegającym uczeniu jest w tym wypadku macierz W k, a ciąg uczący ma postać: U = < < X (1), Z (1) >, < X (2), Z (2) >,..., < X (N), Z (N) > > gdzie Z są k-elementowymi wektorami oznaczającymi wymagane zestawy odpowiedzi sieci na wymuszenia danych odpowiednimi wektorami X. Sieć taka w literaturze nazywana jest MADALINE ( Many ADALINE s). Uczenie sieci MADALINE odbywa się w sposób zupełnie analogiczny do uczenia neuronu ADALINE, z tą róŝnicą Ŝe formuła uczenia ma postać macierzową W k (j+1) = W k + η (Z - Y ) ( X ) T Uczenie sieci elementów liniowych: filtry Przypominając interpretację funkcjonowania sieci o n-wejściach i k- wyjściach jako filtra przetwarzającego sygnały X na odpowiadające im (zgodnie z określonym odwzorowaniem) sygnały Y moŝna interpretować proces uczenia sieci jako adaptację filtra do określonych potrzeb. Wkraczamy w ten sposób w krąg zagadnień filtracji adaptacyjnej oraz problemu poszukiwania optymalnego filtra (z punktu widzenia określonych kryteriów), samoczynnie dostosowującego się do potrzeb. Sieci neuronowe (zwłaszcza typu MADALINE) były i są chętnie stosowane jako filtry adaptacyjne (na przykład do eliminacji efektu echa w liniach telefonicznych). Filtry tworzone w wyniku uczenia sieci neuronowej mogą być wykorzystywane do typowych zadań (dolno lub górnoprzepustowa filtracja sygnału, eliminacja zakłóceń, polepszanie stosunku sygnału do szumu, wydobywanie określonych cech sygnału, analiza widmowa, itp.), ale mogą teŝ mieć zupełnie nowe zastosowania. 11

Uczenie sieci elementów liniowych: filtry Filtry tego typu mogą słuŝyć do odtwarzania kompletnego sygnału na podstawie jego fragmentu. Takie zadanie nazywa się pamięcią adresowana kontekstowo lub pamięcią asocjacyjną. Pamięć taka pozwala odtworzyć cały zestaw zapamiętanych informacji w przypadku przedstawienia informacji niekompletnej lub niedokładnej. Tego rodzaju urządzenie, działając w powiązaniu z systemem ekspertowym, moŝe doskonale odpowiadać na pytania uŝytkowników. Zadaniem sieci jest w tym wypadku uzupełnienie wiadomości podanych przez uŝytkownika w taki sposób, by system ekspertowy mógł (w oparciu o bazę wiedzy) efektywnie szukać rozwiązania. Innym zastosowaniem omawianych tu filtrów moŝe być tzw. filtr nowości, czyli tej informacji która uległa nagłej zmianie (ochrona przed włamaniem, automatyka przemysłowa). Uczenie z lub bez nauczyciela Opisany poprzednio schemat uczenia sieci MADALINE opierał się na załoŝeniu Ŝe istnieje zewnętrzny arbiter ( nauczyciel ), który podaje poprawne odpowiedzi Z, w wyniku czego korekta macierzy wag W k następuje w sposób sterowany i zdeterminowany przez cel, jakim jest minimalizacja błędu Q. Taki schemat nazywamy supervised learning albo delta rule. Jest on często niewygodny, ponadto mało wiarygodny biologicznie, gdyŝ wielu czynności mózg uczy się bez świadomego i celowego instruktaŝu. 12

Uczenie z lub bez nauczyciela Często stosowaną metodą jest technika uczenia bez nauczyciela, zwanej unsupervised learning lub hebbian learning. Zasada tego uczenia polega na tym, Ŝe waga (m), i-tego wejścia m-tego neuronu wzrasta podczas prezentacji j-tego wektora wejściowego X proporcjonalnie do iloczynu i-tej składowej sygnału wejściowego tego x i docierającego do rozwaŝanej synapsy i sygnału wyjściowego rozwaŝanego neuronu. przy czym oczywiście (m)(j+1) = (m) + η x i y m y m = Σ m i=1 (m) x i Wzmocnieniu w sieci ulegają te wagi, które są aktywne (duŝe x i ) w sytuacji gdy ich neuron jest pobudzony (duŝe y m ). Tego typu sieć jest zatem autoasocjacyjna : jeśli pewien wzór pobudzeń X jest sygnalizowany przez pewne m-te wyjście sieci, to w miarę upływu czasu ta sygnalizacja staje się coraz bardziej wyraźna. Uczenie z lub bez nauczyciela Sieć uczy się rozpoznawać bodźce oraz grupować w pewne kategorie (clusters), gdyŝ neuron wytrenowany do rozpoznawania pewnego sygnału X, będzie zdolny do rozpoznawania takŝe tych sygnałów które są podobne do wzorcowego. Zdolność do uogólniania zdobytego juŝ doświadczenia jest jedną z najwaŝniejszych cech sieci neuronowej. Regułę uczenia pochodzącą od praw Hebba nazywa się takŝe niekiedy uczeniem korelacyjnym ( correlation learning ), poniewaŝ zmierza ona do takiego dopasowania wag aby uzyskać najlepszą korelację pomiędzy sygnałami wejściowymi, a zapamiętanym w formie wartości wag wzorcem sygnału, na który określony neuron ma reagować. Eksponuje ona fakt uśredniania wejściowych sygnałów przez sieć uczoną wg. reguły Hebba. 13

Uczenie z lub bez nauczyciela W wyniku takiego uczenia sieć jest zdolna do rozpoznawania sygnałów których wcześniej nigdy jej nie pokazywano: zniekształcone, niekompletne, zaburzone przez szum. Sieć uczona wg. metody Hebba na ogół uzyskuje dobre wyniki i samoczynnie grupuje sygnały wejściowe w kategorie. Efekt ten nie jest jednak nigdy pewny, gdyŝ istotnie zaleŝy od stanu początkowego sieci. Często teŝ wiele neuronów uczy się rozpoznawać te same kategorie, czyli na ogół ilość neuronów w sieci musi być większa niŝ liczba oczekiwanych kategorii. Warianty metod uczenia i samouczenia Przyrostowe samouczenie (Hebba): Proces samouczenia i samoorganizacji moŝna uczynić bardziej efektywnym poprzez zastosowanie tak zwanego przyrostowego samouczenia ( differential hebbian learning ) polegającego na uzaleŝnieniu procesu zmiany wag od przyrostów sygnałów wejściowych na danej synapsie i wyjściowych na danym neuronie: (m)(j+1) = (m) + η [ (x i - x i (j-1) ) ( y m - y m (j-1) ) ] W niektórych wypadkach ta przyrostowa strategia daje znacznie lepsze rezultaty niŝ czysty algorytm Hebba. 14

Warianty metod uczenia i samouczenia Metoda gwiazdy wejść (Grossberga): W metodzie tej, instar training, wybiera się pewien neuron i narzuca mu się taką strategie uczenia, by zapamiętał i potrafił rozpoznać aktualnie wprowadzany sygnał X. Inne neurony sieci są w tym czasie bezczynne. (m)(j+1) = (m) + η ( x i - (m) ) Z praktyki stosowania tej metody wynikają pewne zalecenia odnośnie wyboru wartości η, które powinny się zmieniać zgodnie z empiryczna regułą: η = 0, 1 λ j przy czym współczynnik λ naleŝy wybrać na tyle mały, by w ciągu całego uczenia zachodził warunek η > 0. Warianty metod uczenia i samouczenia Metoda gwiazdy wyjść (Grossberga): Na zasadzie analogii moŝna wprowadzić koncepcje outgoing stars. W koncepcji tej rozwaŝa się wagi wszystkich neuronów całej warstwy, jednak wybiera się wyłącznie wagi łączące te neurony z pewnym ustalonym wejściem. W sieciach wielowarstwowych wejście to pochodzi od pewnego ustalonego neuronu wcześniejszej warstwy i to właśnie ten neuron staje się gwiązda wyjść (outstar). (m)(j+1) = (m) + η ( y m - (m) ) W powyŝszym wzorze i jest ustalone, natomiast m jest zmienne i przebiega wszelkie moŝliwe wartości (m = 1,2,...,k). Reguła zmieniania η jest dana wzorem η = 1 λ j 15

Warianty metod uczenia i samouczenia Metoda instar stosowana jest w przypadku, kiedy trzeba sieć nauczyć rozpoznawania określonego sygnału X, natomiast metoda outstar znajduje zastosowanie przy uczeniu sieci wytwarzania określonego wzorca zachowań Y w odpowiedzi na określony sygnał inicjujący x i. Reguły uczenia podane przez Hebba i Grossberga były przez wielu badaczy wzbogacane i modyfikowane. Warianty metod uczenia i samouczenia Dyskryminacja wejściowych i wyjściowych sygnałów. Polega na dzieleniu sygnałów x i i y m na aktywne i nieaktywne. W tym celu wprowadza się pewna ustaloną lub zaleŝną od j wartość progowa i wprowadza się nowe zmienne 1 gdy x i > ε ˆx i = 0 w przeciwnym wypadku oraz ŷ i = 1 gdy y i > ε 0 w przeciwnym wypadku Przy tych oznaczeniach mowa technikę uczenia wg. zmodyfikowanego algorytmu Hebba zapisać moŝna w postaci: (m)(j+1) = (m) + η xˆ yˆ i m Czy zmiana wagi jest dokonana decyduje logiczny warunek podany powyŝej. 16

Warianty metod uczenia i samouczenia Reguła Hebb/Anti-Hebb Podany wzór pozwala jedynie na zwiększanie wartości wag, co moŝe prowadzić do osiąganie przez nie bardzo duŝych wartości. proponuje się niekiedy uogolnieny algorytm, w którym przy aktywnym wyjściu synapsy obsługujące aktywne wejścia xˆ i uzyskują wzmocnienie, a synapsy obsługujące nieaktywne wyjścia są osłabiane (zakłada się Ŝe {0,1} ) ŷ i (m)(j+1) = (m) + η ( 2-1 ) Dalsze poszerzenie rozwaŝanej metody uczenia daje wzór Hopfielda, w podobny sposób traktujący zarówno ˆx i jak i ŷ i ω (m)(j+1) i = ω (m) i + η ( 2 xˆ i -1 ) (2 ŷ i -1 ) Wszystkie współczynniki wagowe podlegają przy nim bardzo intensywnemu treningowi, niezaleŝnie od tego, czy dotyczą wejść aktywnych i niezaleŝnie od tego, czy odpowiednie wyjścia są aktywne, natomiast oczywiście kierunek zmian aktywności wag zaleŝy od aktywności wejść i wyjść. ŷ i ŷ i Uczenie z rywalizacją i sieci Kohonena Uczenie z rywalizacja (competitive learning) wprowadził Kohonen przy tworzeniu sieci neuronowych uczących się realizacji dowolnych odwzorowań X Y. Zasada uczenia z rywalizacja jest formalnie identyczna z regułą instar (m*)(j+1) = (m*) + η ( x i - (m*) ) z dwoma dość istotnymi uzupełnieniami. Wektor wejściowy X jest przed procesem uczenia normalizowany tak, aby X = 1. Numer podawanego treningowi neuronu m* nie jest przypadkowy czy arbitralnie wybierany, jest to bowiem ten (i tylko ten) neuron którego sygnał wyjściowy y m* jest największy. Przy kaŝdorazowym podaniu sygnału wejściowego X neurony rywalizują ze sobą i wygrywa ten, który uzyskał największy sygnał wyjściowy y m*. Tylko ten zwycięski neuron podlega uczeniu, którego efektem jest jeszcze lepsze dopasowanie wag W (m*)(j+1) do rozpoznawania obiektów podobnych do X. 17

Uczenie z rywalizacją i sieci Kohonena Inne neurony będą podlegać uczeniu przy pojawieniu się w serii uczącej obiektów np. X (ν), w tym kroku uczenia ich wektory wag pozostają niezmienione. Reguła uczenia Kohonena bywa często wzbogacana o dodatkowy element związany z topologią uczącej się sieci. Neurony w sieci są uporządkowane, moŝna więc wprowadzić pojęcie sąsiedztwa. Uogólniona metoda samoorganizującej się sieci Kohonena polega na tym, Ŝe uczeniu podlega nie tylko neuron m* wygrywający w konkurencji z innymi neuronami sieci, ale takŝe neurony które z nim sąsiadują. Formalnie regule moŝna zapisać wzorem: (m*)(j+1) = (m*) + η h(m,m*) ( x i - (m) ) formuła uczenia moŝe być zapisana w formie: (m*)(j+1) = (m*) + η x i ( 2 y m -1 ) Uczenie z rywalizacją i sieci Kohonena Funkcjonowanie powyŝszego wzoru w istotny sposób oparto na fakcie, Ŝe y m {0,1}. Wzór ten nazywamy regułą Hebb/Anti-Hebb. Funkcje h(m,m*) moŝna definiować na wiele róŝnych sposobów, na przykład: 1 dla m=m* h(m,m*) = 0.5 dla m-m* =1 0 dla m-m* > 1 h(m,m*) = 1/ρ(m,m ) h(m,m*) = exp ( - [ρ(m,m )] 2 ) 18

Uczenie z forsowaniem Omawiane dotychczas techniki uczenia bez nauczyciela maja bardzo interesującą odmianę polegającą na wykorzystaniu przytoczonych powyŝej metod wówczas kiedy wektor wymaganych wartości sygnałów wyjściowych sieci Z jest znany. Wszystkie wymienione powyŝej metody uczenia dadzą się łatwo zastosować poprzez zamianę y przez stosowne z. Takie uczenie ma charakter forsowania poprawnych rozwiązań bez względu na to co robi sieć. Uczenie z forsowaniem WyróŜnić moŝemy następujące metody: metoda autoasocjacji: (m)(j+1) = (m) + η x i z m metoda przyrostowej autoasocjacji: (m)(j+1) = (m) + η [ ( x i - x i (j-1) ) ( z m - z m (j-1) ) ] metoda zbliŝania wektora wag do wektora odpowiedzi: (m)(j+1) = (m) + η ( z m - (m) ) Wybór jednej z róŝnych moŝliwości podyktowany musi być ocena ich przydatności w konkretnym zadaniu. Brak jest tutaj konkretnej teorii, konieczne są eksperymenty i poszukiwania oparte na badaniach empirycznych. 19

Uczenie z forsowaniem Sieć moŝe słuŝyć jako pamięć Wystartujmy od równania autoasocjacji (m)(j+1) = (m) + η x i z m i przepiszmy go do postaci macierzowej W k (j+1) = W k + η Z [ X ] T Efekt uczenia moŝna zapisać w postaci sumarycznego wzoru N W k = η Z [ X ] T + W (1) Σ k j=1 ZałóŜmy, ze W k (1) =0 oraz przyjmijmy ze wszystkie wektory wejściowe w ciągu uczącym są ortonormalne. Wówczas siec nauczy się wiernie odtwarzać wymagane sygnały wyjściowe dla wszystkich rozwaŝanych sygnałów wejściowych. Uczenie z forsowaniem Sieć ma zdolność uogólniania: Sieć jest zdolna do uogólniania sygnałów wejściowych: X = X + ζ gdzie ζ reprezentuje szum zniekształcający sygnały wejściowe w kaŝdym kolejnym przykładzie. Taki model odpowiada np. procedurze odczytywania ręcznie pisanych liter. JeŜeli dla kaŝdego wczytywanego X będziemy podawać ten sam wektor wyjściowy Z (np. uczmy sieć rozpoznawania litery A), to w wyniku uczenia macierz wag zostanie zbudowana następująco: N W k = Σ η Z [ X ] T = Σ η Z [ X + ζ ] T = h Z ( N [ X] T + Σ [ζ ] T ) j=1 N j=1 N j=1 20

Uczenie z forsowaniem W macierzy wag manifestować się będzie głownie idealny wzorzec X, podczas gdy N Σ [ ζ ] T j=1 na ogół ma niewielką wartość, poniewaŝ poszczególne składniki ζ mogą się wzajemnie kompensować. Oznacza to, Ŝe sieć ma zdolność uśredniania sygnałów wejściowych i moŝe sama odkryć nowy wzorzec X. Oba omawiane efekty są niezaleŝne od siebie i mogą być nałoŝone, co w wyniku daje sieć która ma zdolność zapamiętania róŝnych reakcji Z na róŝne sygnały wejściowe X wydobywane z serii przypadkowo zniekształconych obserwacji. Organiczeniem moŝe być pojemność pamięci związana z liczbą neutronów w sieci: N max k / ( 2 log k). Przyspieszanie procesu uczenia W bardziej złoŝonych i rozbudowanych sieciach istotną rolę odgrywa sprawność procesu uczenia. Jak optymalizujemy potrzebne CPU? Odpowiedni dobór wartości η Wprowadzanie do wzoru na korektę wektora wag dodatkowego składnika uwzględniającego bezwładność procesu zmiany wag w postaci tzw. momentu. W k (j+1) = W k + η 1 ( Z Y ) [ X ] T + η 2 M gdzie moment M wyliczane jest ze wzoru: M = W k - W k (j-1) 21

Przyspieszanie procesu uczenia Ograniczanie procesu uczenia wyłącznie do duŝych poprawek. Oznacza to,ŝe reguła uczenia ma dodatkowy parametr η 3 i działa następująco: ω (m)(j+1) i = ω (m) i + η 1 x i (z m - y m ) gdy (z m - y m ) > η 3 ω (m) i gdy (z m - y m ) < η 3 Wybór współczynników η 1, η 2, η 3 jest sprawą doświadczenia/intuicji osoby która stosuje specyficzny algorytm. Wygładzanie wykładnicze: W k (j+1) = W k + η 1 { (1 - η 1 ) ( Z Y ) [ X ] T + η 2 ( W k - W k (j-1) ) } Istotnym problemem jest równieŝ odpowiednia randomizacja zbioru uczącego, kolejne elementy X powinny być losowo wybierane (a nie cyklicznie). Uwagi końcowe Sieci MADALINE były pierwszymi efektywnie zastosowanymi sieciami neuronowymi i wciąŝ pozostają uŝywanym narzędziem przy budowaniu systemów rozpoznających, filtrów, pamięci asocjacyjnych. JednakŜe: MoŜliwości systemów budowanych z elementów liniowych są ograniczone. sieć moŝe realizować tylko odwzorowania liniowe klasa dostępnych odwzorowań nie zaleŝy od tego czy mamy odczynienia z siecią jednowarstwową czy wielowarstwową. Budowa wielowarstwowej sieci liniowej nie ma sensu, poniewaŝ moŝna ja zastąpić efektywną siecią jednowarstwową. Y = W n X ( W n = W k W l ) 22

Uwagi końcowe W ramach sieci liniowych, rozwaŝa się dwa schematy funkcjonowania takiej sieci jednokierunkowy przepływ sygnałów (feedforward) sygnały X pojawiające się na wejściu są niezaleŝne od sygnałów na wyjściu Y sieci ze sprzęŝeniem zwrotnym (feedback) w których sygnały wyjściowe Y są pośrednio lub bezpośrednio podawane na wejście X. Takie sieci nazywane są autoasocjacyjnymi i oznaczają się bogatymi własnościami dynamicznymi. X SIEć Y 23