• Nie Znaleziono Wyników

2012-11-28 M.Czoków,J.Piersa Wstępdosiecineuronowych,wykład07Uczenienienadzorowane.

N/A
N/A
Protected

Academic year: 2021

Share "2012-11-28 M.Czoków,J.Piersa Wstępdosiecineuronowych,wykład07Uczenienienadzorowane."

Copied!
34
0
0

Pełen tekst

(1)

Uczenie nienadzorowane Algorytm Kohonena

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

M. Czoków, J. Piersa

Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika w Toruniu

2012-11-28

Projekt pn. „Wzmocnienie potencjału dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych”

(2)

Uczenie nienadzorowane Algorytm Kohonena

1 Uczenie nienadzorowane Uczenie z nauczycielem Uczenie bez nauczyciela

2 Algorytm Kohonena Zagadnienie

Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

(3)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

1 Uczenie nienadzorowane Uczenie z nauczycielem Uczenie bez nauczyciela

2 Algorytm Kohonena Zagadnienie

Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

(4)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

Uczenie z nauczycielem (przyp.)

Dane:

zestaw przykładów uczących E k poprawne odpowiedzi C k Cel:

znalezienie wartości wag w ij (które minimalizuje pewien błąd)

(5)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

Uczenie z nauczycielem (przyp.)

(6)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

Uczenie bez nauczyciela

Dane:

zestaw przykładów uczących E k Cel:

znalezienie wartości wag w ij (które minimalizuje pewien błąd)

(7)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

Uczenie bez nauczyciela

(8)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

Uczenie bez nauczyciela

Donald Hebb (1949)

Neurons that fire together, wire together.

Neuron, który jako pierwszy zgłosił odpowiedź na dany impuls, jest

uznawany za specjalistę i jego wagi są zmieniane tak, by rozpoznawał

właśnie tę klasę impulsów.

(9)

Uczenie nienadzorowane Algorytm Kohonena

Uczenie z nauczycielem Uczenie bez nauczyciela

Zastosowania

wykrywanie podobieństwa pomiędzy wzorcami (wg wybranego kryterium),

analiza składowych głównych tworzenie map cech

klasyfikacja

określanie prototypu

kodowanie

(10)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

1 Uczenie nienadzorowane Uczenie z nauczycielem Uczenie bez nauczyciela

2 Algorytm Kohonena Zagadnienie

Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

(11)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Motywacja

Dane:

dane uczące, numeryczne w przestrzeni R n

graf G = (V, E )

(12)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Motywacja

Cel:

zmapować graf na dane uczące, tak aby był rozmieszczony

„równomiernie” a sąsiednie wierzchołki leżały niedaleko

(alternatywne sformułowanie zmapować dane uczące uczące na

graf, tak aby „podobne” były w tym samym lub sąsiednich

wierzchołkach i przypisanie danych do wierzchołka było

równomierne

(13)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Algorytm

1

przypisujemy neuronom małe losowe wagi (pozycje w R d ) p 1 ...p d

2

dla t = 1..T wykonujemy:

1

losujemy przykład P,

2

znajdujemy jednostkę v ∈ V, której zestaw wag π(v ) leży najbliżej P,

3

dla neuronu zwycięzcy i wszystkich jego sąsiadów s(v ) wykonujemy:

π(w ) = π(w ) + α(t)(P − π(w )),

gdzie α(t) maleje od 1 do 0 wraz z postępem algorytmu, np.

α(t) = 1 −

t−1T

,

(14)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Topologie sieci

(15)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Przykład

-4 -3 -2 -1 0 1 2 3 4

-10 -5

0 5

10 -10

-5 0 5 10 15

20 -4

-3 -2 -1 0 1 2 3 4

-10 -5

0 5

10 -10

-5 0 5 10 15 20

(16)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Motywacja

ograniczyć wzrost wag

zwiększyć „gładkość” dopasowania

zwiększyć specjalizację w obrębie klas

(17)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Rozszerzony algorytm Kohonena

1

ustawiamy losowe wagi neuronom,

2

dla t = 1..T wykonujemy:

1

losujemy przykład P,

2

znajdujemy jednostkę v ∈ V, której zestaw wag π(v ) leży najbliżej P,

3

dla neuronu zwycięzcy i wierzchołków odległych o co najwyżej λ krawędzi:

π(w ) := π(w ) + α(t)G (w , v )(P − π(w )), gdzie

G (w , v ) =

 1 w = v

< 1 i malejąca wraz z ilością krawędzi między v i w

(18)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Kwadratowa funkcja sąsiedztwa

G (w , v ) =

 1 ρ(w , v ) ≤ λ

0 w p. p.

0 6

0.2

0.4

0.6

0.8

1

(19)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Gaussowska funkcja sąsiedztwa dla rosnącej λ

G (w , v ) = exp(− ρ 2 (w , v )2 ).

click

4 6 0

2 4 06 0.5 1 1.5 2

M. Czoków, J. Piersa WSN 2012/2013 Wykład 07

(20)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Funkcja sąsiedztwa - mexican hat

MH(v , w ) = 2exp(− ρ 2 (v , w )

2 1 ) − exp(− ρ 2 (v , w )

2 2 ), λ 1 < λ 2

4 6 -16 -0.5 0 0.5 1

(21)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Przykład

(22)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Przykład

kliknij

Siatka prostokątna rozprowadzona przez algorytm Kohonena na trzech

(23)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Przykład

kliknij

Siatka prostokątna rozprowadzona przez rozszerzony algorytm Kohonena na trzech ścianach (o wspólnym wierzchołku) sześcianu. W algorytmie

zastosowano gaussowską funkcję sąsiedztwa.

(24)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Przykład

kliknij

Siatka prostokątna rozprowadzona przez algorytm Kohonena na powierzchni

(25)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Przykład

kliknij

Siatka prostokątna rozprowadzona przez rozszerzony algorytm Kohonena na

powierzchni kuli. W algorytmie zastosowano gaussowską funkcję sąsiedztwa.

(26)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Zastosowania

Wizualizacja danych za pomocą danej struktury przestrzennej (zadanej przez graf) w innym wymiarze (przykłady są wtedy rozłożone jednostajnie na obszarze reprezentacji)

przejście do wyższego wymiaru (np. krzywa wypełniająca przestrzeń),

przejście do niższego wymiaru (wizualizacja skomplikowanych

struktur z zachowaniem topologii, ale nie odległości).

(27)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Strefy wpływów

-4 -3 -2 -1 0 1 2 3 4

-6 -4 -2 0 2 4 6 -4

-3 -2 -1 0 1 2 3 4

-6 -4 -2 0 2 4 6

(28)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Odległość Minkowskiego

Odległość Minkowskiego jest to uogólniona funkcja odległości między punktami przestrzeni euklidesowej. Nazywana jest również

odległością L p . Wzór na tę funkcję w zależności od p ma postać:

d (x , y ) = (

K

X

k=1

(x k − y k ) p )

1p

.

(29)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Odległość Minkowskiego

-1 -0.5 0 0.5

1 m=0.5

m=1.5 m=1

m=2 m=4

m=10

(30)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Najbliższy punkt w różnych metrykach

-6 -4 -2 0 2 4 6

-6 -4 -2 0 2 4 6

P = 1

-6 -4 -2 0 2 4 6

-6 -4 -2 0 2 4 6

P = 2

(31)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Najbliższy punkt w różnych metrykach

-6 -4 -2 0 2 4 6

-6 -4 -2 0 2 4 6

P = 3

-6 -4 -2 0 2 4 6

-6 -4 -2 0 2 4 6

P = 10

(32)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Motywacja

Chcemy dostosować algorytm Kohonena, dla wejść, które mają współrzędne symboliczne (opisane wektorem zerojedynkowym - prawda lub fałsz)

Zał. dla danych symbolicznych dana jest ”funkcją odległości ” d . d (x , x ) = 0

d (x , y ) = d (y , x ) ≥ 0

(33)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Algorytm Kohonena dla wejść symbolicznych

1

każdy węzeł w grafie otrzymuje prototyp (typowy przedstawiciel klasy) oraz listę przykładów (klasę którą reprezentuje prototyp)

2

przypisz węzłom losowe startowe prototypy,

3

powtarzaj wiele razy:

wyczyść listy klasyfikacyjne,

każdemu wierzchołkowi w przypisz listę takich przykładów, że prototyp p(w ) jest do nich najbliższy,

każdemu wierzchołkowi w przypisz nowy prototyp — medianę uogólnioną z listy klasyfikacyjnej w i list sąsiadów w ,

4

zwróć sieć.

(34)

Uczenie nienadzorowane Algorytm Kohonena

Zagadnienie Algorytm Kohonena

Rozszerzony algorytm Kohonena Zastosowania

Algorytm Kohonena dla danych symbolicznych

Mediana uogólniona

Mediana uogólniona zbioru {a 1 , ..., a n } element a i , który minimalizuje P

j d 2 (a i , a j ).

Cytaty

Powiązane dokumenty

a, b∈N, a&gt;b NWD(a, b) = NWD(a − b, b) Powtarzanie powyższej operacji prowadzi do ciągłego malenia wartości argumentów naturalnych dla których chcemy poznać wartość NWD

Należało tam wyznaczyć długość fali światła lasera za pomocą linijki (niby logiczne – linijka służy wszak do pomiaru długości)d. Cała chytrość miała polegać na tym,

Jedna osoba edytuje plik tekstowy w środowisku Lixuxowym druga — Windowsowym.. Czy nadal można

• rozszerz polecenie, aby usuwało również komentarze wieloliniowe – wskazówka: złam linię przed rozpoczęciem każdego komentarza – złam linię po zamknięciu komentarza. –

2 Modelowanie funkcji logicznych za pomocą perceptronu Przypomnienie algebry boolowskiej?. Perceptron jako bramka logiczna

(*) Zapoznaj się i zaimplementuj algorytm szybkiej transformaty Fouriera (fast Fourier transform, FFT) w

2 Algorytmy konstrukcyjne Algorytm wieżowy Algorytm piramidalny Algorytm kafelkowy Algorytm upstart.. 3 Podsumowanie wykładu Zadania

Przypomnienie algebry boolowskiej Perceptron jako bramka logiczna Uwagi