Zadanie 1
Narysować trójwymiarowy wykres przedstawiający funkcję realizowaną przez aproksymator - sieć neuronową z rozdziału 12.
Rozwiązanie
Dla przykładowego zestawu wag otrzymano wykres odpowiedzi sieci jak na rysunku poniżej. Stąd pobrać można źródła programu napisanego w języku Octave.
Zadanie 2
Z czego wynika potrzeba rozdzielenia zbioru danych na dane uczące i testowe?
Rozwiązanie
Rozwiązując zadanie aproksymacji funkcji dobieramy parametry modelu w ten sposób, by minimalizować błąd przybliżenia. Najczęściej wartości poszukiwanej funkcji dane są w dość ograniczonej liczbie punktów należących do jej dziedziny. Oznacza to, że w tych punktach błąd będzie sukcesywnie malał, aż do osiągniecia minimum (lokalnego lub globalnego) funkcji błędu, natomiast o błędzie w punktach dziedziny nie reprezentowanych w zbiorze danych nie będziemy wiedzieć nic. Użycie takiego modelu do nowych danych da najpewniej bardzo zły wynik - w pobliżu punktów, na których "trenowany" był model, błąd będzie niewielki - poza nimi bardzo duży.
Z tego powodu posiadany zbiór danych dzieli się na części trenującą i testującą. Minimalizację funkcji błędu przeprowadza się na zbiorze trenującym, a ocenę klasyfikatora na zbiorze testującym. Pozwala to ocenić zachowanie modelu poza zbiorem trenującym - a więc daje próbkę zachowania dla danych rzeczywistych. Jeśli błąd klasyfikatora na zbiorze testującym będzie na akceptowalnie niskim poziomie oznacza to najpewniej, że także dla rzeczywistych danych będzie on działał poprawnie (lub raczej: zadowalająco poprawnie). W przeciwnym wypadku należy powtórzyć trening i test modelu, być może przy innym podziale danych.
Zadanie 3
Załóżmy, że mamy dwie różne sieci neuronowe, uczone niezależnie od siebie na tym samym zbiorze uczącym. Załóżmy też, że rozkład błędu obu sieci na zbiorze testowym jest rozkładem normalnym o zerowej wartości oczekiwanej i standardowych odchyleniach odpowiednio:
i
. Jaki jest rozkład na zbiorze testowym wartości
gdzie
,
oznaczają wyjścia obu sieci? Jak można wykorzystać ten wynik do poprawy jakości aproksymacji?
Rozwiązanie
Odchylenie standardowe funkcji błędu średniej arytmetycznej wyjść obu sieci będzie równe
, wartość średnia zaś równa będzie zero. Takie odchylenie standardowe jest na pewno mniejsze od
(ponieważ jeśli
to
a zatem
). Oznacza to, że korzystając ze średniej artytmetycznej wyjść dwóch sieci możemy otrzymać mniejsze odchylenie standardowe błędu, niż gdybyśmy korzystali z jednej tylko sieci. Jeśli nie wiemy, która sieć powoduje większy błąd aproksymacji, to w ten sposób możemy uniknąć ryzyka wybrania gorszej sieci kosztem niewybrania sieci lepszej.
Zadanie 4
Załóżmy, że mamy użyć sieci neuronowej do prognozowania przyszłej wartości pewnego procesu zmiennego w czasie, charakteryzującego się tym, że jego przyszłe wartości zależą od przeszłych zgodnie z równaniem:
gdzie
oznacza czas,
jest nieznaną funkcją, zaś
stałą, określającą najdalszą zależność między przeszłością a przyszłością (taki proces jest przykładem tzw. szeregu czasowego).
Zaproponować sposób użycia sieci neuronowej do wykonania prognozy. Jak stworzyć zbiór trenujący dla sieci?
Zadanie 5
Czym skutkuje obecność w zbiorze trenującym elementów powtarzających się?
Rozwiązanie
Jest to zjawisko "nadreprezentacji" - nadmiernej reprezentacji pewnej części dziedziny aproksymowanej funkcji. Jest ono niepożądane, ponieważ algorytm doboru parametrów aproksymatora może mieć tendencję do "skupiania się" na tych punktach - ewentualny błąd aproksymacji funkcji w owych punktach będzie miał większą wagę i zostanie zminimalizowany w pierwszej kolejności. Wynik może być podobny, jak przy braku zbioru testującego - w części dziedziny aproksymator będzie miał mniejszy błąd, co zapewne spowoduje (dużo) większy błąd w innych jej częściach. Jeśli nie zależy nam na szczególnie dobrej aproksymacji w wybranych elementach (w wybranej części dziedziny aproksymowanej funkcji), powinniśmy usunąć wszystkie powtórzenia z danych.
Zadanie 6
Funkcja błędu minimalizowana w czasie uczenia sieci neuronowej ma minima lokalne i punkty siodłowe (w których gradient zeruje się), a także obszary płaskie o bardzo małych wartościach modułu gradientu. Z czego wynikają te zjawiska? Dla jakich wartości wag da się je zaobserwować?