You are on page 1of 18

Sztuczne sieci

neuronowe
Jerzy Stefanowski

Plan wykadu
1. Wprowadzenie
2. Model sztucznego neuronu.
3. Topologie sieci neuronowych
4. Reguy uczenia sieci neuronowych.
5. Klasyfikacja sieci neuronowych.
6. Sieci warstwowe uczone algorytmem BP.
7. Zastosowania.

Pozna, 2006

Wprowadzenie
Sztuczna sie neuronowa (SSN) - definicje:
Zbir prostych jednostek obliczeniowych
przetwarzajcych dane, komunikujcych si ze sob i
pracujcych rwnolegle.
Lub inaczej:
Zbir poczonych ze sob jednostek wejciwo-wyjciowych.
Z kadym poczeniem skojarzona jest waga, ktra moe
zosta zmieniona w trakcie uczenia.

Dowolna sztuczna sie neuronowa moe by zdefiniowana


poprzez okrelenie:

modelu sztucznego neuronu,

topologii,

reguy uczenia sieci.

Model sztucznego neuronu


Sztuczny neuron = neuron: mona rozpatrywa jako
specyficzny przetwornik sygnaw.
1
x

w0
w1
w2
w3

f(e)

wn
x

Podstawowe elementy skadowe:


n wej neuronu wraz z wagami wi (wektor wag w i wektor
sygnaw wejciowych x)
jeden sygna wyjciowy y
pobudzenie e neuronu jako suma waona sygnaw wejciowych
pomniejszona o prg
n

e = wi xi = wT x
i =1

wprowadmy wag w0 = , podczonej do staego sygnau x0 = 1;


wwczas:
n

e = wi xi = wT x
i =0

funkcja aktywacji (przejcia):

y = f (e)

Funkcje aktywacji
Ma istotne znaczenie dla dziaania neuronu.
Podstawowe typy funkcji:
liniowa y = ke
nieliniowe (cige i niecige, unipolarne i bipolarne)
funkcja skoku jednostkowego, progowa (McCulloch i Pitts):

1 dla e
f (e ) =
0 dla e <
funkcja sigmoidalna:

f (e ) =

1
1 + exp( e )

wspczynnik stromoci
1,2
1
0,8
0,6
0,4
0,2
0

f(e)

-6

-4

-2

funkcja tangens hiperboliczny:

f (e) = tgh(

)=

1 exp(e)
1 + exp(e)

Inspiracja: neuron biologiczny

budowa: soma, akson, dendryty, synapsy

znaczenie bony komrkowej w przesyaniu sygnau; polega ono na propagacji


zaburzenia rnicy potencjaw pomidzy wntrzem a zewntrzem komrki;
przyczyn tych zaburze jest chwilowa utrata szczelnoci przez bon
komrkow

zasada dziaania: wpywajce dendrytami


bodce
(modulacja
czstotliwoci) sumuj si (oddziaywaj ze sob) na bonie komrkowej i
przy pomocy aksonu zakoczonego synaps/synapsami przekazywane s do
innego neuronu/neuronw

po propagacji sygnau rnica potencjaw odbudowywana jest przez tzw.


pompy jonowe

neuronw mamy ~1010, dendrytw ~1014..1015

rne rodzaje neuronw

Topologia sieci neuronowej (architektura)


Oglnie wyrnia si dwa typy architektur SSN:

1) sieci jednokierunkowe ( ang. feedforwarded) tj. sieci o jednym


kierunku przepywu sygnaw; Szczeglnym przypadkiem architektury
jednokierunkowej jest sie warstwowa, reprezentujca zdecydowanie
najpopularniejsz topologi;
wyjscia sieci

warstwa wyjsciowa

warstwy ukryte

warstwa wejsciowa

wejscia sieci

2) Inne, np. sieci rekurencyjne (feedback, bidirectional) tj. sieci ze


sprzeniami zwrotnymi (sie Hopfielda) albo sieci uczenia si
przez wspzawodnictwo (Kohonena)

Zasady czenia neuronw midzy sob


- kady z kadym,
- poczenia midzy kolejnymi warstwami w sieciach warstwowych,
- tylko z pewn grup neuronw, najczciej z tzw. ssiedztwem.

Charakterystyka procesu uczenia sieci


Wyrnia si dwa podstawowe sposoby uczenia sieci:
1. uczenie nadzorowane (ang. supervised learning),
2. uczenie nienadzorowane (ang. unsupervised learning).
Uczenie nadzorowane dany jest zbir przykadw uczcych
skadajcy si z par wejcie-wyjcie (xj, zj), gdzie zj jest podana
odpowiedzi sieci na sygnay wejciowe xj (j=1,..m). Zadaniem sieci
jest nauczy si moliwie jak najdokadniej funkcji przybliajcej
powizanie wejcia z wyjciem.

sie
adaptacyjna

W
obliczanie
odlegoci

z-y

Pozdana
odpowied
z

Odlego pomidzy rzeczywist a podan odpowiedzi sieci jest


miar bdu uywan do korekcji wag sieci.
Typowym przykadem jest uczenie sieci wielowarstwowej algorytmem
wstecznej propagacji bdu; kady neuron lokalnie zmniejsza swj bd
stosujc metod spadku gradientu.

Reguy uczenia sieci neuronowych


Regua Widrowa-Hoffa
Dotyczy uczenia nadzorowanego sieci jednokierunkowych, gdzie
minimalizuje si bd pomidzy podan a aktualn odpowiedzi.

j = z j y j = z j wT x j
Korekta wag jest nastpujca (Widrow,Hoff 1962):

wi = j xij

Regua delta
Obowizuje dla neuronw z cigymi funkcjami aktywacji i nadzorowanego
trybu uczenia. Regu delta wyprowadza si jako wynik minimalizacji
kryterium bdu redniokwadratowego Q.

1 N j
Q= z yj
2 j =1

= Q j,
j =1

Qj =

( )

j 2

Korekta wag:

wi = j f ' (e j ) x j
i

gdzie f () oznacza pochodn funkcji aktywacji. W przypadku funkcji


sigmoidalnej:

wi = j (1 y j ) y j x j
i

Stosowana jest do uczenia wielowarstwowych sieci neuronowych wraz z


algorytmem wstecznej propagacji bdw (Rumelhart, McClelland 1986)

Charakterystyka procesu uczenia


Uczenie si iteracyjne / uczenie si w jednym kroku
Algorytm uczenia:

globalny (w kolejnej iteracji uczenie obejmuje ca sie),

lokalny (w kolejnej iteracji uczenie obejmuje cz sieci)

Sposb propagacji sygnaw przez sie:

synchroniczny

asynchroniczny:

przesyanie etonw (counter-propagation): specyficzny model


propagacji sygnau bazujcy na dyskretnym pobudzeniu w postaci
tzw. etonu.

Charakterystyka wybranych typw sieci


Typ sieci

Topologia

Propagacja
pobudzenia

Perceptron warstwowa
synchron.
SOM
Hopfield

warstwowa
rekurencyjna

synchron.
synchr. lub
asynchr

Poczenia

Uczenie

kady
nadzor.
z kadym
warstwami
spec. jedno- nienadzor.
warstwa
kady
nienadzor.
z kadym

iteracyjne
iteracyjne
w jednym
kroku

Wybrane typy sieci neuronowych


Warstwowe sieci liniowe
- Adaline/Madaline,
Warstwowe sieci nieliniowe
- wielowarstwowa uczona algorytmem wstecznej propagacji bdw,
- sieci wielowarstwowe z modyfikacjami algorytmu wstecznej
propagacji bdw,
- sieci z funkcjami o symetrii koowej RBF.
Sieci ze sprzeniem zwrotnym
- sieci Hopfielda,
- dwukierunkowa pami asocjacyjna BAM,
Sieci uczone przez wspzawodnictwo
- sieci Kohonena, LVQ,
- odwzorowanie cech istotnych oraz sieci samoorganizujce si SOM,
Sieci rezonansowe ART oraz sieci z kontrpropagacj,
Sieci neuronowe zintegrowane z algorytmami metaheurystycznymi
- symulowane wyarzanie maszyna Boltzmana,
- algorytmy genetyczne,
Metody hybrydowe wykorzystujce sieci neuronowe,
Systemy rozmyto-neuronowe.

Uwagi na temat stosowanie sieci neuronowych


R.Tadeusiewicz (2000):
Sieci neuronowe mog by stosowane z duym prawdopodobiestwem
odniesienia sukcesu wszdzie tam, gdzie pojawiaj si problemy zwizane
z tworzeniem modeli matematycznych pozwalajcych odwzorowywa
zoone zalenoci pomidzy pewnymi sygnaami wejciowymi a
wybranymi sygnaami wyjciowymi
Potrzeba automatycznego w wyniku tzw. procesu uczenia modelowania
zoonych zalenoci.
T.Mitchell (1997):
Cechy charakterystyczne problemw dla SNN
Przykady uczce opisane s przez pary atrybut-warto (na og
zdefiniowanych na skalach liczbowych; np. rnego rodzaju sygnay
lub rezultaty pomiarw),
Przybliana funkcja moe mie wartoci dyskretne lub rzeczywiste;
moe by take wektorem wartoci,
Dane mog zawiera bdy lub podlega zaszumieniu; SSN s
odporne na rnego rodzaju uszkodzenia danych,
Akceptowalny jest dugi czas uczenia sieci,
Akceptacja dla potencjalnie duej liczby parametrw algorytmu,
ktre wymagaj dostrojenia metodami eksperymentalnymi,
Zadanie nie wymaga rozumienia przez czowieka funkcji
nauczonej przez SNN - trudnoci z interpretacj wiedzy nabytej
przez sie.

Algorytm wstecznej propagacji bdw (backpropagation)


Jak znale bd popeniany przez neurony z warstw ukrytych?

Bd k-tego neuronu w l-tej warstwie jest rwny sumie bdw


popenionych przez neurony (p) z warstwy l+1-szej waonych po
wagach wk(p,l+1) czcych ten neuron z neuronami tej warstwy:

j
( k ,l )

N l +1

= wkj ( p ,l +1) (j p ,l +1)


p =1

Algorytm wstecznej propagacji bdu (backpropagation, BP):

1.

Podaj na wejcie sieci kolejny wektor wymusze xj.

2.

Przepropaguj wymuszenie przez sie, obliczajc pobudzenia


neuronw w kolejnych warstwach, a do warstwy wyjciowej.

3.

Wektor wyj otrzymany w warstwie wyjciowej yj porwnaj


z wektorem uczcym/oczekiwanym zj i oblicz na tej podstawie
bdy j popenione przez neurony tej warstwy.

4.

Dokonaj wstecznej propagacji bdu do kolejnych warstw


ukrytych, tj. do ostatniej, przedostatniej itd., a do osignicia
warstwy wyjciowej.

5.

Dla kadego neuronu w sieci dokonaj modyfikacji wartoci


wag stosownie do wielkoci popenionego bdu.

6.

Sprawd, czy bd redniokwadratowy popeniany przez sie


dla wszystkich przykadw ze zbioru uczcego Q spad poniej
zadanej wartoci Qstop; jeli tak - zakocz prac,
w przeciwnym razie przejd do kroku 1.

Parametry reguy delta i algorytmu wstecznej propagacji


bdu

pocztkowa konfiguracja wektora wag w:


niewielkie wartoci losowe (dotyczy to wikszoci algorytmw
uczcych).

wspczynnik prdkoci uczenia


Decyduje o wpywie bdu popenianego przez neuron na korekt
wartoci wag. Waciwy dobr ma kluczowe znaczenie dla prdkoci
zbienoci algorytmu:
zbyt maa warto spowalnia proces uczenia i zwiksza ryzyko
wpadnicia w puapk lokalnego minimum (punkt reprezentujcy
konfiguracje sieci porusza si "maymi kroczkami" po krajobrazie
energetycznym)

Sp

Sk
wi

Czon momentu (bezwadnoci)


Metoda najwikszego spadku gradientu, opisana formu (2.5):

Q j
wi =
wi
j

skania i-t wag do zmiany wartoci stosownie do biecej wartoci


gradientu w chwili j, bez wzgldu na dotychczasowy przebieg uczenia. W
wielu przypadkach powoduje to zbyt chaotyczne nadanie wektora wag za
wektorem pobudze; jest to szczeglnie widoczne przy stosowaniu
modyfikacji wag po prezentacji kadego wzorca.
Dlatego formu t rozbudowuje si czsto o tzw. czon bezwadnoci
(momentum):

Q t
w =
+ wit 1
wi
t
i

Uzalenia on (przez wspczynnik ) warto biecej modyfikacji wagi od


modyfikacji przeprowadzonej w kroku poprzednim. Im wiksze w stosunku
do , tym algorytm jest bardziej stabilny. Z reguy przyjmuje si =0.9.

Problem doboru wielkoci warstw ukrytych


Problem doboru rozmiaru pojedynczej warstwy pozostaje do dzi otwarty.
Brak jednoznacznej reguy okrelajcej optymalny rozmiar danej warstwy
sieci przy danym zbiorze uczcym. Znane s jedynie oglne zalecenia,
podyktowane intuicj i dowiadczeniem praktycznym:

zbyt maa wielko warstw czyni sie niezdoln do adaptacji do


zadanego zbioru przykadw/wymusze: w trakcie uczenia bd
redniokwadratowy utrzymuje du warto

zbyt due warstwy wprowadzaj ryzyko tzw. "uczenia na pami":


dysponujc du liczb neuronw sie "obejmuje" kadym z nich ma
grup przykadw (w skrajnym przypadku pojedynczy wzorzec),
unikaj bardziej kosztownego poszukiwania jakiej generalizacji

(0.1)

Kiedy przeprowadza modyfikacj wag?


Dwa podejcia:

tzw. batch updating:


Przy prezentacji kolejnych przykadw poprawki wartoci wag w s
kumulowane. Co pewn liczb prezentacji (z reguy rwn rozmiarowi
zbioru uczcego, tzw. epoka/epoch) wagi s modyfikowane przy pomocy
tych skumulowanych poprawek.

modyfikacja przyrostowa:
Poprawki obliczone przy prezentacji wzorca s uywane bezporednio
(w tym samym kroku algorytmu) do modyfikacji wag.

Powszechnie uwaa si, e batch updating obcione jest powan wad:


podczas kumulacji poprawek wartoci wag moe zachodzi ich wzajemne
znoszenie si. Wypadkowa poprawka moe by nieznaczna, mimo e podczas
prezentacji poszczeglnych wzorcw dziaanie neuronu obarczone byo
znacznym bdem. Powoduje to obnienie "ruchliwoci" procesu
przeszukiwania przestrzeni wag, a co za tym idzie np. trudnoci z wyjciem z
minimum lokalnego.
Modyfikacja przyrostowa pozbawiona jest tej wady: algorytm jest bardziej
"ruchliwy", ryzyko utknicia w minimum lokalnym jest mniejsze. Nie jest
ono jednak cakowicie wyeliminowane: jeli przykady w kolejnych epokach
prezentowane s stale w tej samej kolejnoci, trajektoria sieci/neuronu w
przestrzeni wag moe ulec "zaptleniu".

Problem "przeuczenia"
"Przeuczenie" (overlearning): sie uczy si "zbyt dobrze" pojedynczych
obiektw, nie generalizujc (szczeglnie istotne w interesujcym nas
zastosowaniu w uczeniu maszynowym, ML)
y

Jak zapobiec przeuczeniu?


dobrze dobrane kryterium stopu
"erozja" wag; np.
wij := (1 )wij

Ten sam efekt da si uzyska dodajc czon kary do bdu


redniokwadratowego:

1
Qnew = Q + wi2
2 i
Wada: bardziej karze za jedn du wag, ni za wiele maych.
usuwanie wag
usuwanie nadmiarowych neuronw
specjalizowane algorytmy uczce:
cascade correlation

Uwagi na temat stosowanie sieci neuronowych


R.Tadeusiewicz (2000):
Sieci neuronowe mog by stosowane z duym prawdopodobiestwem
odniesienia sukcesu wszdzie tam, gdzie pojawiaj si problemy zwizane
z tworzeniem modeli matematycznych pozwalajcych odwzorowywa
zoone zalenoci pomidzy pewnymi sygnaami wejciowymi a
wybranymi sygnaami wyjciowymi
Potrzeba automatycznego w wyniku tzw. procesu uczenia modelowania
zoonych zalenoci.
T.Mitchell (1997):
Cechy charakterystyczne problemw dla SNN
Przykady uczce opisane s przez pary atrybut-warto (na og
zdefiniowanych na skalach liczbowych; np. rnego rodzaju sygnay
lub rezultaty pomiarw),
Przybliana funkcja moe mie wartoci dyskretne lub rzeczywiste;
moe by take wektorem wartoci,
Dane mog zawiera bdy lub podlega zaszumieniu; SSN s
odporne na rnego rodzaju uszkodzenia danych,
Akceptowalny jest dugi czas uczenia sieci,
Akceptacja dla potencjalnie duej liczby parametrw algorytmu,
ktre wymagaj dostrojenia metodami eksperymentalnymi,
Zadanie nie wymaga rozumienia przez czowieka funkcji
nauczonej przez SNN - trudnoci z interpretacj wiedzy nabytej
przez sie.

You might also like