Upload
vungoc
View
214
Download
0
Embed Size (px)
Citation preview
Organizacja zajęćPowtórzenie z wykładu
Zadania
Wstęp do sieci neuronowych laboratorium 01Organizacja zajęć. Perceptron prosty
Jarosław Piersa
Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika
2012-10-03
Projekt pn. „Wzmocnienie potencjału dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych”realizowany w ramach Poddziałania 4.1.1 Programu Operacyjnego Kapitał Ludzki
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
1 Organizacja zajęćProgram przedmiotuZaliczenieLitaratura
2 Powtórzenie z wykładuPerceptrony prostyUczenie perceptronu
3 ZadaniaZadania rachunkoweZadania programistyczne
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
O czym będzie
Sieci neuronowe — matematyczne i informatyczne modeledla biologicznych komórek nerwowych i całych sieci nerwowych wrazz ich zastosowaniem w problemach obliczeniowych.
Dużo programowania (implementowanie algorytmów),
Trochę matematyki,
Małe zadania do zaimplementowania na zajęciach (językdowolny, ściągawki będą w Matlabie / Octavie),
Programy zaliczeniowe pisane głównie w domu, prezentowanei omawiane na zajęciach,
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
Program zajęć
Pojedynczy neuron (model perceptronu prostego, maszynyliniowej, Adaline),
Sieci skierowane, algorytmy konstrukcyjne dla sieci skierowanych,
Algorytm wstecznej propagacji błędu (BEP),
Uczenie bez nauczyciela (samoorganizacja topologiczna, analizaskładowych głównych (PCA)),
Sieci rekurencyjne (sieć Hopfielda, maszyny Boltzmannai symulowane wyżarzanie),
(*) Wielowartościowe sieci neuronowe, sieci zespolone,
(*) Algorytmy genetyczne.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
Zaliczenie
Zaliczenie laboratoriów na podstawie implementowaniaomawianych algorytmów,
Terminowość w oddawaniu zadań,
Obecność wymagana!
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
Zaliczenie
Każde zadanie jest punktowane za 1 punkt.
Dopuszczane są oceny wymierne (czyt. ułamkowe za brzydkonapisane zadania) oraz powyżej jednego punktu za wybitnieprogramy,
Podczas sprawdzania programów należy mieć kod źródłowy.
Lub prezentacja programu w trakcie zajęć (+0.2p).
ocena punktydst 3p.db 4p.bdb 5p.bdb+ 6p. lub więcej + następny slajd
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
Wymagania na ocenę BDB+
Na ocenę bdb+ wymagane są:
zadania z różnych działów,
przynajmniej jeden program do końca października,
przynajmniej dwa programy do końca listopada,
przynajmniej trzy programy do końca stycznia,
wszystkie programy przed egzaminem.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Program przedmiotuZaliczenieLitaratura
Literatura
R. Rojas Neural Networks, A Systematic Introduction, Springer1996,
P. Peretto, Introduction to Modeling Neural Networks,Cambridge University Press 1994,
T. Schreiber, Notatki do wykładu WSN,
E. Izhikevich, Dynamical Systems in Neuroscience, 2007Massachusetts Institute of Technology
C. Bishop, Neural Networks for Pattern Recognition, OxfordUniversity Press 1995.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
1 Organizacja zajęćProgram przedmiotuZaliczenieLitaratura
2 Powtórzenie z wykładuPerceptrony prostyUczenie perceptronu
3 ZadaniaZadania rachunkoweZadania programistyczne
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Dynamika perceptronu
Perceptron — układ składający się z
n wejść x1, .., xn, (argumenty do funkcji xi ∈ R),
n wag w1, ..,wn stowarzyszonych z wejściami wi ∈ R,
funkcji aktywacji f : R→ R (funkcja polarna z progiem θ)
f (s) =
{+1 s ≥ θ−1 s < θ
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Dynamika perceptronu
Dostając na wejściu x = (x1, .., xn), perceptron zwróci wartość:
O(x1, ..., xn) = f (n∑i=1
wixi ) =
{+1
∑ni=1 wixi ≥ θ
−1∑ni=1 wixi < θ
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Model perceptronu
out
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Zagadnienie uczenia perceptronu
Dane:
perceptron progowy o n wejściach, n nieznanych wagachw1, ..,wn i progu θ,
zbiór k przykładów uczących E (i) = (E (i)1 , ..., .E (i)
N ), i = 1..k ,
poprawne odpowiedzi {+1,−1} odpowiadające przykładomuczącym T (1), ..., .T (k),
Cel:
znaleźć zestaw wag w1, ..,wn i próg θ, takie aby perceptronklasyfikował poprawnie wszystkie przykłady uczące (lub możliwienajwięcej, gdy nie da się wszystkich)
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Simple Perceptron Learning Algorithm
Podstawowy algorytm uczenia:1 Losujemy wagi wi małe, blisko 0.
2 Wybieramy kolejny (lub losowy — zalecane) przykład E (j) i odpowiadającąmu poprawną odpowiedź T (j),
3 Obliczamy O — wynik działania sieci na E (j)
4 Obliczamy ERR = T (j) − O5 Jeżeli ERR = 0 (klasyfikacja jest poprawna), to wróć do 2,
6 W przeciwnym wypadku uaktualniamy wszystkie wagi zgodnie ze wzorem
wi = wi + η · ERR · E (j)i
θ = θ − ERRη > 0 jest stałą uczenia.
7 Jeżeli sieć klasyfikuje poprawnie wszystkie (większość) przykłady, tokończymy, wpw wracamy do 2.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Pocket Learning Algorithm
1 Losujemy wagi i próg wokół 0, przypisujemy układowi wagzerowy czas życia i zapisujemy go w kieszonce jako rekordzistę,
2 Przebiegamy przykłady losując z listy,3 Dla wybranego przykładu E (j) sprawdzamy, czy E (j) jest dobrze
klasyfikowany (ERR = T (j) − O = 0),Jeśli tak, zwiększamy mu czas życia o jeden. Jeżeli jest to wyniklepszy niż u rekordzisty, zapominamy starego rekordzistęi zapisujemy w kieszonce nowy układ wag. Wracamy do 2.Jeśli nie, to korygujemy wagi i próg:
wi = wi + η · ERR · E (j)i
θ = θ − ERRNowemu układowi wag przypisujemy zerowy czas życia. Wracamydo 2.
4 Algorytm kończymy po przebiegnięciu odpowiedniej liczbyiteracji. Zwracamy najbardziej żywotny zestaw wag.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Perceptrony prostyUczenie perceptronu
Pocket Learning Algorithm with Ratchet
1 Losujemy wagi i próg wokół 0, przypisujemy układowi wagzerowy czas życia i zapisujemy go jako rekordzistę,
2 Przebiegamy przykłady losując z listy, oznaczmy go E (j),3 Sprawdzamy czy E (j) jest dobrze klasyfikowany ERR = T j − O,
Jeśli tak, zwiększamy mu czas życia o jeden. Jeżeli jest to wyniklepszy niż u rekordzisty i klasyfikuje on więcej przykładów niżrekordzista, to zapominamy starego rekordzistę i zapisujemynowy układ wag. Wracamy do 2.Jeśli nie, to korygujemy wagi i próg:
wi := wi + η · ERR · E (j)i
θ := θ − ERRNowemu układowi wag przypisujemy zerowy czas życia. Wracamydo 2.
4 Algorytm kończymy po przebiegnięciu odpowiedniej liczbyiteracji. Zwracamy najbardziej żywotny zestaw wag.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
1 Organizacja zajęćProgram przedmiotuZaliczenieLitaratura
2 Powtórzenie z wykładuPerceptrony prostyUczenie perceptronu
3 ZadaniaZadania rachunkoweZadania programistyczne
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
Zadanie 1
Wagi perceptronu wynoszą w1 = +1, w2 = −0.5, w3 = −1.4.
Próg funkcji aktywującej wynosi θ = +1.5
Jaką odpowiedź zwróci perceptron dla wejścia x̄ = (3,−4, 5)?
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
Zadanie 2
Pokaż, że definicje perceptronu progowego i z biasem są równoważne.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
Zadanie 3
σ(s) =1
1 + exp(−s)Pokaż, że
2σ(s)− 1 =1− exp(−s)1 + exp(−s)
orazσ′(s) = σ(s)(1− σ(s))
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
Zadanie 1. Klasyfikacja punktów
Napisz program, który nauczy perceptron klasyfikacji na zadanej liścieprzykładów (wyklikanych lub z pliku).
Plik może być listą punktów (na R2,R3,R4) oraz poprawnąklasyfikacją punktu. Klasyfikacja binarna: 0 lub 1 (+1, -1),
Możliwość wczytania (lub wyklikania) parametrów innychpunktów (tj. z poza listy uczącej) i wyświetlenia ich wraz zoznaczeniem klasy,
Informacja o oczekiwanej (z listy) jak i faktycznej (tj. zwróconejprzez perceptron) klasyfikacji,
Podstawowe statystyki poprawności działania (np. procentpoprawnie klasyfikowanych przykładów),
Wykres prostej / płaszczyzny separującej.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
Zadanie 2. Rozpoznawanie cyfr / liter / obrazów
Napisz program, który wykorzystuje kilka (-naście) perceptronów(lub maszynę liniową) do rozpoznawania cyfr lub liter.Wskazówki:
Cyfry powinny być wyświetlane jako układy pikseli na matrycyo niewielkich wymiarach,
Program dodatkowo powinien mieć możliwość „wyklikania” cyfryi automatycznej klasyfikacji.
J. Piersa WSN 2011/2012 Laboratorium 01
Organizacja zajęćPowtórzenie z wykładu
Zadania
Zadania rachunkoweZadania programistyczne
Zadanie 3. Neuron Hodgkina-Huxleya
(dla ambitnych) Zapoznaj się z modelem komórki neuronowejopisanym w terminach układów dynamicznych. Informacje o modelumożna znaleźć w rozdziale drugim książki — E. Izhikevich DynamicalSystems in Neuroscience, 2007 MIT Press.
Napisz program symulujący dynamikę neuronu Hodgkina-Huxleya.
J. Piersa WSN 2011/2012 Laboratorium 01