• Nie Znaleziono Wyników

2012-12-12 M.Czoków,J.Piersa Wst¦pdosiecineuronowych,wykªad9Analizaskªadowychgªównych

N/A
N/A
Protected

Academic year: 2021

Share "2012-12-12 M.Czoków,J.Piersa Wst¦pdosiecineuronowych,wykªad9Analizaskªadowychgªównych"

Copied!
48
0
0

Pełen tekst

(1)

Wst¦p do sieci neuronowych, wykªad 9 Analiza skªadowych gªównych

M. Czoków, J. Piersa

Faculty of Mathematics and Computer Science, Nicolaus Copernicus University, Toru«, Poland

2012-12-12

(2)

1 Sieci samoorganizuj¡ce si¦ typu Hebba Terminologia angielska

Reguªa Hebba Reguªa Oja

2 Analiza skªadowych gªównych IdeaAlgorytm

3 Analiza skªadowych niezale»nych*

IdeaUczenie

(3)

1 Sieci samoorganizuj¡ce si¦ typu Hebba Terminologia angielska

Reguªa Hebba Reguªa Oja

2 Analiza skªadowych gªównych IdeaAlgorytm

3 Analiza skªadowych niezale»nych*

IdeaUczenie

(4)

Terminologia angielska

W literaturze dotycz¡cej bie»¡cego tematu cz¦sto u»ywa si¦ wyra»e«

angielskoj¦zycznych zamiast polskoj¦zycznych. Terminy w j¦zyku angielskim dla tych wyra»e« pojawi¡ si¦ równie» na zaj¦ciach.

principal component  skªadowa gªówna,

Principal Component Analysis (PCA)  analiza skªadowych gªównych,

(5)

Reguªa Hebba 1949

Reguªa Hebba

Neurons, that re together, wire together.

Je±li neuron A jest cyklicznie pobudzany przez neuron B, to staje si¦

on jeszcze bardziej czuªy na pobudzenie tego neuronu.

Konsekwencj¡ stwierdzenia Hebba jest nast¦puj¡ca, dwucz¦±ciowa reguªa:

1 je»eli neurony A i B poª¡czone synaps¡ s¡ pobudzone jednocze±nie, to poª¡czenie synaptyczne je ª¡cz¡ce jest wzmacniane,

2 je»eli neurony A i B poª¡czone synaps¡ s¡ pobudzone

(6)

Reguªa Hebba 1949

Zmiana wag poª¡czenia pomi¦dzy neuronem A i B wedªug reguªy Hebba przebiega w nast¦puj¡cy sposób:

wAB(k+1)=wAB(k)+ ηyA(k)yB(k), gdzie:

wAB  waga poª¡czenia synaptycznego pomi¦dzy neuronem A i B,

yA  stan aktywacji neuronu A, yB  stan aktywacji neuronu B, η  wspóªczynnik uczenia.

(7)

Prosta reguªa Hebba

Dla danego zestawu przykªadów (x(n))Nn=1, gdzie

x(n)= (x1(n), ...,xk(n)), b¦dziemy uczyli perceptron liniowy, by zwracaª

najistotniejsz¡ cech¦ badanych elementów (cech¦ dyskryminuj¡c¡).

Da to skªadnik gªówny zestawu przykªadów: wektor w taki, »e:

∆(w) =X

n

hx(n),wi2

jest maksymalizowany w±ród wszystkich wektorów o dªugo±ci w (zatem skªadnik gªówny jest kierunkiem, a nie wektorem, jednoznaczno±¢ uzyskuj¦ si¦ przez normalizacj¦).

(8)

Prosta reguªa Hebba

Na nast¦pnym slajdzie przyj¦te zostaªy oznaczenia:

zestaw przykªadów ucz¡cych (x(n))Nn=1 (na pomara«czowo), skªadnik gªówny  wektor maksymalizuj¡cy ∆ (na zielono), wektor minimalizuj¡cy ∆ (na oletowo),

przykªadowy wektor w, dla którego obliczone jest wyra»enie

∆(w) (na niebiesko).

(9)

Prosta reguªa Hebba

-1 -0.5 0 0.5

1 (w)=1.997

(10)

Prosta reguªa Hebba

Prosta Reguªa Hebba  wzmacnia wyj±cie y perceptronu dla ka»dego kolejno wystepuj¡cego wej±cia, a wi¦c cz¦ste wzorce wej±ciowe b¦d¡

miaªy decyduj¡cy wpªyw na wyj±cie i b¦d¡ wywoªywa¢ najwi¦ksze aktywacje, natomiast rzadkie wej±cia b¦d¡ miaªy maªy wpªyw na wyj±cia i b¦d¡ wywoªywa¢ najmniejsze aktywacje.

(11)

Prosta reguªa Hebba - algorytm

1 losujemy wektor wag,

2 wybieramy przykªad x,

3 w := w + ηyx, gdzie y jest aktywacj¡

w odpowiedzi na x, natomiast η dodatnim wspóªczynnikiem uczenia,

4 wracamy do 2,

yx

x

wnew

wold

(12)

Prosta reguªa Hebba - wady

x5

x1

x3 x4

x2

x6

w(1)

w(5) w(3)

w(2)

w(6) w(4)

Reguªa Hebba prowadzi do niekontrolowanego wzrostu dªugo±ci wektora wag.

(13)

Reguªa Oja

Reguªa Oja jest modykacj¡ reguªy Hebba. Dzi¦ki niej wektor wag jest korygowany tak, »eby jego dªugo±¢ oscylowaªa wokóª 1.

Modykacja polega na dodaniu do reguªy Hebba wyrazu zanikania wagi proporcjonalnego do kwadratu aktywacji neuronu.

w := w + ηy(x − yw)

(14)

Reguªa Oja

x5 x1

x3

x4 x2

x6

w(1) w(5) w(3) w(2)

w(6) w(4)

(15)

Przypadek pierwszy

Wektor wag dªu»szy od 1 (hw, wi > 1).

Niech hx, wi > 0, to znaczy, »e mi¦dzy wektorami x i w jest k¡t ostry.

Iloczyn skalarny wektorów x − yw oraz w jest mniejszy od 0, co ªatwo udowodni¢:

h(x − yw), wi = h(x − hx, wiw), wi = hx, wi − hhx, wiw, wi =

= hx, wi − hx, wihw, wi = hx, wi(1 − hw, wi) < 0 Zatem k¡t mi¦dzy tymi wektorami jest rozwarty.

(16)

Przypadek pierwszy

K¡t mi¦dzy wektorem x − yw = x − hw, xiw oraz w jest rozwarty.

1

1 x,w w

- x,w w w

x

x- x,w w

<

<

<

>

>

>

(17)

Przypadek pierwszy

Skoro k¡t mi¦dzy wektorami x − yw oraz w jest rozwarty, to wektor x − yw jest sum¡ wektorów:

prostopadªego do wektora w, skierowanego w kierunku wektora x, wektor ten spowoduje przybli»enie wag do przykªadu ucz¡cego, o kierunku przeciwnym do wektora wag, wektor ten spowoduje skrócenie wektora wag, dzi¦ki odpowiednio maªemu

wspóªczynnikowi uczenia η, wektor wag w wyniku modykacji nie stanie si¦ za maªy oraz nie zmieni kierunku.

(18)

Przypadek pierwszy

1

1 x,w w

- x,w w w

x

x- x,w w

>

>

< >

<

<

(19)

Przypadek drugi

Wektor wag krótszy od 1 (hw, wi < 1).

Niech hx, wi > 0, to znaczy, »e k¡t mi¦dzy wektorami x i w jest ostry.

Iloczyn skalarny wektorów x − yw oraz w jest wi¦kszy od 0, co ªatwo udowodni¢:

h(x − yw), wi = h(x − hx, wiw), wi = hx, wi − hhx, wiw, wi =

= hx, wi − hx, wihw, wi = hx, wi(1 − hw, wi) > 0 Zatem k¡t mi¦dzy tymi wektorami jest ostry.

(20)

Przypadek drugi

K¡t mi¦dzy wektorem x − yw = x − hw, xiw oraz w jest ostry.

x- x,w w - x,w w

w x,w w x

1

1

>

> >

< <

<

(21)

Przypadek drugi

Skoro k¡t mi¦dzy wektorami x − yw oraz w jest ostry, to wektor x − yw jest sum¡ wektorów:

prostopadªego do wektora w, skierowanego w kierunku wektora x, wektor ten spowoduje przybli»enie wag do przykªadu ucz¡cego, o tym samym kierunku co wektor wag, wektor ten spowoduje wydªu»enie wektora wag, dzi¦ki odpowiednio maªemu

wspóªczynnikowi uczenia η, wektor wag w wyniku modykacji nie stanie si¦ zbyt dªugi.

(22)

Przypadek drugi

-0.5 0 0.5 1

-1 -0.5 0 0.5 1 1.5

x- x,w w - x,w w w

x,w w x 1

1

>

> >

<

< <

kliknij

(23)

Wªasno±ci reguªy Oja

Stabilny proces uczenia wymaga, aby po dªugim czasie uczenia, warto±¢ oczekiwana zmian wag w liczona wzgl¦dem rozkªadu próbek x wynosiªa 0.

E[∆w] = 1 N

N

X

n=1

∆w(n)= 1 N

N

X

n=1

ηy(n)(x(n)−y(n)w) = 0

E[∆w] = η1 N

N

X

n=1

(y(n)x(n)− (y(n))2w) = 0

E[∆w] = η1 N

N

X

n=1

(wtx(n)x(n)− (y(n))2w) = 0

(24)

Wªasno±ci reguªy Oja

Otrzymali±my zale»no±¢:

E[∆w] = η1 N

XN n=1

(x(n)(x(n))tw − (y(n))2w) = 0.

Oznaczmy przez C symetryczn¡ macierz postaci:

XN n=1

x(n)(x(n))t (Cij = XN n=1

xi(n)xj(n)).

(25)

Wªasno±ci reguªy Oja

Zatem otrzymany wzór:

E[∆w] = η1 N

XN n=1

(x(n)(x(n))tw − (y(n))2w) = 0 mo»emy zapisa¢ w nast¦puj¡cy sposób:

η1

N(Cw −XN

n=1

(y(n))2w) = 0,

η1

N(Cw − λw) = 0, Cw = λw.

(26)

Macierz C

Niech xi b¦dzie warto±ci¡ ±redni¡ zbioru przykªadów wej±ciowych dla i-tej zmiennej, czyli:

xi := 1 N

XN n=1

xi(n).

(27)

Macierz C

Je»eli w wyniku preprocesingu (wst¦pnej obróbki danych) warto±¢

±rednia liczona po zbiorze przykªadów wynosi 0, czyli wszystkie wektory wej±ciowe zostaªy przeksztaªcone za pomoc¡ wzoru:

xi(n):=xi(n)−xi, to N−11 C jest macierz¡ kowariancji dla przykªadów.

(28)

Wªasno±ci reguªy Oja - podsumowanie

1 dªugo±¢ wektora wag jest bliska 1,

2 kierunek wektora wag le»y wzdªu» kierunku wektora wªasnego, macierzy C zbioru wzorców wej±ciowych, posiadaj¡cego warto±¢

wªasn¡ o najwi¦kszej bezwzgl¦dnej warto±ci,

3 wektor wag maksymalizuje PNn=1(y(n))2,

(29)

1 Sieci samoorganizuj¡ce si¦ typu Hebba Terminologia angielska

Reguªa Hebba Reguªa Oja

2 Analiza skªadowych gªównych IdeaAlgorytm

3 Analiza skªadowych niezale»nych*

IdeaUczenie

(30)

Metoda skªadowych gªównych (PCA)

1 Celem jest znalezienie m wektorów ortogonalnych w

k−wymiarowej (k ≥ m) przestrzeni danych, które wpªywaj¡ w jak najwi¦kszym stopniu na wariancj¦ danych.

2 Rzut danych z przestrzeni k-wymiarowej na m-wymiarow¡

podprzestrze« rozpi¦t¡ przez te wektory umo»liwia otrzymanie redukcji wymiarowo±ci.

3 Przyjmuje si¦, »e dla danych o zerowej warto±ci ±redniej pierwsza skªadowa gªówna le»y wzdªu» kierunku maksymalnej wariancji.

Druga skªadowa gªówna jest ograniczona do podprzestrzeni prostopadªej do skªadowej pierwszej i le»y wzdªu» kierunku maksymalnej wariancji tej podprzestrzeni.

(31)

Wyznaczanie kolejnych skªadowych gªównych

Jak wyznaczy¢ m kolejnych skªadowych gªównych o najwi¦kszych wariancjach?

Zaªo»enia:

mamy dany zestaw przykªadów ucz¡cych (x(n))Nn=1 o zerowej warto±ci ±redniej

m to liczba skªadowych gªównych, które chcemy znale¹¢.

(32)

Wyznaczanie kolejnych skªadowych gªównych

1 (x1(n))Nn=1:= (x(n))Nn=1

2 dla l od 1 do m wykonaj:

1 znajd¹ skªadow¡ gªówn¡ dla zbioru przykªadów ucz¡cych (xl(n))Nn=1za pomoc¡ algorytmu Oja i zapami¦taj j¡ jako wl,

2 zrzutuj przykªady ucz¡ce na podprzestrze« prostopadª¡ do znalezionej skªadowej gªównej:

xl+1(n) :=xl(n)wlhwl,xl(n)i hwl,wli ,

(33)

Rzutowanie danych na PC

Znalezione skªadowe gªówne rozpinaj¡ przestrze« m wymiarow¡.

Oznaczmy przez x{m} przykªad x zrzutowany na t¦ przestrze«. Dane z przestrzeni k wymiarowej mo»na zrzutowa¢ na t¦ przestrze« za pomoc¡ wzoru:

x{(n)m}:=

Xm l=1

wlhwl,x(n)i hwl,wli .

(34)

Przykªadowe etapy algorytmu

-8 -6 -4 -2 0 2 4 6 8 -8-6-4-202468 -8

-6 -4 -2 0 2 4 6 8

kliknij

Zestaw przykªadów ucz¡cych.

(35)

Przykªadowe etapy algorytmu

-8 -6 -4 -2 0 2 4 6 8 -8-6-4-202468 -8

-6 -4 -2 0 2 4 6 8

kliknij

(36)

Przykªadowe etapy algorytmu

-8 -6 -4 -2 0 2 4 6 8 -8-6-4-202468 -8

-6 -4 -2 0 2 4 6 8

kliknij

Na niebiesko zaznaczony jest zestaw przykªadów ucz¡cych zrzutowanych na podprzestrze« prostopadª¡ do w1, na oletowo druga skªadowa gªówna w2.

(37)

Przykªadowe etapy algorytmu

-8 -6 -4 -2 0 2 4 6 8 -8-6-4-202468 -8

-6 -4 -2 0 2 4 6 8

kliknij

(38)

Przykªadowe etapy algorytmu

-8 -6 -4 -2 0 2 4 6 8 -8-6-4-202468 -8

-6 -4 -2 0 2 4 6 8

kliknij

Na pomara«czowo zaznaczony jest zestaw przykªadów ucz¡cych zrzutowany na podprzestrze« rozpi¦t¡ przez w1.

(39)

Przykªadowe etapy algorytmu

-8 -6 -4 -2 0 2 4 6 8 -8-6-4-202468 -8

-6 -4 -2 0 2 4 6 8

kliknij

(40)

Przykªadowe dane

Wektor x(n) zrzutowany na podprzestrze« rozpi¦t¡ przez kolejne m skªadowych gªównych ma posta¢:

x{(n)m}:=

Xm l=1

wlhwl,x(n)i hwl,wli . Zatem kolejne wspóªczynniki postaci √hwl,x(n)i

hwl,wli dla l = 1..m, s¡

ukªadem wspóªrz¦dnych wektora x(n) w bazie W = {w1,w2, ...,wm}.

(41)

Dobór liczby skªadowych gªównych

Kierunek l-tej skªadowej gªównej pokrywa si¦ z kierunkiem wektora wªasnego odpowiadaj¡cego l-tej co do bezwzgl¦dnej wielko±ci warto±ci wªasnej macierzy C.

Dla danych o zerowej warto±ci ±redniej warto±ci wªasne reprezentuj¡ wariancje skªadowych gªównych.

Je»eli suma wariancji dla m kolejnych skªadowych gªównych stanowi 90% sumy wariancji dla wszystkich skªadowych gªównych, to wynika st¡d, »e m jest odpowiedni¡ liczb¡

skªadowych do odtworzenia danych wej±ciowych.

(42)

1 Sieci samoorganizuj¡ce si¦ typu Hebba Terminologia angielska

Reguªa Hebba Reguªa Oja

2 Analiza skªadowych gªównych IdeaAlgorytm

3 Analiza skªadowych niezale»nych*

IdeaUczenie

(43)

Problem

Analiza skªadowych gªównych poszukuje w przestrzeni cech kierunki, które dla zadanej liczby skªadwych usyzkuj¡ najmniesz¡ sum¦

kwadratów bª¦dów po wszystkich przykªadach.

Analiza skªadowych niezale»nych poszukuje kierunków, które s¡ jak najbardziej niezale»ne od siebie.

(44)

Problem

Analiza skªadowych niezale»nych (Independent Components Analysis, ICA) to jedno z okre±le« dla metod rozwi¡zywania problemu tzw.

±lepej separacji ¹ródeª (blind source separation, BSS).

(45)

Problem

Przyj¦ty model zakªada, »e dysponujemy danymi

x(t) = [x1(t), x2(t), ..., xm(t)]T (t oznacza moment w czasie), które s¡ liniow¡ mieszanin¡ statystycznie niezale»nych sygnaªów

s(t) = [s1(t), s2(t), ..., sn(t)]T (musi zachodzi¢ m ≥ n, w naszych rozwa»aniach zakªadamy n = m)

x(t) = As(t),

gdzie A ∈ Rm×n jest nieznan¡ macierz¡ mieszaj¡c¡.

Szukamy macierzy separuj¡cej W ∈ Rn×m, takiej, »e wektor sygnaªów y(t) = Wx(t),

(46)

Preprocesing

Przetwarzanie wst¦pne polega cz¦sto na

1 centralizacji danych

2 obrocie diagonalizuj¡cym macierz kowariancji (zwykle PCA)

(47)

Konstrukcja sieci

1 sie¢ skªada si¦ z warstwy wej±ciowej i wyj±ciowej

2 warstw¦ wej±ciow¡ stanowi m jednostek, których warto±¢

zdeterminowana jest przez wektor x(t)

3 warstwa wyj±ciowa skªada si¦ z n (w naszym przypadku n = m) jednostek o sigmoidalnych funkcjach aktywacji g(y) = 1+e1y

(48)

Reguªa uczenia

Wagi s¡ modykowane za pomoc¡ nast¦puj¡cej reguªy

∆W ∝ [WT]1+ (1 − 2g(y))xT

Cytaty

Powiązane dokumenty

Generalizacja jest zdolno±ci¡ sieci do porawnej klasykacji danych, na których sie¢ nie byªa uczona... Generalizacja Walidacja jako±ci uczenia Bª¦dy klasykacji

Maszyny Boltzmanna to stochastyczna wersja sieci Hopelda zaproponowana przez Hintona i Sejnowskiego w 1985.. Modykacja polega na tym, »e dynamika zadana jest przez

Reguªa, w której modykuje si¦ nie tylko wagi zwyci¦zcy, ale równie» jego s¡siadów, jest zwana reguª¡ WTM (Winer Takes

Algorytm Metropolisa Symulowane wy»arzanie Uczenie maszyn Boltzmanna Maszyna Boltzmanna w analizie obrazówM. Wst¦p do sieci neuronowych, wykªad 14

funkcje boolowskie nieseparowalne za pomoc¡ funkcji liniowej nie mog¡ by¢ odwzorowane przez klasyczny perceptron.. liczba funkcji boolowskich separowalnych liniowo jest bardzo maªa

(E) Czy podany łańcuch Markowa zadany przez graf jest nieprzywiedlny / aperiodyczny

[r]

[r]