Inteligentne Systemy Autonomiczne
Transkrypt
Inteligentne Systemy Autonomiczne
Inteligentne Systemy Autonomiczne Neurony i reguł reguły Pojedyncze neurony pozwalają na detekcję elementarnych cech. Pojedyncze neurony pozwalają na detekcję 5 Do czego można użyćcech. modelu neuronu? elementarnych W ⋅ A = ∑Wi Ai > 2 Logika klasyczna: i =1 Do użyć modelu neuronu? Jeśli czego A1 i A2 i Amożna 3 to Konkluzja Struktury i Uczenie Symulacje Np. Jeśli Ból głowy i Ból mięśni i Katar to Grypa Logika progowa neuronów: Jeśli M z N warunków jest spełnionych to Konkluzja Warunki mogą mieć różne wagi; logikę klasyczną można łatwo zrealizować za pomocą neuronów. Jest ciągłe przejście pomiędzy regułami i podobieństwem: dla kilku zmiennych przydatne są reguły, dla wielu podobieństwo. |W−A|2 = |W|2 + |A|2 − 2W .A = 2(1 − W .A), dla unormowanych X, A, więc silne pobudzenie = mała odległość (duże podobieństwo ). W oparciu o wykład Prof. Randall O'Reilly University of Colorado oraz Prof. Włodzisława Ducha Uniwersytet Mikołaja Kopernika 1 EE141 Janusz Pandemonium w akcji Symulacje Demon (gr. daimon - ten, który coś rozdziela lub ten, który coś przydziela, Demony obserwujące cechy: | kreska pionowa D1 -- kreska pozioma D2 / kreska skośna w prawo D3 \ kreska skośna w lewo D4 Jakie cechy należy obserwować by rozumieć mowę? język? obrazy? twarze? działać twórczo? http://psych.colorado.edu/~oreilly/cecn_download.html Symulacje: napisz równania określające jak dobre jest dopasowanie, jak głośno mają krzyczeć demony. V T A K demony 3, 4 => D5 demony 1, 2 => D6 demony 2, 3, 4 => D7 demony 1, 3, 4 => D8 demony 6,7,8 => D9 Im lepiej pasuje tym głośniej krzyczą. Demon podejmujący decyzję: D9 nie odróżnia TAK od KAT ... do tego potrzebne jest rozpoznanie sekwencji 3 Każdy demon podejmuje prosta decyzję ale całość jest dość złożona. EE141 Neurony i sieci 2. Jak zredukować biologię do równań? Sprawność synaptyczna: jak silnie Aktywność presynaptycznego neuronu: ile pęcherzyków, ile neutoransmitera na pęcherzyk, ile absorbuje postsynaptyczny Postsynaptyczny: ile receptorów, geometria, odległość od kolca itp. Skrajne uproszczenie: jedna liczba charakteryzująca sprawność. Czy kora ma jakieś własności ogólne czy też jej budowa zależy od funkcji: percepcyjnych, ruchowych, skojarzeniowych? Istnieje funkcjonalna specjalizacja kory, widoczne różnice różnych obszarów, stąd podział na pola Brodmana. Zachowany jest ogólny schemat: •A neurony pobudzające Biologia: sieci są w korze (neocortex) i strukturach podkorowych. neurony pobudzające (85%) i hamujące (15%). Ogólnie pobudzenia mogą być: głównie w jednym kierunku • główny NT to kwas glutaminowy, • AMPA receptor otwiera kanały Na+, pobudza długie aksony, komunikacja wewnątrz i między grupami neuronów • NMDA receptor otwiera kanały Ca++, prowadzi do uczenia transformacja sygnałów; w obu kierunkach uzupełnianie brakującej informacji uzgadnianie hipotez i wzmacnianie słabych sygnałów. większość neuronów pobudzających jest dwukierunkowych. • około 85%, głównie komórki piramidowe, gwiaździste + ... Hamowanie: kontroluje wzajemne pobudzenia, konieczne by unikać dodatniego sprzężenia zwrotnego (padaczka). Całość umożliwia interpretacje nadchodzącej informacji w świetle wiedzy o jej znaczeniu, zakodowanej w strukturze sieci. •B neurony hamujące • główny NT to GABA (kwas gamma-aminomasłowy), otwiera kanały Cl-, interneurony, lokalne projekcje, regulacja poziomu pobudzenia; • GABA-A efekt krótkoterminowy BAGA – B efekt długoterminowy • około 15%: komórki koszyczkowe i kandelabrowe + ... 6 5 EE141 4 EE141 Ogó Ogólna struktura sieci Jakie własności ma sieć neuronów? Jak można wpłynąć na sieć neuronów, by robiła coś ciekawego? 1. 2 EE141 A. Starzyk Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie EE141 1 Komó omórki piramidowe, gwiaź gwiaździste, dziste, koszyczkowe, koszyczkowe, kandelabrowe, kandelabrowe, wrzecionowe Neurony pobudzają pobudzające i hamują hamujące Piramidowe i gwiazdziste Koszyczkowe kandelabrowe Kwas glutaminowy otwiera kanały Na+, pobudzająco, GABA działa na kanały Cl- hamując pobudzanie. 7 EE141 8 EE141 Struktura laminarna Połą czenia warstw Połączenia Podział funkcjonalny warstw: Kora ma grubość 2-4 mm, składa się z 6 warstw, o różnej grubości w różnych częściach mózgu. A B C D wyjściowe warstwy 5/6, ośrodki podkorowe, polecenia ruchowe; warstwy ukryte 2/3, przetwarzając informację lokalną i z odległych grup neuronów, dochodzącą przez aksony z warstwy 1. W każdej warstwie mamy lokalne połączenia zwrotne. A - kora wzrokowa ma grubszą warstwę wejściową 4a-c; B - kora ciemieniowa ma grubsze warstwy ukryte 2 i 3; C - kora ruchowa ma grubsze warstwy wyjściowe 5-6; D – kora przedczołowa nie ma wyraźnie grubszych warstw. Warstwy ukryte: wydobywają pewne cechy z sygnału, wzmacniają jedne a osłabiają inne; umożliwia to realizację złożonych transformacji sygnału. Takiej organizacji wymaga też pamięć epizodyczna. 9 EE141 wejściowa warstwa 4, dopływ informacji z wzgórza, zmysłów; 10 EE141 Połą czenia dokł Połączenia dokładniej Proste transformacje te bloki maga być łączone kaskadowo Połączenia jednokierunkowe są wyjątkami, ale taki model daje się uogólnić na sytuację ze sprzężeniami zwrotnymi. Przetwarzanie „od podstaw do góry” (bottom-up): kolektywnie neuronowe detektory dokonują transformacji, kategoryzacji wybranych sygnałów, odróżniając podobne od odmiennych. Detektory tworzą reprezentację informacji dochodzącej do warstwy ukrytej. Najprostszy przypadek: binarne wzorce cyfr na siatce 5x7 na wejściu, wszystkie wzorce podobne do danej cyfry powinny pobudzać tą samą jednostkę ukrytą w siatce 5x2. 12 1) Warstwa wejściowa 4, wstępnie przetwarzana informacja zewnętrzna. 2) Warstwy ukryte 2/3, dalsze przetwarzanie, skojarzenia, mało we/wyj. 3) Warstwy wyjściowe 5/6, ośrodki podkorowe, polecenia ruchowe. 11 EE141 EE141 2 Detektor cyfr - symulacja Detektor cyfr - sieć sieć W programie Emergent (Start/Programy/Emergent) wybieramy File/Open Project, następnie otwieramy projekt bidir_xform.proj dostępny na stronie http://grey.colorado.edu/CompCogNeuro/index.php/CECN1_Projects Okienko Digital_Network pokazuje strukturę sieci, dwie warstwy, wejście i wyjście. Oglądanie wag połączonych z wybraną jednostką ukrytą: klikamy na r.wt (w zakładce Digit_Network), a potem na daną jednostkę: wagi są dopasowane dokładnie do cyfr. Wagi wejściowe dla wybranej cyfry (zakładka Digit_Network) r.wt pokazuje wagi dla jednostek ukrytych, tu wszystkie 0 lub 1. s.wt pokazuje pojedyncze połączenia, np. lewy górny róg wejścia jest =1 dla 5 i 7. 13 EE141 14 EE141 GridLog Detektor cyfr - dział działanie Jaka jest aktywność poszczególnych detektorów przy pojawieniu się jednego wzorca wejściowego? W okienku kontroli ControlPanel wybieramy Init i Run a następnie w oknie Digit_Network obserwujemy Æ Zamiast r.wt wybieramy act (w Digit_Network). W okienku kontroli ControlPanel wybieramy step, uruchamiając krok po kroku prezentację kolejnych cyfr. Dla każdego wzorca wszystkie jednostki pobudzają się do pewnego stopnia; widać tu dużą rolę progów, które pozwalają wybrać jednostkę właściwą; w okienku ControlPanel możemy wyłączyć progi (biases off) i zobaczyć, że niektóre cyfry nie są rozpoznawane. Stopień pobudzenia jednostek ukrytych dla wybranej cyfry jest duży (kolor żółty lub czerwony), dla pozostałych jest zero (kolor szary). Dobrze odróżnialne, np. 4, mają wyższe pobudzenia niż słabiej odróżnialne, np. 3. EE141 15 16 EE141 Okienko Digits Podobień Podobieństwo wzorcó wzorców W oknie ClusterPlot wybieramy Digits, Init i Run. Klasteryzacja za pomocą dendrogramów obrazuje wzajemne podobieństwo wektorów, długość kreski d(A,B) = |A−B|. W oknie Digits widzimy wszystkie wzorce. Hierarchiczna klasteryzacja wektorów reprezentujących wzorce wejściowe: mocno podobne są cyfry 8 i 3: 13 identycznych bitów, oraz 4 i 0, tylko 4 wspólne bity. Klikając dwa razy na wzorzec możemy go zmieniać. 17 EE141 18 EE141 3 Podobień Podobieństwo zniekształ zniekształconych wzorcó wzorców W oknie ClusterPlot wybieramy Noisy_digits, Apply i Step obserwując w okienku ClusterPlotData, oglądamy act, pobudzenia ukrytych neuronów. Kanał Kanały upł upływu (potasowe) Zmiana przewodności kanałów upływu wpływa na selektywność neuronów, dla mniejszej wartości l (ang. constant leak channel) odpowiedzi robią się stopniowe. W oknie ControlPanel zmniejszymy l = 6, do l = 4. Więcej skojarzeń Ù mniejsza precyzja. Mamy wzorzec + 2 zniekształcone, podobieństwo zniekształconych cyfr pokazują dendrogramy. l =6 l =4 19 EE141 20 EE141 Litery Reprezentacje lokalne i rozproszone Sieć dla cyfr zastosujemy do liter ... jedynie S przypomina 8, pozostałe jednostki ukryte niczego nie rozpoznają. Detektory są wyspecjalizowane do określonych zadań! Nie rozpoznamy chińskich znaków jeśli znamy tylko koreański. Dendrogramy dla reprezentacji liter przed i po transformacji. Reprezentacje lokalne : jeden neuron ukryty reprezentuje jeden wzorzec takie neurony nazywa się „komórkami babci” (grandmother cells). Reprezentacje rozproszone : wiele neuronów reaguje na jeden wzorzec, każdy neuron bierze udział w reakcji na wiele wzorców. Obserwacje aktywizacji neuronu w części kory wizyjnej małpy przy rożnych pobudzeniach potwierdza istnienie reprezentacji rozproszonych Co będzie jeśli zmniejszymy przewodność kanału upływu? 21 EE141 Reprezentacje rozproszone Wzorce mogą być reprezentowane w rozproszony sposób przez zbiór ich cech (feature-based coding). Cechy są obecne „w pewnym stopniu”. Ukryte neurony można interpretować jako stopień wykrycia danej cechy – tak robi się w logice rozmytej. Zalety reprezentacji rozproszonej (RR): Oszczędność: wzorce mogą być reprezentowane przez kombinacje aktywacji wielu jednostek; n lokalnych jednostek = 2n kombinacji. Podobieństwo: wzorce podobne mają zbliżone RR, częściowo się nakładające. Generalizacja: nowe wzorce aktywują różne RR dając zwykle aproksymację do sensownej odpowiedzi, między A i B. Odporność na uszkodzenia, nadmiarowość systemu. Dokładność: RR cech ciągłych jest bardziej realistyczna niż skokowe aktywacje lokalne. 23 Uczenie się: staje się łatwiejsze dla ciągłych łagodnych zmian w RR. EE141 http://www.brain.riken.go.jp/labs/cbms/tanaka.html - ładne demo. 22 EE141 Eksperyment z RR Projekt loc_dist.proj ze strony http://grey.colorado.edu/CompCogNeuro/index.php/ CECN1_Localist_vs_Distributed. Do reprezentacji cyfr używamy teraz 5 jednostek. Sieć reaguje na obecność pewnych cech, np. pierwszy neuron ukryty reaguje z… (rysunek na dole slajdu) Rozproszone reprezentacje mogą działać nawet na przypadkowo wybranych cechach: nowa RR = rzut wzorców wejściowych do jakiejś przestrzeni cech. EE141 Gridlog pokazuje rozkład aktywności net i wyjścia z sieci, pokazując stopień obecności danej cechy. Dendrogram wygląda całkiem inaczej niż dla lokalnej sieci. 24 4 Sprzęż enie zwrotne Sprzężenie Rekurencja dla cyfr Sieci mają prawie zawsze sprzężenia zwrotne pomiędzy neuronami. Rekurencja: powtórne, powtarzające się pobudzenie, stąd sieci z rekurencją, dwukierunkowe (bidirectional). Od podstaw do góry i odwrotnie, albo rozpoznanie i wyobraźnia. Rekurencja umożliwia dopełnianie wzorców, powstawanie rezonansów pomiędzy skojarzonymi reprezentacjami, wzmacnianie słabych pobudzeń oraz inicjację rozpoznawania. Sieć z ukrytą warstwą 2x5, połączoną zwrotnie z wejściami. Symetryczne połączenia: te same wagi W ij=Wji. Środkowy piksel aktywuje 7 neuronów ukrytych, każdy neuron ukryty aktywuje wszystkie piksele z danej cyfry, ale wejścia są tu brane zawsze z wzorców cyfr. Przykład: rozpoznaj drugą literę w prostych słowach: LATO (szybciej) BAZS (wolniej) Dziwne: rozpoznawanie tekstu przebiega od liter do słów; jak wiec słowo pomaga w rozpoznaniu litery? Kombinacje pobudzeń ukrytych neuronów 25 EE141 26 EE141 Wzmacnianie rekurencyjne Dopeł Dopełnianie wzorcó wzorców Projekt pat_complete.proj. Sieć z jedną warstwą 5x7, połączoną zwrotnie z sobą. Symetryczne połączenia: te same wagi W ij=Wji. Jednostki należące do wzorca 8 są ze sobą połączone z waga 1, pozostałe mają wagi 0. Projekt amp_top_down.proj. Od bardzo słabej aktywacji jakiegoś wzorca procesy amplifikacji mogą doprowadzić do pełnego pobudzenia wzorca lub niekontrolowanego pobudzenia całej sieci. Sieć ma teraz dwie ukryte warstwy. Aktywacje jednostek wejściowych nie są tu ustalone przez wzorce (hard clamping), a jedynie inicjowane przez te wzorce (soft clamping), więc mogą się zmieniać. Słabe pobudzenie prowadzi do wzrostu aktywacji, pobudzenia neuronu 2, i zwrotnego pobudzenia neuronu 1. Dla dużego l >3.5 efekt zanika. Sprawdź zależność minimalnej liczby jednostek wystarczających do odtworzenia wzorca od przewodności kanałów jonowych. Dla dużego l start z częściowego wzorca wymaga coraz większej liczby prawidłowo zainicjowanych pikseli, dla l = 3 potrzeba >6 pikseli, dla l = 4 potrzeba >8 pikseli, dla l = 5 potrzeba >11 pikseli. 27 EE141 To samo można zrobić za pomocą sprzężenia wewnątrz warstwy. Słaba aktywacja liter wystarcza do rozpoznawania słowa, ale rozpoznanie słowa może wzmocnić aktywację liter i przyspieszyć odpowiedź. 28 EE141 Wzmacnianie RR Oddział Oddziaływania hamują hamujące Potrzebny jest mechanizm reagujący dynamicznie, a nie stały prąd upływu – ujemne sprzężenie zwrotne, hamujące neurony. Projekt amp_top_down.dist.proj. Rozproszona aktywacja może prowadzić do niekontrolowanego pobudzenia całej sieci. Dwa obiekty: TV i Syntezer; 3 cechy: ekran CRT, Głośnik i Klawiatura. TV ma CRT i Głośnik, Syntezer ma Głośnik i Klawiaturę – jedna cecha jest wspólna. Dwa typy hamowania: dzięki wykorzystaniu tych samych projekcji wejściowych możliwa jest antycypacja pobudzenia i hamowanie bezpośrednie; takie selektywne hamowanie pozwala na selekcję neuronów najlepiej dostosowanych do specyficznych sygnałów. Hamowanie może być też reakcją na zbytnie pobudzenie neuronu. Hamowanie prowadzi do rzadkich rozproszonych reprezentacji Sprzężenie prowadzi do aktywacji warstwy 1, potem 2 i znowu 1, rekurencyjnie. Startując z dowolnego pobudzenia na wejściu, Głośnik aktywizuje obydwa neurony, TV i syntezer, a te wszystkie 3 cechy w warstwie 1, w efekcie wszystkie elementy są w pełni aktywne. Manipulacje wartością l ~ 1.737 pokazują, jak niestabilna jest taka sieć => potrzebujemy hamowania! 29 EE141 Hamowanie pobudzane wprzód: zależy od aktywizacji warstwy niższej EE141 Hamowanie pobudzane poziomo: 30 zależy od aktywizacji tej warstwy 5 Parametry hamowania Aproksymacja WTA i SOM Model z neuronami hamującymi jest kosztowny: są dodatkowe neurony i trzeba robić symulacje z małym krokiem czasowym by uniknąć oscylacji. Można zastosować prostsze modele konkurencji miedzy neuronami, prowadzące do selekcji zwykle niewielkiej liczby aktywnych neuronów (sparse distributed representation). Parametry hamowania: g_bar_i_inhib, hamowanie własne neuronu g_bar_i_hidden, hamowanie neuronów ukrytych scale_ff, wagi połaczeń ff, wejście-hamujące scale_fb, wagi połaczeń zwrotnych Zwycięzca bierze wszystko (Winner Takes All), zostawiająca tylko 1 aktywny neuron i nie Warstwa 6 prowadzi do reprezentacji rozłożonej. -następny poziom W realizacji SOM Kohonena zwycięzca jest wybrany razem z jego otoczeniem. Aktywizacja 2/3 otoczenia zależy od odległości od zwycięzcy. Inne podejścia stosują kombinacje neuronów 4 pobudzających i hamujących: McClelland I Rumelhart – interakcyjna aktywizacja i kompetycja; wprowadziła nadrzędność wyższej warstwy nad niższą pozwalając na uzupełnianie brakujących cech I przewidywanie Grossberg wprowadził dwukierunkowe połączenia pomiędzy warstwami używając struktury minikolumn oddzielne neurony hamujące oddziaływania poziome hamowanie poziome 6 aktywizacja wejścia 31 EE141 sprzężenie zwrotne 5 32 EE141 Aproksymacja kWTA kWTA proste k zwycięzców bierze wszystko (k Winners Take All), najczęstsza aproksymacja zostawiająca tylko k aktywnych neuronów. Idea: neurony hamujące zmniejszają pobudzenie tak, by nie więcej niż k neuronów moglo być jednocześnie aktywnych. Znajdź k najbardziej pobudzonych neuronów w warstwie; oblicz jaki poziom hamowania jest potrzebny by tylko te zostały powyżej progu. Równowaga dla potencjału Θ dla którego nie płyną prądy ustala się przy •Rozkład wartości przewodnictwa hamowania: poziomów pobudzeń w większej sieci powinien mieć charakter Gaussowski. •Musimy znaleźć taki poziom pobudzenia progowego giΘ by dla wartości pomiędzy k i k+1 mogło go zbalansować hamowanie: • Dla zapewnienia, że tylko k neuronów jest powyżej progu bierzemy: Dwa sposoby: proste i uśredniane. •Słabsi zwycięzcy eliminowani przez minimalna wartość progowa •Model kWTA stanowi uproszczenie oddziaływań biologicznych Zwykle stała q=0.25; zależnie od rozkładu pobudzeń w warstwie możemy mieć wyraźną separację (c) lub hamować mocno aktywne neurony (b). 33 EE141 kWTA uśredniane 34 EE141 Projekty z kWTA Projekt inhib.proj. Wejście 10x10, ukryta warstwa 10x10 2x10 neuronów hamujących, realistyczne proporcje. W tej wersji przewodność hamowania ustalona jest pomiędzy średnią z k najbardziej aktywnych neuronów i n-k pozostałych neuronów. Wartość pośrednia wyliczana jest z: Zależnie od rozkładu mamy w (b) niższą wartość niż poprzednio a w (c) wartość wyższą, co daje nieco lepsze rezultaty. 35 EE141 Sieć dwukierunkowa ma druga warstwę ukrytą; kWTA stabilizuje aktywność zostawiając nieliczne aktywne neurony. Dokładny opis: podrozdziały 3.5.2 i 3.5.4 Projekt inhib_digits.proj. 36 EE141 6 Speł Spełnianie ograniczeń ograniczeń Energia Pobudzenia ze środowiska, hamowanie i aktywacje wewnętrzne zgodne z ustalonymi parametrami sieci muszą tworzą zbiór ograniczeń na możliwe do przyjęcia stany; ewolucja pobudzeń w sieci powinna prowadzić do spełnienia tych ograniczeń. Najbardziej ogólna zasada przyrody: minimalizacja energii! Jak wygląda wyrażenie na energię? gdzie sumowanie biegnie po wszystkich parach neuronów. Harmonia = −E jest największa gdy energia jest najmniejsza. Jeśli wagi są symetrycznie to minimum takiego wyrażenia na energię jest w jednym punkcie (atraktor punktowy); jeśli nie to atraktory mogą być cykliczne, kwaziperiodyczne lub chaotyczne. Dynamika atraktorowa Energia systemu Rola szumu Zmiany w czasie, startując z „basenu atrakcji”, czyli zbioru różnych stanów początkowych, zmierzają do ustalonego stanu. Dla sieci z liniową aktywacją wyjście jest Stan atraktorowy maksymalizuje „harmonię” pomiędzy wiedzą wewnętrzną zawartą w parametrach sieci i informacją ze środowiska. => Pochodna harmonii = yj pokazuje kierunek wzrostu harmonii. 37 EE141 38 EE141 Rola szumu Hamowanie i speł spełnianie ograniczeń ograniczeń Fluktuacje na poziomie kwantowym jak i wkład od wielu przypadkowych procesów zachodzących w większej sieci neuronów tworzy szum. Szum zmienia momenty wysyłania impulsów, pomaga unikać lokalnych rozwiązań o małej harmonii, dostarcza energii wpływa na procesy rezonansowe, przełamuje impasy. Spełnianie ograniczeń dokonuje się w sieci przez równoległe szukanie w przestrzeni aktywacji neuronów. Hamowanie pozwala ograniczyć przestrzeń poszukiwań, przyspieszając procesy szukania jeśli tylko rozwiązanie nadal znajduje się w dostępnej przestrzeni stanów. Bez kWTA wszystkie stany w układzie dwóch neuronów są dostępne; Szum nie pozwala popadać w rutynę, umożliwia eksplorację nowych rozwiązań, jest też prawdopodobnie konieczny do kreatywności. efektem ograniczenia kWTA jest koordynacja aktywności obu neuronów i zmniejszenie przestrzeni poszukiwan. Szum w korze ruchowej. Demonstracja roli szumu w układzie wzrokowym. 39 EE141 40 EE141 Speł Spełnianie ograniczeń ograniczeń: koty i psy Speł Spełnianie ograniczeń ograniczeń: sześ sześcian Projekt cats_and_dogs.proj. Projekt necker_cube.proj z Chapter_3. Bistabilność percepcji: sześcian można widzieć albo bliższa ścianą w lewo albo w prawo. Wiedza zakodowana w sieci zakodowana jest w Tabeli. Ćwiczenie opisane w rozdziale 3.6.4 prowadzi do ¾Prostej sieci semantycznej która potrafi ¾Uogólniać i określić unikalne cechy ¾Pokazuje relacje miedzy cechami ¾Określać czy cechy sa stabilne ¾Uzupełniać brakujące informacje EE141 Procesy bistabilne można symulować uwzględniając szum. Ćwiczenie opisane jest w rozdziale 3.6.5. 41 42 EE141 7