Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wykład 7 Neuropsychologia komputerowa Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch.

Podobne prezentacje


Prezentacja na temat: "Wykład 7 Neuropsychologia komputerowa Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch."— Zapis prezentacji:

1 Wykład 7 Neuropsychologia komputerowa Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch

2 Uczenie zadań Chcemy połączyć uczenie Hebbowskie i uczenie wykorzystujące korekcję błędów, jednostki ukryte i biologicznie uzasadnione modele. Hebbowskie sieci modelują stany świata ale nie percepcje-działanie. Korekcja błędu może się nauczyć mapowania. Niestety reguła delta dobra jest tylko dla jednostki wyjściowej, a nie ukrytej, bo trzeba jej podać cel. Metoda wstecznej propagacji błędu potrafi uczyć jednostki ukryte. Ale nie ma dla niej dobrego uzasadnienia biologicznego... Idea wstecznej propagacji jest prosta ale jej dokładniejsze rozpisanie wymaga sporo obliczeń. Główna idea: szukamy minimum funkcji błędu, mierzącej różnice między pożądanym zachowaniem i tym realizowanym przez sieć.

3 Funkcja błędu E(w) – f. błędu, zależna od wszystkich parametrów sieci w, jest to suma błędów E(X;w) dla wszystkich wzorców X. o k (X;w) – wartości osiągane na wyjściu nr. k sieci dla wzorca X. t k (X;w) – wartości pożądane na wyjściu nr. k sieci dla wzorca X. Jeden wzorzec X, jeden parametr w to: Wartość f. błędu =0 nie zawsze jest osiągalna, sieć może nie mieć wystarczająco dużo parametrów by się nauczyć pożądanego zachowania, można jedynie dążyć do najmniejszego błędu. W minimum błąd E(X;w) jest dla parametru w dla pochodnej dE(X;w)/dw = 0. Dla wielu parametrów mamy pochodne po wszystkich, dE/dw i, czyli gradient.

4 Propagacja błędu Reguła delta minimalizuje błąd dla jednego neuronu, np. wyjściowego, do którego docierają sygnały s i w ik = ||t k – o k || s i Jakie sygnały należy brać dla neuronów ukrytych? Najpierw przepuszczamy sygnały przez sieć obliczając aktywacje, wyjściowe sygnały z neuronów h, przez wszystkie warstwy, aż do wyjść o k (forward step). Obliczamy błędy k = (t k -o k ), i poprawki dla neuronów wyjściowych w ik = k h i. Błąd dla ukrytych neuronów: j = k w jk k h j (1-h j ), backward step (backpropagation of error).

5 GeneRec Chociaż większość modeli używanych w psychologii uczy struktury wielowarstwowych perceptronów za pomocą odmian wstecznej propagacji (można się w ten sposób nauczyć dowolnej funkcji) idea przekazu informacji o błędach nie ma biologicznego uzasadnienia. GeneRec (General Recirculation, OReilly 1996), Propagacja sygnału w obie strony, niesymetryczne wagi w kl w jk. Najpierw faza –, opowiedź sieci na aktywację x – = s i daje wyjście y – =o k, potem obserwacja pożądanego wyniku y + = t k i propagacja do wejścia x +. Zmiana wagi wymaga informacji o sygnałach z obu faz.

6 GeneRec - uczenie Reguła uczenia jest zgodna z regułą delta: W porównaniu z wsteczną propagacją różnica sygnałów [y + y ] zastępuje sumaryczny błąd, różnica sygnałów ~ różnic aktywności * pochodna funkcji aktywacji, stąd jest to reguła gradientowa. Dla nastawień jest x i =1, więc: Dwukierunkowe przesyłanie informacji jest niemal równoczesne (P300 pokazuje oczekiwania wewnętrzne), odpowiada za powstawanie stanów atraktorowych, spełnianie ograniczeń, dopełnianie wzorców. Błędy są wynikiem aktywności w całej sieci, nieco lepsze wyniki dostaniemy biorąc średnią [x + +x - ]/2 i zachowując symetrię wag: Reguła CHL (Contrastive Hebbian Rule)

7 Dwie fazy Skąd bierze się błąd do korygowania połączeń synaptycznych? Warstwa po prawej stronie = środkowa po czasie t+1; np. wymowa słów: a) i c) korekta zewnętrzna działania; b) oczekiwania wewnętrzne i własna wymowa; d) rekonstrukcja działania (np. kora ciemieniowa).

8 Własności GeneRec Uczenie Hebbowskie tworzy model świata, zapamiętując korelacje, ale nie potrafi się nauczyć wykonywania zadań. Ukryte warstwy pozwalają na transformację problemu a korekcja błędu uczenia się wykonywania trudnych zadań, relacji wejść i wyjść. Kombinacja uczenia Hebbowskiego – korelacji (x i y j ) – i uczenia opartego na błędach może się nauczyć wszystkiego w poprawny biologicznie sposób: CHL prowadzi do symetrii, wystarczy przybliżona symetria, połączenia są zwykle dwukierunkowe. Err = CHL w tabelce. Brak Ca 2+ = nie ma uczenia; mało Ca 2+ = LTD, dużo Ca 2+ = LTP LTD – niespełnione oczekiwania, tylko faza -, brak wzmocnienia z +.

9 Kombinacja Hebb + błędy Widać, że dobrze połączyć uczenie Hebbowskie i korekcję błędów CHL Korelacje i błędy: Kombinacja Dodatkowo potrzebne jest hamowanie wewnątrz warstw: tworzy oszczędne reprezentacje wewnętrzne, jednostki konkurują ze sobą, zostają tylko najlepsze, wyspecjalizowane, umożliwia samoorganizujące się uczenie.

10 Symulacje trudnego problemu Ch5, Genrec.proj, rozdz ukryte jednostki. Uczenie jest przerywane po 5 epokach bez błędu. Błędy w czasie uczenia wykazują znaczne fluktuacje – sieci z rekurencją są wrażliwe na małe zmiany wag, eksplorują różne rozwiązania. Porównaj z uczeniem przypadków łatwych i trudnych z samym Hebbem.

11 Pełny model Leabra 6 zasad budowy inteligentnego systemu. Hamowanie wewnątrz warstw, uczenie Hebbowskie + korekcja błędów dla wag pomiędzy warstwami.

12 Generalizacja w sieciach atraktorowych Sama reguła GeneRec nie prowadzi do dobrej generalizacji. Symulacje: Ch6, model_and_task.proj. learn_rule = PURE_ERR, PURE_HEBB lub HEBB_AND_ERR Trenowanie na 35, testowanie co 5 epok na pozostałych 10 wzorcach, wykresy. Uczenie za pomocą samej korekcji błędów nie daje dobrych rezultatów. Parametr hebb kontroluje ile CHL, a ile korelacji Hebba. Pure_err realizuje tylko CHL, sprawdzić fazy - i + uczenia. Warto porównać rep. wewnętrzne dla różnych rodzajów uczenia. Sam Hebb się czasami dobrze nauczy dla tych danych. Generalizacja wymaga dobrych rep. wewnętrznych linii = silnych korelacji, a sama korekcja błędu nie ogranicza dostatecznie silnie wewnętrznych reprezentacji, dopiero Hebb + kWTA to zrobi.

13 Generalizacja: wykresy Czarna linia = cnt_err, błędy na danych treningowych. Czerwona = unq_pats, ile linii reprezentowanych jest w unikalny sposób przez warstwę ukrytą (max=10). Niebieska = gen_Cnt, ocenia generalizację dla 10 nowych linii, widać na końcu 8 błędów. Wagi wydają się dość przypadkowe. Generalizacja jest zła dla reguły opartej wyłącznie na korekcji błędu, bo nie ma żadnych warunków wymuszających sensowne reprezentacje wewnętrzne. Batch Run powtarza to 5 razy (powolne).

14 Generalizacja: korekcja błędów + Hebb Szybka zbieżność, powstają dobre reprezentacje wewnętrzne.

15 Dobre reprezentacje Jak nauczyć się jak najwięcej ucząc się jak najmniej? Potrzebne są dobre reprezentacje wewnętrzne. Uczenie Hebbowskie + konkurencja oparta na hamowaniu ograniczają korekcję błędów tak, by utworzyć dobre reprezentacje, lub atraktory częściowo zlokalizowane (componential attractors). Jeśli reprezentacje są całkiem niezależne to nie mają wspólnych cech, co utrudnia skojarzenia, ale mogą być wykorzystane kombinatory- cznie, w nowych sytuacjach, np. do wypowiadania nowych słów; jeśli integracja jest zbyt silna to są skojarzenia ale nie niezależne kombinacje

16 Głębokie sieci (deep networks) Do nauczenia się trudnych zagadnień potrzebnych jest wiele transformacji, mocno zmieniających reprezentację problemu. Sygnały błędu stają się słabe i uczenie jest trudne. Trzeba dodać ograniczenia i samoorganizujące się uczenie. Analogia: Balansowanie kilkoma połączonym kijkami jest trudne, ale dodanie samoorganizującego się uczenia pomiędzy fragmentami znacznie to uprości – jak dodanie żyroskopu do każdego elementu.

17 Drzewo rodzinne Przykład symulacji: family_trees.proj.gz, rozdz Mamy 24 osoby = agent, Patient – wyjście, czyli druga osoba; relation–wejście. Mamy 12 relacji: mąż, żona, syn, córka, ojciec, matka, brat, siostra, ciotka, wujek, kuzyn, kuzynka. Generalizacja wymaga obserwacji relacji pomiędzy osobami.

18 Drzewo rodzinne Jak nauczyć sieć relacji rodzinnych? Podajemy wszystkie relacje rodzinne, zgodnie z drzewem poniżej; potrzeba ponad 30 epok, ale BP potrzebuje prawie 80. Tym razem samo Hebbowskie uczenie nie wystarcza. Init_cluster + Cluster run.

19 Klastry Przed nauczeniem i po nauczeniu: w lewym panelu rozwinąć "networks", kliknąć na family_trees, wybrać Object, Load Weights i załadować family_trees_hebb_and_err.wts; potem w Control Panel uruchomić Cluster Run – co oznacza?

20 Uczenie sekwencyjne Oprócz rozpoznawania obiektów i relacji oraz wykonywania zadań istotne jest uczenie się sekwencyjne, np. sekwencji słów w zdaniach: Ten kraj znasz dobrze. Znasz dobrze ten kraj? Dziecko podniosło zabawkę do góry. Przejechałem skrzyżowanie bo samochód z prawej strony dopiero się zbliżał. Znaczenie słów, gestów, zachowania, zależy od sekwencji, kontekstu. Czas pełni istotną rolę: konsekwencje pojawienia się obrazu X mogą być widoczne dopiero z opóźnieniem, np. konsekwencje pozycji figur w czasie gry są widoczne dopiero po kilku krokach. Modele sieciowe reagują na wzorce od razu – a jak robią to mózgi?

21 Uczenie sekwencyjne Kontekst reprezentowany jest w płatach czołowych – powinien wpływać na warstwę ukryta. Potrzebne są sieci z rekurencją, które potrafią utrzymać przez pewien czas informacje o kontekście. Prosta Sieć Rekurencyjna (Simple Recurrent Network, SRN), Aktywacja jednostki kontekstowej c(t) uwzględnia jej poprzednią aktywność oraz wpływ jednostek ukrytych; parametry ważące wpływ mogą być kontrolowane mechanizmem bramkującym (gating).

22 Przykłady uczenia sekwencji Czy można odkryć reguły tworzenia się sekwencji? Przykłady: BTXSE BPVPSE BTSXXTVVE BPTVPSE Automat probabilistyczny o następujących przejściach produkuje takie ciągi. Na każdym kroku ma 2 możliwości, wybiera je z p=0.5. Gramatyka Rebera, z eksp. psych. Czy to dobre przykłady? BTXXTTVVE TSXSE VVSXE BSSXSE

23 Realizacja sieciowa Projekt z Ch6, fsa.proj, sieć wybiera przypadkowo jeden z dwóch stanów. Ukryte/kontekstowe neurony podłączone są 1-1 do ukrytych, pamiętają poprzednie stany, uczą się rozpoznawać stany automatu, a nie tylko etykiety. Modelowanie zachowania: te same obserwacje, ale różne stany wewnętrzne => różne decyzje i różne następne stany. Uczenie może wymagać ~620 epok by dostać 4 kolejne bezbłędne odpowiedzi, lepiej załadować wytrenowane wagi. BP potrzebowała tu 4800 epok, lub ~60K sekwencji! Po pokazaniu jednej litery zgadywana jest jedna z 2 możliwych liter.

24 Modele Markova To samo można osiągnąć za pomocą modelu Markova 2 rzędu, który uczy się korelacji sekwencji symboli i pamięta przejścia p(x t |x t-1 x t-2 ), więc obserwuje i zapamiętuje fragmenty: BTS, BTX, BPT, BPV, TSS, TSX, SSX, SSS, PTT, PTV, TTV, TTT … W efekcie od razu rozpozna BSS … jako niewłaściwy ciąg, Przewiduje na podstawie dwóch ostatnich liter trzecią. Ogólnie może to nie wystarczyć, bo w niektórych przewidywaniach konieczna może być dłuższa pamięć. Takie modele przydatne są w bioinformatyce; możliwa jest również realizacja neuronowa ukrytych modeli Markova.

25 Opóźnienie czasowe Nagroda (wzmocnienie, reinforcement) często następuje z opóźnieniem np. w uczeniu się gier, strategii zachowań. Idea: trzeba przewidywać dostatecznie wcześnie jakie zdarzenia prowadzą do nagrody. Robi to algorytm różnic czasowych (Temporal Differences). Skąd w mózgu nagroda? Dopaminergiczny system śródmózgowia moduluje działanie jąder podstawnych (BG) przez istotę czarną (SN), oraz kory czołowej przez VTA, brzuszną część nakrywki śródmózgowia. Dość skomplikowany system, którego działanie związane jest z oceną bodźców/działań z punktu widzenia wartości i przewidywania nagrody.

26 BG Neurony VTA uczą się najpierw reagować na nagrodę, a następnie przewidywać pojawienie się nagrody w przyszłości.

27 Szkic sformułowania Należy określić funkcję wartości stymulacji, jest to suma po wszystkich oczekiwanych nagrodach, im dalsze w czasie tym mniej ważne: Można to zrobić rekursywnie, wystarczy napisać wzór na V(t+1): Błąd przewidywanej nagrody: Sieć próbuje zredukować ten błąd; krytyk ocenia, aktor wykonuje, a ponieważ krytyk się uczy to mówimy o adaptive critic, lub AC.

28 Sieciowa implementacja Przewidywania aktywności jak i błędu. CS dla t=2 US dla t=16 a)po inicjalizacji brak przewidywania nagrody b)w czasie uczenia nagroda przewidywana jest coraz wcześniej c)przewidywanie po usłyszeniu tonu.

29 Dwufazowa implementacja Faza + ocenia spodziewaną wielkość nagrody w czasie t+1. Faza – w kroku t+k przewiduje t+k+1, w końcowym r(t k ). CS dla t=2 US dla t=16

30 Dwufazowa implementacja Wejście CSC – Complete Serial Compound, zastosowano niezależne elementy do bodźców w kolejnych momentach czasu. Nie jest to zbyt realistyczny model warunkowania klasycznego, ale dla ilustracji wystarczający; nie będziemy z tego korzystać więc nie omawiam tego dokładnie. Rozdz , projekt Ch6, rl_cond.proj Reprezentacja czasu: seria pobudzeń, rozmyta reprezentacja z podobnymi jednostkami reagującymi w preferencyjny sposób na wybrany bodziec. ExtRew – nagroda; TDRewPred ocenia nagrodę V(t+1); TDRewInteg sumuje nagrodę i przewidywaną; TD - oblicza błąd.


Pobierz ppt "Wykład 7 Neuropsychologia komputerowa Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch."

Podobne prezentacje


Reklamy Google