Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Uczenie w Sieciach Rekurencyjnych

Podobne prezentacje


Prezentacja na temat: "Uczenie w Sieciach Rekurencyjnych"— Zapis prezentacji:

1 Uczenie w Sieciach Rekurencyjnych
Inteligentne Systemy Autonomiczne Uczenie w Sieciach Rekurencyjnych W oparciu o wykład Prof. Geoffrey Hinton University of Toronto Janusz A. Starzyk Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie

2 Sieci rekurencyjne W układach biologicznych neurony mają silne sprzężenia zwrotne. 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

3 Sieci rekurencyjne Jeśli połączenia tworzą skierowane obwody w grafie sieci, taka sieć jest w stanie zrobić więcej niż tylko obliczać ustalone sekwencje przekształceń nieliniowych: Może oscylować. Nadaje sie do kontroli motorów? Może zbiegać się do atraktorów punktowych. Przydatne do klasyfikacji Może zachować się chaotycznie Przydatne do poszukiwania wielu rozwiązań Ale z reguły nie jest korzystne do przetwarzania informacji. Może pamiętać rzeczy przez długi czas. Sieć ma stany wewnętrzne. Może zdecydować się na zignorowanie sygnału wejścia. Może modelować sekwencje w naturalny sposób. Nie ma potrzeby użycia elementów opóźnienia do dyskretyzacji czasowej.

4 Zaleta modelowania sekwencji
Możemy uzyskać sygnał uczenia próbując przewidzieć następny składnik szeregu. Wydaje sie to bardziej naturalnym niż przewidywanie jednego piksela obrazu na podstawie innych. Korelacja czasowa w przeciwieństwie do korelacji przestrzennej Wykorzystanie sekwencji operacji do planowania akcji Przypisywanie nagrody za udane akcje

5 Równoważność miedzy wielowarstwowa siecią propagacji wprzód i siecią rekurencyjną
w w2 czas=3 w w2 w3 w4 w w4 czas=2 w w2 Załóżmy że użycie każdego połączenia ma opóźnienie czasowe 1. Sieć rekurencyjna jest siecią wielowarstwową która ciągle używa te same wagi. w3 w4 czas=1 w w2 w3 w4 czas=0

6 Backpropagation w czasie
Propagacja wprzód buduje stos aktywności wszystkich jednostek w każdym przedziale czasu. Propagacja wstecz zdejmuje ze stosu aktywności żeby obliczyć pochodne błędu w każdym przedziale czasu. Po propagacji wstecznej sumujemy pochodne ze wszystkich przedziałów czasowych dla każdej wagi. Jest dodatkowy irytujący problem: Musimy określić stan początkowy wszystkich nie wejściowych jednostek. Moglibyśmy propagować wstecz do tych początkowych aktywności i nauczyć się ich najlepszych wartości.

7 Sygnały uczenia dla sieci rekurencyjnych
Możemy określić cele w różny sposób: Określamy pożądane końcowe aktywności wszystkich jednostek Określamy pożądane aktywności wszystkich jednostek w kilku ostatnich krokach czasowych Określamy pożądane aktywności podzbioru jednostek. Inne jednostki sa “ukryte” w w2 w3 w4 w w2 w3 w4 w w2 w3 w4

8 Przykład dla sieci rekurencyjnej
Możemy nauczyć sieć propagacji wprzód dodawania binarnego, ale nie jest ona w stanie określić: Maksymalnej ilości cyfr w każdej liczbie. Proces zastosowany dla dużej liczby nie prowadzi do wyniku. Tak że sieć nie uczy się dobrze zadania dodawania binarnego. jednostki ukryte

9 Algorytm dodawania binarnego
1 0 0 1 0 0 1 1 no carry print 1 carry print 1 0 0 0 0 1 0 0 1 1 1 1 0 0 1 1 1 no carry print 0 carry print 0 0 0 1 1 0 1 1 0 Jest to automat skończony (finite state machine FSM). Decyduje jaki jest następny stan przez analizę następnej kolumny bitów. Drukuje wynik po przejściu do następnego stanu. Postępuje od prawej do lewej obydwu wejściowych liczb binarnych.

10 Siec rekurencyjna dodawania binarnego
Siec ma dwa neurony wejściowe i jeden wyjściowy. Siec otrzymuje dwa bity wejściowe w każdej jednostce czasu. Pożądanym wyjściem jest wyjcie dla bitów wejściowych dwie jednostki czasowe wstecz. Jedna jednostka czasu potrzebna jest do uaktualnienia warstwy ukrytej w oparciu o bity wejścia. Druga jednostka czasu potrzebna jest do obliczenia wyjścia przez jednostki ukryte. czas

11 Połączenia w sieci 3 jednostki ukryte są w pełni połączone.
Pozwala to na użycie aktywności warstwy ukrytej w jednym czasie do obliczenia aktywności warstwy ukrytej w czasie następnym. Jednostki wejściowe maja połączenia wprzód które pozwalają im na obliczanie aktywności warstwy ukrytej w czasie następnym. 3 w pełni połączone jednostki ukryte Binarne dane wejściowe Binarne opóźnione wyjście

12 Czego sieć się uczy? Sieć uczy się 4 rożnych wzorców aktywności 3 jednostek ukrytych. Te wzorce odpowiadają stanom automatu skończonego (FSM). Nie mylcie neuronów z węzłami stanów w FSM. Neurony są wektorami aktywizacji. Automat może być tylko w jednym określonym stanie w danej chwili. Jednostki ukryte mogą mięć tylko jeden wektor aktywności w danej chwili. Sieć rekurencyjna może emulować FSM, ale jest ona ekspotencjalnie bardziej potężna. Sieć mająca N neuronów ukrytych ma 2N możliwych binarnych wektorów aktywności neuronów ukrytych. Jest to ważne gdy dane wejściowe mają kilka jednoczesnych oddziaływań. FSM nie może tego odpowiednio reprezentować.


Pobierz ppt "Uczenie w Sieciach Rekurencyjnych"

Podobne prezentacje


Reklamy Google