Wstęp do Sieci Neuronowych

56
Wstęp do Sieci Neuronowych Janusz A. Starzyk Wyzsza Szkola Informatyki i Zarzadzania w Rzeszowie W oparciu o wykłady Prof. Geoffrey Hintona University of Toronto i Dr Kazimierza Duzinkiewicza, Politechnika Gdanska Inteligentne Systemy Autonomiczne

description

Wstęp do Sieci Neuronowych. Inteligentne Systemy Autonomiczne. W oparciu o wykłady Prof. Geoffrey Hintona University of Toronto i Dr Kazimierza Duzinkiewicza, Politechnika Gdanska. Janusz A. Starzyk Wyzsza Szkola Informatyki i Zarzadzania w Rzeszowie. Czym są Sieci Neuronowe?. - PowerPoint PPT Presentation

Transcript of Wstęp do Sieci Neuronowych

Page 1: Wstęp do  Sieci Neuronowych

Wstęp do Sieci Neuronowych

Janusz A. Starzyk Wyzsza Szkola Informatyki i Zarzadzania w Rzeszowie

W oparciu o wykłady Prof. Geoffrey HintonaUniversity of Toronto iDr Kazimierza Duzinkiewicza, Politechnika Gdanska

Inteligentne Systemy Autonomiczne

Page 2: Wstęp do  Sieci Neuronowych

Czym są Sieci Neuronowe?

• Trudno jest napisać program który mógłby rozpoznawać twarze.– Nie wiemy jaki program napisać bo nie wiemy jak to się robi.– Nawet jak mamy pomyśl na taki program to program ten może

być okropnie skomplikowany.• Zamiast pisać taki program zbieramy dużo próbek które

reprezentują poprawny wynik dla danego sygnału wejściowego

• Sieć neuronowa przetworzy te próbki i otrzyma funkcje przekształcające obraz wejściowy na pożądany sygnał wyjściowy.– Jeśli zrobimy to poprawnie to sieć neuronowa nie tylko pokaże

poprawny wynik dla próbek użytych do jej wytrenowania ale także dla nowych próbek.

Page 3: Wstęp do  Sieci Neuronowych

Trudno jest opisać jak wyróżnić cyfrę 2

Page 4: Wstęp do  Sieci Neuronowych

Przykłady zastosowań sieci neuronowych

• Rozpoznawanie kształtów:– Rozpoznawanie twarzy albo wyrazu twarzy– Rozpoznawanie pisma ręcznego albo mowy

• Rozpoznawanie nieprawidłowości:– Niezwykle operacje na kontach kart kredytowych– Nienormalne odczyty mierników w elektrowni

atomowej• Przewidywanie:

– Przyszłe ceny akcji giełdowych – Przyszłe ceny na rynkach walutowych

Page 5: Wstęp do  Sieci Neuronowych

Cele rozwoju sieci neuronowych

• Zrozumienie jak działa mozg– Mózg jest dużym skomplikowanym systemem

neuronów i umiera jak się go narusza• Zrozumienie nowego stylu obliczeń

– Zainspirowanego przez neurony i ich adaptacyjne połączenia

– Bardzo różniącego się od obliczeń sekwencyjnych• Sprawny w problemach które mozg rozwiązuje sprawnie (e.g.

widzenie)• Niesprawny w problemach trudnych dla mózgu (e.g. 23 x 71)

• Zastosowania praktyczne przy użyciu nowych algorytmów– Algorytmy uczące się mogą być przydatne nawet jak

nie mają nic wspólnego z zasadami pracy mózgu

Page 6: Wstęp do  Sieci Neuronowych

Typowy neuron kory mózgowej

• Struktura z grubsza:– Neuron ma jeden akson z rozgałęzieniami– Ma też drzewko dendrytów które otrzymują

sygnały wejścia od innych neuronów– Neuron ma zwykle 103 – 104 dendrytów

• Axon typowo łączy się z dendrytami innych neuronów poprzez synapsy– Ciąg impulsów wytworzony przez neuron

jest propagowany bez osłabiania wzdłuż drzewka aksonu

• Generowanie impulsów:– Wzgórek aksonowy wytwarza impulsy

wyjściowe gdy neuron otrzymał dostateczny ładunek żeby zdepolaryzować błonę komórki

axonbody

dendritictree

Page 7: Wstęp do  Sieci Neuronowych

Drzewko wyjściowe neuronu

Na końcach rozgałęzień aksonu znajdują się synapsy.

Synapsy łączą aksony neuronów z wypustkami wejściowymi dendrytów.

Akson typowego neuronu może mieć kilka tysięcy synaps.

Synapsy mogą zwiększać lub zmniejszać potencjał dendrytu– mieć naturę pobudzającą lub tłumiącą

Gromadzenie informacji w neuronie zależy od jego połączeń synaptycznych – od ich układu i sił

Typowy neuron kory mózgowej

Page 8: Wstęp do  Sieci Neuronowych

Synapsy• Gdy impuls nerwowy dotrze do zakończenia aksonu

powoduje migrację pęcherzyków presynaptycznych uwalniających mediatory– Przykłady mediatorów: adrenalina, noradrenalina,

acetylocholina• Mediator wypełnia szczelinę synaptyczną i łączy się z

receptorami na błonie postsynaptycznej.– Otwiera to kanały dla jonów sodu i depolaryzację błony

postsynaptycznej.• Sprawność synaps może się zmienić

– zmieniając ilość pęcherzyków presynaptycznych – zmieniając ilość cząsteczek mediatorów.

• Synapsy sa powolne ale mają przewagę nad RAM– Są bardzo małe– Adaptują sie przez lokalne oddziaływania (ale jak?)

Page 9: Wstęp do  Sieci Neuronowych

Synapsy

• Połączenie synaptyczne: • 1-mitochondrium • 2-pęcherzyki

presynaptyczne z neurotransmiterem

• 3-kanał wapniowy,• 4-szczelina synaptyczna • 5-neuroreceptor • 8- receptor zwrotnego

wychwytu mediatora

Page 10: Wstęp do  Sieci Neuronowych

Sieci neuronów

• Rozbieżność

– Pojedynczy neuron pobudza kilka

neuronów wyjścia

• Przykład: sygnały sensoryczne

zbiegające się w rożnych rejonach

mózgu

• Zbieżność

– Kilka neuronów pobudza pojedynczy

neuron

• Przykład: pojedynczy neuron ruchu

połączony z włóknem tkanki

mięśniowej otrzymuje pobudzenie z

rożnych ścieżek wychodzących z

rożnych rejonów mózgu.

Page 11: Wstęp do  Sieci Neuronowych

• Obwody powtarzające

– Pobudzenie komórki przed

synapsowej wzbudza obwód

neuronów wysyłający serie impulsów

• Przykład: skoordynowana aktywność

mięsni

• Obwody równoległe

– Pojedynczy neuron pobudza wiele

neuronów o zbieżnym wyjściu

• W wyniku neuron postsynaptyczny

otrzymuje wiele pobudzeń

Sieci neuronów

Page 12: Wstęp do  Sieci Neuronowych

• Każdy neuron otrzymuje sygnały od innych neuronów- Neurony porozumiewają się poprzez impulsy- Ważna jest synchronizacja impulsów

• Wpływ każdego sygnału wejściowego neuronu jest kontrolowany przez wagi synaptyczne– Wagi mogą być dodatnie lub ujemne

• Wagi synaptyczne adaptują się i cała sieć uczy się użytecznego działania– Rozpoznawania obrazów, rozumienia języka, planowania,

kontroli ciała• Mozg ma około 1010-1011 neuronów z 103-104 wag wejścia

każdy – Olbrzymia ilość wag może szybko wpłynąć na wynik

obliczeń. Znacznie wyższa ilość obliczeń niż w Pentium.

Jak działa mózg?

Page 13: Wstęp do  Sieci Neuronowych

Modułowość i mózg

• Rożne neurony kory mózgowej określają rożne rzeczy.– Lokalne uszkodzenia mózgu mają specyficzne efekty– Specyficzne zadania zwiększają dopływ krwi do

specyficznych części mózgu.• Jednak kora mózgowa wygląda wszędzie tak samo.

– Wczesne uszkodzenia mózgu powodują przemieszczenie funkcji w inne rejony

• Kora mózgowa ma struktury ogólnego przeznaczenia które specjalizują się w odpowiedzi na doświadczenia.– Daje to szybkie równolegle przetwarzanie i plastyczność– Konwencjonalne komputery sa plastyczne przez

software ale wymaga to bardzo szybkiego centralnego procesora do wykonania dużej ilości obliczeń.

Page 14: Wstęp do  Sieci Neuronowych

Uproszczony model neuronuDo neuronu dociera pewna liczba sygnałów wejściowych.• Każdy sygnał jest wprowadzany do neuronu przez połączenie o

pewnej wadze• wagi odpowiadają efektywności synapsy w neuronie biologicznym.Każdy neuron posiada wartość progową, określającą jak silne musi być

pobudzenie, aby doszło do wzbudzenia.• W neuronie obliczana jest ważona suma wartości sygnałów

wejściowych przemnażanych przez odpowiednie współczynniki wagowe, a następnie odejmowana jest od niej wartość progowa.

Sygnał reprezentujący łączne pobudzenie neuronu przekształcany jest przez ustaloną funkcję aktywacji.

• Wartość obliczona przez funkcję aktywacji jest sygnałem wyjściowym neuronu.

Próg

x1x2

xn

w1

wn

w2

e y

Page 15: Wstęp do  Sieci Neuronowych

Definicja w oparciu o [Cichocki A. & Umbehauen R. Neural Networks for Optimization and Signal Processing, 1994] i [Tadeusiewicz R. Sieci neuronowe, 1993]

Sztuczna sieć neuronowa jest układem przetwarzania sygnałów złożonym z dużej liczby działających równolegle elementów przetwarzających, nazywanych sztucznymi neuronami.

Neurony dysponują lokalną pamięcią o małej pojemności. Topologia połączeń oraz ich wagi są modyfikowane w trakcie procesu uczenia. Funkcja sieci neuronowej jest zdeterminowana przez jej strukturę, siłę powiązań i rodzaj przetwarzania realizowanego w neuronach.

Co to są sieci neuronowe?

Page 16: Wstęp do  Sieci Neuronowych

Cechy charakteryzujące sieć neuronową

Sieć neuronowa jest charakteryzowana przez:

1. funkcje według których neuron reaguje na docierające do niego pobudzenia, nazywane funkcjami pobudzania (propagacji) i funkcjami aktywacji;

2. strukturę połączeń pomiędzy neuronami, nazywaną architekturą sieci;

3. metodę określania wag tych połączeń, nazywaną algorytmem uczenia.

Page 17: Wstęp do  Sieci Neuronowych

Aktualne kierunki badań i zastosowań sieci neuronowych

  diagnostyka układów elektronicznych,

  badania psychiatryczne,   prognozy giełdowe,  prognozowanie sprzedaży,  poszukiwania ropy naftowej,  interpretacja badań

biologicznych,  prognozy cen,

  analiza badań medycznych,  planowanie remontów maszyn,  prognozowanie postępów w

nauce,

  typowania na wyścigach konnych,

  analiza problemów produkcyjnych,

  optymalizacja działalności handlowej,

  analiza spektralna,

optymalizacja utylizacji odpadów,

dobór surowców,

selekcja celów śledztwa w kryminalistyce,

dobór pracowników,

sterowanie procesów przemysłowych,

Page 18: Wstęp do  Sieci Neuronowych

Krótki przegląd zastosowań technicznych

zagadnienia rozpoznawania, a zwłaszcza rozpoznawania kontekstowego i inwariantnego (w sensie niezależności od typowych transformacji),

zadania klasyfikacji oraz analizy obrazów i ich przetwarzania,Około 70% prac dotyczących sieci neuronowych odwołuje się

bezpośrednio lub pośrednio do zagadnień rozpoznawania obrazów

"klasyczne" zadania przetwarzania sygnałów, takie jak konwersje, filtracje i aproksymacje funkcji oraz inne odwzorowania i transformacje (zwłaszcza transformacja Fouriera),

Page 19: Wstęp do  Sieci Neuronowych

Krótki przegląd zastosowań technicznych

zadania z zakresu robotyki, automatyki oraz teorii sterowania (zwłaszcza sterowania adaptacyjnego w układach samouczących się), w tym węższe problemy jak: identyfikacja systemów dynamicznych, sterowanie ruchem pojedynczego obiektu (najczęściej robota) lub ruchem zbiorowości pojazdów, percepcja ruchu i jego planowanie, koordynacja sensomotoryczna,Zastosowanie sieci neuronowych jako elementów sterujących

wypada często zdecydowanie korzystniej niż stosowanie tradycyjnych urządzeń sterujących

budowa pamięci asocjacyjnych, rozproszonych, sekwencyjnych i samoorganizujących się

algorytmy automatycznego uczenia się maszyn oraz uogólniania nabywanych doświadczeń

Page 20: Wstęp do  Sieci Neuronowych

Wybrane zastosowania nietechniczne

predykcja; np. ocena zdolności kredytowej przedsiębiorstwa, prognozy rozwoju przedsiębiorstwa

prognozy zmian rynku i inwestycji giełdowych

sterowanie obiektów ekonomicznych na podstawie przewidywania (predykcji) ich zachowań w odpowiedzi na określone sterowania,

klasyfikacja i rozpoznawanie podmiotów gospodarczych,

analiza i kojarzenie danych,

Page 21: Wstęp do  Sieci Neuronowych

Prosty sposób rozpoznawania pisma ręcznego

• Rozpatrzmy dwuwarstwowa siec neuronowa.– Neurony w górnej warstwie

reprezentują znane kształty.– Neurony w dolnej warstwie

reprezentują intensywność pikseli.

• Piksel glosuje tylko wtedy gdy ma na sobie tusz. – Każdy zatuszowany piksel może

głosować na kilka rożnych kształtów.

• Kształt który uzyska najwięcej głosów wygrywa.

0 1 2 3 4 5 6 7 8 9

Page 22: Wstęp do  Sieci Neuronowych

Jak nauczyć się wag połączeń?

Wprowadź do sieci obraz wejściowy i powiększ wagi od aktywnych pikseli do wyjścia odpowiedniej klasy.

Potem zmniejsz wagi od aktywnych pikseli do wyjść reprezentujących inne klasy.

Obraz wejściowy

1 2 3 4 5 6 7 8 9 0

Page 23: Wstęp do  Sieci Neuronowych

1 2 3 4 5 6 7 8 9 0

Wprowadź do sieci obraz wejściowy i powiększ wagi od aktywnych pikseli do wyjścia odpowiedniej klasy.

Potem zmniejsz wagi od aktywnych pikseli do wyjść reprezentujących inne klasy.

Obraz wejsciowy

Page 24: Wstęp do  Sieci Neuronowych

1 2 3 4 5 6 7 8 9 0

Wprowadź do sieci obraz wejściowy i powiększ wagi od aktywnych pikseli do wyjścia odpowiedniej klasy.

Potem zmniejsz wagi od aktywnych pikseli do wyjść reprezentujących inne klasy.

Obraz wejściowy

Page 25: Wstęp do  Sieci Neuronowych

1 2 3 4 5 6 7 8 9 0

Wprowadź do sieci obraz wejściowy i powiększ wagi od aktywnych pikseli do wyjścia odpowiedniej klasy.

Potem zmniejsz wagi od aktywnych pikseli do wyjść reprezentujących inne klasy.

Obraz wejściowy

Page 26: Wstęp do  Sieci Neuronowych

1 2 3 4 5 6 7 8 9 0

Wprowadź do sieci obraz wejściowy i powiększ wagi od aktywnych pikseli do wyjścia odpowiedniej klasy.

Potem zmniejsz wagi od aktywnych pikseli do wyjść reprezentujących inne klasy.

Obraz wejściowy

Page 27: Wstęp do  Sieci Neuronowych

1 2 3 4 5 6 7 8 9 0

Wprowadź do sieci obraz wejściowy i powiększ wagi od aktywnych pikseli do wyjścia odpowiedniej klasy.

Potem zmniejsz wagi od aktywnych pikseli do wyjść reprezentujących inne klasy.

Obraz wejściowy

Page 28: Wstęp do  Sieci Neuronowych

Wyuczone wagi połączeń

1 2 3 4 5 6 7 8 9 0

Szczegóły algorytmu będą podane później

Obraz wejściowy

Page 29: Wstęp do  Sieci Neuronowych

Dlaczego prosty system nie działa

• Dwu warstwowa sieć z jednym zwycięskim neuronem w górnej warstwie jest równoważna sztywnej formie dla każdego kształtu.– Zwycięża forma która ma największa część wspólną z

sygnałem wejścia.

• Zmiany kształtu są zbyt skomplikowane by je opisać poprzez proste porównanie całego kształtu z formą.– Żeby wychwycić wszystkie dopuszczalne zmiany

kształtu musimy nauczyć się charakterystycznych cech które go opisują.

Page 30: Wstęp do  Sieci Neuronowych

Przykłady ręcznie napisanych cyfr które muszą być rozpoznane przy ich pierwszej prezentacji

Page 31: Wstęp do  Sieci Neuronowych

Model pojedynczego neuronuRozróżnimy dwa rodzaje neuronów: neurony statyczne, neurony dynamiczne,

Model neuronu statycznego

Sygnały wejściowe

x1

x2

xm

.

.

.

wk1

xj . . .

wk2

wkj

wkm

m

.

.

.

.

.

.

g()

Wagi (z włączeniem

progu)

wk0 = bk

Próg

nk () Wyjście

yk

Funkcja pobudzania (propagacji)

Funkcja aktywacji

Sygnał pobudzenia

Sygnał odpowiedzi

wk0 x0 = +1 Stałe

wejście

Page 32: Wstęp do  Sieci Neuronowych

 u =     ln    

Różnica w gęstości jonów wytwarzaróżnicę u potencjału elektrycznegonazywanego potencjałem Nernsta

Koncentracja jonów potasu jest wyższawewnątrz komórki (400 mM/l) niż w płynie międzykomórkowym (20 mM/l).

Równanie Nernsta ze stała Boltzmanna k = 1.4×10-23 J/K daje EK - 77mV w temperaturze pokojowej. Dlatego potencjał odwrócenia jonów K+ jest ujemny.

Dynamiczny Model Hodgkin-Huxley

Model jest nazywany neuronem pulsującym (spiking neuron)wewnątrzkomórki

na zewnątrz

Ka

Na

Kanały jonowe Pompa jonowa

Page 33: Wstęp do  Sieci Neuronowych

Dynamiczny Model Hodgkin-Huxley100

mV

0

)()()()( 43 tgEugEungEuhmgdt

duC llKKNaNa

)(

)(0

u

umm

dt

dm

m

)(

)(0

u

unn

dt

dn

n

)(

)(0

u

uhh

dt

dh

h

pobudzeniewejscia

NaI KI leakI

C glgK gNa

Iwewnątrzkomórki

na zewnątrz

Ka

Na

Kanały jonowe Pompa jonowa

sod potas przeciek

Prawdopodobieństwo otwarcia kanału opisane

jest zmiennymi m, n, i h.

Page 34: Wstęp do  Sieci Neuronowych

Jeśli wartość pobudzenia neuronu jest większa niż próg 6 uA/cm2, obserwujemy regularne impulsy.

Częstość impulsów jest funkcja mocy sygnału wejściowego I0

Dynamiczny Model Hodgkin-Huxley

Page 35: Wstęp do  Sieci Neuronowych

Opis matematyczny neuronu o numerze k:

Pobudzenie neuronu o numerze k:

kk w,xgn

Odpowiedź neuronu o numerze k:

kkk w,xgny

Na przykład:

k

m

jjkj

m

jjkjk bxwxwn

10

k

m

jjkj

m

jjkjkk bxwxwny

10

Page 36: Wstęp do  Sieci Neuronowych

Uproszczony model neuronu statycznego

x1

x2

xm

.

.

. xj . . .

g

bk

yk

wk1

wk2

wkj

wkm

1

lub

x1

x2

xm

.

.

. xj . . .

g yk

wk1

wk2

wkj

wkm

+1

wk0

Page 37: Wstęp do  Sieci Neuronowych

Neurony liniowe

• Te sa proste ale maja ograniczenia obliczeniowe– Jak zrozumiemy uczenie tych neuronów to być może

zrozumiemy bardziej złożone neurony

ii

iwxby wyjście

wartość progowa (bias)

indeks wejścia

wejście

waga wejściowa

0

0

y

ii

iwxb

Page 38: Wstęp do  Sieci Neuronowych

Neurony z unipolarna funkcja progowa (Binary threshold neurons)

• McCulloch-Pitts (1943):– Oblicz ważoną sumę sygnałów wejścia

– Jeśli ta suma przekracza wartość progową to wyślij sygnał wyjściowy o stałej wartości.

y

ii

iwxz z1 jeśli

0 poza tym

y

z

1

0próg (threshold)

Page 39: Wstęp do  Sieci Neuronowych

Neurony liniowe z progiem(Linear threshold neurons)

jy

iji

ijj wxbz

0jesli jj zz

0 poza tym y

z0

próg

Obliczają liniową ważoną sumę wejść

Wyjście jest nieliniową funkcją wejść

Page 40: Wstęp do  Sieci Neuronowych

Neurony sigmoidalne

• Mają wyjście o wartości rzeczywistej które jest gładką i ograniczoną funkcją wejść

• Pochodne tej funkcji są łatwo liczone co sprzyja uczeniu

• Jeśli potraktujemy jako prawdopodobieństwo wytworzenia impulsu, to otrzymamy stochastyczne neurony binarne

zey

wxbz ii

i

1

1

y

0.5

00

1

z

y

Page 41: Wstęp do  Sieci Neuronowych

Funkcje pobudzania (wejścia)

(k - numer neuronu, j - numer wejścia neuronu)

1. Funkcja sumy

m

1j

m

0jjkjkkjjkk xwnlubbxwn =

2. Funkcja iloczynu

m

1jjjkk xwn

3. Funkcja maksimum

jjkj

k xwn max

4. Funkcja minimum jkjj

k xwn min

5. Funkcja majoryzacji

m

1jjkn

0wgdy0

0wgdy1

ji,

ji,jgdzie:

6. Funkcja sumy kumulowanej

m

1j

)i(j

)i(j,k

)i()1i( xwnn

Page 42: Wstęp do  Sieci Neuronowych

1. Funkcja przekaźnikowa

a) unipolarna (niesymetryczna) b) bipolarna (symetryczna)

0ngdy1

0ngdy1y

0ngdy1

0ngdy0y

2. Funkcja liniowa

ny

3. Funkcja liniowa dodatnia

0ngdyn

0ngdy0y

Funkcje aktywizacji (wyjścia)

Page 43: Wstęp do  Sieci Neuronowych

ngdy1

n0gdyn

0ngdy0

y

4 b). Funkcja liniowa z nasyceniem symetryczna

ngdy

ngdyn

ngdy

y

1

1

4 a). Funkcja liniowa z nasyceniem niesymetryczna

8. Funkcja sigmoidalna logarytmiczna

bipolarna (symetryczna)

0;1)nexp(1

2y

5 a). Funkcja sigmoidalna logarytmiczna

unipolarna (niesymetryczna)

0;)nexp(1

1y

Page 44: Wstęp do  Sieci Neuronowych

10. Funkcja sigmoidalna tangensa hiperbolicznego bipolarna (symetryczna)

0;)nexp()nexp()nexp()nexp(

)ntanh(y

11. Funkcje radialne (Radial Basis)

Przykłady:

funkcje Gaussa splin cienkiej płytki (thin plate spline)

)log(2 nny

2

2

n

expy

Page 45: Wstęp do  Sieci Neuronowych

Warstwa Neuronów

Układ neuronów nie powiązanych ze sobą (wyjścia neuronów nie są połączone z wejściami innych

neuronów warstwy) do których docierają sygnały z tych samych źródeł (neurony pracują równolegle)

b(l)k

g

w(l)k1

w(l)k2

w(l)kj

w(l)km

1

g

g y(l-1)m

k- ty neuron sieci

y(l -1)1

y(l -1)2

y(l -1)j

y(l)k

Page 46: Wstęp do  Sieci Neuronowych

Rodzaje połączeń

– sieci bez sprzężenia zwrotnego (feedforward)

• sygnały na wejściu są niezależne od sygnałów na wyjściu

– sieci ze sprzężeniem zwrotnym (feedback)

• sygnały wyjściowe są pośrednio lub bezpośrednio podawane na wejście.

• są to dynamiczne sieci autoasocjacyjne

• graf sieci ma cykle skierowane

jednostki ukryte

jednostki wyjściowe

jednostki wejściowe

Page 47: Wstęp do  Sieci Neuronowych

Pytania?

Page 48: Wstęp do  Sieci Neuronowych

Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

Lata 40 XX wieku: Początek sieci neuronowych Sztuczne sieci neuronowe swój początek wywodzą z badań

nad modelami matematycznymi działania biologicznej komórki nerwowej

 Neurony McCulloch’a-Pitts’a W roku 1943 Warren McCulloch i Walter Pitts zaproponowali

pierwszy prosty model matematyczny neuronu w postaci dwuwartościowego elementu progowego.

wi1

wi2

wij

..

. ni

i

Schemat modelu neuronu McCullocha i Pittsa  Model działania neuronu

McCullocha i Pittsa

jijiji tnw1tn

Funkcja aktywacji McCullocha i Pittsa

0xdla0

0xdla1x

Page 49: Wstęp do  Sieci Neuronowych

 Reguła Hebba W roku 1949 Donald Hebb, sformułował regułę uczenia

sztucznych sieci neuronowych. Reguła ta mówi że, jeżeli dwa neurony były aktywne jednocześnie to siła połączenia pomiędzy nimi powinna wzrosnąć. Stanowi ona podstawę wielu używanych obecnie reguł uczenia sieci neuronowych

 Lata 50. i 60.: Złoty wiek sieci neuronowych Dzisiaj sieci neuronowe zwykło się postrzegać jako

alternatywę klasycznego przetwarzania opartego na zasadach sformułowanych przez John’a von Neumann’a. W latach 50. von Neumann był żywo zainteresowany problemami modelowania mózguW latach 1957 i 1958 Frank Rosenblatt i Charles Wightman wykonali w Cornell Aeronautical Laboratory, przez pierwszy neurokomputer - Mark I Perceptron. Wykorzystali oni model McCulloch’a-Pitts’a i zaproponowali metodę uczenia sieci złożonej z neuronów o progowych funkcjach aktywacji

Page 50: Wstęp do  Sieci Neuronowych

x 0

= 1 x 1

x 2

x n . . .

. . .

w 0 w 1

w 2 w

n y

n

1iii

n

1iii

0xwgdy0

0xwgdy1y

Układ wprowadzani

a obrazu

Matryca sensorów obrazu

Szafa modułów par silnik - potencjometr

Tablica łączeniowa

„Poprawne” wyjście (dostarczane

podczas uczenia)

Page 51: Wstęp do  Sieci Neuronowych

 Adaline i Madaline Niewiele później po Mark I Perceptron, powstała ciekawa

konstrukcja neurokomputera nazywana Adaline od ADAptive LInear NEuron. Zbudowana została w 1960 roku przez Bernarda Widrowa i jego studenta Marciana (Teda) Hoffa z Uniwersytetu Stanforda. Cała sieć nazywana była od nazwy elementu Madaline (Many Adaline). Widrow i Hoff do uczenia zbudowanej sieci zastosowali nową metodę uczenia nazywaną od ich nazwisk metodą Widrow’a i Hoff’a lub metodą delty lub metodą LMS

Kilka danych o Madaline

Bernard Widrow

Marcian Hoff

8 komórek nerwowych,

128 połączeń,

szybkość działania – około 104 przełączeń na sekundę

Page 52: Wstęp do  Sieci Neuronowych

 Lata 70.: Lata ciszyo Pomimo sukcesów lat sześćdziesiątych nieznajomość

efektywnych metod uczenia sieci o więcej niż jednej warstwie uniemożliwiała ich zastosowanie w bardziej złożonych zadaniach.

o W roku 1969 Marvin Minsky i Seymour Pappert - - opublikowali książkę: Minsky M., Papert S., Perceptrons, MIT Press, Cambridge 1969 w której zaatakowali istniejący stan badań nad sieciami neuronowymi, określając go jako bezwartościowy.

o Minsky i Papert wykazali, że kilka elementarnych zadań nie można wykonać na jednowarstwowym perceptronie. Jednak wielu naukowców nie zraziło się tą krytyką i dalej prowadziło badania

 Kohonen We latach siedemdziesiątych Teuvo Kohonen z Helsinki

University of Technology opracował sieci neuronowe pamięci asocjacyjnych (skojarzeniowych). Rozwinięte później (lata osiemdziesiąte) w tzw. samo-organizujące się odwzorowania cech, były one wykorzystywane do rozpoznawania mowy, problemu komiwojażera oraz komponowania muzyki

Page 53: Wstęp do  Sieci Neuronowych

 Grossbergo Bardzo aktywnym badaczem w tym czasie był Stephen

Grossberg; w latach 1967-1988 opublikował on ze swoimi kolegami 146 prac z dziedziny sieci neuronowych. Są to głównie prace o charakterze matematyczno-biologicznym.

o Gail Carpenter i Stephen Grossberg rozwinęli na początku lat osiemdziesiątych (1985-1990) teorię samo-organizujących się sieci neuronowych nazywaną teorią rezonansu adaptacyjnego (Adaptive Resonance Theory - ART).

o Sieci teorii rezonansu adaptacyjnego dla wejść binarnych (ART1) oraz ciągłych są dziś jednymi z bardziej popularnych sieci

 Lata 80.: Ponowny entuzjazm i jego źródła Podstawowy powód zaniku szerszego zainteresowania

sieciami neuronowymi - brak efektywnej metody uczenia sieci wielowarstwowych - zniknął w połowie lat osiemdziesiątych

Page 54: Wstęp do  Sieci Neuronowych

 Propagacja wsteczna Zaproponowana niezależnie przez Davida Parker’a (1985)

i LeCun (1986) metoda nazwana została metodą propagacji wstecznej. Później okazało się, że metoda po raz pierwszy została zaproponowana znacznie wcześniej przez Werbos’a (1974, praca doktorska, Harward), ale nie została szerzej rozpowszechniona. Zrobili to w roku 1986 Rumehart i McClelland publikując pracę „Parallel Distributed Processing”

 Sieci HopfieldaPrace laureata Nagrody Nobla w dziedzinie fizyki John’a Hopfielda z California Institute of Technology proponującego nowe sieci (1982-87) poszerza zainteresowanie sieciami neuronowymi

 Maszyny Niederministyczne Są to sieci w których wagi połączeń i aktywacje są

zmieniane w oparciu o funkcje gęstości prawdopodobieństwa. Sieci te wykorzystują takie idee jak symulowane wyżarzanie (maszyna Boltzmann’a) czy Bayesowską teorię decyzji

Page 55: Wstęp do  Sieci Neuronowych

Implementacje sprzętowe (hardware’owe)

Od połowy lat 80. notuje się prawdziwy wyścig, którego uczestnikami są, obok laboratoriów badawczych, także firmy produkujące układy elektroniczne. Osiągnięciami liczącymi się w tym wyścigu są:

liczba elementów neuropodobnych umieszczonych w sieci,

liczba połączeń,

szybkość działania, wyrażana w liczbach przełączeń na sekundę

Page 56: Wstęp do  Sieci Neuronowych

Nazwa neurokomputera

Rok Liczba

elementów Liczba

połączeń Szybkość Twórca

Mark III 1985 8103 4105 3105 R. Hecht‑Nielsen, TRW

Neural Emulator Processor

1985 4103 1.6104 4.9105 C. Cruz, IBM

Mark IV 1986 2.5105 5106 5106 R. Hecht‑Nielsen, TRW

Odyssey 1986 8103 2.5105 2106 A. Penz, Tex. Inst. CRL

Crossbar Chip 1986 256 6.4104 6109 L. Jackel, AT&T Bell Labs

Anza 1987 3104 5105 1.4105 R. Hecht‑Nielsen,

Neurocomp. Corp.

Parallon 1987 9.1104 3105 3104 S. Bogoch, Human Dev.

Anza plus 1988 106 1.5106 6106 R. Hecht‑Nielsen,

Neurocomp. Corp.

Zestawienie ważniejszych realizacji hardware’owych sieci neuronowych z okresu pierwszej połowy lat 80