Sieci neuronowe

40
Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum Sztuczna Inteligencja i Systemy Ekspertowe Sieci neuronowe. Aleksander Pohl http://apohllo.pl/dydaktyka/ai Wy˙ zsza Szkola Zarz ˛ adzania i Bankowo´ sci 9 czerwca 2009 Aleksander Pohl WSZiB Sieci neuronowe

description

 

Transcript of Sieci neuronowe

Page 1: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sztuczna Inteligencja i Systemy EkspertoweSieci neuronowe.

Aleksander Pohlhttp://apohllo.pl/dydaktyka/ai

Wyzsza Szkoła Zarzadzania i Bankowosci

9 czerwca 2009

Aleksander Pohl WSZiB

Sieci neuronowe

Page 2: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 3: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 4: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Historia (1)

◮ Ramon y Cajal (1906) opis struktury sieci nerwowej◮ Hodgin i Huxley (1963) model propagacji sygnału w

aksonie◮ Eccles (1963) Model synapsy◮ Hubel i Wiesel (1981) Model kory wzrokowej

Aleksander Pohl WSZiB

Sieci neuronowe

Page 5: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Historia (2)

Perceptron (1957) Frank Rosenblatt, Charles Wightmann◮ Układ elektromechaniczny◮ Rozpoznawanie znaków alfanumerycznych◮ 103 przełaczen na sekunde◮ Wrazliwy na dane wejsciowe◮ Odporny na uszkodzenia◮ 8 komórek 512 połaczen

Aleksander Pohl WSZiB

Sieci neuronowe

Page 6: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Historia (3)

Madaline (1960) Bernard Widrow (Standford)◮ Układ elektrochemiczny◮ Komercyjne zastosowania: analiza sygnałów (radary,

modemy itp.)◮ 104 przełaczen na sekunde◮ „Adaptive Linear Element”◮ 8 komórek 128 połaczen

Aleksander Pohl WSZiB

Sieci neuronowe

Page 7: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Historia (4)

◮ Lata 70-te zahamowanie rozwoju◮ Wady i ograniczenia sieci liniowych 1-warstwowych -

Minsky i Papert

◮ John Hopfield (1982) AT&T◮ 1984 – Optical resonator

◮ 6.4 ∗ 104 elementow◮ 1.6 ∗ 107 połaczen◮ 1.6 ∗ 105 przełaczen na sekunde

Aleksander Pohl WSZiB

Sieci neuronowe

Page 8: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 9: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Neuron w przyrodzi

Aleksander Pohl WSZiB

Sieci neuronowe

Page 10: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Synapsa w przyrodzie

Aleksander Pohl WSZiB

Sieci neuronowe

Page 11: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sztuczny neuron

Aleksander Pohl WSZiB

Sieci neuronowe

Page 12: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Topologia sztucznej sieci neuronowej

Aleksander Pohl WSZiB

Sieci neuronowe

Page 13: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 14: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Siec neuronowa

◮ Paradygmat obliczeniowy oparty na masowo równołegłejarchitekturze mózgów zwierzecych.

◮ Sztuczna siec neuronowa ma postac wieloprocesorowegosystemu złozonego z wielu niewielkich elementówobliczeniowych (tzw. Neuronów), z gesta siecia połaczen(tzw. Dendrytów), prostych komunikatów i adaptacyjnejinterakcji miedzy elementami

◮ Topologia i parametry połaczen stanowia program

Aleksander Pohl WSZiB

Sieci neuronowe

Page 15: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Porównanie paradygmatów

◮ Algorytmy „klasyczne”◮ Szybkie obliczenia sekwencyjne◮ Dostarczaja dokładnych wyników◮ Rozwiazanie problemu znajdowane przez programiste

◮ Sieci Neuronowe◮ Masowo równoległe◮ Odporne na szumy◮ Adaptacyjne zachowanie◮ Odpornosc na błedy◮ Rozwiazanie problemu znajdowane przez uczenie sieci

Aleksander Pohl WSZiB

Sieci neuronowe

Page 16: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Dziedziny zastosowania

◮ Diagnostyka układów◮ Badania psychiatryczne◮ Prognozy: giełdowe, gospodarcze, sprzedazy◮ Analiza spektralna◮ Sterowanie procesów przemysłowych◮ Selekcja doboru celów sledztwa◮ Rozpoznawanie wzorców (70%)

Aleksander Pohl WSZiB

Sieci neuronowe

Page 17: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Zastosowania

◮ Predykcja◮ Klasyfikacja◮ Kojarzenie danych◮ Analiza danych◮ Filtracja sygnałów◮ Optymalizacja

Aleksander Pohl WSZiB

Sieci neuronowe

Page 18: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Realizacje (1)

◮ Software◮ Sieci analogowe

◮ Ładunki na kondensatorach◮ 109 – 1011 p/s

◮ Układy optoelektroniczne◮ Liniowe przekształcenia przez układy modyfikowalnej

transparencji◮ Nieliniowe przekształcenia poprzez ukł. Elektroniczny◮ 1014 – 1015 p/s

Aleksander Pohl WSZiB

Sieci neuronowe

Page 19: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Realizacje (2)

◮ Układy cyfrowe typowe◮ Układy dedykowane◮ Procesory DSP◮ Karty rozszerzen◮ 106 – 107 p/s, 256k neuronow

◮ Specjalizowane układy scalone◮ 9 ∗ 107 p/s

◮ Mózg◮ 1010 komórek, 1015 połaczen, 1018 op/s

Aleksander Pohl WSZiB

Sieci neuronowe

Page 20: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 21: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Liniowe sieci neuronowe

◮ y =∑

wixi

◮ y znormalizowane do 0 albo do 1

Aleksander Pohl WSZiB

Sieci neuronowe

Page 22: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Uczenie (1)

◮ Z nauczycielem◮ Reguła delta (reguła najmniejszych kwadratów):

∆Wi = η ∗ (D − Y )Xi

◮ Bez nauczyciela (hebbian learning)◮ w (m)(j+1)

i = w (m)(j)i + ηx (j)

i y (j)m

◮ „clustering”◮ Róznicowe – bierzemy przyrosty wejsc◮ Instar (Grossberg) – dla ustalonego m:

◮ w (m)(j+1)i = w (m)(j)

i + η(j)(x (j)

i − w (m)(j)i )

◮ Waga dostatecznie mała, rosnaca 0 → 1 – v ∗ j◮ Outstar (cała warstwa)

Aleksander Pohl WSZiB

Sieci neuronowe

Page 23: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Uczenie (2)

◮ Competitive learning◮ Siec Kohonena

◮ Instar z normalizowanym X, m – maksymalne wyjscie◮ Uczymy tylko jeden

◮ Siec Kohonena – z uwzglednieniem sasiedztwa◮ Uczymy dany neuron – i jego sasiadów◮ dwuwymiarowe sasiedztwo – rozpoznaje obiekty 2D

Aleksander Pohl WSZiB

Sieci neuronowe

Page 24: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Siec z jednym neuronem

Rysunek: Hiperpłaszczyzna

Aleksander Pohl WSZiB

Sieci neuronowe

Page 25: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Siec z dwoma neuronami

Rysunek: Obszar wypukły

Aleksander Pohl WSZiB

Sieci neuronowe

Page 26: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Siec z wieloma neuronami

Rysunek: „Dziura”

Aleksander Pohl WSZiB

Sieci neuronowe

Page 27: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 28: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Nieliniowe sieci neuronowe

◮ „Bias”y =

∑wixi + w0

◮ funkcja pobudzenia – sigmoidalnay = 1

1+e−px

Aleksander Pohl WSZiB

Sieci neuronowe

Page 29: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Nieliniowe sieci neuronowe

◮ Uczenie pojedynczej warstwy◮ Algorytm delta – metoda najmniejszych kwadratów◮ Sieci wielowarstwowe◮ algorytm „back-propagation”

◮ y (j)m = φ(

∑w (m)(j)

i y (j)i )

◮ sygnał wyjscia m-tego neuronu w kroku j

Aleksander Pohl WSZiB

Sieci neuronowe

Page 30: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Nieliniowe sieci neuronowe

◮ „Back-propagation” algorithm◮ Dla ustalonego m, suma po wszystkich i neuronów

dostarczajacych dane. Mozna dobrac porzadek zeby „y”były niezalezne

◮ y (j)m = φ(

∑i w (m)(j)

i y (j)i )

◮ Bład sieci wnioskujemy z błedów warstwy nizej. Suma powszystkich neuronach dla których m wysyła swój sygnał

◮ δ(j)m = φ(

∑k w (m)(j)

k δ(j)k )

Aleksander Pohl WSZiB

Sieci neuronowe

Page 31: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci CP

◮ „Counter Propagation” (Hecht-Nielsena)◮ 1-sza warstwa – normalizowana siec Kohonena. 1 wyjscie

niezerowe „counter”◮ 2-ga warstwa „Instar” Grossberga

◮ Uczone niezaleznie◮ 1-sza mała waga poczatkowa, rosnie◮ 2-ga mała waga poczatkowa, maleje◮ Uogólnia i kojarzy – mozna odwrócic siec◮ Doskonale klasyfikuje – redukcja informacji

Aleksander Pohl WSZiB

Sieci neuronowe

Page 32: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci rezonansowe

Sieci ART – patent Univ. of Boston◮ ART1 – obrazy binarne◮ ART2 – obrazy analogowe

◮ Ilosc neuronów wieksza niz ilosc klas◮ Sprzezone wyjscie z wejsciem◮ Stan wyjsciowy 1 tylko na jednym, pozostałe 0 – brak

odpornosci na szumy

Aleksander Pohl WSZiB

Sieci neuronowe

Page 33: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci rezonansowe

Sieci ART◮ Sprzezenie wyjscia z wejsciem◮ Układ kontrolny – eliminuje puste dane wejsciowe.

Wzmacnia czułosc elementów drugiej warstwy◮ System Orientujacy (novelity detector)◮ Typowe wady sieci bez nauczyciela – nie wykrywa

niewielkich znaczacych zmian

Aleksander Pohl WSZiB

Sieci neuronowe

Page 34: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci Hopfielda (1)

◮ Pierwsza z odwróconym kierunkiem przepływu (1982)◮ Zatarcie granicy pomiedzy wejsciem a wyjsciem◮ Brak wyraznych warstw

◮ y (j)m = φ(e(j)

m )

◮ e(j)m =

∑i w (m)

i y (j)i + x (j)

m

◮ w (m)i – współczynnik wyjscia i-tego neuronu z wejsciem

m-tego neuronu

Aleksander Pohl WSZiB

Sieci neuronowe

Page 35: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci Hopfielda (2)

◮ y (j+1)m = −1 gdy e(j)

m < w (m)0

◮ y (j+1)m = y (j)

m gdy e(j)m = w (m)

0

◮ y (j+1)m = 1 gdy e(j)

m > w (m)0

Aleksander Pohl WSZiB

Sieci neuronowe

Page 36: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci Hopfielda (3)

◮ Brak wydzielonych warstw◮ Wprowadzamy dana X, i iterujemy do osiagniecia stanu

stabilnego◮ Content Addressable Memory (CAM)◮ Pojemnosc: 0.15 N.◮ Maszyny Bolzmanna

◮ Wyjscie jest zmieniane losowo w zal. Od wejscia →

wyzarzanie

Aleksander Pohl WSZiB

Sieci neuronowe

Page 37: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci Hintona

◮ Slad pamieciowy – engram nie posiada połozenia(charakter holologiczy)

◮ 2 warstwy – 1-sza neurony o 1 wejsciu, wyjscie dokazdego neuronu z 2-giej warstwy

◮ Uczymy metoda Hebba. Ciag wejsciowy (X1,Y1), (X2,Y2)(skojarzenia)

◮ Odpowiada na X skojarzeniem Y

Aleksander Pohl WSZiB

Sieci neuronowe

Page 38: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Sieci BAM

◮ Dwie warstwy, jak w ART, ale podobna do Hopfielda◮ Wektor Y ostatniej warstwy skierowany na wejscie, brak

odpowiednika w przyrodzie◮ „histereza” wag – adaptuje sie◮ Dobrze reaguje na dane odległe od nauczonych, szuka ich

iteracyjnie◮ Pojemnosc: w zaleznosci od typu danych (nawet wieksza

niz n)

Aleksander Pohl WSZiB

Sieci neuronowe

Page 39: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Plan prezentacji

Wprowadzenie

Neuron

Sieci neuronowe

Sieci liniowe

Sieci nieliniowe

Postscriptum

Aleksander Pohl WSZiB

Sieci neuronowe

Page 40: Sieci neuronowe

Wprowadzenie Neuron Sieci neuronowe Sieci liniowe Sieci nieliniowe Postscriptum

Materiały zródłowe

◮ L.Sterling, E.Shapiro - „The Art Of Prolog”◮ Ivan Bratko - „Prolog – Programming For Artificial

Intelligence”◮ Slajdy zostały przygotowane za zgoda

dr. Michała Korzyckiego na podstawie jego wykładu.

Aleksander Pohl WSZiB

Sieci neuronowe