Sieci Hopfielda

Download Report

Transcript Sieci Hopfielda

Sieci Hopfielda

Najprostsze modele sieci z rekurencją

– sieci Hopfielda; – sieci uczone regułą Hebba; – sieć Hamminga;

Modele bardziej złożone:

– RTRN (Real Time Recurrent Network), przetwarzająca sygnały w czasie rzeczywistym; – sieć Elmana i inne o uproszczonej strukturze rekurencji; – RCC ( Recurrent Cascade Correlation);

Sieci rekurencyjne, a jednokierunkowe

• Sieci jednokierunkowe – wyjścia sieci mogą być połączone tylko z wejściami neuronów warstwy następnej; – implikuje to jednokierunkowy przepływ informacji: sygnały są przesyłane od warstwy wejściowej do wyjściowej; • Sieci rekurencyjne – dopuszcza się istnienie sprzężeń zwrotnych tzn. gdy wyjścia neuronów mogą być połączone z wejściami neuronów tej samej warstwy lub warstw pośrednich; – informacja oscyluje między warstwami lub w obrębie warstw, aż do spełnienia pewnego kryterium zbieżności i dopiero wtedy jest przekazywana na wyjście sieci;

Rodzaje sieci Hopfielda:

– sieć dyskretna - przeważnie dyskretne funkcje aktywacji , zmiana stanu w chwilach dyskretnych; – sieć ciągła - zastosowanie ciągłych funkcji aktywacji, odpowiedzi neuronów zmieniają się w sposób ciągły;

Schemat sieci Hopfielda

Wnioski ze schematu

• Sieć jest siecią jednowarstwową ze sprzężeniem zwrotnym, każdy neuron połączony jest bezpośrednio z wyjściami innych neuronów i

nie

jest połączony z własnym wyjściem, tzn. w ii =0 .

• Neurony posiadają „znakową” funkcję aktywacji

f

(

x

) :  sgn(

x

)     1 1

dla dla x x

  0 0 • Wyznaczenie wyjścia sieci w danej iteracji obliczeniowej odbywa się w sposób synchroniczny, tzn. neurony ustawiają swoje wyjścia w jednym momencie, co powoduje, że wartości wyjść każdego neuronu wyznaczane są na podstawie wyjść sieci z poprzedniej iteracji obliczeniowej.

Inne własności sieci Hopfielda

pamięć adresowalna przez zawartość - aby odtworzyć wzorzec zapisany w sieci wystarczy podać fragment informacji; tolerancja błędów - jeżeli jakiś element popełni błąd, to cała sieć i tak poda poprawne rozwiązanie; wszystkie neurony są ze sobą połączone wagami; - symetryczne wagi (w ij = w ji );

Algorytm działania sieci Hopfielda

1.

2.

Wybieramy losowo neuron.

Obliczamy sumę ważoną połączeń do aktywnych sąsiadów: 3.

Jeżeli suma jest dodatnia, to neuron się aktywuje, w przeciwnym przypadku dezaktywuje.

Algorytm działania sieci Hopfielda c.d.

4.

5.

Losujemy kolejny neuron i postępujemy według algorytmu, aż do uzyskania stanu stabilnego.

Proces ten nazywa się równoległą relaksacją.

Funkcja energetyczna

Stan energetyczny sieci wyraża funkcja w postaci: ( przy czym i ≠ j ).

Funkcja ta jest malejąca w kolejnych krokach t, dlatego wiadomo, że osiągnie ona minimum, w którym sieć będzie stabilna.

Dobór wag w sieci Hopfielda uogólnioną regułą Hebba

Zgodnie z tą regułą wagi modyfikowane są według zależności: dla i ≠ j ( gdzie x i (k) jest i tą współrzędną k-tego wzorca uczącego ).

Dla i = j zachodzi w ij =0.

Przykład

Przykład ten jest próbą nauczenia sieci Hopfielda rozpoznawania trzech cyfr: 1, 4, 7. Na podstawie wzorców przedstawionych na poniższym rysunku tworzony jest ciąg uczący (białe pola oznaczają -1, a czarne 1).

x(1)=[ -1 -1 1 -1 -1 1 -1 -1 1 -1 -1 1 ] x(2)=[ 1 -1 1 1 1 1 -1 -1 1 -1 -1 1 ] x(3)=[ 1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 ]

Przykład c.d.

Następnie sieć Hopfielda jest uczona za pomocą wcześniej wypisanych wzorców. Aby sprawdzić poprawność działania nauczonej sieci, na jej wejście podajemy kolejno sygnały uczące.

Sieć Hopfielda bezbłędnie rozwiązała zagadnienie asocjacji dla niezaszumionych wektorów uczących:

Przykład c.d.

Po zaszumieniu wzorce uczące mają postać: Wówczas sygnały wejściowe x’ są postaci: x’(1)= [ -1 -1 1 -1 -1 1 -1 1 1 -1 -1 1 ] x’(2)= [ 1 -1 1 1 -1 1 -1 -1 1 -1 -1 1 ] x’(3)=[ 1 -1 1 -1 -1 1 -1 -1 1 -1 -1 1 ]

Przykład c.d.

Efekt zaszumienia przedstawia poniższa tabela: Dla trzeciego zaszumionego wektora wyjście sieci po 12 iteracjach jeszcze się nie ustabilizowało. Oznacza to, że sieć nie mogła rozpoznać zniekształconej próbki.

Sieci Hopfielda w praktyce

Pamięć asocjacyjna (skojarzeniowa) – zdolność sieci do prawidłowego zinterpretowania danych zniekształconych lub niekompletnych (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 ).

Optymalizacja – rozwiązywanie trudnych problemów optymalizacyjnych ( np. problem komiwojażera ).

Koniec