Laboratorium Przetwarzania Dźwięków I Obrazów
Ćwiczenie nr 1
Badanie struktur i algorytmów sieci neuronowych cz.I.
Wykonali: Adam Wiechnik SiST
Mariusz Szulc SiST
Celem ćwiczenia było zapoznanie nas ze strukturą sieci neuronowych oraz z procesem uczenia sieci neuronowych. W ćwiczeniu wykorzystywaliśmy następujące konfiguracje sieci: model dyskretnego dychotomizatora
model sieci jednowarstwowej z regułą delta
model sieci z propagacją wsteczną błędu.
1. Badanie dyskretnego dychotomizatora
Dla zbiorów uczących dych_1.pat oraz dych_2.pat określiliśmy równania linii separujących elementy należące do różnych klas:
Klasa 1:
Klasa 2:
zatem odpowiednie wektory wag są postaci :
Na dyskietce zawarliśmy przebieg naszych prac w pliku dyskr.pat.
2. Badanie sieci jednowarstwowej z regułą delta
Dla zbioru uczącego sl_1.pat zmienialiśmy wartość współczynnika szybkości nauki η Zaobserwowaliśmy następujący fakt, iż wraz ze wzrostem współczynnika η nauka sieci przebiega szybciej, co ilościowo przedstawiała liczba iteracji.
Poniżej przedstawiamy zależność ilości iteracji w zależności od współczynnika η dla funkcji bipolarnej oraz unipolarnej:
funkcja unipolarna funkcja bipolarna
η= 0,5 - 443 iteracje η= 0,5 - 196 iteracji
η=1 -- 222 iteracji η=1 - 133 iteracji
η=2 - 108 iteracji η=2 - 19 iteracje
Zauważyliśmy także że dla proces nauki sieci jest szybszy dla funkcji bipolarnej aktywacji neuronu. Liczba iteracji nieznacznie się różniła dla poszczególnych wartości współczynnika η. Dla zbioru uczącego sl_2.pat trening sieci nie był możliwy - nie można było dobrać odpowiedniego zestawu parametrów, nawet po zwiększaniu ilości iteracji trening sieci nie mógł dobiec do końca. Zapis jednej z sesji jest dołączony na dyskietce w pliku sie-jed.pat
3. Badanie sieci z propagacją wsteczną błędu
Wykorzystując zbiór bp.pat dla wybranych wartości współczynnika η oraz zmiennej ilości neuronów badaliśmy naukę sieci. Ponadto stosowaliśmy dwie funkcje aktywacji neuronu: bipolarną i unipolarną. Na podstawie obserwacji wysnuliśmy następujące wnioski:
wraz ze zwiększaniem współczynnika η nauka sieci przebiegała szybciej,
znaczne zwiększenie współczynnika η spowodowało fakt, iż sieci po wyczerpaniu określonej ilości iteracji nie nauczyła się (plik prowst2.pat)
wraz ze zwiększaniem ilości neuronów w warstwie ukrytej nauka sieci przebiegała szybciej,
wraz ze zwiększaniem ilości neuronów w warstwie ukrytej czas nauki się wydłużał,
stosowanie bipolarnej funkcji aktywacji neuronów powodowało wzrost szybkości nauki sieci niż dla unipolarnej funkcji aktywacji ,
proces nauki przebiegał najszybciej dla momentu nauki z zakresu ok. 0.1 - 0,2 ,
Przykładowo dla parametrów η=1
α=0.15
funkcja bipolarna
50 neuronów w warstwie ukrytej
przeprowadziliśmy proces nauki sieci. Wynikiem było wartość 85 iteracji, lecz kosztem dość długiego oczekiwania na wynik finalny, spowodowany dużą ilością neuronów w warstwie ukrytej. Wynik naszych badań jest zawarty w pliku prowst1.pat
4. Wnioski
Podsumowywując, można było zauważyć fakt, iż sieć ze wsteczną propagacja błędu jest bardziej elastyczniejsza pod względem doboru parametrów nauki. Dla identycznych parametrów dla sieci z regułą delta w oparciu o plik sl_2.pat nauka nie była możliwa, wręcz dobór parametrów do nauki nie pozwalał nauczyć sieci
Nauka sieci przebiegała szybciej, pod względem ilości iteracji, wraz ze wzrostem ilości neuronów ukrytych w sieci, choć nie koniecznie szybciej pod względem czasowym, wzrost ilości neuronów powodował wydłużenia czasu nuauki.