237
proces symulacji odpowiedniej sieci neuronowej. Są one zawarte w katalogu NEURAL\EX i pokrywają omówione wcześniej typy sieci. Typowy program symulacji określonej struktury' sieci neuronowej zawiera:
— Dane wejściowe uczące w postaci pary uczącej wektorów (X, d) dla sieci heteroasocjacyjnej lub wektora X dla sieci autoasoejacyjnej,
— Podprogram graficzny przedstawiający dane uczące w postaci odpowiedniego wykresu,
— Opis architektury' sieci (liczba warstw i neuronów w warstwie oraz rodzaj funkcji aktywacji),
— Inicjalizacja wstępnych wag sieci,
— Zadawanie parametrów uczących (stała uczenia, błąd dopuszczalny, liczba cykli uczących),
— Podprogram uczenia sieci w postaci pełnej realizacji cyklu uczącego związanego z określonym typem sieci i metodą uczenia. W ramach uczenia zawarta jest graficzna prezentacja aktualnych wyników uczenia — jest to najważniejszy fragment programu,
— Podprogram prezentujący wyniki osiągnięte w uczeniu sieci. Prezentuje, aktualną funkcję wyjściową na tle zadanej oraz wydruk aktualnych wartości wszystkich wag sieci.
Poszczególne etapy omówione wyżej zostały zrealizowane w postaci kompletnych programów (m-file) symulacji określonych typów sieci rozwiązujących zdefiniowany na wstępie problem.
Ncural Network Toolbox jest narzędziem, które może być stosowane na dwa sposoby.
1. Korzystając z ogólnych m-file napisanych przez autorów programu, użytkownik może stworzyć własny kompletny podprogram rozwiązujący zagadnienie uczenia i testowania określonego typu sieci neuronowej. Wzorem mogą być programy testowe zawarte w katalogu NEURAL\nX. Wymagana jest przy tym dobra znajomość programowania w języku Matlab.
2. Wykorzystując bibliotekę programów pecjali/.owanych opracowanych przez autora TooIboxu i zawartą w katalogu NEURAL\EX. użytkownik może dopasować swój problem do jednego z rozwiązanych. W takim przypadku wystarczy wymienić kilka linii standardowego programu, pozostawiając cały trzon programu niezmieniony. Zwykle wystarczy wymienić linie definiujące dane uczące, architekturę sieci (liczbę warstw i neuronów w warstwach, rodzaj funkcji aktywacji) oraz parametry uczenia (stała uczenia, liczba cykli uczących, zadana dokładność). W tym przypadku nie jest wymagana wysoka znajomość zasad programowania w Mat labie.
Program Matlab dzięki rozbudowanym procedurom algebry macierzowej i dobremu oprogramowaniu graficznemu stwarza użytkownikom duże możliwości przy rozwiązywaniu problemów uczenia i testowania różnych niezbyt rozbudowanych typów sieci neuronowych. Jest dobrymi narzędziem do badania własności sieci neuronowych i może znaleźć szerokie zastosowanie w dydaktyce.