Ć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