Obliczenia Naturalne - Sztuczne sieci neuronowe
Transkrypt
Obliczenia Naturalne - Sztuczne sieci neuronowe
Wstęp Sztuczny neuron Sieci Podsumowanie Literatura Wprowadzenie Obliczenia Naturalne - Sztuczne sieci neuronowe Paweł Paduch Politechnika Świętokrzyska 13 marca 2014 Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 1 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Literatura Wprowadzenie Plan wykładu 1 Wstęp Literatura Wprowadzenie 2 Sztuczny neuron Budowa Uczenie Rodzaje 3 Sieci Rodzaje Uczenie Rekurencyjne Przegląd 4 Podsumowanie Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 2 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Literatura Wprowadzenie Literatura Mariusz Flasiński - Wstęp do sztucznej inteligencji, PWN, 2011 Ryszard Tadeusiewicz - Sieci neuronowe, Akademicka Oficyna Wydaw. RM, 1993 http://winntbg.bg.agh.edu.pl/skrypty/0001/ppframe.html Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 3 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Literatura Wprowadzenie Wstęp Pod koniec XIX wieku Santiago Ramón y Cajal pokazał, że mózg ludzki składa się z neuronów. W 1943 roku Walter Pits i Warren McCulloch - stworzyli matematyczny model neuronu wraz z dowodem, że może odwzorować dowolną funkcję logiczną. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 4 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Literatura Wprowadzenie Neuron a dentryty - „wejścia” neuronu Neuron b ciało komórki c jądro komórkowe - „centrum obliczeniowe” d akson - „wyjście” neuronu e otoczka mielinowa f komórka Schwanna g przewężenie Ranviera Rysunek: Neuron źródło wikipedia h zakończenia aksonu Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 5 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Literatura Wprowadzenie Neuron Przy dentrytach umieszczone są synapsy, to one regulują moc sygnału wejściowego. Właściwości transmisyjne synaps zależą od substancji zwanych neurotransmiterami. Gdy całkowita siła oddziaływań synaps na neuron przekracza pewną progową wartość w neuronie pojawia się tzw. potencjał czynnościowy, który wędruje jako impuls nerwowy. Mówimy, że neuron został pobudzony. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 6 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Sztuczny neuron dendryty synapsy X0 W0 X1 W1 . . . Xn . . . Wn ciało komórki akson v y P f (v ) wagi synaptyczne Sygnały wejściowe X0 , X1 , ..., Xn będące odpowiednikami impulsów nerwowych od innych neuronów tworzą wektor wejściowy X = (X0 , X1 , ..., Xn). Zakładamy, że X0 = 1. Wektor wag synaptycznych W = (W0 , W1 , ..., Wn ) określają w jakim stopniu sygnały od innych neuronów oddziałują na neuron. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 7 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Sztuczny neuron Funkcja potencjału postsynaptycznego g (W, X) określa całkowitą siłę oddziaływania sygnałów na neuron. Wektor X jest mnożony przez wektor W, następnie wyniki są sumowane dając w wyniku sygnał v . v = g (W, X) = n X Wi , Xi i=0 Teraz wystarczy sprawdzić czy sygnał osiągnął wystarczający poziom do aktywacji neuronu, czy osiągnął wartość progową. Sprawdzenie następuje za pomocą funkcji aktywacji. y = f (v ) Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 8 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Funkcja aktywacji neuronu McCullocha-Pittsa W. S. McCulloch i W. Pitts jako funkcji aktywacji użyli funkcji skokowej Heaviside’a, którą oznacza się często przez 1(v ) tzw. tłustą jedynką. ( 1(v ) = 1, 0, jeśli v 0, jeśli v < 0 y = f (v ) 1 v −4 −2 −1 Paweł Paduch 2 4 Obliczenia Naturalne - Sztuczne sieci neuronowe 9 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie neuronu Tak jak mózg ludzki jest zdolny do nauki tak samo sztuczny neuron można czegoś nauczyć. Chcemy aby neuron nauczył się reagować w poprawny sposób na prezentowane mu wzorce, reprezentowane przez wektory wejściowe. zainicjowanie wektora wag W i ustawienie ciągu uczącego na wejście neuronu wprowadzenie kolejnego wektora X ciągu uczącego na wejście neuronu ponowne ustawienie ciągu uczącego na wejście neuronu wyznaczenie sygnałów v i y wyznaczenie wektora wag W neuron nauczony Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 10 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie neuronu Cykl uczenia się neuronu można opisać następująco: Na wejście neuronu wprowadzamy wektor X Obliczany jest poziom sygnału v Wyznaczona wartość y zgodna z funkcją aktywacji jest reakcją na „pokazany” wzorzec. Proces uczenia się polega na korygowaniu wag wprowadzanego wektora w zależności od reakcji na dany wzorzec. Korygujemy wektor wag W, poczym przechodzimy do wprowadzenia nowego ciągu uczącego. Po wprowadzeniu wszystkich wektorów ciągu uczącego, sprawdzamy czy neuron nauczył się rozpoznawać wzorce, jeśli nie, ponownie ustawiamy cały ciąg uczący i wprowadzamy wszystkie wektory. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 11 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie neuronu - z nauczycielem Istnieją dwie techniki uczenia neuronu, z nauczycielem i bez. W pierwszym przypadku ciąg uczący ma postać: U = ((X(1), u(1)), (X(2), u(2)), ..., (X(M), u(M))) Gdzie X(j) = (X0 (j), X1 (j), ..., Xn (j)), j = 1, ..., M jest j-tym wektorem wejściowym, a u(j) jest sygnałem jakiego nauczyciel oczekuje od neuronu. Neuron poprawnie reaguje na wzorce gdy dla każdego X(j) generuje sygnał wyjściowy y (j) zgodny w granicach błędu z u(j). Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 12 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie neuronu - bez nauczyciela W uczeniu bez nauczyciela ciąg uczący ma postać: U = (X(1), X(2), ..., X(M)) Tu neuron samodzielnie modyfikuje swoje wagi tak, żeby dla „podobnych” wzorców generować taki sam sygnał wyjściowy a dla „różnych” inne sygnały wyjściowe. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 13 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Perceptron Perceptron zbudował w 1957 roku Frank Rosenblatt. Funkcja aktywacji perceptronu jest bipolarną funkcją skokową. ( f (v ) = X2 1, −1, jeśli v > 0, jeśli v ¬ 0. X0 = 1 W0 X1 X3 W1 W2 X4 W3 W4 X7 X5 P v f (v ) 1 y v -1 W5 W6 W7 X6 Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 14 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie perceptronu W celu uczenia perceptronu modyfikujemy jego wagi w następujący sposób: Jeżeli w j-tym kroku uczenia y (j) 6= u(j), to nowe wagi dla następnego kroku (j + 1) obliczamy według: Wi (j + 1) = Wi (j) + u(j)Xi (j), jeżeli w j-tym kroku uczenia y (j) = u(j) to wagi w następnym kroku nie zostają zmienione. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 15 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie perceptronu Przykładowo chcemy nauczyć perceptron rozpoznawania liter A i C pojawiających się na 7 segmentowym wyświetlaczu. X2 X1 X2 X3 X1 X4 X7 X3 X4 X5 X7 X6 X5 X6 Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 16 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie perceptronu Będą im przypisane sygnały wejściowe odpowiednio: XA = (X0 , 1, 1, 1, 1, 1, 0, 1) gdzie chcemy by perceptron generował na wyjściu sygnał u = 1 oraz XC = (X0 , 1, 1, 0, 0, 0, 1, 1) gdzie oczekujemy sygnału wyjściowego u = −1 Początkowy wektor wag jest wyzerowany: W(1) = (W0 (1), W1 (1), W2 (1), W3 (1), W4 (1), W5 (1), W6 (1), W7 (1)) = (0, 0, 0, 0, 0, 0, 0) Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 17 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie perceptronu Uczenie przebiegać będzie w kilku krokach: Wprowadzamy ciąg uczący XA wyliczamy wartość v ponieważ wszystkie wagi były równe 0 więc i v = 0 a co za tym idzie y = f (v ) = −1 6= u gdzie u powinno być 1. Modyfikujemy wagi według Wi (j + 1) = Wi (j) + u(j)Xi (j), nowy W(2) = (1, 1, 1, 1, 1, 1, 0, 1). Wprowadzamy ciąg uczący XC wyliczamy wartość v ponieważ wszystkie wagi zostały zmodyfikowane do W(2) więc i v = 4 a co za tym idzie y = f (v ) = 1 6= u gdzie u dla C powinno być -1. Modyfikując wektor wag zgodnie z nowym ciągiem uczącym otrzymujemy W(3) = (0, 0, 0, 1, 1, 1, −1, 0) Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 18 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Uczenie perceptronu Kolejne kroki to ponowne wprowadzenie ciągów uczących i sprawdzenie aktywacji neuronu. Dla XA i wag W(3) v = 3 a więc sygnał wyjściowy y = 1 jest zgodny z wymaganym u = 1, dlatego nie zmieniamy wag W(4) = W(3). Dla XC i wag W(4) v = −1 a więc sygnał wyjściowy y = −1 jest zgodny z wymaganym u = −1, też nie zmieniamy wag W(5) = W(4). Nauka zakończona. W1 = W2 = W7 = 0 ma wagi neutralne, cechy w obu wzorcach są takie same. W3 = W4 = W5 = 1 wzmacniają cechy występujące we wzorcu litery A i nie występujące w C. W6 = −1 osłabia cechę X6 występującą we wzorcu C i nie występującą we wzorcu A. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 19 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Typologia sztucznych neuronów Sztuczne neurony zwykle różnią się od przedstawionego modelu podstawowego. Cechami je różniącymi zwykle są: strukturalny schemat funkcjonalny, rodzaj formuły wykorzystanej w metodzie uczenia, rodzaj funkcji aktywacji, rodzaj funkcji potencjału postsynaptycznego. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 20 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Strukturalne schematy funkcjonalne Schemat perceptronu (góryny) Schemat Adeline (ang. adaptive linear neuron) (dolny) stworzonego przez Bernarda Widrowa i Marciana E. Teda Hoffa w 1960 roku. Różnią się nie tylko schematem funkcjonalnym ale i metodą uczenia. η w drugim wzorze jest współczynnikiem szybkości uczenia dobieranym eksperymentalnie. Paweł Paduch X0 X1 W0 W1 . . . . . . Wn Xn P V f (v ) 1 y v -1 Wi (j + 1) = Wi (j ) + u (j )Xi (j ), y (j ) 6= u (j ) u X0 X1 W0 W1 . . . . . . Wn Xn P V f (v ) 1 y v -1 Wi (j + 1) = Wi (j ) + η [u (j ) − v (j )]Xi (j ) u Obliczenia Naturalne - Sztuczne sieci neuronowe 21 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Reguła Hebba Symuluje zjawisko „stowarzyszania się” nuronów. Gdy poprzedni neuron jest aktywowany to następny jest też w tym czasie pobudzony. Realizacje takiego zachowania można osiągnąć, podłączając wyjście poprzedniego neuronu y1 do wejścia Xi następnego, oraz ustawić odpowiednio wysoko jego wagę Wi . y1 X0 X1 . . . Xi . . . Xn W0 W1 . . . Wi . . . Wn y2 Reguła uczenia Hebba: Wi (j + 1) = Wi (j) + ηy (j)Xi (j) Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 22 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Postacie funkcji aktywacji Jak zauważyliśmy modele neuronów różnią się postacią funkcji aktywacji. Heaviside, tzw. tłusta jedynka. Stan 0 lub 1, (progowa unipolarna) funkcja progowa bipolarna, stany -1 lub 1, obcieta funkcja liniowa, funkcja sigmoidalna, funkcja tangesoidalna. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 23 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Obcięta funkcja liniowa f (v ) 1 0.5 v −2 −1 1 2 −0.5 −1 f (v ) = 1, v, −1, Paweł Paduch jeśli v > 1, jeśli −1 ¬ v ¬ 1, jeśli v < −1. Obliczenia Naturalne - Sztuczne sieci neuronowe 24 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Sigmoidalna (unipolarna) funkcja aktywacji f (v ) 1 0.8 0.6 0.4 β = 0.5 β = 1 0.2 β = 5 v −4 −2 f (v ) = Paweł Paduch 2 4 1 1 + e −βv Obliczenia Naturalne - Sztuczne sieci neuronowe 25 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Tangesoidalna / Sigmoidalna (bipolarna) funkcja aktywacji f (v ) = tgh(βv ) 1 0.5 v −4 −2 2 4 β = 0.5 −0.5 β = 1 β = 5 −1 f (v ) = tgh(βv ) = Paweł Paduch 1 − e βv 1 + e −βv Obliczenia Naturalne - Sztuczne sieci neuronowe 26 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Budowa Uczenie Rodzaje Postacie funkcji potencjału postsynaptycznego Zwykle przyjmuje się, że jest to funkcja sumy, choć można też spotkać inne np. w sieciach radialnych czy w systemach neuronowo-rozmytych. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 27 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Podstawowe struktury sieci neuronowych Przyjmijmy następujące oznaczenia: N (r )(k) k-ty neuron r -tej warstwy, y (r )(k) sygnał wyjściowy danego neuronu, (r )(k) Xi (r )(k) Wi sygnały wejściowe danego neuronu, wagi wejść danego neuronu, i = 1, ...n, n to liczba wejść danego neuronu Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 28 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sieć jednowarstwowa Najprostszą strukturą sieci neuronowych jest sieć jednowarstwowa. Zwykle sygnały wejściowe trafiają do wszystkich neuronów. Wejście Jedna warstwa Wyjście X1 N (1)(1) y (1)(1) X2 N (1)(2) y (1)(2) X3 N (1)(3) y (1)(3) Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 29 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sieć wielowarstwowa Drugą strukturą jest sieć wielowarstwowa. Wejście Warstwa wejściowa Warstwa ukryta Warstwa wyjściowa Wyjście X1 N (1)(1) N (2)(1) N (3)(1) y (3)(1) X2 N (1)(2) N (2)(2) N (3)(2) y (3)(2) X3 N (1)(3) N (2)(3) N (3)(3) y (3)(3) Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 30 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sygnał wyjściowy (r )(p) Można zauwazyć, że y (r −1)(k) = Xk dla dowolnego p-tego neuronu r -tej warstwy. Sygnał wyjściowy dla neuronu N (r )(k) uwzględniając powyższe, można wyliczyć za pomocą zależności: ! ! y (r )(k) =f X (r )(k) (r )(k) Wi Xi i =f X (r )(k) (r −1)(i) Wi y i Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 31 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Wsteczna propagacja błędu Wsteczną propagację błędu opublikował w 1986 roku David E. Rumelhart i Geoffrey E. Hinton. Obliczamy sygnał wyjściowy dla neuronów ostatniej warstwy L Dla każdego k-tego neuronu ostatniej warstwy obliczamy błąd δ (L)(k) = (u (k) − y (L)(k) ) df (v (L)(k) ) , dv (L)(k) gdzie u (k) jest wymaganym sygnałem wyjściowym k-tego neuronu L-tej warstwy a f funkcją aktywacji. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 32 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Wsteczna propagacja błędu Propagujemy wstecz błędy neuronów na warstwy poprzednie: δ (r )(k) = X (r +1)(m) δ (r +1)(m) Wk df (v (r )(k) ) dv (r )(k) m gdzie m indeksuje zbiór neuronów warstwy (r + 1) dla każdego neuronu N (r )(k) obliczamy nowe wagi (r )(k) W 0i (r )(k) = Wi (r )(k) +ηδ (r )(i) Xi (r )(k) = Wi +ηδ (r )(i) y (r −1)(i) , gdzie η jest współczynnikiem szybkości uczenia. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 33 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Podstawowe problemy W procesie uczenia podstawowymi problemami są: określenie warunku zatrzymania uczenia się metoda obliczania błędu uczenia dobór wag inicjalnych manipulowanie współczynnikiem szybkości uczenia wraz z kolejnymi etapami Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 34 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sieć rekurencyjna Hopfielda Do tej pory prezentowane sieci były jednokierunkowe. Sieci w których sygnał wyjściowy może trafiać na wejścia tej samej warstwy lub poprzedniej nazywamy rekurencyjnymi. Charakteryzują się one dużą mocą obliczeniową. Pierwsza taka sieć została zaproponowana przez Johna Hopfielda w 1982 roku. Wyjścia kierowane są na wejścia neuronów i „krążą” dopóki sygnał wyjściowy nie przestanie się zmieniać. Może być wykożystana jako model pamięci skojarzeniowej. Paweł Paduch X1 (1)(1) W1 (1)(1) W2 N (1)(1) y (1)(1) (1)(1) W3 X2 (1)(2) W1 (1)(2) W2 N (1)(2) y (1)(2) (1)(2) W3 X3 (1)(3) W1 (1)(3) W2 N (1)(3) y (1)(3) (1)(3) W3 Obliczenia Naturalne - Sztuczne sieci neuronowe 35 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Inne sieci rekurencyjne W 1986 roku Michael I. Jordan zaprezentował model zwany siecią Jordana. Model wielowarstwowy oprócz 3 podstawowych warstw posiada dodatkową warstwę zawierającą tzw. neurony stanu, których wejścia połączone są z wyjściami neuronów warstwy wyjściowej a wyjścia podłączone są do wejść warstwy ukrytej. Sieci Elmana (Jeffrrey L. Elman) różnią się tym, że warstwa dodatkowa (kontekstowa) czerpie sygnały nie z warstwy wyjściowej a ukrytej. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 36 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sieci pamięci skojarzeniowej Zapamiętuje wektory wzorcowe w celu późniejszego rozpoznawania podobnych wektorów przez mechanizm skojarzenia. Sprawdza się dobrze w sytuacjach kiedy informacja jest niepełna lub zniekształcona. dwuwarstwowa, jednokierunkowa, uczona z nauczycielem sieć Hintona. BAM (ang. Bidirectional Associative Memory ) - uogólniona sieć Hopfielda na dwuwarstwową sieć rekurencyjną. Sygnały przebiegają w cyklach raz w jedną stronę raz w drugą, aż osiągnie stan stabilny. sieć Hamminga uogólnienie sieci Hopfielda na 3 warstwową strukturę rekurencyjną, tylko warstwa ukryta jest rekurencyjna, opiera się na minimalizowaniu odległości Hamminga wejściowego wektora testującego od wektorów wzorcowych zapamiętanych w sieci. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 37 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sieci samoorganizujące się SOM - (ang. Self-Organizing Maps). Wykorzystywane w analizie skupisk. na podstawie ciągu uczącego generują dyskretną reprezentację, zwaną mapą (zwykle 2-3 wymiarową). Na mapie znaleźć można skupiska wektorów ciągu uczącego. Uczenie bez nauczyciela, z konkurencją. Neurony konkurują ze sobą, w trakcie uczenia tylko najlepszy neuron wygrywa inne wyjścia są zerowane. Mamy dwie metody korekty wag. WTA (ang. Winer Takes All) - wagi koryguje się tylko w zwycięskim neuronie WTM (ang. Winner Takes Most) - wagi koryguje się nie tylko u zwycięzcy ale i u sąsiadów. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 38 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Sieci ART Sieci ART (ang. Adaptive Resonanse Theory ), stosowane do rozpoznawania obrazów. Zwykle gdy dodajemy nowe wzorce uczące, trzeba cały proces uczenia przeprowadzić od początku, tak by sieć nie osłabiła wyuczonych starych wzorców. W sieci ART nowy wzorzec jest dołączany do już wyuczonego jeżeli jest bardzo podobny, jeżeli nie tworzona jest nowa klasa wzorców. To jak bardzo wzorce mają być podobne w swoich klasach zależy od parametru sterującego stopniem uogólnienia. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 39 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Rodzaje Uczenie Rekurencyjne Przegląd Probabilistyczne Probabilistyczne sieci neuronowe klasyfikują wzorce na podstawie funkcji gęstości prawdopodobieństwa dla poszczególnych klas. Jednym z pierwszych modeli, który możemy potraktować jako probabilistyczny jest maszyna Boltzmanna. Sieci radialnych funkcji bazowych (RBF). Zamiast jednej wspólnej funkcji aktywacji użyte są dla każdego neuronu różne tzw. radialne funkcje bazowe np. funkcje Gausa, wielomianowa, Hardy’ego. Składają się z dwóch warstw, warstwa neuronów wyjściowych i radialnych. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 40 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Podsumowanie Zalety Nie wymagają programowania, uczą się same. Są odporne na uszkodzenia, w przypadku utraty kilku połączeń nadal może działać. Posiada zdolności do uogólnienia. Wady Są mało precyzyjne, operuje pojęciami, wysoki, niski, duży, mały. Nie „rozumują” wieloetapowo, kiedy trzeba wyciągać wnioski z poprzedniego rozumowania i z tych wniosków wyciągać kolejne. Takie działanie wymaga zastosowania kilku sieci. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 41 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie Pytania ? Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 42 z 43 Wstęp Sztuczny neuron Sieci Podsumowanie koniec Dziękuję Państwu za uwagę. Paweł Paduch Obliczenia Naturalne - Sztuczne sieci neuronowe 43 z 43