Microsoft PowerPoint - SN_W1.ppt [tryb zgodno\234ci]

advertisement
Literatura
• Tadeusiewicz R.: Sieci neuronowe, Akademicka Oficyna Wydawnicza
RM, Warszawa 1993
• Żurada J., Barski M., Jędruch W., Sztuczne sieci neuronowe,
Wydawnictwo Naukowe PWN, Warszawa 1996
• Korbicz J., Obuchowicz A., Uciński D., Sztuczne sieci neuronowe.
Podstawy i zastosowania, Akademicka Oficyna Wydawnicza PLJ,
Warszawa 1994
• Osowski S., Sieci neuronowe w ujęciu algorytmicznym, Wydawnictwo
Naukowo-Techniczne, Warszawa 1996
Sztuczne sieci neuronowe
Wykład 1: Wprowadzenie do sztucznych sieci
neuronowych
Małgorzata Krętowska
Wydział Informatyki
Politechnika Białostocka
Sztuczne sieci neuronowe
1
Sztuczne sieci neuronowe
Przepływ informacji w systemie nerwowym
Budowa i działanie mózgu
• Objętość: 1400 cm3
• Powierzchnia: 2000 cm2
Centralny
system
nerwowy
Wewnętrzne
sprzężenie
zwrotne
Receptory
Efektory
narządy
sensoryczne
narządy
motoryczne
• Liczba neuronów: około 100 miliardów (1011)
• Liczba połączeń między komórkami : 1015 przy przeciętnym dystansie
od 0.01 mm do 1 m.
• Komórki nerwowe wysyłają i przyjmują impulsy o:
– częstotliwości: 1-100 Hz
– czasie trwania: 1-2 ms
– szybkości propagacji: 1-100 m/s.
• Szybkość pracy mózgu: 1018 operacji/s
Zewnętrzne sprzężenie zwrotne
Sztuczne sieci neuronowe
2
3
Sztuczne sieci neuronowe
4
Budowa i funkcjonowanie neuronu
biologicznego
Model neuronu w terminologii
informatycznej
Sygnały
wejściowe
(synapsy)
Sygnały
wyjściowe
(akson)
PRZETWORNIK
(ciało komórki)
• Mózg - równoległy system złożony z około 1011 procesorów
• Każdy procesor ma bardzo prosty program i oblicza ważoną sumę
danych wejściowych pochodzących od innych procesorów, zwraca
jedną liczbę będącą funkcją tej sumy
• Liczba ta przesyłana jest do innych procesorów i przez nie
przetwarzana w podobny sposób (np. z różnymi funkcjami)
• Duża gęstość połączeń oznacza, że błędy niewielkiej liczby składników
będą prawdopodobnie mało znaczące
Sztuczne sieci neuronowe
5
Historia
Sztuczne sieci neuronowe
6
Model neuronu McCullocha-Pittsa (1943)
• 1943 - model McCullocha i Pittsa pozwalający na budowę dowolnie
skomplikowanych urządzeń cyfrowych (bez możliwości uczenia się)
• 1958 - perceptron Rosenblatta - neurony z połączeniami
jednokierunkowymi, dowód zbieżności algorytmu uczenia (1962)
• 1960 - Adaline (ang. Adaptive Linear Neuron) i Madaline (ang.
multiple-Adaline) - pierwszy komercyjny neurokomputer na
Uniwersytecie Stanforda (Widrow i Hoff)
• dyskretne chwile czasu
• można zbudować
dowolnie skomplikowane
urządzenie cyfrowe
(posługując się bramkami
NOR i NAND - algebra
Boole’a)
• 1969 - Minsky i Papert wykazali, że twierdzenie Rosenblatta jest
prawdziwe tylko dla pewnego ograniczonego zestawu danych ->
zaprzestanie badań w dziedzinie sieci neuronowych na prawie 20 lat

1
y k +1 = 
0

• 1986 - Rumelhart i in. odkryli algorytm wstecznej propagacji błędu,
który jest podstawą wielu dzisiejszych zastosowań
Sztuczne sieci neuronowe
7
n
∑w x
k
i i
i =1
n
≥T
∑ wi xik < T
i =1
Sztuczne sieci neuronowe
xi ∈ {0,1}
wi ∈ {− 1;1}, i = 1,2, L , n
k = 0,1,2, L
8
Model neuronu McCullocha-Pittsa
(funkcje logiczne NOT, OR)
Sztuczne sieci neuronowe
Model neuronu McCullocha-Pittsa
(bramka NOR)
9
Sztuczne sieci neuronowe
Model neuronu McCullocha-Pittsa
(bramka NAND)
10
Budowa sztucznego neuronu
x1
w1
x2
w2
1
-θ
∑
...
f
y
...
xN
wN
gdzie
• x = [1, x1, ..., xN]T- wektor wejściowy
• w = [-θ, w1, ..., wN]T - wektor wag (w0=- θ)
• f - funkcja aktywacji
 N

y = f  wi xi  = f ( wT x) = f (net )
• y - sygnał wyjściowy
∑
 i =0
Sztuczne sieci neuronowe
11
Sztuczne sieci neuronowe

12
Unipolarne funkcje aktywacji
(dyskretna i ciągła)
Rodzaje neuronów
1.0
• Neurony liniowe
y = f(net) = net
1 gdy net ≥ 0
f (net ) = 
0 gdy net > 0
• Neurony nieliniowe
f (net)
0.8
0.6
0.4
0.2
0.0
-2
-1
0
1
net
2
– neurony dyskretne (formalne): y∈{-1,1} lub y∈{0,1}
1.0
1
, λ >0
f (net ) =
1 + exp(−λnet )
f (net)
0.8
– neurony ciągłe:y∈(-1,1) lub y∈(0,1)
0.6
0.4
λ = 0.5
λ = 1.0
λ = 3.0
0.2
0.0
-2
Sztuczne sieci neuronowe
13
1
net
2
14
Rodzaje sieci
• Sieci jednokierunkowe - sygnał w sieci rozprzestrzenia się w jednym
kierunku
1.0
0.5
f (net)
0
Sztuczne sieci neuronowe
Bipolarne funkcje aktywacji
(dyskretna i ciągła, tangens hiperboliczny)
 1 gdy net ≥ 0
f (net ) = sgn(net ) = 
− 1 gdy net > 0
-1
– sieci jednowarstwowe
– sieci wielowarstwowe (perceptron wielowarstwowy)
net
0.0
-1
0
1
2
-0.5
• Sieci rekurencyjne - sieci ze sprzężeniem zwrotnym
-1.0
1.0
2
, λ >0
1 + exp(−λnet )
0.5
exp(λnet ) − exp(−λnet )
tanh(net ) =
, λ >0
exp(λnet ) + exp(−λnet )
f (net)
f (net ) =
net
0.0
-1
-0.5
-1.0
Sztuczne sieci neuronowe
0
1
2
λ=1
λ=5
tanh
Perceptron dyskretny i ciągły (Rosenblatt, 1958)
15
Sztuczne sieci neuronowe
16
Sieć jednokierunkowa jednowarstwowa
Sieć jednokierunkowa wielowarstwowa
1
1
x1
w01
w11
w12
1
1
y1
x2
...
y2
...
y3
xN
w10
w20
y1(x,w)
x1
.
.
.
y4
.
.
.
.
.
.
yK(x,w)
xN
wΗΝ
warstwa
wejściowa
warstwa
wyjściowa
warstwa
wejściowa
N
N
j =1
j =1
17
Sieć rekurencyjna jednowarstwowa
H
N
h =1
j =1
Sztuczne sieci neuronowe
18
Sieć rekurencyjna dwuwarstwowa
• Sieć z jedną warstwą neuronów
(wyjściową)
• sygnały wyjściowe neuronów
tworzą tworzą jednocześnie wektor
wejściowy dla następnego cyklu
• z reguły nie występuje sprzężenie
zwrotne neuronu od własnego
sygnału wyjściowego (sieć
Hopfielda)
Sztuczne sieci neuronowe
warstwa
wyjściowa
yk ( x, w) = f 0 ( wk 0 + ∑ whk f h (∑ whj x j + wh 0 ))
yi = f (neti ) = f (∑ wij x j + wi 0 ) = f (∑ wij x j − θ i )
Sztuczne sieci neuronowe
warstwy
ukryte
• neurony 1...M stanowią warstwę
wyjściową sieci
• neurony 1...K - warstwę ukrytą
• Wektor wejściowy: sygnały
wejściowe (x), sygnały
wyjściowe warstwy ukrytej i
wyjściowej
19
Sztuczne sieci neuronowe
20
Zadania sieci neuronowej
Zadania sieci neuronowej
• Aproksymacja - sieć pełni rolę uniwersalnego aproksymatora
funkcji wielu zmiennych, realizując funkcję nieliniową postaci
y = f(x)
• Klasyfikacja i
rozpoznawanie
sieć uczy się podstawowych
cech prezentowanych
wzorców i na tej
podstawie podejmuje
odpowiednią decyzję
klasyfikacyjną
Sztuczne sieci neuronowe
21
Sztuczne sieci neuronowe
Zadania sieci neuronowej
Zadania sieci neuronowej
– Heteroasoscjacja - sieć zapamiętuje i kojarzy pary obrazów i nawet
zniekształcony obraz wejściowy może wywołać właściwą heteroasocjację
na wyjściu (heteroasocjacja obejmuje problem klasyfikacji)
• Asocjacja
– Autoasocjacja - sieć zapamiętuje zbiór wzorców w taki sposób, aby po
zaprezentowaniu nowego wzorca reakcją sieci było wytworzenie
zapamiętanego wzorca, który jest najbardziej podobny do nowego.
Sztuczne sieci neuronowe
22
23
Sztuczne sieci neuronowe
24
Zadania sieci neuronowej
Zadania sieci neuronowej
• Optymalizacja - pozwala na minimalizację pewnych funkcji kosztu,
zwykle zadanych przez użytkownika. Sieć samoczynnie poszukuje
minimum tzw. funkcji energii (wartości zależnej od stanu sieci),
dochodzi do stanu o minimalnej energii i w nim pozostaje (np. problem
szeregowania zadań)
Sztuczne sieci neuronowe
• Wykrywanie grup i wydobywanie cech
– grupowanie danych - sieć samoczynnie wykrywa podobieństwa w
przetwarzanych danych.
– wykrywanie cech - często jest związane z redukcją wymiarów. Mogą
realizować odwzorowanie cech wielowymiarowego sygnału wejściowego
o złożonej strukturze na płaszczyznę.
25
Sztuczne sieci neuronowe
Uczenie z nauczycielem
Uczenie bez nauczyciela
• Uczenie z nauczycielem - nadzorowane (ang. supervised learning) dla każdego wektora w chodzącego w skład zbioru uczącego znana jest
poprawna odpowiedź. Korekcja wag oparta jest na „różnicy” pomiędzy
rzeczywistą i pożądaną odpowiedzią sieci.
Sztuczne sieci neuronowe
26
• Uczenie bez nauczyciela - nienadzorowane (ang. unsupervised
learning) - pożądana odpowiedź sieci nie jest znana. Sieć uczy się
poprzez analizę reakcji na pobudzenia. W trakcie wykrywania np.
skupisk w danych parametry sieci podlegają zmianom, co nazywamy
samoorganizacją.
27
Sztuczne sieci neuronowe
28
Zalety i wady sztucznych sieci neuronowych
ZALETY
• Przetwarzanie równoległe
WADY
• Sieć jako „czarna skrzynka”
• Przy dużej liczbie
elementów sieć jest odporna
na uszkodzenia niewielkiej
liczby elementów
• Zdolność uogólniania
• Brak założeń dotyczących
rozkładów analizowanych
zmiennych
Sztuczne sieci neuronowe
29
Download