wykład 7 neuropsychologia komputerowa

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

Upload: osias

Post on 19-Jan-2016

42 views

Category:

Documents


3 download

DESCRIPTION

Wykład 7 Neuropsychologia komputerowa. Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch. Chcemy połączyć uczenie Hebbowskie i uczenie wykorzystujące korekcję błędów, jednostki ukryte i biologicznie uzasadnione modele. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Wykład 7  Neuropsychologia komputerowa

Wykład 7Wykład 7 Neuropsychologia komputerowa Neuropsychologia komputerowa

Uczenie IIIUniwersalne modele uczenia

Włodzisław DuchUMK Toruń

Google: W Duch

Page 2: Wykład 7  Neuropsychologia komputerowa

Uczenie zadań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ć.

Page 3: Wykład 7  Neuropsychologia komputerowa

Funkcja błęduFunkcja 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:

2; ;E w t o w X X X

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 pochodnepo wszystkich, dE/dwi, czyli gradient.

Page 4: Wykład 7  Neuropsychologia komputerowa

Propagacja błęduPropagacja błędu

Reguła delta minimalizuje błąd dla jednego neuronu, np. wyjściowego, do którego docierają sygnały si

wik = ||tk – ok|| si

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ść ok (forward step).Obliczamy błędy k = (tk-ok), i poprawki dla neuronów wyjściowych wik = k hi. Błąd dla ukrytych neuronów: j = k wjk k hj(1-hj), backward step (backpropagation of error).

Page 5: Wykład 7  Neuropsychologia komputerowa

GeneRecGeneRec

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.

Page 6: Wykład 7  Neuropsychologia komputerowa

GeneRec - uczenieGeneRec - 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 xi=1, więc:

ij j j iw y y x

j j jy y 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:

ij i j i jw x y x y Reguła CHL (Contrastive Hebbian Rule)

Page 7: Wykład 7  Neuropsychologia komputerowa

Dwie fazyDwie 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).

Page 8: Wykład 7  Neuropsychologia komputerowa

Własności GeneRecWł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+ = LTPLTD – niespełnione oczekiwania, tylko faza -, brak wzmocnienia z +.

Page 9: Wykład 7  Neuropsychologia komputerowa

Kombinacja Hebb + błędyKombinacja 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.

hebb i ij j

err i j i j

x w y

x y x y

Page 10: Wykład 7  Neuropsychologia komputerowa

Symulacje trudnego problemuSymulacje trudnego problemu

Ch5, Genrec.proj, rozdz. 5.93 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.

Page 11: Wykład 7  Neuropsychologia komputerowa

Pełny model LeabraPełny model Leabra

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

Page 12: Wykład 7  Neuropsychologia komputerowa

Generalizacja w sieciach atraktorowychGeneralizacja 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_ERRTrenowanie 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.

Page 13: Wykład 7  Neuropsychologia komputerowa

Generalizacja: wykresyGeneralizacja: 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).

Page 14: Wykład 7  Neuropsychologia komputerowa

Generalizacja: Generalizacja: korekcja błędów korekcja błędów

+ Hebb+ Hebb

Szybka zbieżność, powstają dobre reprezentacje wewnętrzne.

Page 15: Wykład 7  Neuropsychologia komputerowa

Dobre reprezentacjeDobre reprezentacjeJak 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

Page 16: Wykład 7  Neuropsychologia komputerowa

Głębokie sieci (deep networks)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.

Page 17: Wykład 7  Neuropsychologia komputerowa

Drzewo rodzinneDrzewo rodzinnePrzykł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.

Page 18: Wykład 7  Neuropsychologia komputerowa

Drzewo rodzinneDrzewo rodzinneJak 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.

Page 19: Wykład 7  Neuropsychologia komputerowa

KlastryKlastryPrzed 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?

Page 20: Wykład 7  Neuropsychologia komputerowa

Uczenie sekwencyjneUczenie sekwencyjneOpró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?

Page 21: Wykład 7  Neuropsychologia komputerowa

Uczenie sekwencyjneUczenie 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).

Page 22: Wykład 7  Neuropsychologia komputerowa

Przykłady uczenia sekwencjiPrzykłady uczenia sekwencjiCzy można odkryć reguły tworzenia się sekwencji? Przykłady:

BTXSEBPVPSEBTSXXTVVEBPTVPSE

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?

BTXXTTVVETSXSEVVSXEBSSXSE

Page 23: Wykład 7  Neuropsychologia komputerowa

Realizacja sieciowaRealizacja 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.

Page 24: Wykład 7  Neuropsychologia komputerowa

Modele MarkovaModele 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.

Page 25: Wykład 7  Neuropsychologia komputerowa

Opóźnienie czasoweOpóź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.

Page 26: Wykład 7  Neuropsychologia komputerowa

BGBG

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

Page 27: Wykład 7  Neuropsychologia komputerowa

Szkic sformułowaniaSzkic 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.

Page 28: Wykład 7  Neuropsychologia komputerowa

Sieciowa implementacjaSieciowa implementacja

Przewidywania aktywności jak i błędu.

CS dla t=2US dla t=16

a)po inicjalizacji brak przewidywania nagrodyb)w czasie uczenia nagroda przewidywana jest coraz wcześniejc)przewidywanie po usłyszeniu tonu.

Page 29: Wykład 7  Neuropsychologia komputerowa

Dwufazowa implementacjaDwufazowa 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

Page 30: Wykład 7  Neuropsychologia komputerowa

Dwufazowa implementacjaDwufazowa 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. 6.7.3, 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.