Sztuczne Sieci Neuronowe Sztuczne Sieci Neuronowe
Modele neuronowe Modele neuronowe
Wykład 2 Wykład 2
Włodzisław Duch
Katedra Informatyki Stosowanej, WFAiIS Laboratorium Neurokognitywne ICNT
Uniwersytet Mikołaja Kopernika
Google: W. Duch
Ostatnio omówiliśmy:
Ostatnio omówiliśmy:
• problemy efektywnie niealgorytmizowalne,
• Inteligencja obliczeniowa i sztuczna inteligencja,
• problemy CI
• inspiracje dla CI
• cele CI
• adaptacja i rodzaje uczenia
• przykłady zastosowań
Inspiracje biologiczne Inspiracje biologiczne
Organizmy, mózgi, układy biologiczne – potrafią rozwiązywać interesujące, efektywnie niealgorytmizowalne problemy.
Problem: układy biologiczne są zbyt skomplikowane by modelować szczegóły ich działania.
Neurony: bardzo skomplikowana budowa, chociaż istnieje dobra teoria pozwalająca na bardzo szczegółowe symulacje własności pojedynczych neuronów.
Jedynie ogólne zasady organizacji i sposobu funkcjonowania układów biologicznych neuronów mogą służyć za inspirację.
Sztuczne sieci neuronowe (ANN, Artificial Neural Networks) nie przypominają zbytnio biologicznych.
Inspiracja: zbadać możliwości obliczania za pomocą sieci prostych,
oddziaływujących ze sobą (w nieliniowy sposób) elementów.
Rys historyczny Rys historyczny
1938 N. Rashevsky, neurodynamika
1943 W. McCulloch & W. Pitts, sieci neuronowe jako układy logiczne (progowe)
1949 D. Hebb, uczenie się na poziomie synaptycznym 1958 F. Rosenblatt, Perceptron
J. von Neuman, The computer and the brain 1960 B. Widrow, M. Hoff, Adeline
1961 E. Caianiello, teoria procesów myślowych, równanie mnemoniczne (szkoły Caianiello)
1967 K. Steinbuch, E. Schmitt, Macierze uczące się 1969 M. Minsky, S. Papert, książka „Perceptrony”
1973 Chr. von der Malsburg, samoorganizacja w układzie nerwowym
1976 S. Grossberg, modele rozwoju postrzegania przez mózg
Rys historyczny 2 Rys historyczny 2
1977 S-I. Amari, neuronowa teoria tworzenia się koncepcji
1981 J. McClelland, D. Rumelhart, model interakcyjnej aktywacji 1982 J. Hopfield, model Hopfielda;
T. Kohonen, samoorganizacja map topograficznych mózgu
1983 K. Fukushima, S. Miyake, T. Ito, neokognitron, głęboka sieć neuro 1984 F. Crick, sieci i neuronalne podstawy świadomości
1985 D. Ackley, G. Hinton, T. Sejnowski, maszyny Boltzmana
1986 D. Rumelhart, G. Hinton, R. Williams, wsteczna propagacja błędów 1987 G. Carpenter, S. Grossberg, model ART; W. Freeman, Chaos w mózgu 1988 B. Kosko, prosty model BAM
N. Qian, T. Sejnowski, zastosowania do zwijania białek i Nettalk 1990 T. Poggio, F. Girosi, sieci RBF, teoria regularyzacji.
1997 S. Hochreiter, J. Schmidhuber, sieć rekurencyjna LSTM 1998 Y. LeCun i inn, sieci konwolucyjne w analizie obrazów.
2005 GPU do sieci konwolucyjnych, bardzo duże sieci, głębokie uczenie.
Możliwości modelowania mózgu Możliwości modelowania mózgu
• Matematyczne (analityczne) - ograniczone.
• Elektroniczne - złożone modele, aktywna dziedzina
• Komputerowe - symulacja, najciekawsze wyniki.
Jaki jest cel modelowania?
Neurony: logiczne, impulsujące, wielostanowe, progowe ...
ANN, sztuczne sieci neuronowe – liczne zastosowania techniczne, modele funkcji mózgu, neurony impulsujące lub progowe.
PDP, Parallel Data Processing, czyli rozproszone przetwarzanie
danych – szersza kategoria, bo są tu wszelkie modele sieciowe, niekoniecznie neuronowe.
Wiarygodność biologiczna vs. liczba neuronów sieci: im prostsze
elementy tym bardziej złożone sieci można konstruować.
Ogólne własności modeli neuronowych Ogólne własności modeli neuronowych
Modele neuronowe to:
• podklasa modeli adaptacyjnych (adaptive systems);
• podklasa modeli PDP - Parallel Distributed Processing, czyli modeli opartych na przetwarzaniu rozproszonym (współbieżnym).
Sposób uczenia:
• Uczenie „nadzorowane” (supervised), do asocjacji (hetero i auto), czyli skojarzeń par struktur wejściowych i wyjściowych.
• Uczenie się bez nadzoru (unsupervised learning), do wykrywania regularności tj. reakcji na „interesujące” sygnały, uczenie indukcyjne – uogólnianie przykładów.
• Uczenie z krytykiem lub wzmocnieniem (reinforcement learning),
Uczenie strategii postępowania na podstawie krytyki po dłuższym
okresie czasu, uczenie się celowego zachowania na podstawie
interakcji ze środowiskiem.
Inteligentne zachowania modeli NN Inteligentne zachowania modeli NN
1. Autoasocjacja: struktury przestawiane są wielokrotnie a system ma je zapamiętać i przypomnieć sobie gdy przedstawi się im podobne, tj.
skojarzyć.
2. Asocjacja struktur: struktury przestawiane są wielokrotnie, parami (X,Y), pojawienie się X ma wywołać Y.
3. Pamięć adresowalna kontekstowo: wydobywanie informacji nie przez znajomość miejsca, ale atrybutów informacji.
4. Klasyfikacja (diagnoza, rozpoznanie): przypisać dane do jednej z ustalonych kategorii.
5. Detektor regularności: struktury pojawiają się z pewnym
prawdopodobieństwem, należy wykryć statystyczne regularności tworząc nowe kategorie lub prototypy. Nie ma nauczyciela.
6. Optymalne spełnianie ograniczeń: wiele rozwiązań, ale nie
zachowujących wszystkich ograniczeń; szukanie kompromisu.
Główne aspekty modeli neuronowych Główne aspekty modeli neuronowych
1. Sposób modelowania pojedynczego neuronu, zbiór elementów
przetwarzających (PE, processing elements).
2. Stan aktywacji (wzbudzenia) poszczególnych neuronów.
3. Sposób aktywacji tych neuronów.
4. Funkcja opisująca sygnał
wyjściowy elementu.
Aspekty NN cd.
Aspekty NN cd.
5. Sposób propagacji sygnałów przez sieć neuronową – jeden kierunek (feedforward), dozwolne sprzężenia zwrotne, pełna rekurencja.
6. Topologia połączeń elementów, czyli architektury sieci: budowa warstwowa, hierarchiczna, specyficzne warstwy …
7. Reguły modyfikacji parametrów opisujących neurony i połączenia pomiędzy nimi (reguły uczenia się), uczenie w sposób ciągły (on- line) lub na większej bazie zgromadzonych danych.
8. Otoczenie, w którym działa sieć neuronowa; sposób prezentacji danych - batch, czyli paczkami, okienko o ustalonej długości.
9. Realizacja techniczna całości: język programowania,
wykorzystanie GPU lub zrównoleglenie obliczeń.
O neuronach O neuronach
Neurony biologiczne – bardzo skomplikowane, jak wszystko w biologii.
Computational Cognitive Neuroscience – modelowanie pojedynczych neuronów i niewielkich grup tak, by zachować mierzalne parametry.
Impulsy wysyłane przez neurony => nieliniowe zachowanie.
Analiza zjawisk nieliniowych – trudna, niewiele ścisłych rezultatów, niskie wymiary zagadnień a neurony mają tysiące synaps!
Metody analityczne są tu mało przydatne.
Alternatywy: symulacje komputerowe, i elektroniczne układy analogowe.
Dokładność symulacji vs. koszty: interesujące zachowania już w najprostszych sieciach neuronowych.
Zachowanie neurofizjologicznie poprawne wymaga skomplikowanych
modeli z impulsującymi neuronami.
Logika progowa Logika progowa
Jak działa modelowy neuron?
( ) ( )
i ij j
j
I t W o t
Neuron n i zbiera dochodzące do niego sygnały o j od neuronów n j
obliczając sumę ważoną W ij tych sygnałów (wagi określane są przez procesy synaptyczne), tworząc z nich sumaryczny sygnał wejściowy:
Sumowanie przestrzenne i czasowe potencjałów zgromadzonych na błonie komórkowej daje całkowitą aktywację elementu:
( ) ( , ( 1))
i i i
a t F I a t
Aktywacja, razem z progiem i wzbudzenia, określa sygnał wyjściowy
( ) ( , )
i i i i
o t f a
Reguła Hebba (1949) Reguła Hebba (1949)
„Kiedy akson komórki A jest dostatecznie blisko by pobudzić komórkę B i wielokrotnie w sposób trwały bierze udział w jej pobudzaniu, procesy wzrostu lub zmian metabolicznych zachodzą w obu komórkach tak, że sprawność neuronu A jako jednej z komórek pobudzających B,
wzrasta.”
( ) ( )
ij i j
W a t o t
Na poziomie molekularnym:
LTP - Long Term Potentiation LTD - Long Term Depression E. Kandel, Nobel 2000
Czy to wystarczy? Być może.
Uczenie Uczenie
Plastyczność układu (uczenie się):
wagi synaptyczne W ij zmieniają się powoli w czasie.
( ) ( )
ij i j
W a t o t
Reguła uczenia Hebba (1949):
Ogólna reguła uczenia się (Y - sygnał nagrody):
( ), ( ) , ( )
ij i i j ij
W g a t Y t h o W t
Reguła delta albo reguła Widrowa-Hoffa,
( ) ( ) ( )
ij i i j
W Y t a t o t
Znanych jest wiele innych reguł.
Modelowanie sieci Modelowanie sieci
Cel modelowania ANN:
• badanie formalnych własności sieci prostych, nieliniowych
elementów oddziaływujących ze sobą i wykazujących kooperatywne własności + praktyczne zastosowania takich sieci.
lub
• modelowanie funkcji prawdziwych neuronów, zrozumienie jak działają mózgi, zastosowania medyczne, neuropsychiatria.
Schemat: przyjmijmy uproszczony model neuronu, połączmy wiele takich elementów razem i zbadajmy zachowanie się całego systemu.
Dodajmy parametry, pozwalające na adaptację układu,
sformułujmy regułę uczenia, czyli adaptacji parametrów.
• Pierwszy krok – wybór modelu neuronu.
Neurobiologiczne podstawy Neurobiologiczne podstawy
Podstawowy dogmat:
decydującą rolę odgrywa przewodnictwo synaptyczne.
Niewiele jest na to bezpośrednich dowodów!
Badania Kandela (Nobel 2000) nad ślimakami Aplysia i krabami Limulus.
Pośrednie dowody: ogólny wzrost liczby i wielkości synaps w procesie uczenia się.
Dokładny opis wymaga uwzględnienia:
różnicy typów synaps,
neurotransmiterów i neuromodulatorów,
dynamiki impulsacji, lokalnych obwodów itp.
Kolumna ma ~100.000 neuronów! Mikrokolumna tylko 110.
Może w tym szaleństwie jest metoda? Chaotyczne mikroobwody ułatwiają analizę sygnałów (Liquid State Machines).
Mózg: ~86 mld neuronów ale <10 mld w korze, czyli ~1 mln kolumn.
Możliwości ANN Możliwości ANN
Badania możliwości obliczeniowych („klas uniwersalności”) algorytmów sieciowych:
• asymptotycznie, dla dużych sieci możliwości heteroasocjacji niemal niezależne od rodzaju neuronów, szczegółów aktywacji i transferu informacji oraz architektury sieci;
• szybkość uczenia się, pojemność informacyjna – silnie zależy od rodzaju zastosowanych neuronów.
Są jednak klasy zadań, które wykraczają poza asocjacje, np. problem spójności grafów.
Rozwiązanie za pomocą sieci synchronizujących impulsy jest możliwe, za pomocą sieci z elementami progowymi bez synchronizacji, nie da się tego rozwiązać.
Wystarczy dodać 1 parametr do neuronów progowych.
Neurony progowe Neurony progowe
McCulloch, Pitts (1943-49): przetwarzanie informacji w sieciach logicznych.
Sieć elementów logicznych ma moc automatu Turinga.
MacCulloch i Pitts (1943):
z powodu charakteru „wszystko-albo-nic” aktywności nerwowej zdarzenia neuronalne i ich relacje traktowane być mogą za pomocą logiki zdań.
Model logiczny (binarny): zmiana amplitudy, czasu, kształtu impulsu nie gra roli, teoretycznie nie zwiększa mocy obliczeniowej sieci.
Neurony McCullocha i Pittsa:
• mogą być tylko w dwóch stanach, aktywne albo nieaktywne;
• każdy neuron ma ustalony próg pobudzenia;
• sygnały dochodzą przez synapsy pobudzające i hamujące;
• wszystkie synapsy mają identyczny wpływ;
• sygnały sumują się w pewnym kwancie czasu;
Neurony MC-P Neurony MC-P
Model:
x1 x2 x3 x4 xN
a3 a2 a4
a1
akson
dendryty
• sygnały wejściowe, x i = 0, 1;
• rodzaj pobudzenia W i = ± 1 (synapsy pobudzające i hamujące);
• próg wzbudzenia neuronu > 0
Sygnał wyjściowy: ważone sumowanie w dyskretnych momentach czasu:
1
1
1 gdy ( )
0 gdy
N
i i i
N
i i i
W x o x
W x
Sieci MC-P Sieci MC-P
Po wysłaniu impulsu rzeczywisty neuron przechodzi w stan spoczynku.
Sieci neuronów logicznych: najpierw zbadano procesy niezależne od czasu, potem dynamikę.
Sieci logiczne z synchronizacją
impulsów robią to samo, co sieci bez synchronizacji, jeśli dodamy dodatkowe neurony opóźniające.
Stałą aktywność neuronów w sieciach logicznych łatwo jest zamienić na serię impulsów wprowadzając pomiędzy
momentami t, t+1 pośredni moment t+1/2 czasu, w którym neurony są w spoczynku.
Czas Sygnał wyjściowy
1 2 3 4 5
Czas Sygnał wyjściowy
1 2 3 4 5