1 Neuro-komputery Ryszard Tadeusiewicz
2 Współczesne komputery są coraz większe i coraz doskonalszeCyfronet AGH Superkomputer SGI 2800 „Grizzly”
3 Wciąż jednak nawet najdoskonalsze z posiadanych przez nas komputerów daleko ustępują niewielkiemu narządowi, który każdy posiada, a niektórzy nawet używają...
4 Nic dziwnego, że chcąc doskonalić systemy informatyczne zaczynamy obecnie coraz odważniej budować maszyny wzorowane na budowie i działaniu ludzkiego mózgu
5 Współcześnie budowane neurokomputery noszą zwykle nazwę Sieci Neuronowych i pod taką nazwą będą w tym referacie przedstawiane.
6
7 Sieci neuronowe są narzędziem którego zakres zastosowań stale się poszerza. Należą do tego zakresu między innymi takie zadania, jak: Tworzenie modeli złożonych systemów Automatyczne metody przetwarzania, analizy i klasyfikacji złożonych sygnałów Predykacja szeregów czasowych i liczne, liczne inne...
8 Modele statystyczne Systemy ekspertowe Metody dedukcyjneCechy charakterystyczne zadań, przy rozwiązywaniu których sieci neuronowe mają przewagę nad innymi technikami: Częściowy lub całkowity brak znajomości reguł Duża złożoność Modele statystyczne Systemy ekspertowe Metody dedukcyjne Częściowa znajomość reguł Mała i średnia złożoność Dokładne algorytmy Nieznajomość reguł rządzących problemem Sieci neuronowe Metody indukcyjne Pełna znajomość reguł Mała i średnia złożoność Stopień złożoności problemu
9 Zasadnicze zalety, warunkujące używanie sieci neuronowych są następujące:Możliwość rozwiązywania problemów niezbyt dobrze sformułowanych formalnie Możliwość zastępowania procesu „ręcznego” tworzenia modelu procesem uczenia sieci Brak konieczności jawnego formułowania założeń dla modeli Możliwość pracy współbieżnej
10 Zalety te mogą być wykorzystane jedynie wtedy, gdy typ sieci zostanie właściwie dopasowany do charakteru rozwiązywanego zadania
11 Omówimy teraz elementy, determinujące różne dostępne typy sieci neuronowych
12 Sieci neuronowe są wzorowane na faktach, które udało się ustalić w trakcie wieloletnich badań ludzkiego mózgu
13 Nagrody Nobla związane z badaniami układu nerwowego, których wyniki wykorzystano w sieciach neuronowych: Pavlov I.P. - teoria odruchów warunkowych Golgi C., - badanie struktury układu nerwowego Ramón Y Cajal S. - odkrycie, że mózg składa się z sieci oddzielnych neuronów Krogh S.A. - opisanie funkcji regulacyjnych w organizmie 1932 – Sherrington Ch. S. - badania sterowania nerwowego pracy mięśni 1936 – Dale H., Hallett L.O. - odkrycie chemicznej transmisji impulsów nerwowych Erlanger J., Gasser H. S. - procesy w pojedynczym włóknie nerwowym Hess W.R. - odkrycie funkcji śródmózgowia Eccles J.C., Hodgkin A.L., Huxley A.F. - mechanizm elektrycznej aktywności neuronu 1969 – Granit R., Hartline H.K., Wald G. – fizjologia widzenia 1970 – Katz B., Von Euler U., Axelrod J. - transmisja informacji humoralnej w komórkach nerwowych 1974 – Claude A., De Duve Ch., Palade G. - badania strukturalnej i funkcjonalnej organizacji komórki. 1977 – Guillemin R., Schally A., Yalow R. - badania hormonów mózgu 1981 – Sperry R. - odkrycia dotyczące funkcjonalnej specjalizacji półkul móżdżku 1981 – Hubel D.H., Wiesel T. - odkrycie zasad przetwarzania informacji w systemie wzrokowym 1991 – Neher E., Sakmann B. - funkcje kanałów jonowych w komórkach nerwowych
14 Dzięki wieloletnim badaniom anatomia i fizjologia mózgu jest dzisiaj doskonale znana
15 Badania te na początku pozwoliły jedynie na ustalenie lokalizacji najbardziej podstawowych funkcji mózgu
16 Towarzyszyły temu mniej lub bardziej uzasadnione spekulacje na temat zadań, jakie pełnia poszczególne struktury mózgowe
17 Doskonalenie technik analizy działania mózgu pozwoliło na dokładniejsze określenie tego, w jaki sposób on działa
18 Dokładniejsze badania pozwoliły zidentyfikować i zlokalizować podstawowe funkcje mózgu
19 Zasadnicze funkcje mózgu bada się obecnie głównie przy użyciu techniki PET, która bez mała umożliwia „podglądanie myśli” podglądanie myśli Co ciekawe – technika ta pozwala wykryć i opisać nawet tak subtelne zmiany, jakie wywołuje w mózgu np. romantyczna miłość
20 Przy użyciu tej techniki można prześledzić nawet zakłopotanie, jakie sprawiają w trakcie percepcji tak zwane obrazy dwuznaczne
21 Przykład obrazu dwuznacznego, będącego źródłem konfuzji objawiającej się także w aktywności mózgu
22 Współczesne techniki analityczne pozwoliły sięgnąć nawet w najgłębsze zakamarki mózgu
23 Wzajemne relacje pomiędzy różnymi systemami neurocybernetycznymi
24 Jak wynikało z poprzedniego slajdu istnieją różne techniczne realizacje sieci neuronowych, najczęściej jednak stosowana jest symulacja z wykorzystaniem typowych komputerów i specjalnego oprogramowania.
25 Przykład programu symulującego sieci neuronowe
26 Sztuczna sieć neuronowa, podobnie jak sieci rzeczywiste, zbudowana jest z neuronów
27 Komórka nerwowa ma wyraźnie zdefiniowany kierunek przepływu sygnałów, co pozwala wyróżnić jej wejścia (jest ich wiele) oraz wyjście.
28 Elementy, z których buduje się neuronowy model
29 Budowa wiernego modelu nawet pojedynczego neuronu (komórki Purkinjego) jest bardzo kosztowna (de Schutter’05) Do zbudowania modelu użyto: 1600 kompartmentów 8021 modeli kanałów jonowych 10 typów różnych złożonych opisów matematycznych kanałów zależnych od napięcia 32000 równań różniczkowych! 19200 parametrów do oszacowania przy dostrajaniu modelu Opisu morfologii zrekonstruowanej za pomocą mikroskopu
30 Obrazy wyników symulacji komputerowej modelu komórki Purkinjego uzyskane w badaniach de Schuttera:u góry aktywność elektryczna symulowanej komórki, u dołu zjawiska biochemiczne (przepływ jonów wapnia
31 Komórki nerwowe zwykle mają typowy rozgałęziony kształt, z dobrze wyróżnionym drzewkiem dendrytów i z aksonem dającym odgałęzienia do następnych neuronów
32 Najczęściej da się wtedy wyraźnie wyróżnić obszar wejściowych i wyjściowych połączeń komórki
33 Chociaż nie jest to wcale regułą
34 Innym razem liczne rozgałęzienia na aksonie zacierają różnicę między drzewem wejść, a gwiazdą wyjść
35 Zwykle jednak można wyraźnie wskazać skąd i dokąd przepływają sygnały
36 Zwykle na wejściu neuron zbiera informacje z raczej małego obszaru poprzedniej warstwy sieci, natomiast rozsyła swój sygnał do większej liczby neuronów kolejnej warstwy
37 Od reguły tej są jednak wyjątki
38 Niekiedy neurony są zaskakująco mało rozgałęzione
39 Innym razem rozgałęzień jest bardzo dużo
40 Czasem rozgałęzienia wyraźnie „szukają” swojego docelowego połączenia na wejściu...
41 ... lub na wyjściu.
42 Czasem cała struktura komórki ma wyraźnie kierunkowy charakter
43 Bywają komórki o takiej budowie, że trudno orzec, gdzie jest ich wejście, a gdzie wyjście
44 Najciekawsze procesy toczą się na złączach pomiędzy neuronami
45 agregacja danych wejściowych obliczenie wartości funkcji aktywacjiNeuron - podstawowy element sieci w1 x1 Zadania ??? w2 y x2 Jak zróżnicować te sygnały? wn xn agregacja danych wejściowych obliczenie wartości funkcji aktywacji
46 Przy stosowaniu sieci neuronowych zasadnicze korzyści odnosi się z procesów uczenia zachodzących w obrębie tak zwanych synaps.
47 Pojęcie „wagi” synaptycznej jest w sztucznym neuronie bardzo uproszczone, podczas gdy w rzeczywistych komórkach odpowiada mu dosyć skomplikowana struktura anatomiczna i bardzo złożone procesy elektrochemiczne
48 Własności neuronu determinują: przyjęta agregacja danych wejściowych oraz założona funkcja wyjścianeuron nieliniowy Agregacja liniowa neuron liniowy w1 x1 w2 y x2 y = s ... wn xn Agregacja radialna
49 W przypadku neuronu liniowego jego zachowanie daje się łatwo zinterpretować
50 W przypadku neuronu nieliniowego nie jest tak łatwo, ponieważ zagregowany (w taki lub inny sposób) sygnał wejściowy może być przetworzony przy użyciu funkcji nieliniowej o teoretycznie dowolnym kształcie.
51 Funkcje aktywacji neuronu może być dowolna, ale najczęściej stosowane są niżej podane kształty.
52 Nieliniowe funkcje aktywacji też bywają różne:
53 Dobierając współczynniki wagowe wejść neuronu można wpływać na kształt jego nieliniowej charakterystyki!
54 Taka forma funkcji aktywacji neuronu powoduje, że w przestrzeni sygnałów wejściowych zachowanie neuronu opisuje tak zwane „urwisko sigmoidalne”
55 Odmiennie działającym elementem używanym w niektórych typach jest tzwOdmiennie działającym elementem używanym w niektórych typach jest tzw. neuron radialny (RBF) Agregacja sygnałów wejściowych w tym typie neuronu polega na obliczaniu odległości pomiędzy obecnym wektorem wejściowym X a ustalonym podczas uczenia centroidem pewnego podzbioru T Również nieliniowa funkcja przejścia w tych neuronach ma odmienną formę - „dzwonu” gaussoidy - czyli jest funkcją niemonotoniczną.
56 Sztuczny neuron jest więc w sumie dosyć prostą strukturą, dzięki czemu stosunkowo łatwo jest stworzyć sieć takich elementów
57 Przy budowie sztucznych sieci neuronowych najczęściej przyjmuje się, że ich budowa jest złożona z warstw, podobnie jak na przykład struktury neuronowe zlokalizowane w siatkówce oka
58 Trzeba jednak dodać, że sieci neuronowe w mózgu miewają też znacznie bardziej skomplikowaną strukturę
59 Przykład: schemat móżdżku
60 Zajmiemy się sieciami o niezbyt złożonej strukturze, bo ilość połączeń w dużej sieci neuronowej jest tak duża, że ich pełna prezentacja jest praktycznie nieczytelna
61 W dodatku duże sieci często mają strukturę trójwymiarową
62 Schemat sztucznej sieci neuronowej (uproszczonej)Warstwa ukryta (jedna lub dwie) Warstwa wejściowa Warstwa wyjściowa Działanie sieci zależy od: przyjętego modelu neuronu, topologii (struktury) sieci, wartości parametrów neuronu, ustalanych w wyniku uczenia
63 Najbardziej typowa struktura: sieć MLPPodstawowe właściwości: wiele wejść i wiele wyjść jedna (rzadziej dwie) warstwy ukryte nieliniowe charakterystyki neuronów ukrytych w formie sigmoid W warstwie wyjściowej neurony mogą być liniowe lub także mogą mieć charakterystyki sigmoidalne Uczenie najczęściej przeprowadzane metodą wstecznej propagacji błędów
64 A tak wygląda struktura innej praktycznie użytecznej sieci klasy GRNNwarstwa radialna każdy z neuronów reprezentuje skupienie występujące w danych warstwa wejściowa służy do wprowadzania danych do sieci warstwa regresyjna wyznacza elementy niezbędne do obliczenia wartości wyjściowej warstwa wyjściowa wyznacza odpowiedź sieci
65 Idea działania sieci realizujących regresję uogólnioną (GRNN -Generalized Regression Neural Network)Wejściowe wektory uczące dzielone są na skupienia - w szczególnym przypadku każdy wektor tworzy oddzielne skupienie, Dla każdego skupienia znana jest wartość zmiennej objaśnianej, wartość zmiennej objaśnianej dla dowolnego wektora wejściowego szacowana jest jako średnia ważona z wartości tej zmiennej dla skupień - wagi uzależnione są od odległości od skupień.
66 Określenie wag neuronów radialnych metodą K-średnichElementy zbioru uczącego dzielone są na grupy elementów podobnych (metodą k-średnich). W charakterze wag stosowane są środki ciężkości każdej wyróżnionej grupy.
67 Możliwości zastosowań sieci: opis zależności regresyjnychY=NN(X1, X2, ..., XN) Y - zmienna ciągła Xi - zmienne ciągłe lub dyskretne powierzchnia, garaż, wiek, ogrzewanie, położenie, piętro, .... Cena rynkowa Przykład: Wycena mieszkań
68 Przy modelowaniu dowolnego systemu za pomocą sieci używa się metodologii „czarnej skrzynki”
69 Działanie modelu regresyjnego wytworzonego za pomocą sieci
70 Możliwości zastosowań sieci: klasyfikacja wzorcowa? Y=NN(X1, X2, ..., XN) Y - zmienna dyskretna Xi - zmienne ciągłe lub dyskretne ? dochody, zabezpieczenie, wiek, stan cywilny, oszczędności, zatrudnienie .... przyznać czy nie przyznać ? Przykład: Udzielanie kredytu
71 Przykład klasyfikacji binarnej
72 Istota procesu uczenia sieci przy klasyfikacji binarnej (dychotomii) polega na tym, żeby rozgraniczyć w przestrzeni sygnałów odpowiednie obszary
73 Przykład klasyfikacji wieloklasowej
74 Możliwości zastosowań sieci: prognozowanie szeregów czasowychYt+1=NN(Yt, Yt-1,..., Yt-k, Xt, ..., Xt-1) $/Zł(t) $/Zł(t-1) DM/Zł(t) WIG(t) WIG(t-1) .... $/Zł (t+1) Przykład: Prognoza kursu waluty
75 Przykładowa struktura sieci przewidującej przyszłe wartości wskaźnika WIGY(t) Y(t-1) Y(t-2) ... Y(t-k) Y(t+1)