Ćwiczenie 3
Transkrypt
Ćwiczenie 3
Sztuczna Inteligencja WSNHiD Ćwiczenie 3 Celem ćwiczenia jest zapoznanie się z prostymi symulatorami sieci neuronowych i zbadanie ich działania dla przykładowych problemów predykcji i klasyfikacji. Do ćwiczenia wykorzystane zostaną dwa arkusze autorstwa Angshumana Sahy: • NNpred - SSN do predykcji, • NNclass - SSN do klasyfikacji. Zadania dotyczą obu arkuszy: • Pobrać arkusze na dysk, zapoznać się z zawartą instrukcją, przeprowadzić treningi sieci i zapoznać się z wynikami. • Przetestować wpływ doboru zmiennych wejściowych, parametrów sieci i parametrów uczenia na wynik końcowy. • Znaleźć zmienną wejściową, dla której możliwe stworzenie jest sieci o błędzie porównywalnym z siecią ze wszystkimi danymi wejściowymi. • Czy: • zwiększenie liczby warstw, • zwiększenie liczby neuronów w warstwach ukrytych, • duży rozrzut wartości wag początkowych, wprowadzenie losowości nauczania (szczególnie w przypadku ostatniego zadania) powoduje zwiększenie czy zmniejszenie błędu? Wprowadzić do arkusza danych dwa (lub więcej) błędne przypadki dane (np. wart. Losowe). Sprawdzić wpływ na jakość wyników. Wybrać odpowiedni arkusz i zamienić na arkusz do nauki tabliczki mnożenia. Wykonać w wersji z danymi poprawnymi (2*2=4, 3*3=6) i danymi z losowymi błędami (np. 2,04*2,09=3,99, 4,95*5,07=24,85). Porównać i przedstawić wyniki na zaliczenie. • • • Skrócona instrukcja po polsku: 1. Arkusz ReadMe – przeczytaj mnie ;) 2. Arkusz UserInput – dane do konfiguracji sieci • można jakie dane wejściowe brane są pod uwagę: liczba wejść (Inputs) zależy od ustawień w arkuszu Data, liczbę wierszy (# Rows) ze zbioru, • można zmieniać parametry sieci: liczbę warstw (no of hidden layers), liczbę neuronów w warstwach (hidden layer sizes) 1 Sztuczna Inteligencja WSNHiD można zmieniać parametry uczenia (Wt Range – zakres generatora wag początkowych), współczynnik uczenia i momentum, liczbę cykli (training cycles), czy dostarczać dane do sieci losowo czy sekwencyjnie, które wagi zapisać (z najmniejszym błędem testowym, walidacyjnym, czy z ostatniego cyklu) 3. Arkusz Data: • NNClass dotyczy klasyfikacji odmian kwiatów na podstawie pomiarów cech charakterystycznych kwiatostanu. • NNPred jest arkuszem pozwalającym wyznaczyć zużycie paliwa pojazdu na podstawie kilku danych. • Do obydwóch arkuszy można wprowadzić inne dane, przy zachowaniu typu problemu (predykcja, klasyfikacja) • Var type: Omit – pomiń (najczęściej human readable), Output – wyjście, Cont – zmienna ciągła, Cat – zmienna skategoryzowana 4. Arkusz Calc – budowa sieci – powstaje automatycznie. Można sprawdzić jak sieć funkcjonuje: w zielonych polach wpisać wartości – w żółtym wyświetli się wynik, a powyżej (jeżeli istnieje) wartość z danych uczących. 5. Arkusz Output – proces uczenia – powstaje automatycznie 6. Arkusz Profile – pozwala zapoznać się z wynikami • NNClass – wybierz zmienną i ewentualnie zakres długości żeby zobaczyć jak zmieniała się istotność tej cechy w klasyfikacji dla poszczególnych odmian • NNPred – pozwala zobaczyć jak cecha wpływa na zużycie paliwa. 7. Arkusz LiftChart – pozwala zobaczyć jak w miarę uczenia zmniejszała się liczba błędnych klasyfikacji • 2