SIECI
LVQ
L
earning
V
ector
Q
uantization
SIECI
CP
C
ounter
P
ropagation
SIECI
LVQ
Joanna Grabska- Chrząstowska
KLASA 1 KLASA 2 KLASA 3
X1 X2 X3 X4
REGUŁA WIDROW-HOFFA
(DELTA)
= z - y
w
k i(j+1)=w
k i(j)+ η
x
i(j)METODA SAMOUCZENIA HEBBA
w
k i(j+1)=w
k i(j)+ η y
k(j)x
i(j)UCZENIE Z FORSOWANIEM
w
k i(j+1)=w
k i(j)+ η z
k(j)x
i(j)ARCHITEKTURA SIECI LVQ
WARSTWA KOHONENA WARSTWA WEJŚCIOWA WARSTWA WYJŚCIOWAKLASA 1 KLASA 2 KLASA 3
Sieć LVQ
(wprowadzona przez Kohonena) służy do klasyfikowania sygnały wejściowych i jest przykładem uczenia z forsowaniem. Warstwa wyjściowa przypisuje wektory wyjściowe do jednej z kilku klas. Główna częścią sieci jest WARSTWA KOHONENA, która ucząc się dokonuje klasyfikacji.LVQ
dostarcza jednakową liczbę neuronów przypisanych do danej klasy. Podklasy w danej grupie nie muszą być podobne.WERSJ
A
PODST
A
WO
W
A
W podstawowej wersji sieci LVQ obliczana jest
odległość między wektorem wejściowym a
wekto-rem wag i - tego neuronu dla każdego i =
1, ..., m
N
d
i= w
i– x =
S
( w
ij– x
j)
2j=1
Wagi zwycięskiego neuronu sa modyfikowane zgodnie z wzorem:
W’ =
w +
a
(x - w)
jeśli neuron należy do właściwej klasySTRATEGIA UCZENIA
SIECI LVQ
W typowych zastosowaniach powinno zacząć się od:
wariantu LVQ 1,
następnie przejść do
wersji podstawowej LVQ
lub
LVQ bez odpychania,
a na koniec użyć
PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0)PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2 x3PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2 x3PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2 x4PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2 x4PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2 x5PRZYKŁAD ZASTOSOWANIA
SIECI LVQ
x1 ( 1 , 1 , 0 ) klasa 1 x2 ( 0 , 0 , 0 ) klasa 2 x3 ( 0 , 0 , 1 ) klasa 2 x4 ( 1 , 0 , 0 ) klasa 1 x5 ( 0 , 1 , 1 ) klasa 1 x1 x2 x3 1 2 (1,1,1) (0,1,0) (1,1,0) (0,0,1) (1,0,0) (0,1,1) (0,0,0) w1 w2 x5SIECI
CP
C
ounter
P
ropagation
Sieci CounterPropagation (CP)
uczona z nauczycielem !!!
zaproponowane przez Roberta Hecht-Nielsens są kompilacją sieci Kohonena i sieci Grosberga. Wprowadzają nową jakość, czyli zwiększoną szybkość uczenia. Jest odpowiedzią na wady sieci ze wsteczną propagacją, w której uczenie jest powolne i pracochłonne.
Przy pomocy CP można szybko weryfikować hipotezy robocze.
DZIAŁANIE PIERWSZEJ WARSTWY
||x|| =1
Założenie: normalizacja wektorów
wejściowych
x
ix ’
i=
nS
X
j 2 j=1e
j=W
jTX
k
j=
1
gdy
ije
j> e
i0
w przeciwnym przypadkuGDY BRAK NORMALIZACJI
Przykład: W1 = 1 2 3 0 1 0 W2 = 1 2 3 X = 2 1 x1 x2 x3e1 = 14 e2 = 2 neuron nr 1 zostaje zwycięzcą
GDY BRAK NORMALIZACJI
Przykład: W1 = 1 2 3 0 1 0 W2 = 0 1 0 X = 2 1 x1 x2 x3e1 = 2 e2 = 1 neuron nr 1 zostaje zwycięzcą
DZIAŁANIE DRUGIEJ WARSTWY
Druga warstwa realizuje algorytm
Outstar Grossberga
METODA OUTSTAR LEARNING
“GWIAZDY WYJŚĆ”
k
y
1y
2y
3y
4y
5w
1iw
2 iw
3 iw
4 iw
5 ii
x
i i – ustalone k - zmiennew
ki( j+1)= w
ki( j )+
h
(j)[ y
k ( j )– w
ki ( j )]
h(j) = 0,1 – l * jDZIAŁANIE DRUGIEJ WARSTWY
Druga warstwa realizuje algorytm Outstar Grossberga
Y = V K czyli
S
m j =1 ys = vsj kj y1 y2 y3 y4 y5 ki x1 x2 warstwa Kohonena warstwa Grosberga V WUCZENIE PIERWSZEJ WARSTWY
W danym kroku uczenia
korekcie wag podlega tylko zwycięzca
D
W =
h
1( X - W)
początkowo wij = 1/n
zamiast x podaje się na wejście x’:
UCZENIE PIERWSZEJ WARSTWY
W danym kroku uczenia
korekcie wag podlega tylko zwycięzca
D
W =
h
1( X - W)
początkowo wij = 1/n
zamiast x podaje się na wejście x’:
x
i(k)’ =
h
2(k) x
i(k)+ [1 -
h
2(k) ]
1/n
dla małych
h
2(k) -
małeUCZENIE PIERWSZEJ WARSTWY
W danym kroku uczenia
korekcie wag podlega tylko zwycięzca
D
W =
h
1( X - W)
początkowo wij = 1/n
zamiast x podaje się na wejście x’:
x
i(k)’ =
h
2(k) x
i(k)+ [1 -
h
2(k) ] 1/n
h
2(k) -
rośnie do 1bliskie 0
UCZENIE DRUGIEJ WARSTWY
Warstwę Grossberga uczymy według reguły Widrow - Hoffav
ij(k+1)= v
ij(k)+ h
3( z
i- y
i) k
jProces uczenia warstwy Grossberga polega na wpisywaniu do tablicy „look up table” właściwych wartości, które mają być odpowiednią reakcją na pewną grupę sygnałów pojawiających się na wejściu sieci, a którą identyfikuje pewien neuron z warstwy Kohonena.
PEŁNA SIEĆ Z KONTRPROPAGACJĄ
FULL COUNTERPROPAGATION
PEŁNA SIEĆ Z KONTRPROPAGACJĄ
FULL COUNTERPROPAGATION
PEŁNA SIEĆ Z KONTRPROPAGACJĄ
Pierwsza faza uczenia
PEŁNA SIEĆ Z KONTRPROPAGACJĄ
FULL COUNTERPROPAGATION
PEŁNA SIEĆ Z KONTRPROPAGACJĄ
Druga faza uczenia
AUTOASOCJACJA
X
Y
X
Y
SIEĆCP
UCZENIEX
_
X
Y
SIEĆCP
EKSPLOATACJA_
Y
X
Y
SIEĆCP
ALBOLITERATURA
Tadeusiewicz Ryszard
, Sieci neuronowe. W-wa 1993
Fausett Laurene
, Fundamental of Neural Networks
Architectures, Algorithms, and Applications.