Sieci Hopfielda

Wszystkie omawiane wyżej typy sieci neuropodobnych cechowały się tym, że przepływ sygnałów, jaki w nich zachodził, był ściśle jednokierunkowy — od wejścia do wyjścia. Takie sieci, nazywane zwykle po angielsku feedforward, są niewątpliwie najważniejszą i najczęściej stosowaną podklasą sieci neuropodobnych. W niektórych zastosowaniach, zwłaszcza w rozważaniach teoretycznych na temat sieci neuropodobnych pojawia się jednak często pojęcie sieci Hopfielda, zatem przedstawimy tu ich krótki opis, odsyłając bardziej dociekliwego Czytelnika do literatury specjalistycznej. Charakteryzując w sposób najbardziej ogólny sieci Hopfielda można stwierdzić, że sieci te stanowią krańcowe przeciwieństwo sieci klasy feedforward — czyli, omawianych we wszystkich wcześniejszych rozdziałach, sieci całkowicie pozbawionych sprzężeń zwrotnych. Sieci neuropodobne, w których dopuszczono sprzężenia zwrotne (tzw. sieci rekurencyjne) charakteryzują się tym, że mogą zawierać pewną liczbę sprzężeń zwrotnych, przy czym może ich być więcej, albo mniej. Tymczasem w sieci Hopfielda sprzężenia zwrotne są po prostu regułą: każdy neuron wysyła sygnały zwrotne do wszystkich innych neuronów (rys. 9).

Rysunek 9. Struktura prostej sieci Hopfielda

(aby obejrzeć powiększony rysunek, kliknij w miniaturkę)

Jak z tego wynika, wszystkie połączenia, które w tej sieci występują, są sprzężeniami zwrotnymi, wszystkie sygnały wyjściowe są wykorzystywane jako wejścia i wszystkie wejścia do wszystkich neuronów przenoszą sygnały sprzężenia zwrotnego. Sieci ze sprzężeniami zwrotnymi są kłopotliwe, ponieważ po podaniu na ich wejścia dowolnego sygnału, w ich strukturach zaczynają się skomplikowane procesy dynamiczne, które trudno dokładnie przewidzieć, gdyż sygnały z wyjść, zawracane drogą sprzężeń zwrotnych na wejścia, mogą stale wytrącać sieć ze stanu równowagi. W rezultacie możliwe są dwie sytuacje: albo po dynamicznym przebiegu licznych procesów nieustalonych w neuronach sieci, wywołanych podanym sygnałem, sieć osiąga stan równowagi i można odczytać sygnały na wyjściach neuronów (sieć rozwiązuje podane zadanie), albo dynamiczne krążenie sygnałów w sieci trwa w sposób nieskończony. W tym drugim przypadku czasami pojawia się w zachowaniu sieci pewna regularność, polegająca na periodycznym przechodzeniu przez określone sekwencje stanów, częściej jednak zachowania sieci są całkowicie chaotyczne.

Sieci Hopfielda są tak ważne głównie dlatego, że taka sieć może być traktowana jako neuronowy model pewnych interesujących systemów fizycznych (np. szkieł spinowych), ponadto procesy zachodzące w tych sieciach są zawsze stabilne, można więc bezpiecznie stosować je do rozwiązywania różnych zadań. Zachowanie sieci Hopfielda determinuje tzw. funkcja energetyczna, będąca zwykle dość skomplikowaną formą kwadratową, zależną od występujących w niej sygnałów oraz od parametrów sieci (współczynników wagowych). Zachowanie sieci polega każdorazowo na generowaniu takich zmian sygnałów wyjściowych wszystkich jej neuronów, aby wartość funkcji energetycznej systematycznie malała. Funkcja energetyczna jest ciągła, co powoduje szybkie zmierzanie sieci do jej najbliższego minimum lokalnego, a po osiągnięciu tego minimum procesy przejściowe w sieci zanikają, gdyż dalsze zmiany wartości sygnałów nie powodują polepszenia jakości rozwiązania ("energia" sieci znalazła się na najniższym lokalnie osiągalnym poziomie). Taką stabilność procesów Stabilnośc procesów w sieciach Hopfielda w sieci Hopfielda osiągnięto dzięki zastosowaniu trzech prostych zabiegów:

Wszystkie te warunki bardzo łatwo spełnić. Dwa pierwsze określają regularny i bardzo łatwy do uzyskania schemat połączeń sieci, a ostatni warunek jest automatycznie spełniony, jeśli do uczenia sieci wybierze się szeroko znaną metodę Donalda Hebba. Metoda ta w uproszczeniu polega na kojarzeniu sygnałów — jeżeli pewnemu konkretnemu sygnałowi wyjściowemu z neuronu o numerze ma towarzyszyć pewna konkretna wartość neuronu o numerze , to współczynnik wagowy połączenia biegnącego od neuronu o numerze do neuronu o numerze powinien być w trakcie uczenia zwiększony o składnik:

[30]

Jak łatwo zauważyć za każdym razem będzie w naturalny sposób równe , co gwarantuje pożądaną symetrię. Poprawki wag są wyliczane zgodnie z opisaną regułą dla każdej pary wymieniających informacje neuronów oraz są agregowane (sumowane) dla każdej pary kojarzonych ze sobą sygnałów. W ten sposób w sieci Hopfielda rejestrowane są ślady wszelkich skojarzeń sygnałów i dlatego też sieci te najlepiej nadają się do tego, aby przy ich pomocy tworzyć pamięć asocjacyjną. Dzięki autoasocjacji wytrenowana sieć Hopfielda może automatycznie korygować błędne albo uzupełniać niekompletne dane. Zalety stosowania sieci Hopfielda Sieć np. może odtworzyć pełną sylwetkę nadlatującego samolotu w sytuacji, gdy kamera zarejestrowała obraz niekompletny ponieważ część zarysu przesłaniały obłoki. Ma to duże znaczenie w systemach obrony przeciwlotniczej: ważnym problemem jest szybkie rozstrzygnięcie problemu "swój-obcy". Sieć pracująca jako pamięć autoasocjacyjna może także uzupełnić niekompletne zapytanie kierowane do jakiegoś systemu typu baza danych przez niewprawnego lub niestarannego użytkownika, dzięki czemu wyszukiwanie będzie wykonywane poprawnie nawet w przypadku nieprecyzyjnego (chociaż jednoznacznego) zapytania. Sieć zdoła wtedy sama domyślić się wszystkich brakujących szczegółów. Sieć taka może także usuwać zakłócenia i zniekształcenia różnych sygnałów — także wtedy, gdy stopień "zaszumienia" sygnału wejściowego wyklucza praktyczne użycie jakichkolwiek innych metod filtracji. Nadzwyczajna skuteczność sieci Hopfielda w takich przypadkach wynika z faktu, że sieć w istocie odtwarza wzorcową postać sygnału (najczęściej obrazu) ze swoich zasobów pamięciowych, zaś dostarczony, zniekształcony wejściowy obraz ma ją tylko ukierunkować — "naprowadzić na trop" tego właściwego obrazka pośród wszystkich obrazów, jakie mogą wchodzić w rachubę.

Sieci Hopfielda znajdują także liczne inne zastosowania, m.in. przy rozwiązywaniu zadań optymalizacji i przy generacji określonych sekwencji sygnałów, następujących po sobie w pewnej (modyfikowalnej) kolejności. Pozwala to za pomocą takich sieci tworzyć i wysyłać do różnych obiektów sygnały sterujące. Na tej zasadzie działają m.in. neuronowe systemy wytwarzające sygnały sterujące przestawianiem nóg w chętnie budowanych na całym świecie maszynach kroczących — dwunożnych, czworonożnych i sześcionożnych. "Mózg" sterujący ruchami takiego sztucznego czworonoga zawiera zawsze sieć posiadającą sprzężenia zwrotne, najczęściej sieć Hopfielda lub jakąś jej prostą modyfikację.

Copyright © 1997-2024 Wydawnictwo Naukowe PWN SA
infolinia: 0 801 33 33 88