Sieci neuronów

advertisement
Wykład 3
Neuropsychologia komputerowa
Sieci Neuronów
Włodzisław Duch
UMK Toruń
Google: W Duch
Neurony i reguły
Pojedyncze neurony pozwalają na detekcję elementarnych cech.
Do czego można użyć modelu neuronu?
Logika klasyczna:
Jeśli A1 i A2 i A3 to Konkluzja
Np. Jeśli Ból głowy i Ból mięśni i Katar to Grypa
W A
Logika progowa neuronów:
Jeśli M z N warunków jest spełnionych to Konkluzja
5
W A  2
i 1
i
i
Warunki mogą mieć różne wagi; logikę klasyczną można łatwo
zrealizować za pomocą neuronów progowych.
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 = duże podobieństwo (mała odległość).
Neurony i sieci
1. Jakie własności ma sieć neuronów?
2. Jak można wpłynąć na sieć neuronów, by robiła coś ciekawego?
Biologia: sieci są w korze (neocortex) i strukturach podkorowych.
neurony pobudzające i hamujące.
Ogólnie pobudzenia mogą być:
• głównie w jednym kierunku – transformacja sygnałów;
• w obu kierunkach – dopełnianie brakującej informacji, uzgadnianie
hipotez i wzmacnianie słabych sygnałów.
Hamowanie: kontroluje wzajemne pobudzenia, konieczne by unikać
dodatniego sprzężenia zwrotnego (padaczka).
Całość umożliwia spełnianie wielorakich ograniczeń (constraint
satisfaction), interpretacji nadchodzącej informacji w świetle wiedzy o
jej znaczeniu, zakodowanej w strukturze sieci.
Ogólna struktura sieci
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 – główny NT to kwas glutaminowy, otwiera
kanały Na+, długie aksony, komunikacja wewnątrz i między grupami
neuronów na mniejsze i większe odległości;
około 85%, głównie komórki piramidowe, gwiaździste + ...
B neurony hamujące – główny NT to GABA, otwiera kanały Cl-,
interneurony, lokalne projekcje, regulacja poziomu pobudzenia;
około 15%: koszyczkowe i kandelabrowe + ...
Dendryty zużywają 95% energii, aksony tylko 5%, sieci dendrytyczne.
Neurony pobudzające i hamujące
Kwas glutaminowy
otwiera kanały Na+,
pobudzająco,
GABA działa na
kanały Cl- hamując
pobudzanie.
Struktura laminarna
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 - kora wzrokowa ma frubszą
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.
Połączenia warstw
Podział funkcjonalny warstw:
• wejściowa warstwa 4, dopływ informacji z wzgórza, zmysłów;
• 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.
Ukryte: wydobywają pewne cechy
z sygnału, wzmacniają jedne a
osłabiają inne; taka organizacja
umożliwia realizację złożonych
transformacji sygnału.
Takiej organizacji wymaga też
pamięć epizodyczna.
Połączenia dokładniej
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.
Proste transformacje
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 sygnały podobne od odmiennych.
Detektory tworzą reprezentację informacji dochodzącej do warstwy
ukrytej, osłabiając nieistotne różnice a wzmacniając istotne.
Prosty 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; tu mamy tylko jedną.
Detektor cyfr - symulacja
Uruchamiamy symulator Emergent.
Ładujemy Transform.proj, ilustrujący uczenie się kategorii,
czyli podkreślanie istotnych różnic i pomniejszanie nieistotnych.
Sieć ma rozpoznawać cyfry.
Okienko ...Digit_Network
pokazuje strukturę sieci, tylko dwie
warstwy, wejście i wyjście.
Oglądanie wag połączonych z
wybraną jednostką ukrytą:
wybieramy r.wt w Digt_Network,
a potem strzałką klikamy na daną
jednostkę: wszystkie wagi są =1,
dopasowane dokładnie do
kwadratów dla cyfr.
Widać act i net (ostatnia kolumna)
czyli aktywacje i nieliniowe wyjście.
Detektor cyfr - sieć
Wagi wejściowe
dla wybranej cyfry
r.wt pokazuje
wagi dla
jednostek
ukrytych, tu
wszystkie 0 lub 1.
Inne zmienne
pokazują biasy,
prądy, potencjały,
aktywacje sieci
(net input value) i
inne parametry.
Detektor cyfr - działanie
r.wt => act (w
Digit_network).
W ControlPanel
init, step,
uruchamiając
jeden krok,
prezentację
kolejnych cyfr.
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. 8 - 0.
GridLog
Jaka jest aktywność
poszczególnych detektorów
przy pojawieniu się jednego
wzorca wejściowego?
Widać to w okienku
TrialOutputData, można je
zamienić na większe okno.
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 ControlPanel
możemy wyłączyć progi
(biases_off) i zobaczyć, że
niektóre cyfry nie są
rozpoznawane.
Okienko Digits
W okienku Digits widać wszystkie wzorce, środowisko
tu możemy je zmieniać, usuwać lub dodawać nowe.
Dodanie bitu 1 do
wzorca: kliknąć na
kratkę;
usunięcie bitu:
shift+kliknięcie.
Wybór w dolnym
lewym rogu
pokaże większe
okienko z tym
wzorcem.
Podobieństwo wzorców
Z okienka ControlPanel wybieramy cluster_data_src Digits.
Klasteryzacja za pomocą dendrogramów obrazuje wzajemne
podobieństwo wektorów, długość kreski d(A,B) = |A-B|.
Hierarchiczna klasteryzacja
wektorów reprezentujących
wzorce wejściowe.
Mocno podobne są cyfry 8 i 3:
13 identycznych bitów.
Cyfry 4 i 0 mają tylko 4 wspólne
bity. 0 i 8 wychodzi w tej
klasteryzacji mocno różne; jest
kilka rodzajów dendrogramów.
Klasteryzacja wyjść dla danych
zaszumionych pokaże ich
podobieństwo.
Podobieństwo zniekształconych wzorców
Z okienka ControlPanel wybieramy teraz Noisy_digits
Mamy wzorzec + po dwa
zniekształcone, podobieństwo
pokazują dendrogramy.
Apply i Step obserwując w okienku
Network, oglądamy act, pobudzenia
ukrytych neuronów. Klasteryzacja
output pokazuje identyczność.
Kanały upływu (potasowe)
Zmiana przewodności kanałów upływu wpływa na selektywność
neuronów, dla mniejszej wartości ĝl odpowiedzi robią się stopniowe.
W okienku ControlPanel zmniejszymy ĝl =6, do 5 i 4.
Jest więcej skojarzeń  ale zmniejsza się precyzja.
ĝl =6
ĝl = 5
ĝl = 4
Litery
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.
Co będzie jeśli zmniejszymy przewodność kanału upływu?
Lokalnie i rozproszone reprezentacje
Sieć dla cyfr robiła bardzo prostą transformację, dopasowanie wzorców.
Jeden neuron ukryty reprezentował jeden wzorzec, w czysto lokalny
sposób; takie neurony nazywa się „komórkami babci” (grandmother cells).
Rozproszone reprezentacje: wiele neuronów reaguje na jeden wzorzec,
każdy neuron bierze udział w reakcji na wiele wzorców.
http://www.brain.riken.go.jp/labs/cbms/tanaka.html - ładne demo.
Rozproszone reprezentacje
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 rozproszonej reprezentacji (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 będą aktywować różne RR dając zwykle
aproksymację do sensownej odpowiedzi, między A i B.
• Odporność na uszkodzenia, redundancja systemu.
• Dokładność: RR ciągłych cech jest bardziej
realistyczna niż skokowe aktywacje lokalne.
• Uczenie się: staje się łatwiejsze dla ciągłych łagodnych zmian w RR.
Eksperyment z RR
Projekt Ch3, Loc_dist.proj.
Do reprezentacji cyfr używamy teraz 5 jednostek.
Sieć reaguje na obecność pewnych cech,
np. pierwszy neuron ukryty reaguje na dolną kreskę.
Rozproszone reprezentacje
mogą działać nawet na
przypadkowo wybranych
cechach: nowa RR = rzut
wzorców wejściowych do
jakiejś przestrzeni cech.
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.
r.wt w DigitNetwork to pokaże.
RR i zaszumione cyfry
• Dendrogram wygląda całkiem inaczej niż dla lokalnej sieci.
Do klasyfikacji to nie
wystarczy, potrzebna jest
oczywiście kolejna warstwa
ukryta, lub więcej
detektorów cech w ukrytej
warstwie, ale dendrogram
pokazuje ogólne
podobieństwa pomiędzy
cyframi.
Download