Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
Wykład 7 Neuropsychologia komputerowa
Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch (c) Tralvex Yeap. All Rights Reserved
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ć. (c) Tralvex Yeap. All Rights Reserved
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. ok(X;w) – wartości osiągane na wyjściu nr. k sieci dla wzorca X. tk(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/dwi, czyli gradient. (c) Tralvex Yeap. All Rights Reserved
4
Propagacja błędu Reguła delta minimalizuje błąd dla jednego neuronu, np. wyjściowego, do którego docierają sygnały si Dwik =e ||tk – ok|| si Jakie sygnały należy brać dla neuronów ukrytych? Najpierw przepuszczamy sygnały przez sieć obliczając aktywacje h, wyjściowe sygnały z neuronów h, przez wszystkie warstwy, aż do wyjść ok (forward step). Obliczamy błędy dk = (tk-ok), i poprawki dla neuronów wyjściowych Dwik = e dk hi. Błąd dla ukrytych neuronów: dj = e Sk wjk dk hj(1-hj), backward step (backpropagation of error). (c) Tralvex Yeap. All Rights Reserved
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, O’Reilly 1996), Propagacja sygnału w obie strony, niesymetryczne wagi wkl wjk. Najpierw faza –, opowiedź sieci na aktywację x– = si daje wyjście y–=ok, potem obserwacja pożądanego wyniku y+ = tk i propagacja do wejścia x+. Zmiana wagi wymaga informacji o sygnałach z obu faz. (c) Tralvex Yeap. All Rights Reserved
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ń b jest xi=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) (c) Tralvex Yeap. All Rights Reserved
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). (c) Tralvex Yeap. All Rights Reserved
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 (xi yj) – 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 Ca2+ = nie ma uczenia; mało Ca2+ = LTD, dużo Ca2+ = LTP LTD – niespełnione oczekiwania, tylko faza -, brak wzmocnienia z +. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
10
Symulacje trudnego problemu
Ch5, Genrec.proj, rozdz. 5.9 3 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. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
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). (c) Tralvex Yeap. All Rights Reserved
14
Generalizacja: korekcja błędów + Hebb
Szybka zbieżność, powstają dobre reprezentacje wewnętrzne. (c) Tralvex Yeap. All Rights Reserved
15
Dobre reprezentacje Jak nauczyć się jak najwięcej ucząc się jak najmniej? Potrzebne są dobre reprezentacje wewnętrzne. 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 Uczenie Hebbowskie + konkurencja oparta na hamowaniu ograniczają korekcję błędów tak, by utworzyć dobre reprezentacje, lub atraktory częściowo zlokalizowane (componential attractors). (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
17
Drzewo rodzinne Przykład symulacji: family_trees.proj.gz, rozdz. 6.4.1
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. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
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? (c) Tralvex Yeap. All Rights Reserved
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? (c) Tralvex Yeap. All Rights Reserved
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). (c) Tralvex Yeap. All Rights Reserved
22
Przykłady uczenia sekwencji
Czy można odkryć reguły tworzenia się sekwencji? Przykłady: BTXSE BPVPSE BTSXXTVVE BPTVPSE Gramatyka Rebera, z eksp. psych. Czy to dobre przykłady? BTXXTTVVE TSXSE VVSXE BSSXSE 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. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
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(xt|xt-1xt-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. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
26
BG Neurony VTA uczą się najpierw reagować na nagrodę, a następnie przewidywać pojawienie się nagrody w przyszłości. (c) Tralvex Yeap. All Rights Reserved
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. (c) Tralvex Yeap. All Rights Reserved
28
Sieciowa implementacja
Przewidywania aktywności jak i błędu. CS dla t=2 US dla t=16 po inicjalizacji brak przewidywania nagrody w czasie uczenia nagroda przewidywana jest coraz wcześniej przewidywanie po usłyszeniu tonu. (c) Tralvex Yeap. All Rights Reserved
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(tk). CS dla t=2 US dla t=16 (c) Tralvex Yeap. All Rights Reserved
30
Dwufazowa implementacja
Wejście CSC – Complete Serial Compound, zastosowano niezależne elementy do bodźców w kolejnych momentach czasu. 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. 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. (c) Tralvex Yeap. All Rights Reserved
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.