Download - Wstęp do Sieci Neuronowych
![Page 1: Wstęp do Sieci Neuronowych](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/1.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/2.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/3.jpg)
Trudno jest opisać jak wyróżnić cyfrę 2
![Page 4: Wstęp do Sieci Neuronowych](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/4.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/5.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/6.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/7.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/9.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/10.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/11.jpg)
• 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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/12.jpg)
• 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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/13.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/14.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/15.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/16.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/18.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/19.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/20.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/21.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/22.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/23.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/24.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/25.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/26.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/27.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/28.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/29.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/30.jpg)
Przykłady ręcznie napisanych cyfr które muszą być rozpoznane przy ich pierwszej prezentacji
![Page 31: Wstęp do Sieci Neuronowych](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/31.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/32.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/33.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/34.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/35.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/36.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/37.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/38.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/39.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/40.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/41.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/42.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/43.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/44.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/45.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/46.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/47.jpg)
Pytania?
![Page 48: Wstęp do Sieci Neuronowych](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/48.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/49.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/50.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/51.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/52.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/53.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/54.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/55.jpg)
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](https://reader033.vdocuments.pub/reader033/viewer/2022042822/568146b8550346895db3e2c9/html5/thumbnails/56.jpg)
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