SIwF-4-Sieci neuronowe
Transkrypt
SIwF-4-Sieci neuronowe
Sieci neuronowe: Rys historyczny SZTUCZNA INTELIGENCJA W FINANSACH • Model neuronu [McCulloch, Pitts, 1943] • Proces uczenia [Hebb, 1949] • PERCEPTRON [Rosenblatt,1958] III. Sieci neuronowe Zbieznosc algorytmu ucenia (adaptacji wag) • Ograniczenia PERCEPTRONu [Minsky, Papert, 1969] Problem XOR • Maszyna Bolzmanna [Hopfield, 1982] • Retro-propagacja - MLP [Rumelhart, Parker, Le Cun, 1985] • Self-Adapting Maps [Kohonen, 1980] Jerzy KORCZAK email : [email protected] http://www.korczak-leliwa.pl • Sieci Hopfielda [Hopfield, 1982] • … ICANN, IJCNN, ECANN, … 1 Pojęcie sieci neuronowej 2 Definicje (cd) “ ….A neural network is an interconnected assembly of simple processing elements, nodes, whose functionality is loosely based on the animal neuron. The processing ability of the network is stored in the inter-unit connection strengths, or weights, obtained by a process of adaptation to, or learning from, a set of training patterns.” — Gurney • “… systems that are deliberately constructed to make use of some of the organizational principles that are felt to be used in the human brain.” — Anderson • “... a neural network is a system composed of many simple processing elements operating in parallel whose function is determined by network structure, connection strengths, and the processing performed at computing elements or nodes.” — DARPA Neural Network Study (1988) … Sieć neuronowa (sztuczna sieć neuronowa) to ogólna nazwa struktur matematycznych i ich programowych lub sprzętowych modeli, realizujących obliczenia lub przetwarzanie sygnałów poprzez rzędy elementów, zwanych sztucznymi neuronami. 3 Korzenie prac badawczych 4 Inspiracja biologiczna Neurobiologia (ponad 100 lat temu): Jak zachowują się komórki nerwowe przy różnych stymulacjach elektrycznych? Czy istnieje poziom minimalny aktywacji neuronu? Biorąc pod uwagę fakt że komórka ma ograniczone wymiary, jak komórki komunikują się ze sobą? Psychologia: Jak uczą się (zapominają, rozpoznają, funkcjonują) zwierzęta wykonywania określonych zadań? mozg : ~ 1011 neuronow neuron : ~104 polaczen akson jadro soma synapsa dendryt Badania nad funkcjonowaniem neuronu (ów) ? McCulloch and Pitts – model matematyczny neuronu 6 1 Historia Sieć neuronowa: Wstępna definicja Model neuronu [McCulloch, Pitts, 1943] Proces uczenia [Hebb, 1949] PERCEPTRON [Rosenblatt,1958] zbieżność algorytmu adaptacji wag Ograniczenia PERCEPTRONu błędne stwierdzenie Minsky’iego Paperta, [1969] Problem XOR Bolzmann Machine [Hopfield, 1982] Back propagation - MLP [Rumelhart, Parker, Le Cun, 1985] Self-Adapting Maps [Kohonen, 1980] sieci Hopfielda [Hopfield, 1982] … ICANN, IJCNN, ECANN, … Siec neuronowa jest zestawem połączonych ze sobą prostych jednostek obliczeniowych, zwanych neuronami, o wysokim stopniu wzajemnych połączen, skalarnych komunikatach i adaptacyjnym mechanizmie interakcji miedzy neuronami. Wagi wzajmenych połączen obliczane są w trakcie procesu adaptacji, uczenia się z przedstawionych danych. Typy algorytmów uczacych: - uczenie pod nadzorem (z nauczycielem) - uczenie bez nadzoru 7 Perceptron Przykłady problemów liniowo nieseperowalnych • Rosenblatt (1962) • Liniowa separowalność • Wejście: Wektor liczb rzecz. • Wyjście :1 or -1 y sign(v) v c0 c1 x1 c2 x2 c0 c2 c1 1 + + + + + + + ++ + + + + ++ + + + + +++ ++ + + + + + + + + + + y 1 + x1 Structure y 1 Single-Layer Two-Layer c0 c1 x1 c2 x2 0 x2 Three-Layer Types of Decision Regions Exclusive-OR Classes with Most General Problem Meshed regions Region Shapes Half Plane Bounded By Hyperplane A B B A Convex Open Or Closed Regions A B B A A B B A Abitrary (Complexity Limited by No. of Nodes) B B B A A A Neural Networks – An Introduction Dr. Andrew Hunter Kilka uwag o sieciach neuronowych (1) Kilka uwag o sieciach neuronowych (2) • D.Hebb, in 1949, published The Organization of Behavior, in which he proposed that the effectiveness of a synapse between two neurons might be increased by correlated activity of those two neurons – used widely in artificial neural models today – there is also evidence of a biological mechanism in which neural activity modulates calcium ion flow, which, in turn, affects the physical structure of synapses • Farley and Clark, in 1954 on an early digital computer at MIT, modeled a network of randomly connected neurons employing a modified Hebb learning rule that was able to learn to discriminate between two input patterns • F.Rosenblatt, in 1958, introduced the single-layer perceptron with adjustable synaptic weights and a threshold output neuron • Rosenblatt conceptualized perceptrons as consisting of • three layers, for sensory, association, and response, but the weights only varied on the synapses leading to the single threshold neuron • He also introduced an error-correction rule (the perceptron learning rule) to adapt the weights and proved that if two input classes were linearly separable • the algorithm would converge to a solution (the perceptron convergence algorithm) 11 2 Kilka uwag o sieciach neuronowych (3) Kilka uwag o sieciach neuronowych(4) • P.Werbos, in his 1974 PhD thesis, first demonstrated a method for training multi-layer perceptrons, essentially identical to Backprop but the work was largely ignored • D.Ackley, G.Hinton, and T.Sejnowski [1985] introduced the Boltzmann machine (the first successful realization of a multilayered neural network) • T.Kohonen [1982] introduced SOM algorithms for SelfOrganized Maps, that continue to be explored and extended today • D.Rumelhart, G.Hinton, and C.Williams [1986] introduced Backprop, the first widely recognized learning algorithm for multilayer perceptrons or neural networks • D.Parker [1982] published an algorithm similar to Backprop, which was ignored. • T. Sejnowski and C. Rosenberg [1986] introduced NETtalk, a text-to-speech neural network system trained using Backprop. • Y. LeCun [1985] published an algorithm similar to Backprop, which was again ignored 13 Sieci neuronowe: cel i projektowanie Wiedza o zadaniu do nauczenia podana jest w postaci zbioru przykładów, zwanym zbiorem uczącym (training examples). Specyfikacja sieci neuronowej określa: • architekturę: zbiór neuronów i połączeń międy nimi. Każde połaczenie ma określona wagę (weight), •model neuronu: informacja o procesie obliczeniowym w neuronie, • algorytm uczacy (learning algorithm): stosowany do nauczenia sieci (poprzez modyfikacje wag połączeń). Cel: generalizacja przykładów tak aby sieć poprawnie rozpoznawała (rozwiązywała, klasyfikowała ) nowe przykłady. 14 Rozpoznawania pisma ręcznego Prosty model • Dwuwarstwowa sieć 0 – Górna warstwa – znane wzorce. – Dolna warstwa – intensywność piksela • Jeśli zapis przechodzi przez piksel, piksel uaktywnia połączenie. – Każdy piksel może uaktywniać kilka różnych wzorców. • Wzorzec wygrywający – ten który otrzyma najwięcej zgłoszeń. 1 2 3 4 5 6 7 8 9 Trudność w zdefiniowaniu wzorca cyfry 2 1 2 3 4 5 6 7 8 9 0 Obraz cyfry Działanie: -Powiększ wagi do właściwej klasy - Zmniejsz wagi do wszystkich uaktywnionych klas 3 Podstwowy element sieci neuronowej: neuron X1 w1 X2 w2 Perceptron wielowarstwowy (MLP) Funkcja aktywacji F 1 S X3 Wejścia 0 S wi O1 O2 F O3 wk Wyjścia Wejście neuronu Sxi*w ij Warstwa wejsciowa Wartswa ukryta Warstwa wyjsciowa S 19 Metoda spadku gradientu (Gradient Backpropagation) x1 wij o1 OCR: Rozpoznawanie znakow t1 - x2 o2 - x3 o3 - ... ... xn om Vecteur yi= S wijxi d ’entrée Funkcja sigmoidalna F(y)=1/(1+e-ky) 21 - t2 t3 ... E=1/2 S(tk - ok)2 tm F’(y) = F(y)(1-F(y)) 22 Axone : Przykład XOR 23 Zastosowania Cechy ‘dobrych’ dziedzin zastosowań: • Problemy trudne do zdefiniowania explicite • Dostepnosc do dużych baz danych • Zaklocenia w danych • Problemy wymagające szybkich obliczeń • Brak rozwiązań algorytmicznych 24 25 4 Zastosowania w zarządzaniu Multi-Layer Perceptron (MLP) Klasyfikacja, analiza klientów Przewidywanie (rynku akcji, bankructwa firmy) Zarządzanie ryzykiem Uproszczenie danych, walidacja danych, kompresja Rozpoznawanie obrazów, biometria Ocena kredytobiorcy (Credit Scoring) MLP sklada sie z sukcesywnych warstw : warstwy wejsciowej (prezentacja wektora wejsciowego), jednej lub kilku warstw ukrytych, oraz warstwy wyjsciowej (prezentujacej wartosci obliczone przez siec). Algorytmy uczace MLP : - Gradient Back-propagation, SuperSAB - Cascade Correlation - Conjugate Gradient - Metody drugiego rzedu, … Nowe zastosowania • Wyszukiwanie informacji (Web) • Data Mining • Multimedia (indeksacja) MLP sa uniwersalnymi aproksymatorami. 26 MLP: Algorytm uczacy 27 Przykład XOR: Gradient Back-Propagation (GBP) Inicjalizacja wag Repeat for kazdego przykladu naucz sie wzorca Obliczenia w przod (propagacja) Obliczenia wstecz (retro-propagacja) end for Dopoki blad nie jest ‘akceptowanie niski’ XOR X Y XOR(X,Y) 0 0 0 0 1 1 1 0 1 1 1 0 XOR 0,5 0 0 bias f(netk)=1/(1+e-net ) netj=Sw ijoi oj=f(netj) Slabosci : • Okreslenie parametrow procesu uczenia • Dlugi proces uczenia • Problem wyboru topologii sieci d k=(tk-ok)f’(netk) f’(netk)=ok(1-ok) w (t+1)=wjk(t)+lDkoj 0 jk Wij=0 k 1 0,5 0 bias 1 0 0 1 0 Y X 28 Przykład: Gradient Back-Propagation (GBP) Proces uczenia sieci XOR X 0 0 1 1 Wij=0 0 0 0 bias 1 0,5 h 0 bias 1 Dh=f’(netj) SDkw kj 0 1 x Proces uczenia: wagi i współczynnik uczenia wij(t+1)= wij((t) + l * aj*Dwi XOR z 0,5 Y XOR(X,Y) 0 0 1 1 0 1 1 0 l0,1 Dz=(1-0.5)*0,5*(1-0.5)= =0,125 wzx(t+1)=0+0,1*0,125*1= = 0,0125 wzx=0,00125 wzy=0 wzh=0,00625 whx=0,0000195 why=0 wzbh=0,0000195 f(net) = 0,507031 0 y 29 l 0,1 0,5 3,0 4,0 iteracja 25496 3172 391 (fails) 0 = 0,5*(1-0,5)*0,125*0,00625= 0,000195 whx =0+0,1*0,000195*1=0,0000195 30 31 5 Przykład: Testowanie sieci Przykład: Nauczona sieć MLP XOR X Y XOR(X,Y) 0 0 0 0 1 1 1 0 1 1 1 0 XOR XOR X 0 0 1 1 -3,29 10,9 1 0,91 -3,29 10,9 -4,95 -2,76 bias -4,95 XOR Y XOR 0 0 1 1 0 1 1 0 1 7,1 -2,76 7,1 1 * 7,1 1 * -2,76 0 * 7,1 Sxw = 4,34 1 Y X -4,95 bias 1 Y=1/(1+e-S xw) =1/(1+e-4,34) =0,98 -4,95 0,98 7,1 7,1 1 0 X Y 32 33 34 35 Przyklad: Testowanie sieci XOR XOR X 0 0 1 1 XOR Y XOR 0 0,08 1 0,91 0 1,00 1 0,10 0,91 -3,29 10,9 1 -4,95 -2,76 bias 1 -4,95 0,98 7,1 7,1 1 0 X Y Axone: Przykład XOR – parametry uczenia Axone : Sieć XOR nauczona 36 37 6 Autoryzacja dostępu – podejście biometryczne Autentyfikacja biometryczna Proces weryfikacji osoby na podstawie jej cech fizycznych (np. tęczówka oka, linie papilarne, kształt dłoni, kształt ucha, zapach, DNA, itp.. Twarz Normalisation Apprentissage et + Codage Reconnaissance Détection des yeux 0 Klient czy oszust? Moment -50 -50 10 20 30 40 0 0 0 50 50 100 Grey Scale 150 10 20 30 40 100 Vert Bleu Hue Saturation IntenJezeli té Intensity 150 200 200 250 250 Average Intensity of each row s Intensity Filtre Trouver Trouver Inondation + de base Y X Convolution Extraction Réseau des neurones w1 Przyjac Odrzucic Baza danych Badge Glos Transformation de l’ondelite Fréquence Effacer les Jezelilences Decyzja 50 Normalisation Apprentissage et + Codage Reconnaissance w2 C0 C1 C2 C3 C4 C5 C6 C7 C9 C10 C11 C12 C13 C14 Temps C15 Réseau des neurones 39 Alvinn Face Module: Ekstrakcja cech charakterystycznych Camera image Raw Feature Video Acquisition Face Detection Face Feature Localization Feature Extraction Normalised Feature Feature Normalisation Autonomous driving at 70 mph on a public highway 30 outputs for steering 4 hidden units … 30x32 weights into one out of four hidden unit 30x32 pixels as inputs 40 Mini-projekt. Zadanie 1. Problem rozpoznawania przez sieć prostych symboli graficznych zapisanych w postaci matrycy 3*3. WEJSCIE WYJSCIE Interpretacja obrazów satelitarnych Jeśli 1000 to 0100 0010 0001 42 43 7 Bourse-Experts: Online Trading Samoorganizacja - Notowania (dzienne, godzinne, 1 min, on-line), Uczenie bez nadzoru: wykrywanie cech w sygnale, modelowanie danych, analiza skupień, modele rozkładu prawd. stanów środowiska ... Powstawanie wewnętrznych reprezentacji w mózgu: skomplikowane. Proste bodźce wyzwalające u zwierząt, uboga reprezentacja. Analiza danych zmysłowych i instrukcje motoryczne - neurony o podobnych funkcjach są obok siebie => mapy topograficzne. - Ceny otwarcia, zamkniecia, max, min, wolumin transakcji, indeks - Stopa zwrotu • • • • • Mapy somatosensoryczne układu czuciowego, mapy motoryczne kory i móżdżku, mapy tonotopiczne układu słuchowego, mapy orientacji dwuocznej układu wzrokowego, mapy wielomodalne układu orientacji (wzgórki czworacze górne) 44 WTA Metody uczenia sieci « bez nadzoru » • Uczenie konkurencyjne Reguła : «winner-take-all» • Mapy samo-organizujace się Kohonena – Sieć o stałych wymiarach (2D) • Projekcja danych w sieć 2D • Gaz neuronowy – Dynamika topologii sieci (GNG) • Wstawienie neuronow w miejscu gdzie błąd sieci jest największy Uczenie konkurencyjne - WTA, Winner Takes All. Nazywane też Hard Competitive Learning. Jeden zwycięzca, dane pojedynczo (on-line) lub wszystkie (batch). Mogą powstawać bezużyteczne neurony - konieczna incjalizacja zgodna z rozkładem danych. Algorytm LBG typu WTA: 1. przypadkowa inicjalizacja; 2. Powtarzaj aż ustaną zmiany: 3. pokaż wszystkie dane i znajdź zbiory Voronoia; 4. przesuń wagi neuronu do centrum obszaru Wariant LBG-U: przesuń mało użyteczne (zerowy zbiór Voronoia) neurony w lokalne minima błędu. Wc 1 Rc V V Rc J.Korczak, ULP 46 Sieć 2D, dane 3D Modele samoorganizacji o' ' ' ' ' ' oo ' ' ' ' '' ' ' ' ' ' ' oo 'o o ' ' ' 'o ' o' o=dane ' = wagi sieci x y z przestrzeń cech Jak mapy topograficzne mogą się utworzyć spontanicznie? Połączenia lokalne: neuron silnie pobudzany przez pobliskie, słabo przez odległe, hamowany przez neurony pośrednie. neurony wejściowe wagi przypisane połączeniom 2-D siatka neuronów SOM lub SOFM (Self-Organized Feature Mapping) samorganizująca się mapa cech. Historia: von der Malsburg i Willshaw (1976), uczenie konkurencyjne, mechanizm Hebbowski, wzbudzenie typu „Meksykańskiego kapelusza”, model układu wzrokowego. Amari (1980) - model ciągłej tkanki neuronowej. Kohonen (1981) - uproszczenie, bez hamowania; dwie fazy - konkurencja i kooperacja. 8 Reguła modyfikacji wag wokół Best Matching Unit Uczenie SOM Neurony reagują na sygnały X podobne do W. Podobny = iloczyn skalarny największy lub odległość min. Znajdź najsilniej reagujący neuron c. X Wj X i Wij ; c arg min X Wj 2 i j Przesuń wagi neuronu c i neuronów w sąsiedztwie O(c): 2 h( r, rc , t ) h0 (t )exp r rc / c 2 (t ) w stronę wektora X: Wi t 1 Wi t h ri , rc,t X t Wi t dla i O c J.Korczak, ULP 51 J.Korczak, UE 53 SOM: «mexican hat» The weigths are updated according to «mexican hat». Interaction excitatory action + _ _ inhibitory action Hints : - define a large neighborhood range in the beginning - adaptation rate is a linear decreasing function J.Korczak, ULP 52 GND Algorytm Kohonena: SAM 1. 2. 3. 4. 5. 6. 7. Losowa inicjalizacja wag połaczeń miedzy WE a WY Ustalenie promienia sąsiedztwa R Prezentacja wektora WE. Obliczanie dystansu między neuronem WY j a neuronem WE i dj = S (xi(t) – w ij(t))2 gdzie xi(t) jest wartością na WE, a w ij(t) wagą Wybór najbliższego neuronu WY j*. Aktualizacja wag neuronu j* oraz sąsiadów w promieniu R : w ij(t+1)=w ij(t)) +h(t)(xi(t)– w ij(t)) lim t->oo h(t) =0 Jeśli h(t)>0, to zmniejsz promień R i wróć do 3 inaczej koniec procesu uczenia J.Korczak, ULP 54 J.Korczak, ULP 55 9 Olej z Włoch Mapy ekonomiczne Dane: Bank Światowy 1992, 39 wskaźników jakości życia. SOM i mapa świata; analiza giełdy i analiza stopów. 572 próbek olejków z oliwek pobrano z 9 prowincji Włoch. Sieć SOM 20 x 20, uczona % 8 tłuszczów zawartych w olejkach. Mapa 8D => 2D. Dokładność klasyfikacji na testowanych próbkach rzędu 9597%. Literatura Bishop C.M., Neural Networks for Pattern Recognition, Oxford Univ., 1995. Gupta J., Smith K., Neural Network in Business: Techniques and Applications, Idea GR. Pub., 2002. Haykin S., Neural Networks: A Comprehensive Foundation, Prentice, 1999. Kosiński R., Sztuczne sieci neuronowe. Dynamika nieliniowa i chaos, 2007. Rojas R., Neural Networks: A Systematic Introduction, Springer, 1996. Kohonen T., Self-Organizing Maps, Springer, 1997. Masters T., Practical Neural Network Recipes in C++, Academic Press, 1994. Tadeusiewicz R., Sieci neuronowe, Warszawa, 1993 http://winntbg.bg.agh.pl/skrypty/0001 Usenet newsgroup : comp.ai.neural-nets http://www.neuralnets.eu/ http://ai.com/ 10
Podobne dokumenty
Sztuczna inteligencja
simple processing elements operating in parallel whose function is determined by network structure, connection strengths, and the processing performed at computing elements or nodes.” — DARPA Neura...
Bardziej szczegółowo