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
Wprowadzenie do Sieci Neuronowych — Laboratorium 10 — Testowanie jakości uczenia
Jarosław Piersa, Maja Czoków 2012-12-19
1 Przypomnienie
1.1 Średnia poprawna klasyfikacja
• Po nauczeniu sieci sprawdzamy ile z przykładów jest klasyfikowanych poprawnie,
• Obliczamy ilość wszystkich przykładów,
• Przypisujemy:
jakość uczenia := ilość przykładów sklasyfikowanych poprawnie ilość wszystkich przykładów
1.2 Walidacja prosta
Rysunek 1: Schemat prostej walidacji uczenia.
• Dane uczące są losowo dzielone na dwa rozłączne zbiory:
– próbkę uczącą U , – próbkę testową T ,
• Sieć jest uczona za pomocą próbki uczącej,
• Jakość sieci jest badana tylko za pomocą próbki testowej
jakość := ilość przykładów T sklasyfikowanych poprawnie ilość wszystkich przykładów w T
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego 1
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
1.3 Walidacja krzyżowa
Ang. k-fold cross-validation
• Dane uczące są losowo dzielone na k rozłącznych zbiorów: T1, ..., Tk,
• Zbiory powinny być równoliczne (lub różnić się o maksymalnie 1 element, jeżeli nie da się podzielić dokładnie),
• Dla i = 1...k powtarzamy
– uczymy sieć na zbiorze uczącym T1∪ ...Ti−1∪ Ti+1∪ Tk,
– testujemy tak nauczoną sieć na danych Ti (na tych danych sieć nie była uczona), – zapamiętujemy rezultat jako ri
• Zależnie od ilości miejsca podajemy wszystkie rezultaty ri,
• lub przynajmniej ich średnią, medianę, minimum, maksimum i odchylenie standardowe,
Rysunek 2: Schemat k-krotnej walidacji krzyżowej.
2 Zadania
W zadaniach można skorzystać ze skryptu Octave http://www-users.mat.uni.torun.pl/~piersaj/
www/teaching_wsn2011.php
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego 2
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
2.1 Zadanie 0 (na rozgrzewkę)
Narysuj scatter-plot poniższego zbioru przykladow uczacych (Octave) lub innego samodzielnie wygene- rowanego zestawu danych
m=20;
ex = [-3.0 - .62.*randn(m,1), -4 -.7.*randn(m,1), -ones(m,1);
+4.0 -.86*randn(m,1), +3.0 +.10.*randn(m, 1), -ones(m,1);
-3.5 - .7.*randn(m,1), +3 -1.122.*randn(m,1), ones(m,1), +3.3 +.5*randn(m,1), -4.1 -.94.*randn(m,1), ones(m,1) ];
2.2 Zadanie 1
Naucz pojedynczy perceptron klasyfikacji danych z zadania 0. Wyświetl procent poprawnie klasyfikowa- nych danych.
Można to zrobić poprzez modyfikację funkcji plotResultsPerceptron() w skrypcie do zajęć.
w = pocketLearningAlgorithm(ex);
plotResultsPerceptron(w, ex);
2.3 Zadanie 2
Skonstruuj sieć wieżową dla danych z zadania 0. Wyświetl procent poprawnie klasyfikowanych danych.
Można to zrobić poprzez modyfikację funkcji plotResultsNetwork(network, ex) w skrypcie do zajęć.
network = buildSpireNetwork(ex);
plotResultsNetwork(network, ex);
2.4 Zadanie 3
Podziel zbiór treningowy na dwa rozłączne podzbiory:
• deterministycznie: pierwsza połowa po kolei z listy i druga połowa
• losowo
Naucz siec na pierwszym zbiorze ale wyniki przetestuj na drugim. Wykonaj operację odwrotną tj naucz sieć na zbiorze 2-gim a przetestuj na pierwszym. Porównaj rezultaty
2.5 Zadanie 4
Wykonaj zadanie 3, ale z podzialem nie na 2 (dwa) ale na 4 (cztery) (dla chetnych na dowolne k) zbiory.
Za każdym razem wybieramy jeden ze zbiorów jako testowy, a wszystkie pozostale sumujemy tworząc uczący.
Otrzymasz k wynikow (z k procesow uczenia). Wyswietl wykres, średnia, medianę, wariancję, min i max uzyskanych wyników.
2.6 Zadanie 5
Wygeneruj własny zestaw uczący na R2. Wykonaj zadania 1–4 dla nowego zestawu. Porównaj wyniki.
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego 3
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
-8 -6 -4 -2 0 2 4 6 8
-6 -4 -2 0 2 4 6
true pos true neg false pos false neg training pos training neg
Rysunek 3: Przykładowy wykres jakości uczenia.
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego 4