Wykład 7 Neuropsychologia komputerowa

Slides:



Advertisements
Podobne prezentacje
Włodzisław Duch Katedra Informatyki Stosowanej,
Advertisements

Sieć jednokierunkowa wielowarstwowa
SZTUCZNE SIECI NEURONOWE
Inteligencja Obliczeniowa Sieci dynamiczne cd.
Inteligencja Obliczeniowa Otwieranie czarnej skrzynki.
Katedra Informatyki Stosowanej UMK
Katedra Informatyki Stosowanej UMK
Samoorganizacja: uczenie bez nadzoru.
Inteligencja Obliczeniowa Sieci dynamiczne.
Inteligencja Obliczeniowa Perceptrony o dużym marginesie błędu
Inteligencja Obliczeniowa Sieci o zmiennej strukturze.
Inteligencja Obliczeniowa Perceptrony
Wykład 5 Neuropsychologia komputerowa
Wykład 10 Neuropsychologia komputerowa
ALGORYTM Co to jest algorytm?
PRZERZUTNIKI W aktualnie produkowanych przerzutnikach scalonych TTL wyróżnia się dwa podstawowe rodzaje wejść informacyjnych: - wejścia asynchroniczne,
Dobór optymalnej architektury
Sztuczne sieci neuronowe
Sztuczna Inteligencja Reprezentacja wiedzy II
Procesy poznawcze cd Uwaga.
Dzisiaj na wykładzie Regresja wieloraka – podstawy i założenia
Wykład 15 Neuropsychologia komputerowa
Sztuczna Inteligencja Reprezentacja wiedzy II Systemy produkcyjne Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch.
Czy potrafimy obliczyć wartość wyjścia sieci znając wartości jej wejść? Tak, przy założeniu, że znamy aktualne wartości wag i progów dla poszczególnych.
Metody Sztucznej Inteligencji w Sterowaniu 2009/2010 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania.
mgr inż. Rafał Komański styczeń 2004
Mirosław ŚWIERCZ Politechnika Białostocka, Wydział Elektryczny
Sieci Hopfielda.
Sieci neuronowe jednokierunkowe wielowarstwowe
Sztuczne sieci neuronowe (SSN)
Klasyfikacja dokumentów za pomocą sieci radialnych
formalnie: Budowa i zasada funkcjonowania sztucznych sieci neuronowych
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
Systemy wspomagania decyzji
Sztuczne Sieci Neuronowe
OCENA KSZTAŁTUJĄCA ZESPÓŁ SZKÓŁ NR 94.
formalnie: Uczenie nienadzorowane
Uczenie w Sieciach Rekurencyjnych
Techniki eksploracji danych
Universalne Modele Uczenia - Cwiczenia
Systemy wspomagania decyzji
Modelowanie i Identyfikacja 2011/2012 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe.
EXCEL Wykład 4.
Automotywacja czyli jak sprawić aby mi się chciało chcieć
Spis treści W świecie algortmów -Budowa algorytmu
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Wzorce slajdów, animacje, różne orientacje slajdów
EXCEL Wstęp do lab. 4. Szukaj wyniku Prosta procedura iteracyjnego znajdowania niewiadomej spełniającej warunek będący jej funkcją Metoda: –Wstążka Dane:
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
Metody sztucznej inteligencji – technologie rozmyte i neuronoweReguła propagacji wstecznej  Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów.
SZTUCZNA INTELIGENCJA
SZTUCZNA INTELIGENCJA
Zarządzanie projektami
© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania Modelowanie i podstawy identyfikacji 2015/2016 Modele neuronowe – podstawy,
GeneracjeTechnologia Architektura przetwarzania 0. Przekaźniki elektromechaniczne 1. Lampy elektronowe 2. Tranzystory 3. Układy scalone 3.5.Układy dużej.
Belief Nets Autor: inż. 2013r źródło tła:
Machine learning Lecture 6
Inteligencja Obliczeniowa Perceptrony o dużym marginesie błędu
Learnmatrix, Adaline, Madaline i modele liniowe
Systemy neuronowo – rozmyte
Kognitywne właściwości sieci neuronowych
Perceptrony o dużym marginesie błędu
Wykład 7 Neuropsychologia komputerowa
Sieci o zmiennej strukturze
Perceptrony o dużym marginesie błędu
Systemy Ekspertowe i Sztuczna Inteligencja trudne pytania
Sztuczna Inteligencja Gry i programy oparte na szukaniu
Inteligencja Obliczeniowa Perceptrony
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Perceptrony wielowarstwowe, wsteczna propagacja błędów
Zapis prezentacji:

Wykład 7 Neuropsychologia komputerowa Uczenie III Uniwersalne modele uczenia Włodzisław Duch UMK Toruń Google: W Duch (c) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

Generalizacja: korekcja błędów + Hebb Szybka zbieżność, powstają dobre reprezentacje wewnętrzne. (c) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

BG Neurony VTA uczą się najpierw reagować na nagrodę, a następnie przewidywać pojawienie się nagrody w przyszłości. (c) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

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) 1999. Tralvex Yeap. All Rights Reserved

Dwufazowa implementacja Wejście CSC – Complete Serial Compound, zastosowano niezależne elementy do bodźców w kolejnych momentach czasu. 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. 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) 1999. Tralvex Yeap. All Rights Reserved