Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.

Podobne dokumenty
Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Algorytmy sztucznej inteligencji

Elementy Sztucznej Inteligencji. Sztuczne sieci neuronowe cz. 2

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Sztuczna inteligencja

Sztuczne sieci neuronowe

MODELOWANIE RZECZYWISTOŚCI

Uczenie sieci neuronowych i bayesowskich

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Lekcja 5: Sieć Kohonena i sieć ART

Sztuczne sieci neuronowe (SNN)

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Wstęp do sztucznych sieci neuronowych

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Metody Sztucznej Inteligencji II

Wykład 1: Wprowadzenie do sieci neuronowych

SIECI REKURENCYJNE SIECI HOPFIELDA

wiedzy Sieci neuronowe

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

SZTUCZNA INTELIGENCJA

8. Neuron z ciągłą funkcją aktywacji.

Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0

Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.

Wstęp do teorii sztucznej inteligencji

ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD X: Sztuczny neuron

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Elementy inteligencji obliczeniowej

SIECI NEURONOWE Liniowe i nieliniowe sieci neuronowe

Rozdział 1 Sztuczne sieci neuronowe. Materiały do zajęć dydaktycznych - na podstawie dokumentacji programu Matlab opracował Dariusz Grzesiak

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Sztuczne sieci neuronowe Ćwiczenia. Piotr Fulmański, Marta Grzanek

Wstęp do sieci neuronowych, wykład 04. Skierowane sieci neuronowe. Algorytmy konstrukcyjne dla sieci skierowanych

Podstawy sztucznej inteligencji

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

Adrian Horzyk

Uczenie sieci typu MLP

Zastosowania sieci neuronowych

Inteligentne systemy przeciw atakom sieciowym

1. Logika, funkcje logiczne, preceptron.

Elementy kognitywistyki III: Modele i architektury poznawcze

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD XI: Sztuczne sieci neuronowe

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Sztuczne siei neuronowe - wprowadzenie

Sieci Neuronowe - Rok III - kierunek IS w IFAiIS UJ 2008/2009. Sieci Neuronowe

Sieci Rekurencyjne 1 / 33. Sieci Rekurencyjne. Nguyen Hung Son

Obliczenia Naturalne - Sztuczne sieci neuronowe

Celem tych ćwiczeń jest zapoznanie się z klasyfikacją za pomocą sieci neuronowych.

Algorytmiczne sieci neuronowe idea działania, słabe i mocne strony

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

Temat: Sieci neuronowe oraz technologia CUDA

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Wstęp do sieci neuronowych, wykład 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej

Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO. Stanisław Kowalik (Poland, Gliwice)

PAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci

Rozpoznawanie obrazów

Testowanie modeli predykcyjnych

METODY INTELIGENCJI OBLICZENIOWEJ wykład 5

Elektroniczne materiały dydaktyczne do przedmiotu Wstęp do Sieci Neuronowych

6. Perceptron Rosenblatta

Inteligentne systemy informacyjne

OBLICZENIA ZA POMOCĄ PROTEIN

Sztuczne sieci neuronowe

Zastosowania sieci neuronowych

ELEMENTY SZTUCZNEJ INTELIGENCJI. Sztuczne sieci neuronowe

Wstęp do sieci neuronowych laboratorium 01 Organizacja zajęć. Perceptron prosty

BIOCYBERNETYKA SIECI NEURONOWE. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

PRZEWODNIK PO PRZEDMIOCIE

Sieci neuronowe jako sposób na optymalizacje podejmowanych decyzji. Tomasz Karczyoski Wydział W-08 IZ

Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

Podstawy Sztucznej Inteligencji (PSZT)

dr inż. Piotr Odya dr inż. Piotr Suchomski

Podstawy OpenCL część 2

Uczenie sieci radialnych (RBF)

Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

ĆWICZENIE 5: Sztuczne sieci neuronowe

Oprogramowanie Systemów Obrazowania SIECI NEURONOWE

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

LABORATORIUM AUTOMATYKA i ROBOTYKA Inne funkcje sterownika PLC część 2

Zapisywanie algorytmów w języku programowania

Sieci neuronowe w Statistica

Podstawy sztucznej inteligencji

Zadania laboratoryjne i projektowe - wersja β

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

wiedzy Sieci neuronowe (c.d.)

Identyfikacja obiektów dynamicznych za pomocą sieci neuronowych

Podstawy Sztucznej Inteligencji Sztuczne Sieci Neuronowe. Krzysztof Regulski, WIMiIP, KISiM, B5, pok. 408

Sztuczne sieci neuronowe i sztuczna immunologia jako klasyfikatory danych. Dariusz Badura Letnia Szkoła Instytutu Matematyki 2010

Asynchroniczne statyczne układy sekwencyjne

WYKŁAD 4 PLAN WYKŁADU. Sieci neuronowe: Algorytmy uczenia & Dalsze zastosowania. Metody uczenia sieci: Zastosowania

Transkrypt:

Sieci rekurencyjne Ewa Adamus ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych 7 maja 2012

Jednowarstwowa sieć Hopfielda, z n neuronami Bipolarna funkcja przejścia W wariancie dyskretnym sieci stosuje się zazwyczaj neurony ze skokowymi, bipolarnymi funkcjami przejścia: { +1 if X 0 Y = if X < 0

Bieżący stan sieci jest określony przez zestaw wyjść neuronów y 1, y 2,..., y n : y 1 y 2 Y =. y n Wagi w macierzowej formie: W = M Y m Ym T M I, m=1 gdzie M to liczba stanów do zapamiętania przez sieć, Y m to n wymiarowy binarny wektor, I n n macierz identycznościowa.

Przykład Załóżmy, że mamy do zapamiętania dwa stany (1, 1, 1) oraz (,, ): 1 Y1 = 1 1 and Y1 =. Możemy określić wagi: W = = 1 1 1 [ 1 1 1 ] + 0 2 2 2 0 2 2 2 0 [ ] 2 1 0 0 0 1 0 0 0 1

Przykład cd. Po określeniu wag można przetestować sieć podając wektory wejściowe X 1 oraz X 2 (które są równoważne wektorom docelowym Y 1, Y 2 ). Po podaniu wektora wejściowego X oraz obliczeniu aktualnego wyjścia Y porównujemy wynik z wektorem wejściowym. W celu uzyskania wyjścia: Y m = sign(w X m θ), m = 1, 2,..., M gdzie θ jest wartością progową, w przypadku naszej funkcji przejścia równą 0. Dla naszego przykładu, wyjścia sieci: 0 2 2 1 0 1 Y 1 = sign 2 0 2 1 0 = 1 2 2 0 1 0 1 oraz Y 2 = sign 0 2 2 2 0 2 2 2 0 0 0 0 = Wszystko się zgadza, obydwa stany możemy określić jako stabilne.

Przykład cd. Jak wygląda sytuacja z pozostałymi stanami? Dla sieci złożonej z trzech neuronów (o skokowych funkcjach przejścia) możliwych jest osiem stanów. W naszym przypadku pozostałe sześć stanów jest niestabilnych. Natomiast stabilne stany (fundamentalna pamięć powinny przyciągać stany im bliskie. W ramach ćwiczeń obliczeniowych proszę sprawdzić, czy tak jest rzeczywiście, a uzyskane wyniki umieścić w tabeli.

Algorytm treningowy sieci Hopfielda Zapamiętywanie. Wagi n neuronowa sieć Hopfielda, wymaganej do zapamiętania M wzorców: Y 1, Y 2,..., Y M w formie macierzowej: W = M Y mym T M I. (1) m=1 Raz obliczone wagi pozostają stałe. Testowanie. W celu potwierdzenia, że sieć prawidłowo odtwarza wszystkie wzorce fundamentalnej macierzy Y m, które są równoważne wejściom X m: Y m = sign(w X m θ), m = 1, 2,..., M. (2) Jeżeli wszystkie wzorce odtwarzane są prawidłowo, możemy przejść do następnego kroku.

Algorytm treningowy sieci Hopfielda cd. Odzyskiwanie danych. Zaprezentujmy sieci nieznaną próbkę X, w celu uzyskania stanu stabilnego. Zazwyczaj, w takim przypadku próbka jest niekompletną bądź uszkodzoną wersją stanu z pamięci fundamentalnej: X Y m dla m = 1, 2,..., M. Obliczmy odpowiedź sieci dla naszej próbki X(0), w iteracji p = 0: Y(0) = sign(w X(0) θ) Obliczony sygnał wyjściowy podajemy z powrotem na wejście sieci i w ramach kolejnej iteracji ponownie obliczmy wyjście. Porównujemy obydwa wektory Y(p) oraz Y(p + 1) czyli wyjście uzyskane w bieżącej iteracji z wcześniejszym. Jeżeli obydwa wektory są niezmienione, oznacza to, że uzyskaliśmy stan stabilny. Warunek stabilności: Y(p + 1) = sign(w Y(p) θ) Okazuje się, że wprzypadku sieci Hopfielda uzyskany stan stabilny niekoniecznie musi odpowiadać wzorcowi z fundamentalnej pamięci, a jeżeli odpowiada to nie musi to być stan najbliższy badanej próbce

Przykład nr 2 Dla sieci zlożonej z pięciu neuronów umieść w pamięci fundamentalnej trzy wzorce: X 1 = ( 1, 1, 1, 1, 1) X 2 = ( 1,, 1,, 1) X 3 = (, 1,, 1, ) Następnie sprawdź reakcję sieci na nową próbkę testową:x = (1, 1,, 1, 1).

Pojemność pamięci Hopfield wykazał eksperymentalnie, że dla n neuronowej sieci maksymalna liczba możliwych wzorców do zapamiętania wynosi: M max = 0.15 n (3) Generalnie, większość wzorców może być odzyskana z pamięci o maksymalnej pojemności: M max = n 2 ln n Natomiast wszystkie próbki odzyskamy perfekcyjne dla pamięci o pojemności zmniejszonej o połowę: M max = n 4 ln n (4) (5)

Pojemność pamięci Rysunek: Zależność liczby neuronów n w sieci Hopfielda od maksymalnej pojemności: M max = n 4 ln n

Przykłady zastosowań sieci Hopfielda. Zadanie do samodzielnej realizacji odtwarzanie znaków. Przygotowanie wzorców do zapamiętania Należy przygotować własny zbiór X wektorów przeznaczonych do zapamiętania w sieci. Np. Rysunek: Przykładowe bitmapy (rozmiar [5 5] pikseli) ze znakami do zapamiętania Przykładowo, litera T może być przedstawiona w postaci macierzy o wartościach: 1 piksel zapalony oraz zgaszony. 1 1 1 1 1 1 1 1 1 W postaci wektorowej (przykładowo kolumnowej) wzorzec dla T: X=[1,-1,-1,-1,-1,1,-1,-1,-1,-1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,-1,-1]

Odtwarzanie znaków, cd. Dla przygotowanej macierzy X ze wzorcami do zapamiętania, należy zrealizować przedstawiony wcześniej algorytm sieci Hopfielda. Jak wygląda macierz wag? Z ilu neuronów składa się sieć? Jaka maksymalna liczba wzorców może zostać przechowana w pamięci? Zweryfikować możliwości odtworzeniowe sieci. W tym celu należy przygotować znaki zaszumione, uszkodzone w stosunku do zapamietanych wzorców, np. Rysunek: Przykładowe bitmapy (rozmiar [5 5] pikseli) ze znakami do zapamiętania Jakich odpowiedzi udzieliła sieć? Czy są zgodne z zapamiętanymi wzorcami? Zadanie, dla własnego zbioru znaków, należy zrealizować w formie sprawozdania.