250 likes | 469 Views
Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych. Robert Sulej. 11/05/2009. Plan prezentacji. Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych. Robert Sulej. 11/05/2009. typy sieci - MLP, data clustering, SOM
E N D
Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009
Plan prezentacji Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 • typy sieci - MLP, data clustering, SOM • struktura sieci feed-forward MLP - neurony, warstwy, funkcje • uczenie sieci „z nauczycielem” - algorytmy optymalizacji wag • zastosowania sieci MLP - klasyfikacja, aproksymacja • - wymiarowość / statystyka danych uczących / rozmiary sieci • - problem wariancji / obciążenia odpowiedzi sieci • - błędy systematyczne • - inne ograniczenia • uczenie bez nauczyciela: sieci SOM (self-organising maps)
Typy sieci Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 Sieci uczone „z nauczycielem” • MLP – multi-layer perceptron • historycznie bazuje na biologicznych inspiracjach; obecnie dobrze opisana • matematycznie • …bez tajemnic, jednak pewne wyczucie możliwości jest konieczne; • większość aplikacji korzysta z tego modelu; • możliwe konfiguracje z i bez sprzężenia zwrotnego (recursive i feed-forward); • dziesiątki algorytmów uczących i implementacji; • RBF – radial basis functions • Cascade Correlation • … Uczenie bez nadzoru • algorytmy Winner Takes All, Winner Takes Most – klastrowanie danych; • Self Organizing Maps – geometryczna rekonstrukcja;
Struktura sieci w0 x1 w1 fakt(S) w2 x2 S out w3 x3 ... wM xM neuron Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 Out = Net(in, W) odpowiedź sieci – deterministyczna funkcja wektora wejściowego warstwy ukryte inK neuron wyjściowy . . . . . . Out ← odpowiedź sieci in1 wektor wejściowy*: in = [in1, ..., inK] sieć feed-forward MLP *opis przypadków przez stałą liczbę zmiennych
Struktura sieci Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 out = fakt(S) x2 w0/||w|| [w1, w2] S > 0 S < 0 x1 neuron – funkcje aktywacji • w sieci z jedną warstwą ukrytą - jeden neuron ukryty wnosi: • - jedną hiperpłaszczyznę do podziału przestrzeni wejść sieci • - jedną funkcję bazową do odpowiedź sieci
Uczenie sieci „z nauczycielem” Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 - minimalizacja f-cji błędu w przestrzeni wag sieci pożądana odpowiedź sieci faktyczna odpowiedź sieci • algorytmy iteracyjne: • gradientowe – wiele odmian: back-prop, gradienty sprzężone, L-M, … • stochastyczne – alg. genetyczne, symulowane wyżarzanie • bayesowskie
Uczenie sieci „z nauczycielem” Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 • algorytmy iteracyjne: • gradientowe • stochastyczne G( w) w2 w(0) w(2) w3 w(5) w(4) w(3) w(1) w1 • bayesowskie G[ p(w|In)] p p p w1 w1 w1
Aplikacje sieci feed-forward MLP Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 odpowiedź sieci - deterministyczna funkcja zmiennej wejściowej (lub wektora) Out = Net(x, W) lub Out = Net(x, W) • aproksymacja funkcji:
Aplikacje sieci feed-forward MLP Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 Out = Net(in = [x1, …, xn], W) • estymacja parametru:
Aplikacje sieci feed-forward MLP Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 • klasyfikacja: rozkłady gęstości prawdopodobieństwa prawdopodobieństwo a priori
Miary oceny wyników Out Tgt Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 zadania estymacji: wsp. korelacji liniowej: zadania klasyfikacji: wzrost t tło (odpowiedź docelowa 0.05) sygnał (odpowiedź docelowa 0.95) Out t – zmienny próg selekcji
Miary oceny wyników Out Tgt Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 zadania estymacji: wsp. korelacji liniowej: zadania klasyfikacji: wzrost t • sprawność selekcji: • trafność selekcji: TP - true positive, Nsig(Out > t) FN - false negative, Nsig(Out ≤ t) FP - false positive, Nbkg(Out > t) trafność r [%] sprawność h [%] t – zmienny próg selekcji
Miary oceny wyników Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 (zadania klasyfikacji) zbiór uczący↔zbiór testowy trafność r [%] sprawność h [%]
Miary oceny wyników Bznaczny błąd systematyczny cecha 2 o o + t > 0,9 t > 0,8 t > 0,5 cecha 1 Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 błąd systematyczny - oszacowanie + - maksimum sygnału wg klasyfikatora o - rzeczywiste maksimum sygnału Amały błąd systematyczny cecha 2 + t > 0,9 t > 0,8 t > 0,5 cecha 1 A: zmiana progu selekcji (t) nie wpływa na wartość centralną wyznaczanej wielkości B: wartość centralna zmienia się wraz ze zmianą progu selekcji
Nauka bez Monte Carlo Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 COMPASS – selekcjaD0 zbiór uczący – dane rzeczywiste tło (Out=0.05) – wrong charge combination – tylko tło kombinatoryczne „sygnał” (Out=0.95) – good charge combination - zdarzenia tła + zdarzenia D0 zmienne wejściowe – kinematyka zdarzeń test – rozkład masy niezmienniczej
Nadmierne dopasowanie do danych uczących Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 - jak osiągnąć: • duży rozmiar wektorów wejściowych • mała liczba wektorów uczących* • duża liczba neuronów ukrytych • długa nauka * w zadaniu klasyfikacji – wystarczy w jednej z klas przypadków
Nadmierne dopasowanie do danych uczących Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 te same rozkłady, różna statystyka
Selekcja zmiennych Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 Rxy = 0,459 Rxy = 0,165 Rxy = 0,0009 odpowiedź sieci zmienne wejściowe Reprezentacja danych • usunięcie nietypowych przypadków, normalizacja • usunięcie symetrii • wyrównanie rozkładów • analiza składowych niezależnych
Optymalizacja struktury optymalizacja wag • algorytm gradientów sprzężonych • algorytmquick-prop • dowolny inny algorytm Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 Inicjalizacja (sieć o niewielkiej strukturze początkowej) Redukcja struktury optymalizacja wag • łączenie par neuronów: • usuwanie neuronów o stałej odpowiedzi: • usuwanie neuronów o nieistotnych wagach wejściowych: • * działanie sieci nie zostaje zaburzone * Rozbudowa struktury (wstępny trening neuronów-kandydatów) akceptacja neuronubrak modyfikacji optymalizacja wag trening neuronów-kandydatów Przebieg błędu sieci w funkcji iteracji Redukcja struktury N stabilizacja? T Koniec
Optymalizacja struktury Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 x2 x2 ° ° ° ° ∙ ° ° ° ° ∙ ° ∙ ∙ ∙ ∙ ∙ ° ∙ ∙ ° ° ∙ ∙ ∙ ° ° ∙ ∙ ∙ ∙ ∙ ∙ l2 l2 ∙ ∙ ° ∙ ∙ l1 x1 x1 l1 Redukcja struktury • łączenie par neuronów: • usuwanie neuronów o stałej odpowiedzi: • usuwanie neuronów o nieistotnych wagach wejściowych:
Optymalizacja struktury Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 przykładowe zadanie zbiór uczący 13-8, dynamiczna struktura 17-7, statyczna struktura 20-10, statyczna struktura
Nauka „bez nauczyciela”: Self-Organizing Maps x x x x x x x x x Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 X = [x1,…,xM] - zbiór wektorów (np. współrzędne hitów) W = [w1,…,wN] - wektory wag neuronów N > M dla tϵ < 1; max_iter >: dla mϵ < 1; M >: x = X<rnd> współczynnik szybkości nauki Dw(t) = x – wwinner(t) „funkcja sąsiedztwa” dla nϵ < 1; N >: wn(t+1) = wn(t) + a h(t) fs(n – winner) Dw (t)
Self-Organizing Maps Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 – dane – – 1-wymiarowa sieć SOM
Dziękuję za uwagę Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009
Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych Robert Sulej 11/05/2009 fMSE(out) = (tgt – out)2 fPow4(out) = (tgt – out)4 ntCC (sygnał) tło 1E: 0L: 1M: