(Microsoft PowerPoint - SN_W6.ppt [tryb zgodno\234ci])
Transkrypt
(Microsoft PowerPoint - SN_W6.ppt [tryb zgodno\234ci])
Plan wykładu • Sieci rekurencyjne Sztuczne sieci neuronowe • Sieć Hopfielda – – – – Wykład 6: Sieci rekurencyjne: sieć Hopfielda Małgorzata Krętowska tryb odtwarzania funkcja energii dynamika zmian stanu wykorzystanie sieci Hopfielda • pamięć asocjacyjna • optymalizacja Wydział Informatyki PB 2 Sztuczne sieci neuronowe Sieci rekurencyjne Sieci rekurencyjne • Sieci jednokierunkowe • Najprostsze modele sieci z rekurencją: – wyjścia sieci mogły być połączone tylko z wejściowymi neuronów warstwy następnej – implikowało to jednokierunkowy przepływ informacji: sygnały były przesyłane od warstwy wejściowej do wyjściowej – – – • Sieci rekurencyjne – dopuszcza się istnienie sprzężeń zwrotnych tzn. gdy wyjścia neuronów mogą być połączone z wejściami neuronów tej samej warstwy lub warstw pośrednich – informacja oscyluje między warstwami lub w obrębie warstw aż do spełnienia pewnego kryterium zbieżności i dopiero wtedy jest przekazywana na wyjście sieci Sztuczne sieci neuronowe 3 sieci Hopfielda, sieci uczone regułą Hebba, sieć Hamminga. • Modele bardziej złożone: – – – RTRN - Real Time Recurrent Network, przetwarzająca sygnały w czasie rzeczywistym; sieć Elmana i inne o uproszczonej strukturze rekurencji RCC - Recurrent Cascade Correlation Sztuczne sieci neuronowe 4 Sieci Hopfielda - historia Sieci Hopfielda • 1969 r. - ukazanie się książki Minsky’ego i Paperta,będącej krytyką perceptronu => kryzys w rozwoju sztucznych sieci neuronowych, ograniczenie funduszy i rezygnacja wielu naukowców z tej dziedziny badań John Hopfield (1982, 1984), model pamięci autoasocjacyjnej. Założenia: • 1978 r. - powstanie Centrum Przetwarzania Informacji Biomedycznej w M.I.T. (ang. Massachusetts Institute of Technology) i zaproszenie do udziału Johna Hopfielda z Działu Biofizyki Laboratoriów Bella – Wszystkie neurony są ze sobą połączone z wagami synaps Wij. – Macierz wag połączeń jest symetryczna, Wii=0, Wij = Wji - symetria jest wygodna z teoretycznego p. widzenia, pozwala wprowadzić funkcję energii; jest nierealistyczna z biologicznego punktu widzenia. Rodzaje sieci Hopfielda: • 1982 r. - publikacja rezultatów badań - sieci neuronowe mogą zapamiętywać i odtwarzać wzorce (również wtedy, gdy wejścia są niekompletne) - zaproponowana sieć jest rezultatem badań nad procesami równowagi szkieł spinowych – sieć dyskretna - przeważnie dyskretne funkcje aktywacji , zmiana stanu w chwilach dyskretnych – sieć ciągła - zastosowanie ciągłych funkcji aktywacji, odpowiedzi neuronów zmieniają się w sposób ciągły 5 Sztuczne sieci neuronowe Dyskretna sieć Hopfielda Działanie sieci Hopfielda Właściwości: • Tryb uczenia – wejścia to wyjścia innych neuronów – brak własnego sprzężenia zwrotnego – symetryczne wagi (Wij=Wji) – funkcja aktywacji: – na podstawie zadanych wzorców uczących x dobierane są wagi wij. • Tryb odtwarzania – wartości wag są zamrożone – zakłada się określony stan początkowy neuronów (y(0)=x) – następuje proces przejściowy, przebiegający według zależności: N yi = sgn ∑ Wij x j j =0 N yi (k ) = sgn ∑ wij y j (k − 1) j =1,i ≠ j – brak wyraźnie oddzielonych warstw, można ją rozważać w dowolnej topologii (często jako sieć jednowarstwowa) Sztuczne sieci neuronowe 6 Sztuczne sieci neuronowe który kończy się w określonym minimum lokalnym, w którym y(k)=y(k-1). 7 Sztuczne sieci neuronowe 8 Sieć Hopfielda -tryb odtwarzania Sieć Hopfielda - funkcja energii • Proces odtwarzania rozpoczyna się w chwili początkowej k=0, od doprowadzenia do elementów sygnałów wejściowych xi i=1,2,..., N, które określają stan początkowy sieci yi(0)=xi, i=1,2,.., N. • Sygnały wejściowe zostają odłączone, natomiast w sieci rozpoczyna się iteracyjny proces aktualizacji stanu. • Dla sieci o symetrycznych wagach taka dynamika prowadzi do minimalizacji funkcji typu energii (w teorii układów dynamicznych funkcji Lapunova, w fizyce statystycznej funkcji Hamiltona, w teorii optymalizacji funkcji celu lub kosztu, w obliczeniach ewolucyjnych funkcji przystosowania ...) • Funkcję energii wybiera się najczęściej w postaci: • Sieć pracuje asynchronicznie, w danej chwili może być aktualizowane wyjście tylko jednego elementu • Po pewnej skończonej liczbie iteracji sieć osiąga stan stabilny, w którym zachodzi: yi(k+1)=yi(k), i=1,2,.., N • Proces odtwarzania kończy się, a stan sieci przekazywany jest na jej wyjście Sztuczne sieci neuronowe E ( y) = − N 1 N N w y y + θ i yi ∑∑ ij i j ∑ 2 i =1 j =1 i =1 • Zmiana stanu jakiegokolwiek neuronu początkuje zmianę stanu energetycznego całej sieci w kierunku minimum tej energii aż do jego osiągnięcia 9 Stany stabilne - atraktory Sztuczne sieci neuronowe 10 Dynamika zmian stanu sieci Hopfielda Ukształtowanie obszarów atrakcji sieci rekurencyjnej o powiązaniach symetrycznych: a) wykres linii ekwipotencjalnych; b) odwzorowanie kierunku zmian potencjału w trakcie procesu uczenia Sztuczne sieci neuronowe 11 Sztuczne sieci neuronowe 12 Dynamika zmian stanu sieci Hopfielda Sztuczne sieci neuronowe Dynamika zmian stanu sieci Hopfielda 13 Dynamika zmian stanu sieci Hopfielda Sztuczne sieci neuronowe Sztuczne sieci neuronowe 14 Dynamika zmian stanu sieci Hopfielda 15 Sztuczne sieci neuronowe 16 Dynamika zmian stanu sieci Hopfielda Sieci Hopfielda w praktyce • Pamięć asocjacyjna – 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ł generować odpowiedź, która będzie odpowiadać jednemu z zapamiętanych wzorców, położonemu najbliżej próbki testującej. • Optymalizacja – rozwiązywanie problemów optymalizacyjnych. Przykład: problem komiwojażera. 17 Sztuczne sieci neuronowe 18 Sztuczne sieci neuronowe Pamięci asocjacyjne Pamięć asocjacyjna • Najczęściej używana miara odległości pomiędzy zbiorami: miara Hamminga. • Dla wielkości binarnych 0, 1 odległość Hamminga dwóch wektorów y i x jest zdefiniowana w postaci: n d H = ∑ [xi (1 − yi ) + (1 − xi ) yi ] i =1 – dH=0, gdy y=x – dH - równa jest liczbie bitów, o które różnią się oba wektory • Uczenie sieci: taki dobór wartości wag wij, aby na etapie odtwarzania sieć była zdolna odnaleźć zbiór danych, najbliższy w sensie miary Hamminga, wektorowi testowemu (kształtowanie obszarów atrakcji) Sztuczne sieci neuronowe 19 Sztuczne sieci neuronowe 20 Tryb uczenia Tryb uczenia • Zakładamy, że mamy wiele wzorców uczących x(k), k=1,2,.., p • Zakładamy, że mamy jeden wzorzec x który chcemy zapamiętać chcemy aby, dla każdego i: – wówczas wagi wij są dobierane według uogólnionej reguły Hebba: sgn ∑ wij x j = xi j wij = 1 N p ∑x (k ) i x (jk ) k =1 Warunek ten będzie automatycznie spełniony, gdy (reguła Hebba): wij = Wagi przyjmują wówczas wartości uśrednione wielu próbek uczących. 1 xi x j N gdzie N - liczba neuronów. Wówczas N 1 N 1 N 1 ∑ xi x j x j = ∑ xi x 2j = ∑ xi = xi N N N j =1 j =1 j =1 21 Sztuczne sieci neuronowe Stabilność pamięci asocjacyjnej Stabilność pamięci asocjacyjnej • Stabilność działania sieci wymaga, aby odpowiedź i-tego neuronu na lty wzorzec uczący x(l) była równa i-tej składowej xi(l): 1 N yi(l ) = sgn ∑ wij x (jl ) = sgn N j =0 N p ∑∑ x (k ) i j = 0 k =1 x (jk ) x (jl ) = xi( l ) jeżeli sumę ważoną sygnałów wejściowych i-tego neuronu oznaczymy przez hi(l) otrzymamy: hi( l ) = xi( l ) + 1 N N ∑∑ x (k ) i x (jk ) x (jl ) yi(l ) = sgn( hi( l ) ) = sgn( xi( l ) + C ) hi( l ) = xi(l ) + C ≥ 0 hi( l ) : < 0 yi( l ) = 1 yi( l ) = −1 Kiedy dany wzorzec xi(l) jest stabilny? – gdy składnik przesłuchu jest na tyle mały, że nie może zmienić znaku xi(l), czyli |xi(l)| > |C| lub – xi(l) * C >0 Wówczas: yi(l) = xi(l) , yi(k+1)=yi(k) j =0 k ≠l Wniosek: pamięć asocjacyjna ma właściwości korekcyjne. Przy prezentacji próbki 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. można tu wyróżnić czynnik pożądany i tzw. składnik przesłuchu. hi( l ) = xi(l ) + C Sztuczne sieci neuronowe 22 Sztuczne sieci neuronowe 23 Sztuczne sieci neuronowe 24 Pojemność pamięci asocjacyjnej Pojemność pamięci asocjacyjnej Rozkład wartości Ci(l) można przybliżyć rozkładem normalnym (N p duże) o wartości oczekiwanej 0 i wariancji p/N. • Maksymalna liczba wzorców zapamiętanych i odtwarzanych z akceptowanym błędem • Analizuje się tutaj wielkość: Ci(l ) = − xi(l ) 1 N Wykazano, że maksymalna pojemność pamięci asocjacyjnej (reguła Hebba) przy emax= 0.0036 określa zależność: N ∑∑ x (k ) i x (jk ) x (jl ) j =0 k ≠l pmax= 0.138N – gdy Ci(l) <0 to składnik przesłuchu ma taki sam znak jak pożądana wartość xi(l). – gdy Ci(l) jest dodatnie i Ci(l) >1 wówczas i-ty bit (lub neuron) wzorca (l) jest niestabilny Wartość ta pozwala na ustanie lawinowego powielania błędów. Odpowiada ona stanowi początkowemu sieci, w którym 0.36% ogólnej liczby neuronów znajduje się w niewłaściwym stanie. • Przyjmując, za prawdopodobieństwo błędu e = P(Ci(l) >1) widzimy, że wartość e rośnie, gdy rośnie p oraz zależy od wymiaru wektora N. Sztuczne sieci neuronowe 25 Sztuczne sieci neuronowe Pamięci asocjacyjne a optymalizacja Sztuczne sieci neuronowe Wniosek: Liczba wzorców zapamiętanych przez sieć będzie równa około 10% liczby jej elementów. 26 Optymalizacja 27 Sztuczne sieci neuronowe 28 Problem komiwojażera Problem komiwojażera • Problem komiwojażera - polega na ustaleniu optymalnej trasy objazdu n miast przez wędrownego sprzedawcę, który musi być we wszystkich miastach przynajmniej raz i chce wydać jak najmniej na podróże. • Struktura sieci: – reprezentacja miasta: wiersz zawierający n neuronów - dokładnie 1 neuron powinien przyjmować wartość 1 (pozostałe 0) – pozycja (od 1 do n) na której występuje neuron „1” odpowiada kolejności, odpowiada kolejności w jakiej to miasto ma być odwiedzane przez sprzedawcę – łączna liczba neuronów n2. Jako dane podane są odległości dij pomiędzy wszystkimi miastami, a koszt podróży sprzedawcy jest równy długości sumarycznej przebytej przez niego drogi Uwagi: – problem np-zupełny, czyli czas jego rozwiązywania rośnie wykładniczo przy wzroście liczby rozważanych miast n. – wyniki przy wykorzystaniu sieci Hopfielda [Tank, 1985]: dla 10 miast w 16 przypadkach na 20 sieć znalazła optymalną trasę. 29 Sztuczne sieci neuronowe 30 Sztuczne sieci neuronowe Problem komiwojażera Problem komiwojażera • Indeksowanie neuronów: dwa wskaźniki : • Dobór A,B,C, D oznaczają względne wagi poszczególnych warunków, w oryginalnej publikacji A=B=D=500, C=200. – 1- numer miasta, 2 - kolejność odwiedzin • Funkcja energii: E1 = A / 2∑∑∑ y xi y xj x i≠ j i E2=0, gdy w każdej kolumnie będzie najwyżej jedna jedynka E2 = B / 2∑∑∑ y xi y zi i x z≠ x E3 = C / 2 ∑∑ y xi − n x i Sztuczne sieci neuronowe z≠ x i wxi , zj = − As xz (1 − sij ) − Bsij (1 − s xz ) − C − Dd xz ( s j ,i +1 + s j ,i −1 ) gdzie sij=1 gdy i=j i 0 w pozostałych przypadkach. 2 E3 = 0, gdy w macierzy będzie dokładnie n jedynek E4 = D / 2∑∑∑ d xz y xi ( y z ,i +1 + y z ,i −1 ) x • Dobór wag: E1=0 ,gdy w każdym wierszu jest najwyżej jedna jedynka • Wymagane skalowanie odległości do przedziału [0,1], przyjęto nieliniową funkcję ciągłą opisującą neuron. E4 - oznacza długość wybranej drogi (yn+j=yj) 31 Sztuczne sieci neuronowe 32 Problemy w sieciach Hopfielda • Problemy z uzyskaniem właściwego stanu końcowego – wartość funkcji energetycznej zależy od iloczynu stanów obu neuronów i jest symetryczna względem polaryzacji. Ten sam stan energetyczny jest przypisany obu polaryzacjom, pod warunkiem, że oba zmieniają się jednocześnie na przeciwny. Wówczas oba stany charakteryzują się identyczną wartością energii i są jednakowo dobrym rozwiązaniem problemu – mieszanie różnych składowych zapamiętanych wzorców i tworzenie w ten sposób stabilnego stanu będącego minimum lokalnym – przy dużej liczbie wzorców tworzą się minima lokalne, nie odpowiadające żadnemu z zapamiętanych wzorców, a wynikające z ukształtowania funkcji energii. Sztuczne sieci neuronowe 33