258 Sieci rekurencyjne
łatwo będzie je zadawać za pomocą klawiatury), albo całkowicie abstrakcyjne obrazki produkowane przez sam program według pewnych kryteriów matematycznych (o czym obszerniej napiszę dalej).
Program zapamięta pewną liczbę takich obrazków (podanych przez Ciebie lub wygenerowanych automatycznie) i sam (bez Twojego udziału) i wyświetli je jako wzorce do późniejszego odtwarzania (przypominania sobie). Na rysunku 11.12. możesz obejrzeć, jak taki przygotowany do zapamiętania zestaw wzorców może wyglądać. Oczywiście w zestawie zapamiętywanych przez sieć wzorców mogą się znaleźć dowolne inne znaki, które możesz wygenerować z pomocą klawiatury, więc zestaw podany na rysunku 11.12 traktuj jako jeden z bardzo wielu możliwych przykładów, Za chwilę opiszę Ci, jak do programu można wprowadzać kolejne wzorce, na początku chciałbym jednak, żebyś się skupił na tym, co program robi i co z tego wynika - a na szczegóły techniczne przyjdzie czas za chwilkę.
Rys. 11.12. Zestaw wzorców przygotowanych do zapamiętania w sieci Hopfielda
Program 12B.BAS przez cały czas pracy pokazuje wszystkie zapamiętane w sieci neuronowej wzorce w górnej części ekranu, więc stale będziesz doskonale wiedział, jakie obrazki znajdują się w używanej przez Ciebie pamięci.
Po wprowadzeniu (lub wygenerowaniu) wszystkich wzorców program 12B.BAS tak ustawi parametry (współczynniki wagowe) wszystkich neuronów w sieci, żeby te właśnie obrazki stały się dla tej sieci punktami równowagi (atraktorami). O tym, na jakiej zasadzie to się obywa oraz jak takie ustawianie wag przebiega - możesz przeczytać w mojej książce pt. Sieci neuronowe. Tutaj nie mogę Ci tego teraz opisywać, bo teoria uczenia sieci Hopfielda jest dość trudna i zmatematyzowana, a obiecywałem, że takich trudnych matematycznych rozważań w tej książce nie będzie. Nie musisz jednak znać szczegółów, wystarczy, że po wydaniu polecenia zakończenia wprowadzania do pamięci nowych wzorców spokojnie odczekasz chwilkę, gdy program pokaże na ekranie napis:
Ustawiam wagi, dla m = 7
gdzie oczywiście liczba występująca po m = może być inna, gdyż jest ona każdorazowo równa liczbie wzorców, jakie wprowadzisz podczas ustawiania sieci. W czasie wyświetlania tego napisu w sieci zachodzi automatycznie