SIwF-4-Sieci neuronowe

Transkrypt

SIwF-4-Sieci neuronowe
Sieci neuronowe: Rys historyczny
SZTUCZNA INTELIGENCJA
W FINANSACH
• Model neuronu [McCulloch, Pitts, 1943]
• Proces uczenia [Hebb, 1949]
• PERCEPTRON [Rosenblatt,1958]
III. Sieci neuronowe
Zbieznosc algorytmu ucenia (adaptacji wag)
• Ograniczenia PERCEPTRONu [Minsky, Papert, 1969]
Problem XOR
• Maszyna Bolzmanna [Hopfield, 1982]
• Retro-propagacja - MLP [Rumelhart, Parker, Le Cun, 1985]
• Self-Adapting Maps [Kohonen, 1980]
Jerzy KORCZAK
email : [email protected]
http://www.korczak-leliwa.pl
• Sieci Hopfielda [Hopfield, 1982]
• … ICANN, IJCNN, ECANN, …
1
Pojęcie sieci neuronowej
2
Definicje (cd)
“ ….A neural network is an interconnected assembly of simple
processing elements, nodes, whose functionality is loosely
based on the animal neuron. The processing ability of the
network is stored in the inter-unit connection strengths, or
weights, obtained by a process of adaptation to, or learning
from, a set of training patterns.” — Gurney
• “… systems that are deliberately constructed to make use
of some of the organizational principles that are felt to be
used in the human brain.” — Anderson
• “... a neural network is a system composed of many
simple processing elements operating in parallel whose
function is determined by network structure, connection
strengths, and the processing performed at computing
elements or nodes.” — DARPA Neural Network Study
(1988)
… Sieć neuronowa (sztuczna sieć neuronowa) to ogólna
nazwa struktur matematycznych i ich programowych lub
sprzętowych modeli, realizujących obliczenia lub
przetwarzanie sygnałów poprzez rzędy elementów, zwanych
sztucznymi neuronami.
3
Korzenie prac badawczych
4
Inspiracja biologiczna
Neurobiologia (ponad 100 lat temu):
Jak zachowują się komórki nerwowe przy różnych
stymulacjach elektrycznych? Czy istnieje poziom
minimalny aktywacji neuronu? Biorąc pod uwagę fakt że
komórka ma ograniczone wymiary, jak komórki
komunikują się ze sobą?
Psychologia:
Jak uczą się (zapominają, rozpoznają, funkcjonują)
zwierzęta wykonywania określonych zadań?
mozg : ~ 1011 neuronow
neuron : ~104 polaczen
akson
jadro
soma
synapsa
dendryt
Badania nad funkcjonowaniem neuronu (ów) ?
McCulloch and Pitts – model matematyczny neuronu
6
1
Historia
Sieć neuronowa: Wstępna definicja
Model neuronu [McCulloch, Pitts, 1943]
Proces uczenia [Hebb, 1949]
PERCEPTRON [Rosenblatt,1958]
zbieżność algorytmu adaptacji wag
Ograniczenia PERCEPTRONu
błędne stwierdzenie Minsky’iego Paperta, [1969]
Problem XOR
Bolzmann Machine [Hopfield, 1982]
Back propagation - MLP [Rumelhart, Parker, Le Cun, 1985]
Self-Adapting Maps [Kohonen, 1980]
sieci Hopfielda [Hopfield, 1982]
… ICANN, IJCNN, ECANN, …
Siec neuronowa jest zestawem połączonych ze sobą
prostych jednostek obliczeniowych, zwanych neuronami, o
wysokim stopniu wzajemnych połączen, skalarnych
komunikatach i adaptacyjnym mechanizmie interakcji miedzy
neuronami.
Wagi wzajmenych połączen obliczane są w trakcie procesu
adaptacji, uczenia się z przedstawionych danych.
Typy algorytmów uczacych:
- uczenie pod nadzorem (z nauczycielem)
- uczenie bez nadzoru
7
Perceptron
Przykłady problemów liniowo nieseperowalnych
• Rosenblatt (1962)
• Liniowa separowalność
• Wejście: Wektor liczb rzecz.
• Wyjście :1 or -1
y  sign(v)
v  c0  c1 x1  c2 x2

c0
c2
c1
1
+ +
+ +
+
+ + ++
+
+
+
+ ++
+ + + + +++ ++
+ + +
+
+ + +
+ + +
y  1
+
x1
Structure
y  1
Single-Layer
Two-Layer
c0  c1 x1  c2 x2  0
x2
Three-Layer
Types of
Decision Regions
Exclusive-OR
Classes with Most General
Problem
Meshed regions Region Shapes
Half Plane
Bounded By
Hyperplane
A
B
B
A
Convex Open
Or
Closed Regions
A
B
B
A
A
B
B
A
Abitrary
(Complexity
Limited by No.
of Nodes)
B
B
B
A
A
A
Neural Networks – An Introduction Dr. Andrew Hunter
Kilka uwag o sieciach neuronowych (1)
Kilka uwag o sieciach neuronowych (2)
• D.Hebb, in 1949, published The Organization of
Behavior, in which he proposed that the effectiveness of
a synapse between two neurons might be increased by
correlated activity of those two neurons
– used widely in artificial neural models today
– there is also evidence of a biological mechanism in
which neural activity modulates calcium ion flow,
which, in turn, affects the physical structure of
synapses
• Farley and Clark, in 1954 on an early digital computer at
MIT, modeled a network of randomly connected neurons
employing a modified Hebb learning rule that was able to
learn to discriminate between two input patterns
• F.Rosenblatt, in 1958, introduced the single-layer
perceptron with adjustable synaptic weights and a
threshold output neuron
• Rosenblatt conceptualized perceptrons as consisting of
•
three layers, for sensory, association, and response, but
the weights only varied on the synapses leading to the
single threshold neuron
• He also introduced an error-correction rule (the
perceptron learning rule) to adapt the weights and
proved that if two input classes were linearly separable
• the algorithm would converge to a solution (the
perceptron convergence algorithm)
11
2
Kilka uwag o sieciach neuronowych (3)
Kilka uwag o sieciach neuronowych(4)
• P.Werbos, in his 1974 PhD thesis, first demonstrated a
method for training multi-layer perceptrons, essentially
identical to Backprop but the work was largely ignored
• D.Ackley, G.Hinton, and T.Sejnowski [1985] introduced the
Boltzmann machine (the first successful realization of a
multilayered neural network)
• T.Kohonen [1982] introduced SOM algorithms for SelfOrganized Maps, that continue to be explored and
extended today
• D.Rumelhart, G.Hinton, and C.Williams [1986] introduced
Backprop, the first widely recognized learning algorithm for
multilayer perceptrons or neural networks
• D.Parker [1982] published an algorithm similar to Backprop,
which was ignored.
• T. Sejnowski and C. Rosenberg [1986] introduced NETtalk,
a text-to-speech neural network system trained using
Backprop.
• Y. LeCun [1985] published an algorithm similar to
Backprop, which was again ignored
13
Sieci neuronowe: cel i projektowanie
Wiedza o zadaniu do nauczenia podana jest w postaci
zbioru przykładów, zwanym zbiorem uczącym (training
examples).
Specyfikacja sieci neuronowej określa:
• architekturę: zbiór neuronów i połączeń międy nimi. Każde połaczenie ma
określona wagę (weight),
•model neuronu: informacja o procesie obliczeniowym w neuronie,
• algorytm uczacy (learning algorithm): stosowany do nauczenia sieci (poprzez
modyfikacje wag połączeń).
Cel: generalizacja przykładów tak aby sieć poprawnie
rozpoznawała (rozwiązywała, klasyfikowała ) nowe przykłady.
14
Rozpoznawania pisma ręcznego
Prosty model
• Dwuwarstwowa sieć
0
– Górna warstwa – znane wzorce.
– Dolna warstwa – intensywność
piksela
• Jeśli zapis przechodzi przez piksel,
piksel uaktywnia połączenie.
– Każdy piksel może uaktywniać kilka
różnych wzorców.
• Wzorzec wygrywający – ten który
otrzyma najwięcej zgłoszeń.
1 2 3 4
5 6 7 8 9
Trudność w zdefiniowaniu wzorca cyfry 2
1
2
3
4
5
6
7
8
9
0
Obraz cyfry
Działanie:
-Powiększ wagi do właściwej klasy
- Zmniejsz wagi do wszystkich uaktywnionych klas
3
Podstwowy element sieci neuronowej: neuron
X1
w1
X2
w2
Perceptron wielowarstwowy (MLP)
Funkcja aktywacji
F
1
S
X3
Wejścia
0
S
wi
O1
O2
F
O3
wk
Wyjścia
Wejście neuronu Sxi*w ij
Warstwa wejsciowa
Wartswa ukryta
Warstwa wyjsciowa
S
19
Metoda spadku gradientu (Gradient Backpropagation)
x1
wij
o1
OCR: Rozpoznawanie znakow
t1
-
x2
o2
-
x3
o3
-
...
...
xn
om
Vecteur
yi= S wijxi
d ’entrée
Funkcja sigmoidalna F(y)=1/(1+e-ky)
21
-
t2
t3
...
E=1/2 S(tk - ok)2
tm
F’(y) = F(y)(1-F(y))
22
Axone : Przykład XOR
23
Zastosowania
Cechy ‘dobrych’ dziedzin zastosowań:
• Problemy trudne do zdefiniowania explicite
• Dostepnosc do dużych baz danych
• Zaklocenia w danych
• Problemy wymagające szybkich obliczeń
• Brak rozwiązań algorytmicznych
24
25
4
Zastosowania w zarządzaniu
Multi-Layer Perceptron (MLP)
Klasyfikacja, analiza klientów
Przewidywanie (rynku akcji, bankructwa firmy)
Zarządzanie ryzykiem
Uproszczenie danych, walidacja danych, kompresja
Rozpoznawanie obrazów, biometria
Ocena kredytobiorcy (Credit Scoring)
MLP sklada sie z sukcesywnych warstw : warstwy
wejsciowej (prezentacja wektora wejsciowego), jednej lub
kilku warstw ukrytych, oraz warstwy wyjsciowej
(prezentujacej wartosci obliczone przez siec).
Algorytmy uczace MLP :
- Gradient Back-propagation, SuperSAB
- Cascade Correlation
- Conjugate Gradient
- Metody drugiego rzedu, …
Nowe zastosowania
• Wyszukiwanie informacji (Web)
• Data Mining
• Multimedia (indeksacja)
MLP sa uniwersalnymi aproksymatorami.
26
MLP: Algorytm uczacy
27
Przykład XOR: Gradient Back-Propagation (GBP)
Inicjalizacja wag
Repeat
for kazdego przykladu
naucz sie wzorca
Obliczenia w przod (propagacja)
Obliczenia wstecz (retro-propagacja)
end for
Dopoki blad nie jest ‘akceptowanie niski’
XOR
X Y XOR(X,Y)
0 0
0
0 1
1
1 0
1
1 1
0
XOR
0,5
0
0
bias
f(netk)=1/(1+e-net )
netj=Sw ijoi
oj=f(netj)
Slabosci :
• Okreslenie parametrow procesu uczenia
• Dlugi proces uczenia
• Problem wyboru topologii sieci
d k=(tk-ok)f’(netk)
f’(netk)=ok(1-ok)
w (t+1)=wjk(t)+lDkoj
0 jk
Wij=0
k
1
0,5
0
bias
1
0
0
1
0
Y
X
28
Przykład: Gradient Back-Propagation (GBP)
Proces uczenia sieci
XOR
X
0
0
1
1
Wij=0
0
0
0
bias
1
0,5 h
0
bias
1
Dh=f’(netj) SDkw kj
0
1
x
Proces uczenia: wagi i współczynnik uczenia
wij(t+1)= wij((t) + l * aj*Dwi
XOR
z 0,5
Y XOR(X,Y)
0
0
1
1
0
1
1
0
l0,1
Dz=(1-0.5)*0,5*(1-0.5)=
=0,125
wzx(t+1)=0+0,1*0,125*1=
= 0,0125
wzx=0,00125
wzy=0
wzh=0,00625
whx=0,0000195
why=0
wzbh=0,0000195
f(net) = 0,507031
0
y
29
l
0,1
0,5
3,0
4,0
iteracja
25496
3172
391
(fails)
0
= 0,5*(1-0,5)*0,125*0,00625= 0,000195
whx =0+0,1*0,000195*1=0,0000195
30
31
5
Przykład: Testowanie sieci
Przykład: Nauczona sieć MLP
XOR
X Y XOR(X,Y)
0 0
0
0 1
1
1 0
1
1 1
0
XOR
XOR
X
0
0
1
1
-3,29
10,9
1
0,91
-3,29
10,9
-4,95
-2,76
bias
-4,95
XOR
Y XOR
0
0
1
1
0
1
1
0
1
7,1
-2,76
7,1
1 *
7,1
1 * -2,76
0 *
7,1
Sxw = 4,34
1
Y
X
-4,95
bias
1
Y=1/(1+e-S xw)
=1/(1+e-4,34)
=0,98
-4,95
0,98
7,1
7,1
1
0
X
Y
32
33
34
35
Przyklad: Testowanie sieci XOR
XOR
X
0
0
1
1
XOR
Y XOR
0
0,08
1
0,91
0
1,00
1
0,10
0,91
-3,29
10,9
1
-4,95
-2,76
bias
1
-4,95
0,98
7,1
7,1
1
0
X
Y
Axone: Przykład XOR – parametry uczenia
Axone : Sieć XOR nauczona
36
37
6
Autoryzacja dostępu – podejście biometryczne
Autentyfikacja biometryczna
Proces weryfikacji osoby na podstawie jej cech fizycznych (np. tęczówka
oka, linie papilarne, kształt dłoni, kształt ucha, zapach, DNA, itp..
Twarz
Normalisation Apprentissage et
+ Codage
Reconnaissance
Détection des yeux
0
Klient czy oszust?
Moment
-50
-50
10
20
30
40
0
0
0
50
50
100
Grey Scale
150
10
20
30
40
100
Vert
Bleu
Hue
Saturation
IntenJezeli
té
Intensity
150
200
200
250
250
Average Intensity of each row s
Intensity
Filtre Trouver Trouver Inondation +
de base
Y
X
Convolution
Extraction
Réseau des
neurones
w1
Przyjac
Odrzucic
Baza danych
Badge
Glos
Transformation de l’ondelite
Fréquence
Effacer les
Jezelilences
Decyzja
50
Normalisation Apprentissage et
+ Codage
Reconnaissance
w2
C0 C1 C2 C3 C4 C5 C6 C7
C9 C10 C11 C12
C13 C14
Temps
C15
Réseau des
neurones
39
Alvinn
Face Module: Ekstrakcja cech charakterystycznych
Camera
image
Raw
Feature
Video
Acquisition
Face
Detection
Face Feature
Localization
Feature
Extraction
Normalised
Feature
Feature
Normalisation
Autonomous
driving at 70 mph
on a public
highway
30 outputs
for steering
4 hidden
units
…
30x32 weights
into one out of
four hidden
unit
30x32 pixels
as inputs
40
Mini-projekt.
Zadanie 1. Problem rozpoznawania przez sieć prostych symboli
graficznych zapisanych w postaci matrycy 3*3.
WEJSCIE
WYJSCIE
Interpretacja obrazów satelitarnych
Jeśli
1000
to
0100
0010
0001
42
43
7
Bourse-Experts: Online Trading
Samoorganizacja
- Notowania (dzienne, godzinne, 1 min, on-line),
Uczenie bez nadzoru: wykrywanie cech w sygnale, modelowanie
danych, analiza skupień, modele rozkładu prawd. stanów środowiska ...
Powstawanie wewnętrznych reprezentacji w mózgu: skomplikowane.
Proste bodźce wyzwalające u zwierząt, uboga reprezentacja.
Analiza danych zmysłowych i instrukcje motoryczne - neurony o
podobnych funkcjach są obok siebie => mapy topograficzne.
- Ceny otwarcia, zamkniecia, max, min, wolumin transakcji, indeks
- Stopa zwrotu
•
•
•
•
•
Mapy somatosensoryczne układu czuciowego,
mapy motoryczne kory i móżdżku,
mapy tonotopiczne układu słuchowego,
mapy orientacji dwuocznej układu wzrokowego,
mapy wielomodalne układu orientacji (wzgórki czworacze górne)
44
WTA
Metody uczenia sieci « bez nadzoru »
• Uczenie konkurencyjne
Reguła : «winner-take-all»
• Mapy samo-organizujace się Kohonena
– Sieć o stałych wymiarach (2D)
• Projekcja danych w sieć 2D
• Gaz neuronowy
– Dynamika topologii sieci (GNG)
• Wstawienie neuronow w miejscu gdzie błąd sieci jest
największy
Uczenie konkurencyjne - WTA, Winner Takes All.
Nazywane też Hard Competitive Learning.
Jeden zwycięzca, dane pojedynczo (on-line) lub wszystkie (batch).
Mogą powstawać bezużyteczne neurony - konieczna incjalizacja zgodna z
rozkładem danych.
Algorytm LBG typu WTA:
1. przypadkowa inicjalizacja;
2. Powtarzaj aż ustaną zmiany:
3.
pokaż wszystkie dane i znajdź zbiory Voronoia;
4.
przesuń wagi neuronu do centrum obszaru
Wariant LBG-U: przesuń mało użyteczne (zerowy zbiór
Voronoia) neurony w lokalne minima błędu.
Wc 
1
Rc
V
V Rc
J.Korczak, ULP
46
Sieć 2D, dane 3D
Modele samoorganizacji
o' ' '
' '
' oo ' ' '
'
'' ' ' ' ' ' ' oo
'o o
' '
'
'o
' o'
o=dane
' = wagi sieci
x
y
z
przestrzeń cech
Jak mapy topograficzne mogą się utworzyć spontanicznie?
Połączenia lokalne: neuron silnie pobudzany przez pobliskie, słabo przez
odległe, hamowany przez neurony pośrednie.
neurony wejściowe
wagi przypisane
połączeniom
2-D siatka
neuronów
SOM lub SOFM (Self-Organized Feature Mapping) samorganizująca się mapa cech.
Historia:
von der Malsburg i Willshaw (1976), uczenie konkurencyjne, mechanizm
Hebbowski, wzbudzenie typu „Meksykańskiego kapelusza”, model
układu wzrokowego.
Amari (1980) - model ciągłej tkanki neuronowej.
Kohonen (1981) - uproszczenie, bez hamowania; dwie fazy - konkurencja
i kooperacja.
8
Reguła modyfikacji wag wokół Best Matching Unit
Uczenie SOM
Neurony reagują na sygnały X podobne do W.
Podobny = iloczyn skalarny największy lub odległość min.
Znajdź najsilniej reagujący neuron c.
X  Wj 
 X
i
 Wij  ; c  arg min X  Wj
2
i
j
Przesuń wagi neuronu c i neuronów w sąsiedztwie O(c):

2
h( r, rc , t )  h0 (t )exp  r  rc /  c 2 (t )

w stronę wektora X:
Wi  t  1  Wi  t   h  ri , rc,t  X  t   Wi  t  dla i  O  c 
J.Korczak, ULP
51
J.Korczak, UE
53
SOM: «mexican hat»
The weigths are updated according to «mexican hat».
Interaction
excitatory action
+
_
_
inhibitory action
Hints : - define a large neighborhood range in the beginning
- adaptation rate is a linear decreasing function
J.Korczak, ULP
52
GND
Algorytm Kohonena: SAM
1.
2.
3.
4.
5.
6.
7.
Losowa inicjalizacja wag połaczeń miedzy WE a WY
Ustalenie promienia sąsiedztwa R
Prezentacja wektora WE.
Obliczanie dystansu między neuronem WY j a neuronem WE i
dj = S (xi(t) – w ij(t))2
gdzie xi(t) jest wartością na WE, a w ij(t) wagą
Wybór najbliższego neuronu WY j*.
Aktualizacja wag neuronu j* oraz sąsiadów w promieniu R :
w ij(t+1)=w ij(t)) +h(t)(xi(t)– w ij(t))
lim t->oo h(t) =0
Jeśli h(t)>0, to zmniejsz promień R i wróć do 3
inaczej koniec procesu uczenia
J.Korczak, ULP
54
J.Korczak, ULP
55
9
Olej z Włoch
Mapy ekonomiczne
Dane: Bank Światowy 1992, 39 wskaźników jakości życia.
SOM i mapa świata; analiza giełdy i analiza stopów.
572 próbek olejków z
oliwek pobrano z 9
prowincji Włoch.
Sieć SOM 20 x 20,
uczona % 8 tłuszczów
zawartych w olejkach.
Mapa 8D => 2D.
Dokładność klasyfikacji
na testowanych
próbkach rzędu 9597%.
Literatura
Bishop C.M., Neural Networks for Pattern Recognition, Oxford Univ., 1995.
Gupta J., Smith K., Neural Network in Business: Techniques and Applications,
Idea GR. Pub., 2002.
Haykin S., Neural Networks: A Comprehensive Foundation, Prentice, 1999.
Kosiński R., Sztuczne sieci neuronowe. Dynamika nieliniowa i chaos, 2007.
Rojas R., Neural Networks: A Systematic Introduction, Springer, 1996.
Kohonen T., Self-Organizing Maps, Springer, 1997.
Masters T., Practical Neural Network Recipes in C++, Academic Press, 1994.
Tadeusiewicz R., Sieci neuronowe, Warszawa, 1993
http://winntbg.bg.agh.pl/skrypty/0001
Usenet newsgroup : comp.ai.neural-nets
http://www.neuralnets.eu/ http://ai.com/
10

Podobne dokumenty

Sztuczna inteligencja

Sztuczna inteligencja simple processing elements operating in parallel whose function is determined by network structure, connection strengths, and the processing performed at computing elements or nodes.” — DARPA Neura...

Bardziej szczegółowo