dr inż. Małgorzata Krętowska Wydział Informatyki PB Sztuczne sieci
Transkrypt
dr inż. Małgorzata Krętowska Wydział Informatyki PB Sztuczne sieci
dr inż. Małgorzata Krętowska Wydział Informatyki PB Sztuczne sieci neuronowe Pracownia specjalistyczna nr 3 Zakres materiału: Zasada działania perceptronu. Zadania Zad 1 Przeanalizować działanie perceptronu korzystając z programów demo: nnd4db ("Decision boundaries") oraz nnd4pr ("Perceptron learning rule"). (jeżeli nie zostało to zrobione na zajęciach nr 2 ). Zad 2 Przedstawić graficznie działanie pojedynczego neuronu z progową funkcją aktywacji, który będzie rozwiązywał problem 2-wymiarowy a) AND b) OR Na wykresie umieścić klasyfikowane punkty oraz otrzymaną hiperpłaszczyznę (w1x1+w2x2+b=0). Zad 3 Wykorzystując funkcję newp utworzyć sieć zbudowaną z jednego neuronu do analizy danych utworzonych w zadaniu 2. a) Przeanalizować utworzoną strukturę, w szczególności: inputWeights{1,1}, biases{1}. Sprawdzić wartości wag i progu b) Ustawić (sprawdzić) odpowiednie parametry uczenia neuronu: wartości początkowe wag na 0 (initFcn) perceptronową regułę uczenia (learnFcn) odpowiednią liczbę cykli uczenia (epochs) odpowiednią dokładność (błąd) (goal) c) Sprawdzić działanie perceptronu przed uczeniem. Przeanalizować działanie reguły perceptronowej (train, sim) Zad 4 Utworzyć perceptron rozwiązujący problem OR korzystając z dostępnego w Matlabie narzędzia NNTool. Przeanalizować dostępne opcje. Zad 5* Stworzyć zbiór danych 2-wymiarowych zawierający elementy należące do trzech klas. Zaprojektować sieć neuronową odpowiednią do analizy tego typu danych w przypadku a) klas separowalnych liniowo; b) klas nieseparowalnych liniowo. Jakie są problemy przy analizie powyższych danych? Zad 6 Przeanalizować problem klasyfikacji przy wykorzystaniu perceptronu w oparciu o programy demo: demop1 i demop2 (uruchamiane z okna pomocy !!!) * zadanie dodatkowe Opcje MATLABA: Tworzenie percepronu net=newp(RM,Nr) RM – macierz Rx2 z maksymalnymi i minimalnymi wartościami danych wejściowych R wymiarowych (funkcja MATLABA: minmax(dane)) Nr – liczba neuronów np. net=newp([0 1;0 1], 2) lub net=newp(minmax(dane),2) Przykłady odwołań do poszczególnych parametrów sieci: net.inputWeights{1,1} – struktura opisująca wagi wejściowe neuronu 1 warstwy 1 net.trainParam.epochs net.IW{1,1} – wartości wag neuronu 1 warstwy 1 net.b{1} – wartość progu neuronu 1 Parametry: initzero – inicjacja wag na wartość 0 rands – inicjacja wag wartościami losowymi dotprod – przekazywanie na wejście percepronu waŜonej sumy danych wejściowych i progu learnp – perceptronowa reguła uczenia Uczenie i symulacja działania sieci: train(net, dane_we, dane_wy) – uczenie sieci sim(net, dane_we) – symulacja działania sieci, zwraca wartości wyjściowe sieci dla danych uczących Wykresy plotpv(dane, t) – wykres punktowy zbioru dane, t – wektor klas (wartości binarne) plotpc(W,b) – W - wektor wag, b- próg (WTX+b=0) – wykreślanie linii o zadanych parametrach W i progu b plotpc(net.IW{1,1}, net.b{1})