Wstęp do sztucznych sieci neuronowych Michał Garbowski Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Wydział Informatyki 15 grudnia 2011
Plan wykładu I 1 Wprowadzenie Inspiracja biologiczna Neuron - definicja Neuron - budowa Neuron - zasada działania 2 Sztuczne neurony Model sztucznego neuronu Idea Schemat Zasada działania Funkcja aktywacji Rodzaje funkcji aktywacji Sigmoidalna funkcja aktywacji (unipolarna) - wzór Sigmoidalna funkcja aktywacji (unipolarna) - przebiegi 3 Sztuczne sieci neuronowe Podział sztucznych sieci neuronowych Ze względu na kierunek przepływania sygnałów
Plan wykładu II Ze względu na strukturę Wybrane modele sztucznych sieci neuronowych - perceptron Perceptron Uczenie perceptronu Reguła perceptronu Przykład zastosowania perceptronu - separacja
Inspiracja biologiczna Inspiracja biologiczna: definicja neuronu Neuron (komórka nerwowa) Podstawowy element układu nerwowego. Posiada ciało komórkowe wypełnione somą, w której znajduje się jądro. Z somy wyrastają liczne wypustki, dzięki którym neuron może się łączyć z aksonami innych neuronów. Miejsce takiego połączenia nazywamy synapsą. Rozróżniamy dwa typy wypustek: liczne, cienkie i mocno rozgałęzione dendryty, oraz grubszy, rozwidlający się na końcu akson. Przyjmuje się, że mózg ludzki zawiera około 10 11 neuronów, które oddziałują na siebie poprzez około 10 15 połączeń.
Inspiracja biologiczna Inspiracja biologiczna - budowa neuronu Rysunek: Budowa neuronu.
Inspiracja biologiczna Inspiracja biologiczna - zasada działania neuronów Neurony łączą się ze sobą w określony sposób, współtworząc układ nerwowy. Połączenie dwóch komórek następuje przez zetknięcie się aksonu jednej z nich z inną. Miejsce połączenia nazywamy synapsą. Synapsami docierają do komórki impulsy elektryczne emitowane przez inne neurony za pośrednictwem ich aksonów.
Inspiracja biologiczna Inspiracja biologiczna - zasada działania neuronów c.d. Pod wpływem bodźców z synaps, wydzielają się substancje chemiczne neuroprzekaźniki 1. Obecność neuroprzekaźnika zmienia potencjał elektryczny błony komórki może go zwiększyć, ale także obniżyć w zależności od rodzaju neuroprzekaźnika. Potencjał zwiększają neuroprzekaźniki pobudzające, natomiast obniżają hamujące. Dzięki temu taki sam impuls odebrany z różnych synaps, może pobudzić komórkę w różnym stopniu. Siłę pobudzenia neuronu mierzymy badając stopień polaryzacji jej błony, a zależy on od sumarycznej ilości neuroprzekaźników wydzielonych na wszystkich synapsach. 1 Inne nazwy: neuromediatory, neurohormony, neurotransmitery.
Inspiracja biologiczna Inspiracja biologiczna - zasada działania neuronów c.d. W wyniku docierających impulsów elektrycznych, neuron może zostać pobudzony. Gdy bilans wszystkich impulsów nie jest wystarczająco duży, komórka nerwowa ignoruje je i wraca do stanu początkowego. Jeśli jednak ich suma przekroczy pewną wartość (próg zadziałania), komórka emituje poprzez akson impuls elektryczny. Wartość wyemitowanego sygnału nie zależy od stopnia przekroczenia progu zadziałania danego neuronu.
Inspiracja biologiczna Inspiracja biologiczna - zasada działania neuronów c.d. Po emisji sygnału, neuron zmienia wartość swojego progu zadziałania na nieskończenie dużą. Stan ten trwa pewien czas (okres refrakcji bezwzględnej - t r ), podczs którego niemożliwe jest ponowne pobudzenie neuronu. Następnie próg zadziałania zaczyna powracać do wartości początkowej. Proces ten nazywamy czasem refrakcji względnej ( t w ) i trwa on zazwyczaj zdecydowanie dłużej, niż t r, jednak w jego trakcje jest możliwe ponowne aktywowanie neuronu (przy użyciu silniejszych impulsów).
Model sztucznego neuronu Idea matematycznego modelu neuronu Przedstawione obserwacje zachowań neuronów posłużyły jako inspiracja do stworzenia modelu matematycznego komórki nerwowej. Pomysł polega na nadaniu poszczególnym synapsom wag, zapisywanych w postaci liczb zmiennoprzecinkowych. Wysokość poszczególnych wag zależy od typu i ilości neuroprzekaźnika na danej synapsie. Dla neuroprzekaźników hamujących impulsy wagi przyjmują wartości ujemne, dla pobudzających dodatnie. Natomiast wysokość danej wagi zależy od ilości neuroprzekaźnika.
Model sztucznego neuronu Schemat sztucznego neuronu Rysunek: Schemat sztucznego neuronu.
Model sztucznego neuronu Zasada działania sztucznego neuronu Sztuczny neuron otrzymuje sygnały wejściowe, które są zmodyfikowane poprzez dokonanie mnożenia ich z wagami odpowiednimi dla synaps, którymi impulsy te przybyły. Następnie wartości w ten sposób otrzymane zostają zsumowane i przekazane do funkcji aktywacji, której wartość zostaje wyemitowana dalej.
Funkcja aktywacji Funkcja aktywacji - rodzaje Rodzaje funkcji aktywacji podział ze względu na kształt: funkcje skoku jednostkowego (funkcje progowe) funkcje liniowe funkcje nieliniowe Rodzaje funkcji aktywacji podział ze względu na wartości przeciwdziedziny: funkcje unipolarne funkcje bipolarne
Funkcja aktywacji Funkcja aktywacji - przykład - wzór Ogólny wzór sigmoidalnej (unipolarnej) funkcji aktywacji możemy opisać następująco: f (x) = ( ) 1 1+e βx
Funkcja aktywacji Funkcja aktywacji - przykład - przebiegi W zależności od wartości β, funkcja ta przyjmuje inny kształt: (a) β = 0 (b) β = 1 (c) β = Rysunek: Kształty sigmoidalnej (unipolarnej) funkcji aktywacji w zależności od parametru β.
Podział sztucznych sieci neuronowych Sztuczne sieci neuronowe - podział (kierunek sygnału) Ze względu na kierunek przepływających impulsów sieci neuronowe można podzielić na: Jednokierunkowe nie zawierają połączeń zwrotnych; przykłady: perceptron, MADALINE 2. Rekurencyjne posiadają połączenia dwukierunkowe, lub sprzężenia zwrotne; przykład: sieci Hopfielda. 2 Multiple ADALINE.
Podział sztucznych sieci neuronowych Sztuczne sieci neuronowe - podział (kierunek sygnału) c.d. (a) Jednokierunkowa sztuczna sieć neuronowa. (b) Rekurencyjna sztuczna sieć neuronowa. Rysunek: Podział sztucznych sieci neuronowych ze względu na kierunek przepływu impulsu.
Podział sztucznych sieci neuronowych Sztuczne sieci neuronowe - podział (struktura) Ze względu na strukturę, sieci neuronowe można podzielić na: Jednowarstwowe tworzona przez neurony znajdujące się w jednej warstwie. Wielowarstwowe tworzona przez neurony znajdujące się w wielu warstwach, przy czym oprócz warstwy wejściowej i wyjściowej musi istnieć jeszcze przynajmniej jedna warstwa ukryta. Komórkowe tworzone przez obustronne połączenia między neuronami sąsiadującymi ze sobą.
Podział sztucznych sieci neuronowych Sztuczne sieci neuronowe - podział (struktura) c.d. (a) Jednowarstwowa sztuczna sieć neuronowa. (b) Wielowarstwowa sztuczna sieć neuronowa. (c) Komórkowa sztuczna sieć neuronowa. Rysunek: Podział sztucznych sieci neuronowych ze względu na ich strukturę.
Wybrane modele sztucznych sieci neuronowych - perceptron Perceptron Sztuczna sieć neuronowa nazwana perceptronem została opracowana przez Rosenblatta w roku 1958. Mimo niedokładnych wyników jakie zwracał, był to znaczny sukces badań w tej tematyce. Perceptron prosty jest najprostszą siecią jednokierunkową. Jego budowa jest tożsama z modelem McCullocha-Pittsa, a dodatkowo perceptron ma zdefiniowaną regułę uczenia. Składa się on tylko z warstwy wejściowej i wyjściowej. Rysunek: Perceptron prosty.
Wybrane modele sztucznych sieci neuronowych - perceptron Uczenie perceptronu Uczenie perceptronu przebiega w sposób nadzorowany. Celem jest taki dobór wag w i, oraz progu b, aby sygnał wyjściowy był najbliższy wartości zadanej. Podczas uczenia podajemy wektory wejściowe wraz z wartością zadaną dla każdego z nich. Percetron wylicza wartość sygnału wyjściowego, który następnie zostaje porównany z wartością zadaną. Na podstawie tego porównania zostają zaktualizowane wagi.
Wybrane modele sztucznych sieci neuronowych - perceptron Reguła perceptronu Najpopularniejszą metodą uczenia perceptronu jest tzw. reguła perceptronu. Zgodnie z nią wagi są aktualizowane następująco: Jeśli wartość wyliczona jest równa wartości zadanej, wówczas wagi w i, oraz próg b pozostają niezmienione. Jeśli wartość y = 0, a wartość zadana wynosi 1, wówczas uaktualniamy wagi zgodnie ze wzorami: w i (t + 1) = w i (t) + x i, oraz b (t + 1) = b (t) + 1. Jeśli wartość y = 1, a wartość zadana wynosi 0, wówczas uaktualniamy wagi zgodnie ze wzorami: w i (t + 1) = w i (t) x i, oraz b (t + 1) = b (t) 1. Po aktualizacji wag proces jest powtarzany dla innej próbki uczącej, aż do otrzymania minimalnych różnic między wartościami wyliczonymi i zadanymi.
Wybrane modele sztucznych sieci neuronowych - perceptron Pryzkład zastosowania perceptronu Działanie perceptronu prostego możemy zademonstrować na przykładzie problemu znajdowania prostej separującej dwa zbiory punktów: Rysunek: Przykład zastosowania perceptronu prostego - separacja zbiorów.
Użyta grafika http://commons.wikimedia.org/wiki/file:neuron-budowa.svg (autor: Holek; licencja: CC-BY-SA 2.5) http://commons.wikimedia.org/wiki/file:computer.science.ai.neuron.svg (autor: Yearofthedragon; licencja: GFDL, CC-BY-SA 3.0) http://commons.wikimedia.org/wiki/file:singlelayerneuralnetwork.png (autor: Chrislb; licencja: CC-BY-SA 3.0, GDFL) http://commons.wikimedia.org/wiki/file:multilayerneuralnetwork.png (autor: Chrislb; licencja: CC-BY-SA 3.0, GDFL) http://commons.wikimedia.org/wiki/file:recurrentlayerneuralnetwork.png (autor: Chrislb; licencja: CC-BY-SA 3.0, GDFL)
Literatura Stanisław Osowski Sieci neuronowe, Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa 1994 Ryszard Tadeusiewicz Sieci neuronowe, Akademicka Oficyna Wydawnicza, Warszawa 1993 Rafał Klaus Uzupełnienie do wykładów z przedmiotu Komuterowe Systemy Sterowania, http://www.cs.put.poznan.pl/rklaus/assn/index.htm
KONIEC Dziękuję za uwagę!